|
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.
|