SHBIN: Difference between revisions

Oreo639 (talk | contribs)
Update label table and fix typo
Oreo639 (talk | contribs)
Update DVOJ section
 
(2 intermediate revisions by the same user not shown)
Line 103: Line 103:
|  0x7
|  0x7
|  0x1
|  0x1
|  true = merge vertex/geometry shader outmaps ('dummy' output attribute is present)
|  true = merge vertex and geometry shader outmaps (geometry shader)
|-
|-
|  0x8
|  0x8
Line 313: Line 313:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
Bit
Offset
!  Size
!  Description
!  Description
|-
|-
0-3
0x0
|  0x2
|  Output type (see table below)
|  Output type (see table below)
|-
|-
16-19
0x2
|  0x2
|  Register ID
|  Register ID
|-
|-
32-35
0x4
|  0x2
|  Output attribute component mask (e.g. 5=xz)
|  Output attribute component mask (e.g. 5=xz)
|-
|  0x6
|  0x2
|  Unknown (Consistently the same number throughout the DVLE, may vary between DVLEs?)
|-
|}
|}


Line 424: Line 433:
|-
|-
|  0x04
|  0x04
0x4
0x2
|  Unknown. Seems to be related to the DVLE shader type.
|  Unknown. (Likely a version number)
|-
|  0x06
|  0x1
|  Shader type (0x0 = vertex shader, 0x1 = geometry shader; might contain other flags)
|-
|  0x07
|  0x1
|  true = merge vertex and geometry shader outmaps (geometry shader)
|-
|-
|  0x08
|  0x08
0x4
0x2
Unknown.
Bitmask of used input registers.
|-
|  0x10
|  0x2
|  Bitmask of used output registers.
|-
|-
|  0x0C
|  0x0C
Line 461: Line 482:
|  0x28
|  0x28
|  0x4
|  0x4
|  Offset (relative to DVLP start) to shader instruction extension table
|  Offset to operand descriptor table
|-
|-
|  0x2C
|  0x2C
|  0x4
|  0x4
|  Number of shader instruction extension table entries (each entry is 8-byte long)
|  Number of operand descriptor table entries (each entry is 8-bytes long)
|-
|-
|  0x30
|  0x30