voodoo/voodoo2.txt
2025-09-13 21:10:08 -05:00

195 lines
20 KiB
Plaintext

status 0x000(0) 31:0 Chuck R Yes / n/a Voodoo2 Graphics Status
intrCtrl 0x004(4) 31:0 Chuck R/W Yes / No Interrupt Status and Control
vertexAx 0x008(8) 15:0 Chuck+Bruce% W Yes / Yes Vertex A x-coordinate location (12.4 format)
vertexAy 0x00c(12) 15:0 Chuck+Bruce% W Yes / Yes Vertex A y-coordinate location (12.4 format)
vertexBx 0x010(16) 15:0 Chuck+Bruce% W Yes / Yes Vertex B x-coordinate location (12.4 format)
vertexBy 0x014(20) 15:0 Chuck+Bruce% W Yes / Yes Vertex B y-coordinate location (12.4 format)
vertexCx 0x018(24) 15:0 Chuck+Bruce% W Yes / Yes Vertex C x-coordinate location (12.4 format)
vertexCy 0x01c(28) 15:0 Chuck+Bruce% W Yes / Yes Vertex C y-coordinate location (12.4 format)
startR 0x020(32) 23:0 Chuck W Yes / Yes Starting Red parameter (12.12 format)
startG 0x024(36) 23:0 Chuck W Yes / Yes Starting Green parameter (12.12 format)
startB 0x028(40) 23:0 Chuck W Yes / Yes Starting Blue parameter (12.12 format)
startZ 0x02c(44) 31:0 Chuck W Yes / Yes Starting Z parameter (20.12 format)
startA 0x030(48) 23:0 Chuck W Yes / Yes Starting Alpha parameter (12.12 format)
startS 0x034(52) 31:0 Bruce* W Yes / Yes Starting S/W parameter (14.18 format)
startT 0x038(56) 31:0 Bruce* W Yes / Yes Starting T/W parameter (14.18 format)
startW 0x03c(60) 31:0 Chuck+Bruce* W Yes / Yes Starting 1/W parameter (2.30 format)
dRdX 0x040(64) 23:0 Chuck W Yes / Yes Change in Red with respect to X (12.12 format)
dGdX 0x044(68) 23:0 Chuck W Yes / Yes Change in Green with respect to X (12.12 format)
dBdX 0x048(72) 23:0 Chuck W Yes / Yes Change in Blue with respect to X (12.12 format)
dZdX 0x04c(76) 31:0 Chuck W Yes / Yes Change in Z with respect to X (20.12 format)
dAdX 0x050(80) 23:0 Chuck W Yes / Yes Change in Alpha with respect to X (12.12 format)
dSdX 0x054(84) 31:0 Bruce* W Yes / Yes Change in S/W with respect to X (14.18 format)
dTdX 0x058(88) 31:0 Bruce* W Yes / Yes Change in T/W with respect to X (14.18 format)
dWdX 0x05c(92) 31:0 Chuck+Bruce* W Yes / Yes Change in 1/W with respect to X (2.30 format)
dRdY 0x060(96) 23:0 Chuck W Yes / Yes Change in Red with respect to Y (12.12 format)
dGdY 0x064(100) 23:0 Chuck W Yes / Yes Change in Green with respect to Y (12.12 format)
dBdY 0x068(104) 23:0 Chuck W Yes / Yes Change in Blue with respect to Y (12.12 format)
dZdY 0x06c(108) 31:0 Chuck W Yes / Yes Change in Z with respect to Y (20.12 format)
dAdY 0x070(112) 23:0 Chuck W Yes / Yes Change in Alpha with respect to Y (12.12 format)
dSdY 0x074(116) 31:0 Bruce* W Yes / Yes Change in S/W with respect to Y (14.18 format)
dTdY 0x078(120) 31:0 Bruce* W Yes / Yes Change in T/W with respect to Y (14.18 format)
dWdY 0x07c(124) 31:0 Chuck+Bruce* W Yes / Yes Change in 1/W with respect to Y (2.30 format)
triangleCMD 0x080(128) 31 Chuck+Bruce% W Yes / Yes Execute TRIANGLE command (floating point)
reserved 0x084(132) n/a n/a W n/a
fvertexAx 0x088(136) 31:0 Chuck+Bruce% W Yes / Yes Vertex A x-coordinate location (floating point)
fvertexAy 0x08c(140) 31:0 Chuck+Bruce% W Yes / Yes Vertex A y-coordinate location (floating point)
fvertexBx 0x090(144) 31:0 Chuck+Bruce% W Yes / Yes Vertex B x-coordinate location (floating point)
fvertexBy 0x094(148) 31:0 Chuck+Bruce% W Yes / Yes Vertex B y-coordinate location (floating point)
fvertexCx 0x098(152) 31:0 Chuck+Bruce% W Yes / Yes Vertex C x-coordinate location (floating point)
fvertexCy 0x09c(156) 31:0 Chuck+Bruce% W Yes / Yes Vertex C y-coordinate location (floating point)
fstartR 0x0a0(160) 31:0 Chuck W Yes / Yes Starting Red parameter (floating point)
fstartG 0x0a4(164) 31:0 Chuck W Yes / Yes Starting Green parameter (floating point)
fstartB 0x0a8(168) 31:0 Chuck W Yes / Yes Starting Blue parameter (floating point)
fstartZ 0x0ac(172) 31:0 Chuck W Yes / Yes Starting Z parameter (floating point)
fstartA 0x0b0(176) 31:0 Chuck W Yes / Yes Starting Alpha parameter (floating point)
fstartS 0x0b4(180) 31:0 Bruce* W Yes / Yes Starting S/W parameter (floating point)
fstartT 0x0b8(184) 31:0 Bruce* W Yes / Yes Starting T/W parameter (floating point)
fstartW 0x0bc(188) 31:0 Chuck+Bruce* W Yes / Yes Starting 1/W parameter (floating point)
fdRdX 0x0c0(192) 31:0 Chuck W Yes / Yes Change in Red with respect to X (floating point)
fdGdX 0x0c4(196) 31:0 Chuck W Yes / Yes Change in Green with respect to X (floating point)
fdBdX 0x0c8(200) 31:0 Chuck W Yes / Yes Change in Blue with respect to X (floating point)
fdZdX 0x0cc(204) 31:0 Chuck W Yes / Yes Change in Z with respect to X (floating point)
fdAdX 0x0d0(208) 31:0 Chuck W Yes / Yes Change in Alpha with respect to X (floating point)
fdSdX 0x0d4(212) 31:0 Bruce* W Yes / Yes Change in S/W with respect to X (floating point)
fdTdX 0x0d8(216) 31:0 Bruce* W Yes / Yes Change in T/W with respect to X (floating point)
fdWdX 0x0dc(220) 31:0 Chuck+Bruce* W Yes / Yes Change in 1/W with respect to X (floating point)
fdRdY 0x0e0(224) 31:0 Chuck W Yes / Yes Change in Red with respect to Y (floating point)
fdGdY 0x0e4(228) 31:0 Chuck W Yes / Yes Change in Green with respect to Y (floating point)
fdBdY 0x0e8(232) 31:0 Chuck W Yes / Yes Change in Blue with respect to Y (floating point)
fdZdY 0x0ec(236) 31:0 Chuck W Yes / Yes Change in Z with respect to Y (floating point)
fdAdY 0x0f0(240) 31:0 Chuck W Yes / Yes Change in Alpha with respect to Y (floating point)
fdSdY 0x0f4(244) 31:0 Bruce* W Yes / Yes Change in S/W with respect to Y (floating point)
fdTdY 0x0f8(248) 31:0 Bruce* W Yes / Yes Change in T/W with respect to Y (floating point)
fdWdY 0x0fc(252) 31:0 Chuck+Bruce* W Yes / Yes Change in 1/W with respect to Y (floating point)
ftriangleCMD 0x100(256) 31 Chuck+Bruce% W Yes / Yes Execute TRIANGLE command (floating point)
fbzColorPath 0x104(260) 29:0 Chuck+Bruce% R/W Yes / Yes Chuck Color Path Control
fogMode 0x108(264) 7:0 Chuck R/W Yes / Yes Fog Mode Control
alphaMode 0x10c(268) 31:0 Chuck R/W Yes / Yes Alpha Mode Control
fbzMode 0x110(272) 21:0 Chuck R/W No / Yes RGB Buffer and Depth-Buffer Control
lfbMode 0x114(276) 16:0 Chuck R/W No / Yes Linear Frame Buffer Mode Control
clipLeftRight 0x118(280) 31:0 Chuck R/W No / Yes Left and Right of Clipping Register
clipLowYHighY 0x11c(284) 31:0 Chuck R/W No / Yes Top and Bottom of Clipping Register
nopCMD 0x120(288) 1:0 Chuck+Bruce% W No / Yes Execute NOP command
fastfillCMD 0x124(292) n/a Chuck W No / Yes Execute FASTFILL command
swapbufferCMD 0x128(296) 9:0 Chuck W No / Yes Execute SWAPBUFFER command
fogColor 0x12c(300) 23:0 Chuck W No / Yes Fog Color Value
zaColor 0x130(304) 31:0 Chuck W No / Yes Constant Alpha/Depth Value
chromaKey 0x134(308) 23:0 Chuck+Bruce* W No / Yes Chroma Key Compare Value
chromaRange 0x138(312) 27:0 Chuck+Bruce* W No / Yes Chroma Range Compare Values,modes,enable
userIntrCMD 0x13c(316) 9:0 Chuck W No / Yes Execute USERINTERRUPT command
stipple 0x140(320) 31:0 Chuck R/W No / Yes Rendering Stipple Value
color0 0x144(324) 31:0 Chuck R/W No / Yes Constant Color #0
color1 0x148(328) 31:0 Chuck R/W No / Yes Constant Color #1
fbiPixelsIn 0x14c(332) 23:0 Chuck R n/a Pixel Counter (Number pixels processed)
fbiChromaFail 0x150(336) 23:0 Chuck R n/a Pixel Counter (Number pixels failed Chroma test)
fbiZfuncFail 0x154(340) 23:0 Chuck R n/a Pixel Counter (Number pixels failed Z test)
fbiAfuncFail 0x158(344) 23:0 Chuck R n/a Pixel Counter (Number pixels failed Alpha test)
fbiPixelsOut 0x15c(348) 23:0 Chuck R n/a Pixel Counter (Number pixels drawn)
fogTable 0x160(352) to 0x1dc(476) 31:0 Chuck W No / Yes Fog Table
cmdFifoBaseAddr 0x1e0(480) 25:0 Chuck R/W (n/a) / No CMDFIFO base address and size
cmdFifoBump 0x1e4(484) 15:0 Chuck R/W (n/a) / No CMDFIFO bump depth
cmdFifoRdPtr 0x1e8(488) 31:0 Chuck R/W (n/a) / No CMDFIFO current read pointer
cmdFifoAMin 0x1ec(492) 31:0 Chuck R/W (n/a) / No CMDFIFO current minimum address
cmdFifoAMax 0x1f0(496) 31:0 Chuck R/W (n/a) / No CMDFIFO current maximum address
cmdFifoDepth 0x1f4(500) 15:0 Chuck R/W (n/a) / No CMDFIFO current depth
cmdFifoHoles 0x1f8(504) 15:0 Chuck R/W (n/a) / No CMDFIFO number of holes
reserved 0x1fc(508) n/a n/a n/a n/a
fbiInit4 0x200(512) 12:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 4)
vRetrace 0x204(516) 12:0 Chuck R (n/a) / No Vertical Retrace Counter
backPorch 0x208(520) 24:0 Chuck R/W (n/a) / No Video Backporch Timing Generator
videoDimensions 0x20c(524) 26:0 Chuck R/W (n/a) / No Video Screen Dimensions
fbiInit0 0x210(528) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 0)
fbiInit1 0x214(532) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 1)
fbiInit2 0x218(536) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 2)
fbiInit3 0x21c(540) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 3)
hSync 0x220(544) 26:0 Chuck W (n/a) / No Horizontal Sync Timing Generator
vSync 0x224(548) 28:0 Chuck W (n/a) / No Vertical Sync Timing Generator
clutData 0x228(552) 29:0 Chuck W No / Yes Video Color Lookup Table Initialization
dacData 0x22c(556) 13:0 Chuck W (n/a) / No External DAC Initialization
maxRgbDelta 0x230(560) 23:0 Chuck W (n/a) / No Max. RGB difference for Video Filtering
hBorder 0x234(564) 24:0 Chuck W (n/a) / No Horizontal Border Color Control
vBorder 0x238(568) 24:0 Chuck W (n/a) / No Vertical Border Color Control
borderColor 0x23c(572) 23:0 Chuck W (n/a) / No Video Border Color
hvRetrace 0x240(576) 26:0 Chuck R (n/a) / No Horizontal and Vertical Retrace Counters (synced)
fbiInit5 0x244(580) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 5)
fbiInit6 0x248(584) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 6)
fbiInit7 0x24c(588) 31:0 Chuck R/W (n/a) / No Chuck Hardware Initialization (register 7)
reserved 0x250(592) n/a n/a n/a n/a
reserved 0x254(596) n/a n/a n/a n/a
fbiSwapHistory 0x258(600) 31:0 Chuck R n/a Swap History Register
fbiTrianglesOut 0x25c(604) 23:0 Chuck R n/a Triangle Counter (Number triangles drawn)
sSetupMode 0x260(608) 19:0 Chuck W Yes / Yes Triangle setup mode
sVx 0x264(612) 31:0 Chuck+Bruce* W Yes / Yes Triangle setup X
sVy 0x268(616) 31:0 Chuck+Bruce* W Yes / Yes Triangle setup Y
sARGB 0x26c(620) 31:0 Chuck+Bruce* W Yes / Yes Triangle setup Alpha, Red, Green, Blue
sRed 0x270(624) 31:0 Chuck W Yes / Yes Triangle setup Red value
sGreen 0x274(628) 31:0 Chuck W Yes / Yes Triangle setup Green value
sBlue 0x278(632) 31:0 Chuck W Yes / Yes Triangle setup Blue value
sAlpha 0x27c(636) 31:0 Chuck W Yes / Yes Triangle setup Alpha value
sVz 0x280(640) 31:0 Chuck W Yes / Yes Triangle setup Z
sWb 0x284(644) 31:0 Chuck+Bruce* W Yes / Yes Triangle setup Global W
sWtmu0 0x288(648) 31:0 Bruce* W Yes / Yes Triangle setup Tmu0 & Tmu1 W
sS/W0 0x28c(652) 31:0 Bruce* W Yes / Yes Triangle setup Tmu0 & Tmu1 S/W
sT/W0 0x290(656) 31:0 Bruce* W Yes / Yes Triangle setup Tmu0 & Tmu1 T/W
sWtmu1 0x294(660) 31:0 Bruce-1 W Yes / Yes Triangle setup Tmu1 only W
sS/Wtmu1 0x298(664) 31:0 Bruce-1 W Yes / Yes Triangle setup Tmu1 only S/W
sT/Wtmu1 0x29c(668) 31:0 Bruce-1 W Yes / Yes Triangle setup Tmu1 only T/W
sDrawTriCMD 0x2a0(672) 31:0 Chuck+Bruce* W Yes / Yes Triangle setup (Draw)
sBeginTriCMD 0x2a4(676) 31:0 Chuck W Yes / Yes Triangle setup Start New triangle
reserved 0x2a8(680) n/a n/a n/a n/a
reserved 0x2ac(684) n/a n/a n/a n/a
reserved 0x2b0(688) n/a n/a n/a n/a
reserved 0x2b4(692) n/a n/a n/a n/a
reserved 0x2b8(696) n/a n/a n/a n/a
reserved 0x2bc(700) n/a n/a n/a n/a
bltSrcBaseAddr 0x2c0(704) 21:0 Chuck R/W Yes / Yes BitBLT Source base address
bltDstBaseAddr 0x2c4(708) 21:0 Chuck R/W Yes / Yes BitBLT Destination base address
bltXYStrides 0x2c8(712) 27:0 Chuck R/W Yes / Yes BitBLT Source and Destination strides
bltSrcChromaRange 0x2cc(716) 31:0 Chuck R/W Yes / Yes BiBLT Source Chroma key range
bltDstChromaRange 0x2d0(720) 31:0 Chuck R/W Yes / Yes BitBLT Destination Chroma key range
bltClipX 0x2d4(724) 27:0 Chuck R/W Yes / Yes BitBLT Min/Max X clip values
bltClipY 0x2d8(728) 27:0 Chuck R/W Yes / Yes BitBLT Min/Max Y clip values
reserved 0x2dc(732)
bltSrcXY 0x2e0(736) 26:0 Chuck R/W Yes / Yes BitBLT Source starting XY coordinates
bltDstXY 0x2e4(740) 31:0 Chuck R/W Yes / Yes BitBLT Destination starting XY coordinates
bltSize 0x2e8(744) 31:0 Chuck R/W Yes / Yes BitBLT width and height
bltRop 0x2ec(748) 15:0 Chuck R/W Yes / Yes BitBLT Raster operations
bltColor 0x2f0(752) 31:0 Chuck R/W Yes / Yes BitBLT and foreground background colors
reserved 0x2f4(756)
bltCommand 0x2f8(760) 31:0 Chuck R/W Yes / Yes BitBLT command mode
bltData 0x2fc(764) 31:0 Chuck W Yes / Yes BitBLT data for CPU-to-Screen BitBLTs
textureMode 0x300(768) 30:0 Bruce* W Yes / Yes Texture Mode Control
tLOD 0x304(772) 27:0 Bruce* W Yes / Yes Texture LOD Settings
tDetail 0x308(776) 21:0 Bruce* W Yes / Yes Texture LOD Settings
texBaseAddr 0x30c(780) 18:0 Bruce* W Yes / Yes Texture Base Address
texBaseAddr_1 0x310(784) 18:0 Bruce* W Yes / Yes Texture Base Address (supplemental LOD 1)
texBaseAddr_2 0x314(788) 18:0 Bruce* W Yes / Yes Texture Base Address (supplemental LOD 2)
texBaseAddr_3_8 0x318(792) 18:0 Bruce* W Yes / Yes Texture Base Address (supplemental LOD 3-8)
trexInit0 0x31c(796) 31:0 Bruce* W No / Yes Bruce Hardware Initialization (register 0)
trexInit1 0x320(800) 31:0 Bruce* W No / Yes Bruce Hardware Initialization (register 1)
nccTable0 0x324(804) to 0x350(848) 31:0 Bruce* W No / Yes Narrow Channel Compression Table 0 (12 entries)
nccTable1 0x354(852) to 0x380(896) 31:0 Bruce* W No / Yes Narrow Channel Compression Table 1 (12 entries)
reserved 0x384(900) to 0x3fc(1020) n/a n/a n/a n/a