|
|
Line 99: |
Line 99: |
| 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 "Unknown Section" == | | == Development Card Info Header == |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
Line 105: |
Line 105: |
| ! SIZE | | ! SIZE |
| ! DESCRIPTION | | ! DESCRIPTION |
| | |- |
| | | 0x200 |
| | | 8 |
| | | Card Info |
| | |- |
| | | 0x208 |
| | | 0xDF8 |
| | | Reserved1 |
| |- | | |- |
| | 0x1000 | | | 0x1000 |
| | 8 | | | 8 |
| | Title ID of main NCCH | | | Media ID (same as first NCCH partitionId) |
| |- | | |- |
| | 0x1008 | | | 0x1008 |
| | 8 | | | 8 |
| | Reserved | | | Reserved2 |
| |- | | |- |
| | 0x1010 | | | 0x1010 |
Line 123: |
Line 131: |
| |- | | |- |
| | 0x1100 | | | 0x1100 |
| | 4 | | | 0x100 |
| | Magic ID, always 'NCCH' | | | Copy of first NCCH header (excluding RSA signature) |
| |- | | |- |
| | 0x1104 | | | 0x1200 |
| | 4 | | | 0x200 |
| | Content size, in media units (1 media unit = 0x200 bytes)
| | | CardDeviceReserved1 |
| |-
| |
| | 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 | | | 0x1400 |
| | 0x10 | | | 0x10 |
| | Product code | | | TitleKey |
| |-
| |
| | 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 | | | 0x1410 |
| | 0x20 | | | 0xF0 |
| | ExeFS superblock hash, over the cleartext ExeFS | | | CardDeviceReserved2 |
| |-
| |
| | 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).
| |