[Scummvm-devel] NDS black screen

Marcus Comstedt marcus at mc.pp.se
Wed Jul 7 13:43:30 CEST 2010


"James 'Ender' Brown" <ender at scummvm.org> writes:

> FWIW, I've noticed desmume to be slightly more tolerant of memory 
> over-usage than the real hardware is.
>
> Back when I was playing with the NDS port myself, I often got a black 
> screen instead of the launcher because
> an engine tried to allocate more memory than was available when its 
> GameDetector was called.

That's rather surprising, considering that the NDS has no OS, so the
application does its own memory management, using a hardcoded memory
layout in the linker script:

MEMORY {

        rom     : ORIGIN = 0x08000000, LENGTH = 32M
        ewram   : ORIGIN = 0x02000000, LENGTH = 4M - 4k
        dtcm    : ORIGIN = 0x0b000000, LENGTH = 16K
        itcm    : ORIGIN = 0x01000000, LENGTH = 32K
}

So the exact same amount of memory should be available for malloc
regardless of running in an emulator or on a real NDS.  Even if the
emulator allows RAM accesses above 0x023ff000, malloc will not be able
to use it.


> May bear no relation to this problem, I just felt like posting :)

Likewise.  :-)


  // Marcus






More information about the Scummvm-devel mailing list