SHBIN: Difference between revisions

Oreo639 (talk | contribs)
mNo edit summary
Oreo639 (talk | contribs)
Update label table and fix typo
Line 45: Line 45:
|  0x4
|  0x4
|  0x4
|  0x4
|  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.


{| class="wikitable" border="1"
{| class="wikitable" border="1"