| 
				   | 
				
| 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).
  |  |