| Next loaded CRR (Must be zero in file, set by RO during loading)
|-
|-
| 0xC
| 0xC
| 0x4
| 0x4
−
| Must be zero
+
| Previous loaded CRR (Must be zero in file, set by RO during loading)
|-
|-
| 0x10
| 0x10
−
| 0x10
+
| 0x4
−
| ?
+
| Debug Info Offset
+
|-
+
| 0x14
+
| 0x4
+
| Debug Info Size
+
|-
+
| 0x18
+
| 0x8
+
| Reserved
|-
|-
| 0x20
| 0x20
−
| 0x20
+
| 0x4
−
| ?
+
| UniqueID Mask
+
|-
+
| 0x24
+
| 0x4
+
| UniqueID Pattern
+
|-
+
| 0x28
+
| 0x18
+
| Reserved
|-
|-
| 0x40
| 0x40
Line 52:
Line 68:
| 0x348
| 0x348
| 0x8
| 0x8
−
| ?
+
| Reserved
|-
|-
| 0x350
| 0x350
| 0x4
| 0x4
−
| Size of header, always 0x360
+
| Hash-table Offset
|-
|-
| 0x354
| 0x354
| 0x4
| 0x4
−
| ?
+
| Total hashes in the hash-table
|-
|-
| 0x358
| 0x358
| 0x4
| 0x4
−
| Size of the CRR0 file, excluding padding
+
| Offset to the plain region containing text tags, from the process [[NCCH#CXI|NCCH]]
|-
|-
| 0x35C
| 0x35C
| 0x4
| 0x4
−
| ?
+
| Size of plain region
|-
|-
| 0x360
| 0x360
Line 74:
Line 90:
| SHA-256 hash-table
| SHA-256 hash-table
|}
|}
−
+
Each hash stored in the hash-table is over the corresponding executable [[CRO0]] hash-table.
Each hash stored in the hash-table is over the corresponding executable [[CRO0]] hash-table.
−
CRR0 files are usually stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes, however the beginning of the padding is the first two text tags from the process [[NCCH#CXI|NCCH]] plain region.
+
CRR0 files must be stored under "romfs:/.crr/". The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.