|
|
| Line 98: |
Line 98: |
|
| |
|
| The region-specific NVer title for this NCSD presumably must exist on NAND. The NVer title version may also be used to check whether a system update is required before running the app. | | The region-specific NVer title for this NCSD presumably must exist on NAND. The NVer title version may also be used to check whether a system update is required before running the app. |
|
| |
| == NCSD ExHeader ==
| |
| {| class="wikitable" border="1"
| |
| |-
| |
| ! OFFSET
| |
| ! SIZE
| |
| ! DESCRIPTION
| |
| |-
| |
| | 0x1000
| |
| | 8
| |
| | Title ID of main NCCH
| |
| |-
| |
| | 0x1008
| |
| | 8
| |
| | Reserved
| |
| |-
| |
| | 0x1010
| |
| | 0x30
| |
| | Initial Data
| |
| |-
| |
| | 0x1040
| |
| | 0xC0
| |
| | Reserved
| |
| |-
| |
| | 0x1100
| |
| | 4
| |
| | Magic ID, always 'NCCH'
| |
| |-
| |
| | 0x1104
| |
| | 4
| |
| | Content size, in media units (1 media unit = 0x200 bytes)
| |
| |-
| |
| | 0x1108
| |
| | 8
| |
| | Partition ID
| |
| |-
| |
| | 0x1110
| |
| | 2
| |
| | Maker code
| |
| |-
| |
| | 0x1112
| |
| | 2
| |
| | Version
| |
| |-
| |
| | 0x1114
| |
| | 4
| |
| | Reserved
| |
| |-
| |
| | 0x1118
| |
| | 8
| |
| | Program ID
| |
| |-
| |
| | 0x1120
| |
| | 1
| |
| | Temp flag
| |
| |-
| |
| | 0x1121
| |
| | 0x2F
| |
| | Reserved
| |
| |-
| |
| | 0x1150
| |
| | 0x10
| |
| | Product code
| |
| |-
| |
| | 0x1160
| |
| | 0x20
| |
| | Extended header hash (SHA-256), over the cleartext ExHeader
| |
| |-
| |
| | 0x1180
| |
| | 4
| |
| | Extended header size
| |
| |-
| |
| | 0x1184
| |
| | 4
| |
| | Reserved
| |
| |-
| |
| | 0x1188
| |
| | 8
| |
| | Flags: byte[5]-byte[7] indicate content type ( system update, application, manual, ... ) size of media unit ( 512*2^byte[6] ) and encryption.
| |
| |-
| |
| | 0x1190
| |
| | 4
| |
| | Plain region offset, in media units
| |
| |-
| |
| | 0x1194
| |
| | 4
| |
| | Plain region size, in media units
| |
| |-
| |
| | 0x1198
| |
| | 8
| |
| | Reserved
| |
| |-
| |
| | 0x11A0
| |
| | 4
| |
| | ExeFS offset, in media units
| |
| |-
| |
| | 0x11A4
| |
| | 4
| |
| | ExeFS size, in media units
| |
| |-
| |
| | 0x11A8
| |
| | 4
| |
| | ExeFS hash region size, in media units
| |
| |-
| |
| | 0x11AC
| |
| | 4
| |
| | Reserved
| |
| |-
| |
| | 0x11B0
| |
| | 4
| |
| | RomFS offset, in media units
| |
| |-
| |
| | 0x11B4
| |
| | 4
| |
| | RomFS size, in media units
| |
| |-
| |
| | 0x11B8
| |
| | 4
| |
| | RomFS hash region size, in media units
| |
| |-
| |
| | 0x11BC
| |
| | 4
| |
| | Reserved
| |
| |-
| |
| | 0x11C0
| |
| | 0x20
| |
| | ExeFS superblock hash, over the cleartext ExeFS
| |
| |-
| |
| | 0x11E0
| |
| | 0x20
| |
| | RomFS superblock hash
| |
| |-
| |
| | 0x1200
| |
| | 0x2E00
| |
| | Reserved/Unused (Is filled with either 'F's or '0's)
| |
| |}
| |
| From the magic 'NCCH' to the end of the 'RomFS superblock hash' the data is identical to the [[NCCH#NCCH Header|NCCH Header]] of the [[NCCH#CXI|Executable NCCH]] Partition (NCCH 0).
| |