GPU Classes: Difference between revisions
| Line 17: | Line 17: | ||
{| class=wikitable | {| class=wikitable | ||
! Register || Name || Type || Notes | ! Register || Name || Type || Notes | ||
|- | |||
| 0xE0+8*N || TransformFeedbackBuffer_Enable || bool || | |||
|- | |||
| (0xE1,0xE2)+8*N || TransformFeedbackBuffer_Addr || iova_t || | |||
|- | |||
| 0xE3+8*N || TransformFeedbackBuffer_Flags || || | |||
|- | |- | ||
| 0xC9 || Tesselation_OuterLevel0 || || | | 0xC9 || Tesselation_OuterLevel0 || || | ||
| Line 34: | Line 40: | ||
| 0x1D1 || TransformFeedback_Pause || || | | 0x1D1 || TransformFeedback_Pause || || | ||
|- | |- | ||
| 0x1FA | | 0x1FA,0x1FB || ZCullCtx_Addr0 || iova_t || | ||
|- | |- | ||
| 0x1FC | | 0x1FC,0x1FD || ZCullCtx_Addr1 || iova_t || | ||
|- | |- | ||
| 0x285+8*N || DepthRange_Unk0_N || | | 0x285+8*N || DepthRange_Unk0_N || | ||
| Line 143: | Line 149: | ||
|- | |- | ||
| 0x4CA || BlendColor3 || || | | 0x4CA || BlendColor3 || || | ||
|- | |||
| 0x47C || || || BindProgram writes 0 here sometimes. | |||
|- | |- | ||
| 0x47F || DepthBuffer_Resolve || || 1 is written here to trigger. | | 0x47F || DepthBuffer_Resolve || || 1 is written here to trigger. | ||
| Line 154: | Line 162: | ||
| 0x546 || PointSize || float || | | 0x546 || PointSize || float || | ||
|- | |- | ||
| 0x554 | | 0x554,0x555 || RendererEnableConditionAddr || iova_t || | ||
|- | |- | ||
| 0x556 || RendererEnable || || 0=disabled unconditional, 1=enabled unconditional, 3=unknown conditional, 4=unknown conditional, | | 0x556 || RendererEnable || || 0=disabled unconditional, 1=enabled unconditional, 3=unknown conditional, 4=unknown conditional, | ||
| Line 186: | Line 194: | ||
| 0x68B || Barrier? || || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... | | 0x68B || Barrier? || || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... | ||
|- | |- | ||
| 0x6C0 | | 0x6C0,0x6C1 || Poke_Addr || iova_t || | ||
|- | |- | ||
| 0x6C2 || Poke_WriteVal || || 0 is written here during most queries. | | 0x6C2 || Poke_WriteVal || || 0 is written here during most queries. | ||
| Line 204: | Line 212: | ||
| 0x786+8*N || BlendState_N || || TODO | | 0x786+8*N || BlendState_N || || TODO | ||
|- | |- | ||
| 0x8E3 || BindImage_Config || || BindImage writes "8*i + 0x120" here. | | 0x820 || || || BindProgram writes here. | ||
|- | |||
| 0x821 || || || BindProgram writes here. | |||
|- | |||
| 0x830 || || || BindProgram writes here. | |||
|- | |||
| 0x840 || || || BindProgram writes here. | |||
|- | |||
| 0x850 || || || BindProgram writes here. | |||
|- | |||
| 0x8E3 || BindImage_Config || || BindImage writes "8*i + 0x120" here. BindSeparateSampler writes "8*i + 0x568" here. BindSeparateTexture uses "8*i + 0x168". BindTexture uses 8*i + 32. | |||
|- | |||
| 0x8E4 || BindImage_ValueLo || || This might be an addr but it's swapped opposite to other addrs. BindSeparateSampler/BindSeparateTexture writes something here. BindStorageBuffer writes something here. | |||
|- | |||
| 0x8E5 || BindImage_ValueHi || || BindStorageBuffer writes something here. | |||
|- | |- | ||
| | | 0x8E6 || || || BindStorageBuffer writes something here. | ||
|- | |- | ||
| | | 0x8E4,0x8EB || Multisample_ConfigX || || What? Overlap. | ||
|- | |- | ||
| | | 0xD1E || || || BindProgram writes 0 here, trigger? | ||
|- | |- | ||
| 0xD34 || || || Used by SetConservativeRasterDilate. | | 0xD34 || || || Used by SetConservativeRasterDilate. | ||
| Line 216: | Line 238: | ||
| 0xD35 || BlendState || || TODO: Bitfield | | 0xD35 || BlendState || || TODO: Bitfield | ||
|- | |- | ||
| 0xE00 | | 0xE00,0xE01 || TransformFeedback_Addr || iova_t || | ||
|- | |- | ||
| 0xE0A || || || Used by SetConservativeRasterDilate. | | 0xE0A || || || Used by SetConservativeRasterDilate. | ||
| Line 222: | Line 244: | ||
| 0xE0B || || || Used by SetConservativeRasterDilate. | | 0xE0B || || || Used by SetConservativeRasterDilate. | ||
|- | |- | ||
| 0xE0E || || || BindImage writes 0-4 here. | | 0xE0E || || || BindImage/BindSeparateSampler/BindSeparateTexture writes 0-4 here. | ||
|- | |- | ||
| 0xE10 || || || Sometimes used by BindColorState. | | 0xE10 || || || Sometimes used by BindColorState. | ||
| Line 232: | Line 254: | ||
| 0xE1A || DepthStencil_Config3 || || | | 0xE1A || DepthStencil_Config3 || || | ||
|- | |- | ||
| 0xE1E || Multisample_Config7 || || | | 0xE1E || Multisample_Config7 || || Also written to by BindStorageBuffer | ||
|- | |- | ||
| 0xE20 || || || Another barrier? Used by SetConservativeRasterDilate. | | 0xE20 || || || Another barrier? Used by SetConservativeRasterDilate. | ||