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
