Line 80: |
Line 80: |
| | 0x3F2 || SampleMask2 || 1 || || | | | 0x3F2 || SampleMask2 || 1 || || |
| |- | | |- |
− | | 0x3F5 || Multisample_Related2 || 1 || || | + | | 0x3F5 || Multisample_Related2 || 1 || || TODO |
| |- | | |- |
| | 0x3F6 || CoverageModulationEnable || 1 || bool || | | | 0x3F6 || CoverageModulationEnable || 1 || bool || |
Line 94: |
Line 94: |
| | 0x4B3 || DepthTestEnable || 1 || bool || Enables DepthWriteEnable and DepthFunc. | | | 0x4B3 || DepthTestEnable || 1 || bool || Enables DepthWriteEnable and DepthFunc. |
| |- | | |- |
− | | 0x4B8 || Multisample_Config2 || 1 || bool || | + | | 0x4B8 || Multisample_Config2 || 1 || bool || TODO |
| |- | | |- |
| | 0x4BA || DepthWriteEnable || 1 || bool || | | | 0x4BA || DepthWriteEnable || 1 || bool || |
Line 124: |
Line 124: |
| | 0x4C7 || BlendColor || 4 || float[4] || | | | 0x4C7 || BlendColor || 4 || float[4] || |
| |- | | |- |
− | | 0x47C || || 1 || || BindProgram writes 0 here sometimes. | + | | 0x47C || || 1 || trigger || BindProgram writes 0 here sometimes. |
| |- | | |- |
− | | 0x47F || DepthBuffer_Resolve || 1 || || 1 is written here to trigger. | + | | 0x47F || DepthBufferResolve || 1 || trigger || 1 is written here to trigger. |
| |- | | |- |
− | | 0x519 || ZCullCtx_Save || 1 || || 0 is written here to trigger ctx-save, uses both ZCullCtx_Addr0/1. | + | | 0x519 || ZCullContextSave || 1 || trigger || 0 is written here to trigger ctx-save, uses ZCullContextStartAddr. |
| |- | | |- |
| | 0x51F || PolygonOffsetClamp0 || 1 || float || | | | 0x51F || PolygonOffsetClamp0 || 1 || float || |
| |- | | |- |
− | | 0x540 || ZCullCtx_Restore || 1 || || 0 is written here to trigger ctx-restore, uses both ZCullCtx_Addr0/1. | + | | 0x540 || ZCullContextRestore || 1 || trigger || 0 is written here to trigger ctx-restore, uses ZCullContextStartAddr. |
| |- | | |- |
| | 0x546 || PointSize || 1 || float || | | | 0x546 || PointSize || 1 || float || |
| |- | | |- |
− | | 0x554 || RendererEnableConditionAddr || 2 || gpuva || | + | | 0x554 || RendererConditionAddr || 2 || gpuva || |
| |- | | |- |
− | | 0x556 || RendererEnable || 1 || || 0=disabled unconditional, 1=enabled unconditional, 3=unknown conditional, 4=unknown conditional, | + | | 0x556 || RendererConditionMode || 1 || || 0=disabled unconditional, 1=enabled unconditional, 3=unknown conditional, 4=unknown conditional, |
| |- | | |- |
− | | 0x54C || Counter_Reset || 1 || || Value written decides which counter to reset. | + | | 0x54C || CounterReset || 1 || || Value written decides which counter to reset. |
| |- | | |- |
| | 0x54D || MultisampleEnable || 1 || || | | | 0x54D || MultisampleEnable || 1 || || |
| |- | | |- |
− | | 0x54F || MultisampleAlphaToCoverageEnable || 1 || bool || | + | | 0x54F || MultisampleAlphaToCoverageEnable || 1 || bool || TODO: Has more fields? |
| |- | | |- |
− | | 0x55B || PolygonOffsetClamp1 || 1 || float || | + | | 0x55B || PolygonOffsetFactor || 1 || float || |
| |- | | |- |
− | | 0x56F || PolygonOffsetClamp2 || 1 || float || Float multiplied by 2 is written here. | + | | 0x56F || PolygonOffsetOffset || 1 || float || Float multiplied by 2 is written here. |
| |- | | |- |
− | | 0x591 || PrimitiveRestart_Enable || 1 || bool || | + | | 0x591 || PrimitiveRestartEnable || 1 || bool || |
| |- | | |- |
− | | 0x592 || PrimitiveRestart_Value || 1 || || | + | | 0x592 || PrimitiveRestartIndex || 1 || uint || |
| |- | | |- |
| | 0x646 || PolygonCullFaceEnable || 1 || bool || | | | 0x646 || PolygonCullFaceEnable || 1 || bool || |
Line 158: |
Line 158: |
| | 0x647 || PolygonFrontFace || 1 || bitfield || Bit0: Enable. Always ORR'd with 0x9000. | | | 0x647 || PolygonFrontFace || 1 || bitfield || Bit0: Enable. Always ORR'd with 0x9000. |
| |- | | |- |
− | | 0x648 || PolygonCullFaceConfig || 1 || bitfield || 0x404/0x405/0x408 | + | | 0x648 || PolygonCullFaceConfig || 1 || bitfield || TODO: 0x404/0x405/0x408 |
| |- | | |- |
− | | 0x64F || DepthClamp || 1 || || 0x101A is written when enabled, 0x181D when disabled. | + | | 0x64F || DepthClamp || 1 || || TODO: 0x101A is written when enabled, 0x181D when disabled. |
| |- | | |- |
− | | 0x66F || DepthBounds_Enable || 1 || bool || | + | | 0x66F || DepthBoundsEnable || 1 || bool || |
| |- | | |- |
− | | 0x671 || ColorStateLogicOpEnable || 1 || bool || Used for all LogicOps except 3. | + | | 0x671 || ColorLogicOpEnable || 1 || bool || Used for all LogicOps except 3. |
| |- | | |- |
− | | 0x672 || ColorStateLogicOpType || 1 || || Bit0-7: LogicOp, bit8-15: unknown, always 0x15. | + | | 0x672 || ColorLogicOpType || 1 || bitfield || Bit0-7: LogicOp, bit8-15: unknown, always 0x15. |
| |- | | |- |
| | 0x68B || Barrier? || 1 || trigger || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... | | | 0x68B || Barrier? || 1 || trigger || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... |
| |- | | |- |
− | | 0x6C0 || Poke_Addr || 2 || gpuva || | + | | 0x6C0 || QueryAddr || 2 || gpuva || |
| |- | | |- |
− | | 0x6C2 || Poke_WriteVal || 1 || || 0 is written here during most queries. | + | | 0x6C2 || QuerySequence || 1 || || 0 is written here during most queries. |
| |- | | |- |
− | | 0x6C3 || Poke_Control || 1 || || Big bitfield. After write, the result of query is written to 4 bytes at Poke_Addr. | + | | 0x6C3 || QueryControl || 1 || bitfield || After write, the result of query is written to 4 bytes at QueryAddr. |
| |- | | |- |
− | | 0x701+2*N || VertexBufferStartAddr || 2 || gpuva || | + | | 0x701+2*N || VertexBufferStartAddr || 2 || gpuva || TODO: Doesn't match nouveau |
| |- | | |- |
| | 0x7C0+2*N || VertexBufferEndAddr || 2 || gpuva || | | | 0x7C0+2*N || VertexBufferEndAddr || 2 || gpuva || |