GPU Classes: Difference between revisions
No edit summary |
|||
Line 6: | Line 6: | ||
| 0xB1C0 || 1 || [[#MAXWELL_COMPUTE_B|MAXWELL_COMPUTE_B]] | | 0xB1C0 || 1 || [[#MAXWELL_COMPUTE_B|MAXWELL_COMPUTE_B]] | ||
|- | |- | ||
| 0xA140 || 2 || KEPLER_INLINE_TO_MEMORY_B | | 0xA140 || 2 || [[#KEPLER_INLINE_TO_MEMORY_B|KEPLER_INLINE_TO_MEMORY_B]] | ||
|- | |- | ||
| 0x902D || 3 || [[#FERMI_TWOD_A|FERMI_TWOD_A]] | | 0x902D || 3 || [[#FERMI_TWOD_A|FERMI_TWOD_A]] | ||
Line 116: | Line 116: | ||
|- | |- | ||
| 0x87 || InvalidateShaderCaches || 1 || bitfield || | | 0x87 || InvalidateShaderCaches || 1 || bitfield || | ||
|- style="border-top: double" | |||
| 0xB0 || || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0xB2 || IncrementSyncPoint || 1 || || | | 0xB2 || IncrementSyncPoint || 1 || || | ||
Line 230: | Line 232: | ||
|- | |- | ||
| 0x1D3 || SetAlphaFraction || 1 || || GpuInit writes 0x3f here. | | 0x1D3 || SetAlphaFraction || 1 || || GpuInit writes 0x3f here. | ||
|- | |||
| 0x1D4 || || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x1D5 || SetHybridAntiAliasControl || 1 || bitfield || Bit0-3: ?, bit4: Enable | | 0x1D5 || SetHybridAntiAliasControl || 1 || bitfield || Bit0-3: ?, bit4: Enable | ||
|- | |||
| 0x1D6 || || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x1D8 || || 1 || || | |||
|- | |||
| 0x1D9 || || 1 || || | |||
|- | |||
| 0x1DA || || 1 || || | |||
|- | |||
| 0x1DB || || 1 || || | |||
|- | |||
| 0x1DC || || 1 || || | |||
|- | |||
| 0x1DD || || 1 || || | |||
|- | |||
| 0x1DE || || 1 || || | |||
|- | |||
| 0x1DF || SetShaderLocalMemoryWindow || 1 || uint || | | 0x1DF || SetShaderLocalMemoryWindow || 1 || uint || | ||
|- | |- | ||
| 0x1E0 || || 1 || || | |||
|- | |||
| 0x1E1 || || 1 || || | |||
|- | |||
| 0x1E2 || || 1 || || | |||
|- | |||
| 0x1E3 || || 1 || || | |||
|- | |||
| 0x1E4 || SetShaderLocalMemoryA || 1 || || | | 0x1E4 || SetShaderLocalMemoryA || 1 || || | ||
|- | |- | ||
Line 258: | Line 286: | ||
|- | |- | ||
| 0x1F3 || SetZcullRegionPixelOffsetC || 1 || || SetRenderTargets optionally writes 0 here. | | 0x1F3 || SetZcullRegionPixelOffsetC || 1 || || SetRenderTargets optionally writes 0 here. | ||
|- | |- | ||
| 0x1F4 || || 1 || || | |||
|- | |||
| 0x1F5 || || 1 || || | |||
|- | |||
| 0x1F6 || || 1 || || | |||
|- | |||
| 0x1F7 || SetCullBeforeFetch || 1 || || | | 0x1F7 || SetCullBeforeFetch || 1 || || | ||
|- | |- | ||
Line 427: | Line 461: | ||
| 0x3D7 || SetBackStencilFuncMask || 1 || || | | 0x3D7 || SetBackStencilFuncMask || 1 || || | ||
|- | |- | ||
| 0x3D8 || | | 0x3D8 || SetTiledCache || 1 || bool || Trigger? | ||
|- | |||
| 0x3D9 || SetTiledCacheTileSize || 1 || bitfield || Bit0-15: ?, bit16-31: ? | |||
|- | |- | ||
| | | 0x3DA || || 1 || || | ||
|- | |- | ||
| | | 0x3DB || || 1 || || | ||
|- | |- | ||
| | | 0x3DC || || 1 || || | ||
|- | |- | ||
| | | 0x3DD || || 1 || || | ||
|- | |- | ||
| 0x3E4 || SetSingleCtWriteControl || 1 || || | | 0x3DE || TiledCacheInvalidate || 1 || bitfield || Bit4-6: DiscardColorIndex, bit0: DiscardDepthStencil | ||
|- | |||
| 0x3DF || || 1 || || | |||
|- | |||
| 0x3E0 || TiledCacheFlush || 1 || bool || Trigger? | |||
|- | |||
| 0x3E1 || SetVertexStreamSubstituteA || 1 || || | |||
|- | |||
| 0x3E2 || SetVertexStreamSubstituteB || 1 || || | |||
|- | |||
| 0x3E3 || SetLineModePolygonClip || 1 || || | |||
|- | |||
| 0x3E4 || SetSingleCtWriteControl || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x3E6 || SetVtgWarpWatermarks || 1 || || | | 0x3E6 || SetVtgWarpWatermarks || 1 || || | ||
Line 521: | Line 565: | ||
| 0x40C+N || SetTirModulationCoefficientTable || 4 || float[4] || | | 0x40C+N || SetTirModulationCoefficientTable || 4 || float[4] || | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x410 || || 1 || || | |||
|- | |||
| 0x411 || SetSpareNoop01 || 1 || || | | 0x411 || SetSpareNoop01 || 1 || || | ||
|- | |- | ||
Line 550: | Line 596: | ||
|- | |- | ||
| 0x41F || SetSpareNoop15 || 1 || || | | 0x41F || SetSpareNoop15 || 1 || || | ||
|- | |- | ||
| 0x420 || || 1 || || | |||
|- | |||
| 0x421 || || 1 || || | |||
|- | |||
| 0x422 || || 1 || || | |||
|- | |||
| 0x423 || || 1 || || | |||
|- | |||
| 0x424 || || 1 || || | |||
|- | |||
| 0x425 || || 1 || || | |||
|- | |||
| 0x426 || || 1 || || | |||
|- | |||
| 0x427 || || 1 || || | |||
|- | |||
| 0x428 || || 1 || || | |||
|- | |||
| 0x429 || || 1 || || | |||
|- | |||
| 0x42A || || 1 || || | |||
|- | |||
| 0x42B || || 1 || || | |||
|- | |||
| 0x42C || SetReservedSwMethod03 || 1 || || | | 0x42C || SetReservedSwMethod03 || 1 || || | ||
|- | |- | ||
Line 594: | Line 664: | ||
|- | |- | ||
| 0x441 || SetReservedSwMethod15 || 1 || || | | 0x441 || SetReservedSwMethod15 || 1 || || | ||
|- | |- | ||
| 0x442 || || 1 || || | |||
|- | |||
| 0x443 || NoOperationDataHi || 1 || || | | 0x443 || NoOperationDataHi || 1 || || | ||
|- | |- | ||
Line 636: | Line 708: | ||
|- | |- | ||
| 0x47F || DecompressZetaSurface || 1 || trigger || 1 is written here to trigger. | | 0x47F || DecompressZetaSurface || 1 || trigger || 1 is written here to trigger. | ||
|- | |||
| 0x480 || || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x482 || SetZtSparse || 1 || || | | 0x482 || SetZtSparse || 1 || || | ||
Line 785: | Line 859: | ||
| 0x509 || SetGlobalBaseInstanceIndex || 1 || || | | 0x509 || SetGlobalBaseInstanceIndex || 1 || || | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x511 || || 1 || || | |||
|- | |||
| 0x512 || || 1 || || | |||
|- | |||
| 0x513 || || 1 || || | |||
|- | |||
| 0x514 || SetPsWarpWatermarks || 1 || || | | 0x514 || SetPsWarpWatermarks || 1 || || | ||
|- | |- | ||
Line 861: | Line 941: | ||
| 0x569 || SetBackStencilFunc || 1 || || | | 0x569 || SetBackStencilFunc || 1 || || | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x56D || | | 0x56D || SetCsaa || 1 || bool || | ||
|- | |- | ||
| 0x56E || SetSrgbWrite || 1 || || | | 0x56E || SetSrgbWrite || 1 || || | ||
Line 1,050: | Line 1,130: | ||
|- | |- | ||
| 0x680+N || SetCtWrite || 8 || || | | 0x680+N || SetCtWrite || 8 || || | ||
|- style="border-top: double" | |||
| 0x689 || || 1 || || | |||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0x68B || PipeNop || 1 || trigger || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... | | 0x68B || PipeNop || 1 || trigger || Always 0 is written here. During zcull ctx-save, spammed when enabling raster, ... | ||
Line 1,615: | Line 1,697: | ||
|- style="border-top: double" | |- style="border-top: double" | ||
| 0xD00 || SetMmeShadowScratch || 8 || || | | 0xD00 || SetMmeShadowScratch || 8 || || | ||
|} | |||
= KEPLER_INLINE_TO_MEMORY_B = | |||
{| class=wikitable | |||
! Register || Name || Size || Type || Notes | |||
|- | |||
| 0x0 || SetObject || 1 || bitfield || Bit0-15: ClassId, bit16-20: EngineId | |||
|- style="border-top: double" | |||
| 0x40 || NoOperation || 1 || || | |||
|- | |||
| 0x41 || SetNotifyA || 1 || gpuva || | |||
|- | |||
| 0x42 || SetNotifyB || 1 || gpuva || | |||
|- | |||
| 0x43 || Notify || 1 || || 0=WriteOnly, 1=WriteThenAwaken | |||
|- | |||
| 0x44 || WaitForIdle || 1 || || | |||
|- style="border-top: double" | |||
| 0x4C || SetGlobalRenderEnableA || 1 || || | |||
|- | |||
| 0x4D || SetGlobalRenderEnableB || 1 || || | |||
|- | |||
| 0x4E || SetGlobalRenderEnableC || 1 || || | |||
|- | |||
| 0x4F || SendGoIdle || 1 || || | |||
|- | |||
| 0x50 || PmTrigger || 1 || || | |||
|- | |||
| 0x51 || PmTriggerWfi || 1 || || | |||
|- style="border-top: double" | |||
| 0x54 || SetInstrumentationMethodHeader || 1 || || | |||
|- | |||
| 0x55 || SetInstrumentationMethodData || 1 || || | |||
|- style="border-top: double" | |||
| 0x60 || LineLengthIn || 1 || || | |||
|- | |||
| 0x61 || LineCount || 1 || || | |||
|- | |||
| 0x62 || OffsetOutUpper || 1 || || | |||
|- | |||
| 0x63 || OffsetOut || 1 || || | |||
|- | |||
| 0x64 || PitchOut || 1 || || | |||
|- | |||
| 0x65 || SetDstBlockSize || 1 || || | |||
|- | |||
| 0x66 || SetDstWidth || 1 || || | |||
|- | |||
| 0x67 || SetDstHeight || 1 || || | |||
|- | |||
| 0x68 || SetDstDepth || 1 || || | |||
|- | |||
| 0x69 || SetDstLayer || 1 || || | |||
|- | |||
| 0x6A || SetDstOriginBytesX || 1 || || | |||
|- | |||
| 0x6B || SetDstOriginSamplesY || 1 || || | |||
|- | |||
| 0x6C || LaunchDma || 1 || || | |||
|- | |||
| 0x6D || LoadInlineData || 1 || || | |||
|- style="border-top: double" | |||
| 0x77 || SetI2mSemaphoreA || 1 || || | |||
|- | |||
| 0x78 || SetI2mSemaphoreB || 1 || || | |||
|- | |||
| 0x79 || SetI2mSemaphoreC || 1 || || | |||
|- style="border-top: double" | |||
| 0x7C || SetI2mSpareNoop00 || 1 || || | |||
|- | |||
| 0x7D || SetI2mSpareNoop01 || 1 || || | |||
|- | |||
| 0x7E || SetI2mSpareNoop02 || 1 || || | |||
|- | |||
| 0x7F || SetI2mSpareNoop03 || 1 || || | |||
|- | |||
| 0x80 || SetFalcon00 || 1 || || | |||
|- | |||
| 0x81 || SetFalcon01 || 1 || || | |||
|- | |||
| 0x82 || SetFalcon02 || 1 || || | |||
|- | |||
| 0x83 || SetFalcon03 || 1 || || | |||
|- | |||
| 0x84 || SetFalcon04 || 1 || || | |||
|- | |||
| 0x85 || SetFalcon05 || 1 || || | |||
|- | |||
| 0x86 || SetFalcon06 || 1 || || | |||
|- | |||
| 0x87 || SetFalcon07 || 1 || || | |||
|- | |||
| 0x88 || SetFalcon08 || 1 || || | |||
|- | |||
| 0x89 || SetFalcon09 || 1 || || | |||
|- | |||
| 0x8A || SetFalcon10 || 1 || || | |||
|- | |||
| 0x8B || SetFalcon11 || 1 || || | |||
|- | |||
| 0x8C || SetFalcon12 || 1 || || | |||
|- | |||
| 0x8D || SetFalcon13 || 1 || || | |||
|- | |||
| 0x8E || SetFalcon14 || 1 || || | |||
|- | |||
| 0x8F || SetFalcon15 || 1 || || | |||
|- | |||
| 0x90 || SetFalcon16 || 1 || || | |||
|- | |||
| 0x91 || SetFalcon17 || 1 || || | |||
|- | |||
| 0x92 || SetFalcon18 || 1 || || | |||
|- | |||
| 0x93 || SetFalcon19 || 1 || || | |||
|- | |||
| 0x94 || SetFalcon20 || 1 || || | |||
|- | |||
| 0x95 || SetFalcon21 || 1 || || | |||
|- | |||
| 0x96 || SetFalcon22 || 1 || || | |||
|- | |||
| 0x97 || SetFalcon23 || 1 || || | |||
|- | |||
| 0x98 || SetFalcon24 || 1 || || | |||
|- | |||
| 0x99 || SetFalcon25 || 1 || || | |||
|- | |||
| 0x9A || SetFalcon26 || 1 || || | |||
|- | |||
| 0x9B || SetFalcon27 || 1 || || | |||
|- | |||
| 0x9C || SetFalcon28 || 1 || || | |||
|- | |||
| 0x9D || SetFalcon29 || 1 || || | |||
|- | |||
| 0x9E || SetFalcon30 || 1 || || | |||
|- | |||
| 0x9F || SetFalcon31 || 1 || || | |||
|- style="border-top: double" | |||
| 0x554 || SetRenderEnableA || 1 || || | |||
|- | |||
| 0x555 || SetRenderEnableB || 1 || || | |||
|- | |||
| 0x556 || SetRenderEnableC || 1 || || | |||
|- style="border-top: double" | |||
| 0x651 || SetRenderEnableOverride || 1 || || | |||
|- style="border-top: double" | |||
| 0xD00 || SetMmeShadowScratch || uint[0x100] || 256 || Mostly general purpose, sometimes accessed by FirmwareCall. | |||
|} | |} | ||