My 600Mhz ARM one-core processor, easilly handles games like doom, wolfenstein, duke nukem and hexen, provided the engine is comiled natively, and with latest setting it overclocks to 900Mhz on demand (on N900s CPU have good margin for OC).
Sure CPU related blitting is a problem, since dosbox here chocked on Titus the Fox ingame and once double size scaling by CPU is disabled and naive GPU accelerated scaling (overlay mode in SDL) is enabled it got so much boost it even not chockes on Another World’s intro video (DosBox is DOS PC emulator so it handles much less than phone using linux itself).
I know that pixel by pixel blitting of DEF or mixed pallette images couldn’t be helped much, but I’m sure blitting whole surfaces using default SDL blitting API would be accelerated if only proper mode would be checked on SDL init. Of course proper GPU accelerating would need a bit more hassle but there are easy steps. I know just checking directx_fullscreen mode on allegro have increased FPS substantially over standard fullscreen mode with no altering the code (allegro blit functions and surfaces are automatically accelerated if mode allows and applicable elsewere).
I remember SDL hanged before on N900s on just overlay (the most primitive accelerated mode) but it’s ages from them and it’s fixed and I’m sure it would handle much more via native SDL support.
I suggest making configuration file beeing able to choose mode in which SDL inits (current compiled DosBox seems able to do only “surface” and “overlay”, but on PC it allowed much more and I am sure it uses SDL), and choose hardware resolution as different than software one (for SDL apply scaling), which would at least allow accelerated scaling from game buffer to screen. (HW Res have to be 800x480 on fullscreen but software one can be virtually anything provided at least “overlay” is checked in SDL init).
Go with this and I can check if it is enough for me to play fluently, if it fail I (and all N900s owners) would be able at least play current vcmi version at all (currently we have only fheroes2, a heroes2 clone, and non-functional old version of vcmi).
If there’s not much volounteers I may try to write a patch but my allegro experience is small to medium and SDL one is virtually non-existent.