| Unknown, same value as in DVLE. (Possibly a version number?)
+
| Unknown, same value as in DVLE. (Likely a version number)
|-
|-
| 0x8
| 0x8
Line 95:
Line 95:
| 0x4
| 0x4
| 0x2
| 0x2
−
| Unknown, same value as in DVLP. (Possibly a version number?)
+
| Unknown, same value as in DVLP. (Likely a version number)
|-
|-
| 0x6
| 0x6
Line 187:
Line 187:
|-
|-
| 0x0
| 0x0
−
| 0x1
+
| 0x2
| Label ID
| Label ID
+
|-
+
| 0x0
+
| 0x2
+
| Unknown (always 1?)
|-
|-
| 0x4
| 0x4
Line 196:
Line 200:
| 0x8
| 0x8
| 0x4
| 0x4
−
| ?
+
| Size of label's location (in words). 0xFFFFFFFF/(uint32_t)-1 if there is no size.
|-
|-
| 0xC
| 0xC
Line 206:
Line 210:
=== Constant Table Entry ===
=== Constant Table Entry ===
−
Each executable's constants are stored as in a constant table. This information is used by ctrulib's SHDR framework to automatically send those values to the GPU when changing to a given program. An entry is constituted by a header and the constant data, the latter of which uses a format specific to the constant type.
+
Each executable's constants are stored in a constant table. This information is used by ctrulib's SHDR framework to automatically send those values to the GPU when changing to a given program. An entry is constituted by a header and the constant data, the latter of which uses a format specific to the constant type.