When I build my Windows CE image in Platform Builder, why do I get the following error: "RAM start overlaps ROM binary"?
Error: RAM start overlaps ROM binary
Rom end : 0x81217d4c
Ram start: 0x8105c000
NK
physfirst 800e0000
physlast 81217d4c
This error is given because your image size is bigger than the allowed size contained in the XXXXX_XX_config_bib.h file. The specific file for your Card Engine can be found at the following path:
WINCE500PLATFORMLoCEsrcinccard_engine
Resolution:
There are two options to resolving this:
- Decrease your image size by removing components that are taking up a lot of space. If you have unecessary features you can take them out and Re-Sysgen your platform.
- If you require a larger image than the default size of 15MB you can edit the config_bib.h file. Please refer to the RAM build memory map for an explanation on how memory is broken down while Windows CE is running.
Specifically these lines are what you will need to edit.
#define RAM_BUILD_RAM_START 0x81000000
#define RAM_BUILD_RAM_SIZE
0x00C00000
#define RAM_BUILD_IMAGE_START 0x800E0000
#define
RAM_BUILD_IMAGE_SIZE 0x00F00000
For example, the edited configuration below will allow for a 16MB image to be built.
#define RAM_BUILD_RAM_START 0x82000000
#define RAM_BUILD_RAM_SIZE
0x00B00000
#define RAM_BUILD_IMAGE_START 0x800E0000
#define
RAM_BUILD_IMAGE_SIZE 0x01000000
