Line 8:
Line 8:
| 0x0
| 0x0
| 0x80
| 0x80
−
| SHA-256 hash-table
+
| SHA-256 hash-table, verified by [[CRR0|CRR]]
|-
|-
| 0x80
| 0x80
Line 15:
Line 15:
|-
|-
| 0x84
| 0x84
−
| 0xFC
+
| 0x2C
−
| Header
+
| ?
|-
|-
−
| 0x180
+
| 0xB0
−
|
+
| 0x04
−
| Data payload begins here
+
| Section0 offset
+
|-
+
| 0xB4
+
| 0x04
+
| Section0 size
+
|-
+
| 0xB8
+
| 0x04
+
| Section2 offset
+
|-
+
| 0xBC
+
| 0x04
+
| Section2 size
+
|-
+
| 0xC0
+
| 0x04
+
| Section1 offset
+
|-
+
| 0xC4
+
| 0xBC
+
| ?
|}
|}
−
This format with extension .cro is used for "DLLs". A hash over this hash-table is stored in the loaded [[CRR0]] file, for verifying this CRO0 file. This format with extension .crs can be used for storing "DLL" symbols as well. The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.
+
CRO with extension .cro is used for "DLLs". CRS with extension .crs can be used for storing "DLL" symbols as well. The end of the file is aligned to a 0x1000-byte boundary with 0xCC bytes.
+
CRO0 files are usually stored under "romfs:/cro/".
+
+
The first hash-table entry hashes the 0x100-byte header following the hash-table. The following hash-table entries hash the sections specified in the header.
−
CRO0 files are usually stored under "romfs:/cro/".
+
Section0 for CRO contains code, and CRO section1 contains symbols.