[Scummvm-devel] Memory consumption in GUI branch

Neil Millstone neil at millstone.demon.co.uk
Sun Oct 26 05:08:33 CET 2008


Robin Watts wrote:
> In message <48F08B15.5020309 at millstone.demon.co.uk>
>           Neil Millstone <neil at millstone.demon.co.uk> wrote:
>   
>> The code growth you mentioned does sound a little worrying, if the
>> same is seen on the DS build (ARM code tends to have quite poor
>> code density) then ScummVM is unlikely to run properly anymore, but
>> as you said, only a single bit format is used for the GUI, so that
>> should help.
>>     
>
> I've just rebuilt DS scummvm here, and the standard ARM build (a
> cleanish trunk) comes out to 1627712 bytes. If I enable thumb mode
> during the build (and tweak various ARM routines to cope with being
> called in thumb mode - will commit those fixes in a bit), the code
> size drops to 1349696 bytes.
>
> There will be a speed penalty of course, but hopefully we can tweak
> the compile so that speed critical bits stay in ARM ?
>
> Robin
>   
Perhaps, but when I compiled a Thumb build recently, there were still 
lots of codegen bugs all over the game when the Thumb build was compiled 
optimised.  I keep meaning to report this to the Devkitpro team, but 
haven't yet, as it's difficult to create a small piece of code which 
repros the bug.

I did eventually get a Thumb build to work by disabling a load of 
optimisations, and the performance suffered.  I did eventually get a 
playable version of Full Throttle and The Dig going in Thumb in 0.9.1.  
But since the code has grown so much since then, I doubt the same would 
be possible if I ported these changes to trunk.

I wonder if it's possible to compile a GUI-less version of ScummVM, and 
then do a custom GUI for the DS port?  Something simple is all that 
would be required for the launcher, but I suppose the in-game GUI would 
be an issue too.  Probably not feasable, but I thought I'd mention it 
anyway.

- Neil









More information about the Scummvm-devel mailing list