GPU/Internal Registers: Difference between revisions

Steveice10 (talk | contribs)
Steveice10 (talk | contribs)
Line 3,968: Line 3,968:
| 2
| 2
| Back Face (Counter Clockwise)
| Back Face (Counter Clockwise)
|}
=== GPUREG_VIEWPORT_WIDTH ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-23
| float24, width / 2
|}
=== GPUREG_VIEWPORT_INVW ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 1-31
| float31, 2 / width
|}
=== GPUREG_VIEWPORT_HEIGHT ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-23
| float24, height / 2
|}
=== GPUREG_VIEWPORT_INVH ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 1-31
| float31, 2 / height
|}
=== GPUREG_FRAGOP_CLIP ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Enabled (0 = disabled, 1 = enabled)
|}
=== GPUREG_FRAGOP_CLIP_DATA''i'' ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-23
| float24, Clipping plane coefficient
|}
=== GPUREG_DEPTHMAP_SCALE ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-23
| float24, Near - Far
|}
=== GPUREG_DEPTHMAP_OFFSET ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-23
| float24, Near
|}
=== GPUREG_SH_OUTMAP_TOTAL ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-31
| Number of following attributes
|}
|}


Line 4,078: Line 4,168:
| Unused component
| Unused component
| Should be set for unused components of the output register
| Should be set for unused components of the output register
|}
=== GPUREG_EARLY_DEPTH_FUNC ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Early depth function
|}
Early depth function values:
{| class="wikitable" border="1"
! Value
! Description
|-
| 0
| >=
|-
| 1
| >
|-
| 2
| <=
|-
| 3
| <
|}
=== GPUREG_EARLY_DEPTH_TEST1 ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Enabled (0 = disabled, 1 = enabled)
|}
=== GPUREG_EARLY_DEPTH_CLEAR ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Trigger (0 = idle, 1 = clear)
|}
=== GPUREG_SH_OUT_ATTR_MODE ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Use texture coordinates (0 = don't use, 1 = use)
|}
=== GPUREG_SCISSORTEST_MODE ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Enabled (0 = disabled, 1 = enabled)
|}
=== GPUREG_SCISSORTEST_POS ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-15
| X1
|-
| 16-31
| Y1
|}
=== GPUREG_SCISSORTEST_DIM ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-15
| X2
|-
| 16-31
| Y2
|}
=== GPUREG_VIEWPORT_XY ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-15
| X
|-
| 16-31
| Y
|}
=== GPUREG_EARLY_DEPTH_DATA ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-31
| Clear value
|}
=== GPUREG_FRAGOP_WSCALE ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-1
| Enabled (0 = disabled, 1 = enabled)
|}
=== GPUREG_RENDER_BUF_RESOLUTION1 ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0-11
| Width
|-
| 12-23
| Height
|-
| 24
| 0x1
|}
=== GPUREG_SH_OUT_ATTR_CLK ===
{| class="wikitable" border="1"
! Bits
! Description
|-
| 0
| 'position.z' present
|-
| 1
| 'color' component present
|-
| 8
| 'texcoord0' component present
|-
| 9
| 'texcoord1' component present
|-
| 10
| 'texcoord2' component present
|-
| 16
| 'texcoord0.w' present
|-
| 24
| 'normquat' or 'view' component present
|}
|}