Memory map
This is an old revision of this page, as edited by Crediar (talk | contribs) at 22:44, 20 April 2008. It may differ significantly from the current revision. |
Start Address | End Address | Size | Description |
0x80000000 | 0x817FFFFF | 24 MB | MEM1 Memory (Cached) |
0xC0000000 | 0xC17FFFFF | 24 MB | MEM1 Memory (Uncached) |
0x90000000 | 0x93FFFFFF | 64 MB | MEM2 Memory (Cached) |
0xD0000000 | 0xD3FFFFFF | 64 MB | MEM2 Memory (Uncached) |
0xCD000000 | 0xCD008000 | Hardware Registers |
The IOS Heap range is 0x933E0000-0x93400000 it is shown in registers 0x80003130(Start), 0x80003130(End). The top of MEM2 memory is allocated to Starlet. You can access this memory by disabling memory protection via hardware registers in Starlet. (See Starlet Register List. TODO).
Broadway / IOS Global Memory Locations
Address | Size | Value | Description |
0x80000000 | 6 | 0x525350453031 | Game Code 'RSPE01' (Wii Sports) |
0x80000018 | 4 | 0x5D1C9EA3 | Wii Game ID |
0x80000020 | 4 | 0x0D15EA5E | Nintendo Standard Boot Code. |
0x80000024 | 4 | 0x00000001 | Unknown |
0x80000028 | 4 | 0x01800000 | Memory Size (Physical) 24MB |
0x8000002C | 4 | 0x00000023 | Production Board Model |
0x80000030 | 4 | 0x00000000 | Unknown |
0x80000034 | 4 | 0x817FEC60 | Arena High |
0x80000038 | 4 | 0x817FEC60 | Start of FST (File System Information) |
0x8000003C | 4 | 0x00001394 | Unknown |
0x80000060 | 0x24 | Copyright code | Hook is PPC assembler used by Debugger |
0x800000EC | 4 | 0x81800000 | Dev Debugger Monitor Address (If present) |
0x800000F0 | 4 | 0x01800000 | Simulated Memory Size |
0x800000F4 | 4 | 0x00000000 | Unknown / Unused |
0x800000F8 | 4 | 0x0E7BE2C0 | Console Bus Speed |
0x800000FC | 4 | 0x2B73A840 | Console CPU Speed |
0x80001800 | 0x1800 | Standard loader stub area (entry at 0x80001800) | |
0x800030F0 | 4 | 0x00000000 | DOL Execute Parameters |
0x80003130 | 8 | 0x933E0000, 0x93400000 | IOS Heap Range |
0x80003138 | 4 | 0x00000011 | Hollywood Version |
0x80003140 | 8 | 0x00090204,0x00062507 | IOS version |
0x80003158 | 4 | 0x0000FF16 | GDDR Vendor Code |
0x80003180 | 4 | 0x52535045 | Game ID 'RSPE' Wii Sports ID (Written by
Apploader) |
0x80003184 | 4 | 0x80000000 | Unknown Flag (Set by Apploader) |
0x8000318C | 4 | 0x00000000 | Title Booted from NAND (Launch Code) |
0x80003190 | 4 | 0x00000000 | Title Booted from NAND (Return Code) |
0x80003400 | 0x100 | NAND boot vector (Broadway initialization code from nandloader) | |
0x80003F00 | 0x132c100 (~19.2MB) | Standard application executable area | |
0x81330000 | 0x4d0000 (~4.8MB) | Loader executable area |
Applications should use the 0x80003F00 - 0x81330000 area for executable code and data loaded as part of their ELF/DOL, while loaders should use from 0x81330000 onwards. Applications can use the loader area and MEM2 as data work space once they are running, but they should restrict the sections contained in the DOL or ELF to the executable area only, since MEM2 is reserved as work area for the loader at that time. To preserve "return to loader" functionality, applications should never use the 0x80001800-0x80003000 area.