Alright, I got colors fixed.
https://www.dropbox.com/s/qww9leoj643ltwr/AGS-3.4.1-debug.apk?dl=0The fix was trivial, but spent a long time trying to figure out why it worked in 3.4.0, and what has changed... yet failed.
This is really a mystery to me. This 32-bit RGB->BGR conversion look completely unnecessary for Android, and for any others sans PSP, which iirc had BGR-based graphic output.
(Actually, most of that initialization code looks mostly unnecessary, because it repeats itself, just variables are set in different order, so it kinda looks different)
So how did it work with 3.4.0? The only thing that comes to mind: it's a case when multiple mistakes combined produce desired output. Because I was cleaning up code when writing OpenGL support for Windows, I could shift the balance to one side...
Anyhow, I tried running 8-bit game on Android. It works with Software renderer (except couple of minor glitches), but Hardware makes it crash silently. Not sure what's wrong, but that's a little priority for me now, because Hardware renderer is not much suitable for 8-bit games currently anyway.