Line 230:
Line 230:
| 0x1800
| 0x1800
|
|
−
| Unused exception handler area often used by homebrew as a place for its own globals, as the SDK does not use or clear it. Homebrew loaders (both for GameCube and Wii) place their loader stub address here; this address is jumped to by [[libogc]]. [[Bluebomb]] also installs itself here while the main payload is being downloaded.
+
| Unused exception handler area, often used by homebrew as a place to store persistent code and/or as a data section, as the SDK does not use or clear it. Homebrew loaders (both for GameCube and Wii) place their loader stubs here, and this address is jumped to by [[libogc]] upon homebrew exist. This area is also commonly used to store the [[Gecko OS]] codehandler and code list, as well as being used by homebrew entrypoints to store stub code (e.g. [[Bluebomb]] stores itself here while downloading its loader.)
|-
|-
| 0x80003000
| 0x80003000
Line 304:
Line 304:
| 0x80003118
| 0x80003118
| 4
| 4
−
| ?
+
| 0x04000000
−
| Physical MEM2 size
+
| Physical MEM2 size. (0x3118-0x314C are set by IOS upon reload.)
|-
|-
| 0x8000311C
| 0x8000311C
| 4
| 4
−
| ?
+
| 0x04000000
−
| Simulated MEM2 size
+
| Simulated MEM2 size.
|-
|-
| 0x80003120
| 0x80003120
| 4
| 4
−
| ?
+
| 0x93400000
−
| MEM2 End
+
| End of MEM2 addressable to PPC.
|-
|-
| 0x80003124
| 0x80003124
| 4
| 4
−
| ?
+
| 0x90000800
−
| MEM2 Arena Start (start of usable memory by the game)
+
| Usable MEM2 Start (start of usable memory by the game)
|-
|-
| 0x80003128
| 0x80003128
| 4
| 4
−
| ?
+
| 0x933E0000
−
| MEM2 Arena End (end of usable memory by the game)
+
| Usable MEM2 End (end of usable memory by the game)
|-
|-
| 0x80003130
| 0x80003130
Line 355:
Line 355:
| 4
| 4
| 0x93600000
| 0x93600000
−
| IOS Reserved Heap Start ( = 0x93600000 in IOS58 )
+
| IOS Reserved Heap Start
|-
|-
| 0x8000314C
| 0x8000314C
| 4
| 4
| 0x93620000
| 0x93620000
−
| IOS Reserved Heap End ( = 0x93620000 in IOS58 )
+
| IOS Reserved Heap End
|-
|-
| 0x80003158
| 0x80003158