Supporting or Simulating More than 64 MB of RAM (Windows Embedded CE 6.0)
The default end address of RAM is 28 MB, unless you set IMGRAM16, IMGRAM32, or IMGRAM64, or build a run-time image for a locale outside the United States. The Config.bib file specifies the end address of RAM. The OEMInit function determines whether to search for additional RAM past the end address of RAM. If you modify %_WINCEROOT%\PLATFORM\CEPC\FILES\Config.bib, OEMInit does not search for additional RAM.
|In the following procedure, Microsoft assumes that Config.bib specifies the default 28 MB of RAM. If you want to change the default amount, edit the IsDRAM function in the %_WINCEROOT%\Public\Common\OAK\CSP\x86\OAL\Cfwpc.c file. Based on the existence of physical memory at the location passed to IsDRAM, IsDRAM returns TRUE or FALSE.|
|Graphics hardware can use memory from system RAM. If that is the case for your hardware, deduct the amount of memory that the graphics hardware uses from the total system RAM available. The amount of memory that the graphics hardware uses might be available in the graphics driver registry file or another OS registry file.|
In %_WINCEROOT%\Platform\Common\SRC\<SOC name>\inc\Pc.h, change CEPC_EXTRA_RAM_SIZE to the total amount of RAM you want to support, minus the amount specified in the %_WINCEROOT%\PLATFORM\CEPC\FILES\Config.bib file.
The default value is 0x2400000 and the default RAM in Config.bib is 28 MB. To support 128 MB of RAM, change the value to 0x6400000.
The OAL uses the CEPC_EXTRA_RAM_START and CEPC_EXTRA_RAM_SIZE constants to determine the amount of memory to dynamically detect and add at run-time.
In %_WINCEROOT%\Platform\Common\SRC\x86\Common\Startup\Startup.asm, change the first entry of _OEMAddressTable to the total amount of RAM you want to support.
The default value is 0x04000000, which is 64 MB. To support 128 MB of RAM, change the value to 0x8000000.