User`s manual
46 rabbit.com The Rabbit BIOS
several other regions needed for buffers. For simplicity’s sake, none of them are shown here and they are
not reflected in Figure 6-2.)
Figure 6-2 Origins from memory_layout.lib
Each origin declaration adds a little more to the overall mapping. We recommend reading the code in
memory_layout.lib and drawing memory maps like the one in Figure 6-2. This exercise will help to
further your understanding of the complex topic of memory mapping.
Parent Origins
flash
ORG_RAM_START
0
ram
user_block
xmemcode
rootcode
rootdata
Child Origins
(nest level 1)
Child Origins
(nest level 2)
watcode
ORG_RAM_START
+ ROOTDATA_SIZE
ORG_RAM_START
+ ROOTDATA_SIZE
- WATCHCODESIZE
ORG_FLASH_SIZE
ORG_FLASH_SIZE -
MAX_USERBLOCK_SIZE
ROOTCODE_SIZE
Xmem
Stack
Root Data
Root Code
Root Code
Physical Space
Logical Space
ORG_RAM_SIZE
Watch Code
User/ID Block
Watch Code
Root Data
Xmem Code
Xmem Data
xmemdata