Ok, so after about 4 days of tinkering, I managed to get Batocera 33 to boot from emmc on my XU4.
I am going to try and work with the devs of Batocera to get this mainstreamed.
Just goes to show ya’: Patience, persistence, and perseverance pays.
Please DO NOT post email addresses here, or ask me to send the files I modified.
In a day or two, hope to post instructions on making the changes yourself, so everyone can stay up-to-date when a new Batocera version is published.
Be aware: This is still very “beta”-ish. I need to double check that my changes still work on a MicroSD, for example. Still a few things to double-check before I go public with my work.
Bottom line: the extlinux bootloader used currently only works for MicroSD boot, not eMMC, which is why the problem exists. I had to use the older uboot loader used in older versions of Batocera. Even then, there were other changes that needed to be made to boot.
More on this later.