Skip to main content


As suggested by @nettles, I've implemented full auto sprite flipping to #varvara. It doesn't seem to impact any roms negatively, but instead of writing your own sprite flipping routine, you can make use of this to draw entire rows/cols at a time.

A side-effect is that right-to-left, and bottom-to-top, font drawing can make use of the auto byte, which had always been lacking.

implementation: https://git.sr.ht/~rabbits/uxn11/tree/main/item/src/devices/screen.c#L181

test: https://git.sr.ht/~rabbits/uxn11/tree/main/item/etc/pict.tal

mailing list: https://lists.sr.ht/~rabbits/uxn

This entry was edited (9 months ago)
in reply to Devine Lu Linvega

I was happy to test with oquonie and found that it didn't break anything. I'll be able to remove a whole bunch of shim code and make it faster. Thank you so much for the idea ❤
This entry was edited (9 months ago)
in reply to Devine Lu Linvega

a bit busy at the moment but I'll try to add the new screen changes to uxngba et al sometime this month
in reply to Bad Diode

@bd it might make oquonie run a bit faster 😀 No rush, there's only the one rom that makes use of it right now.
in reply to Devine Lu Linvega

I think it will still be a bit slow but it's worth trying! if I recall the main issue was the parallax stuff, not so much the drawing. I'll try to measure the perf gain to get a better estimate.
Unknown parent

Devine Lu Linvega
I would yes! I actually took note of doing that yesterday, I periodically revisit the idea it seems. I'm thinking a per-device version might be the best thing right now, something like the device mask? I could version changes per device that way, so something like an implementation that has the 2 color screen(playdate), or no sound(uxn11), or no screen(uxncli), could use compatibility IDs that are shared among the various emulators. I could even make test roms to check compat.
This entry was edited (9 months ago)

Lo, thar be cookies on this site to keep track of your login. By clicking 'okay', you are CONSENTING to this.