MOD: Difference between revisions
Jump to navigation
Jump to search
Created page with "MOD describes a module object. It is essentially a replacement for a PT_DYNAMIC program header. = ModuleHeaderLocation = This is "nn::rocrt::ModuleHeaderLocation". {| class=..." |
No edit summary |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 59: | Line 59: | ||
| 0x4 | | 0x4 | ||
| ModuleOffset (offset to runtime-generated module object, typically equal to .bss base) | | ModuleOffset (offset to runtime-generated module object, typically equal to .bss base) | ||
|- | |||
| 0x1C | |||
| 0x4 | |||
| [19.0.0+] RelroStartOffset | |||
|- | |||
| 0x20 | |||
| 0x4 | |||
| [19.0.0+] FullRelroEndOffset | |||
|- | |||
| 0x24 | |||
| 0x4 | |||
| [19.0.0+] NxDebugLinkStartOffset | |||
|- | |||
| 0x28 | |||
| 0x4 | |||
| [19.0.0+] NxDebugLinkEndOffset | |||
|- | |||
| 0x2C | |||
| 0x4 | |||
| [19.0.0+] NoteGnuBuildIdStartOffset | |||
|- | |||
| 0x30 | |||
| 0x4 | |||
| [19.0.0+] NoteGnuBuildIdEndOffset | |||
|} | |} | ||
= ModuleVersion = | |||
With [17.0.0+] this structure is normally located immediately after the [[ModuleHeader|ModuleHeader]]. This stores the nnSdk version. | With [17.0.0+] this structure is normally located immediately after the [[#ModuleHeader|ModuleHeader]]. This stores the nnSdk version. | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Latest revision as of 22:18, 29 October 2025
MOD describes a module object. It is essentially a replacement for a PT_DYNAMIC program header.
ModuleHeaderLocation
This is "nn::rocrt::ModuleHeaderLocation".
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x4 | [17.0.0+] Version ([1.0.0-16.1.0] Padding) |
| 0x4 | 0x4 | HeaderOffset |
| 0x8 | 0x4 | [17.0.0+] VersionOffset |
ModuleHeader
This is "nn::rocrt::ModuleHeader".
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x4 | Signature ("MOD0") |
| 0x4 | 0x4 | DynamicOffset |
| 0x8 | 0x4 | BssStartOffset |
| 0xC | 0x4 | BssEndOffset |
| 0x10 | 0x4 | ExceptionInfoStartOffset |
| 0x14 | 0x4 | ExceptionInfoEndOffset |
| 0x18 | 0x4 | ModuleOffset (offset to runtime-generated module object, typically equal to .bss base) |
| 0x1C | 0x4 | [19.0.0+] RelroStartOffset |
| 0x20 | 0x4 | [19.0.0+] FullRelroEndOffset |
| 0x24 | 0x4 | [19.0.0+] NxDebugLinkStartOffset |
| 0x28 | 0x4 | [19.0.0+] NxDebugLinkEndOffset |
| 0x2C | 0x4 | [19.0.0+] NoteGnuBuildIdStartOffset |
| 0x30 | 0x4 | [19.0.0+] NoteGnuBuildIdEndOffset |
ModuleVersion
With [17.0.0+] this structure is normally located immediately after the ModuleHeader. This stores the nnSdk version.
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x4 | Major |
| 0x4 | 0x4 | Minor |
| 0x8 | 0x4 | Micro |