Line 1: |
Line 1: |
− | = INI1 =
| + | #REDIRECT [[Package2]] |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Offset
| |
− | ! Type
| |
− | ! Description
| |
− | |-
| |
− | | 0x0
| |
− | | u32
| |
− | | Magic "INI1"
| |
− | |-
| |
− | | 0x4
| |
− | | u32
| |
− | | Size
| |
− | |-
| |
− | | 0x8
| |
− | | u32
| |
− | | NumberProcesses
| |
− | |-
| |
− | | 0xC
| |
− | | u32
| |
− | | Zero
| |
− | |}
| |
− | | |
− | == KIP1 ==
| |
− | Kernel internal process?
| |
− | | |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Offset
| |
− | ! Type
| |
− | ! Description
| |
− | |-
| |
− | | 0x0
| |
− | | u32
| |
− | | Magic "KIP1"
| |
− | |-
| |
− | | 0x4
| |
− | | char[12]
| |
− | | Name
| |
− | |-
| |
− | | 0x10
| |
− | | u64
| |
− | | TitleId
| |
− | |-
| |
− | | 0x18
| |
− | | u32
| |
− | |
| |
− | |-
| |
− | | 0x1C
| |
− | | u32
| |
− | | Flags / etc. Byte3 bit0-2: compression-enable for each section, when set.
| |
− | |-
| |
− | | 0x20
| |
− | | [[#SectionHeader]][3]
| |
− | | Sections
| |
− | |-
| |
− | | 0x50
| |
− | | char[0x20]
| |
− | | Padding
| |
− | |-
| |
− | | 0x70
| |
− | | u64[0x20]
| |
− | | KernelCaps
| |
− | |}
| |
− | | |
− | === SectionHeader ===
| |
− | {| class="wikitable" border="1"
| |
− | |-
| |
− | ! Offset
| |
− | ! Type
| |
− | ! Description
| |
− | |-
| |
− | | 0x0
| |
− | | u32
| |
− | | OutOffset
| |
− | |-
| |
− | | 0x4
| |
− | | u32
| |
− | | DecompressedSize
| |
− | |-
| |
− | | 0x8
| |
− | | u32
| |
− | | CompressedSize
| |
− | |-
| |
− | | 0xC
| |
− | | u32
| |
− | |
| |
− | |}
| |
− | | |
− | === Compression ===
| |
− | The compression used here is BLZ, with a modified footer since 3ds. The footer is now 0xC bytes instead of 0x8, and has the form u32 compressed_data_len; u32 initial_index; u32 additional_len_when_uncompressed;
| |