KCodeSet: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 12: | Line 12: | ||
|- | |- | ||
| 0x0 | | 0x0 | ||
| | | u32 | ||
| | | Pointer to vtable | ||
|- | |||
| 0x4 | |||
| u32 | |||
| Reference count | |||
|- | |- | ||
| 0x8 | | 0x8 | ||
Revision as of 23:23, 22 August 2016
class KCodeSet extends KAutoObject;
Size : 0x64 bytes
| Offset | Type | Description |
|---|---|---|
| 0x0 | u32 | Pointer to vtable |
| 0x4 | u32 | Reference count |
| 0x8 | Struct size is 0x14 | Memory section info for .text |
| 0x1C | Struct size is 0x14 | Memory section info for .rodata |
| 0x30 | Struct size is 0x14 | Memory section info for .data |
| 0x44 | u32 | Total .text pages |
| 0x48 | u32 | Total .rodata pages |
| 0x4C | u32 | Total RW pages (.bss + .data) |
| 0x50 | u64 | Process name as 8-byte string |
| 0x58 | u16 | ? |
| 0x5A | u16 | ? |
| 0x5C | u64 | TitleID |
Sections too large to fit into any available memory blocks will be split across multiple memory blocks with a KBlockInfo instance for each. This is described by the memory section info struct:
| Offset | Type | Description |
|---|---|---|
| 0x0 | u32 | Start address (virtual) |
| 0x4 | u32 | Total pages |
| 0x8 | KLinkedList | List of KBlockInfo objects for this section |