Memory Map
Basic memory map. More...Modules | |
| Memory map bit(fields) | |
| List of all bit(field) definitions of memory mapped items. | |
| Memory mapped arrays | |
| These are some macros for easier access of various memory sections. They're all arrays or matrices, using the types that would be the most natural for that concept. | |
| IO Registers | |
| IO Alternates | |
| Alternate names for some of the registers. | |
Main sections | |
| #define | MEM_EWRAM 0x02000000 |
| External work RAM. | |
| #define | MEM_IWRAM 0x03000000 |
| Internal work RAM. | |
| #define | MEM_IO 0x04000000 |
| I/O registers. | |
| #define | MEM_PAL 0x05000000 |
| Palette. Note: no 8bit write !! | |
| #define | MEM_VRAM 0x06000000 |
| Video RAM. Note: no 8bit write !! | |
| #define | MEM_OAM 0x07000000 |
| Object Attribute Memory (OAM) Note: no 8bit write !! | |
| #define | MEM_ROM 0x08000000 |
| ROM. No write at all (duh). | |
| #define | MEM_SRAM 0x0E000000 |
| Static RAM. 8bit write only. | |
Main section sizes | |
| #define | EWRAM_SIZE 0x40000 |
| #define | IWRAM_SIZE 0x08000 |
| #define | PAL_SIZE 0x00400 |
| #define | VRAM_SIZE 0x18000 |
| #define | OAM_SIZE 0x00400 |
| #define | SRAM_SIZE 0x10000 |
Sub section sizes | |
| #define | PAL_BG_SIZE 0x00200 |
| BG palette size. | |
| #define | PAL_OBJ_SIZE 0x00200 |
| Object palette size. | |
| #define | CBB_SIZE 0x04000 |
| Charblock size. | |
| #define | SBB_SIZE 0x00800 |
| Screenblock size. | |
| #define | VRAM_BG_SIZE 0x10000 |
| BG VRAM size. | |
| #define | VRAM_OBJ_SIZE 0x08000 |
| Object VRAM size. | |
| #define | M3_SIZE 0x12C00 |
| Mode 3 buffer size. | |
| #define | M4_SIZE 0x09600 |
| Mode 4 buffer size. | |
| #define | M5_SIZE 0x0A000 |
| Mode 5 buffer size. | |
| #define | VRAM_PAGE_SIZE 0x0A000 |
| Bitmap page size. | |
Sub sections | |
| #define | REG_BASE MEM_IO |
| #define | MEM_PAL_BG (MEM_PAL) |
| Background palette address. | |
| #define | MEM_PAL_OBJ (MEM_PAL + PAL_BG_SIZE) |
| Object palette address. | |
| #define | MEM_VRAM_FRONT (MEM_VRAM) |
| Front page address. | |
| #define | MEM_VRAM_BACK (MEM_VRAM + VRAM_PAGE_SIZE) |
| Back page address. | |
| #define | MEM_VRAM_OBJ (MEM_VRAM + VRAM_BG_SIZE) |
| Object VRAM address. | |
Detailed Description
Basic memory map.
Generated on Mon Aug 25 17:03:56 2008 for libtonc by
1.5.3