Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

nv_objects.h

Go to the documentation of this file.
00001 /* Data */
00002 #define STOP                        0x00000000
00003 #define POINTS                      0x00000001
00004 #define LINES                       0x00000002
00005 #define LINE_LOOP                   0x00000003
00006 #define LINE_STRIP                  0x00000004
00007 #define TRIANGLES                   0x00000005
00008 #define TRIANGLE_STRIP              0x00000006
00009 #define TRIANGLE_FAN                0x00000007
00010 #define QUADS                       0x00000008
00011 #define QUAD_STRIP                  0x00000009
00012 #define POLYGON                     0x0000000A
00013 
00014 /* Boolean */
00015 #define FALSE                       0
00016 #define TRUE                        1
00017 
00042 #define NV_MEMORY_TO_MEMORY_FORMAT          0x00000039
00043 #define NV_MEMORY_TO_MEMORY_FORMAT_NOTIFY       0x00000104
00044 #define NV_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY       0x00000180
00045 #define NV_MEMORY_TO_MEMORY_FORMAT_OBJECT_IN        0x00000184
00046 #define NV_MEMORY_TO_MEMORY_FORMAT_OBJECT_OUT       0x00000188
00047 #define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN        0x0000030C
00048 #define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT       0x00000310
00049 #define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_IN     0x00000314
00050 #define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT        0x00000318
00051 #define NV_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN   0x0000031C
00052 #define NV_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT       0x00000320
00053 
00054 
00055 #define NV04_GDI_RECTANGLE_TEXT             0x0000004a
00056 
00057 #define NV04_GDI_RECTANGLE_TEXT_SET_DMA_TO_MEMORY   0x00000180
00058 #define NV04_GDI_RECTANGLE_TEXT_PATTERN         0x00000188
00059 #define NV04_GDI_RECTANGLE_TEXT_ROP5            0x0000018c
00060 #define NV04_GDI_RECTANGLE_TEXT_SURFACE         0x00000198
00061 
00062 #define NV04_GDI_RECTANGLE_TEXT_OPERATION       0x000002fc
00063 #define NV04_GDI_RECTANGLE_TEXT_FORMAT          0x00000300
00064 #define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL1_TL     0x000005f4
00065 #define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL1_BR     0x000005f8
00066 #define NV04_GDI_RECTANGLE_TEXT_FILL_VALUE      0x000005fc
00067 #define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL2_TL     0x00000600
00068 #define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL2_BR     0x00000604
00069 
00070 
00071 #define NV04_CONTEXT_SURFACES_3D            0x00000053
00072 #define NV04_CONTEXT_SURFACES_3D_DMA_NOTIFY     0x00000180
00073 #define NV04_CONTEXT_SURFACES_3D_DMA_COLOR      0x00000184
00074 #define NV04_CONTEXT_SURFACES_3D_DMA_ZETA       0x00000188
00075 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL    0x000002F8
00076 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_X  15:0
00077 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_WIDTH  31:16
00078 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL      0x000002FC
00079 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_Y    15:0
00080 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_HEIGHT   31:16
00081 #define NV04_CONTEXT_SURFACES_3D_FORMAT         0x00000300
00082 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR       7:0
00083 #define NV04_CONTEXT_SURFACES_3D_FORMAT_TYPE        15:8
00084 #define NV04_CONTEXT_SURFACES_3D_FORMAT_WIDTH       23:16 // also I get zeroes here
00085 #define NV04_CONTEXT_SURFACES_3D_FORMAT_HEIGHT      31:24 // see above
00086 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE      0x00000304
00087 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_WIDTH    15:0
00088 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_HEIGHT   31:15
00089 #define NV04_CONTEXT_SURFACES_3D_PITCH          0x00000308
00090 #define NV04_CONTEXT_SURFACES_3D_PITCH_COLOR        15:0
00091 #define NV04_CONTEXT_SURFACES_3D_PITCH_ZETA     31:16
00092 #define NV04_CONTEXT_SURFACES_3D_OFFSET_COLOR       0x0000030c
00093 #define NV04_CONTEXT_SURFACES_3D_OFFSET_ZETA        0x00000310
00094 
00095 
00096 #define NV04_DX5_TEXTURED_TRIANGLE          0x00000054
00097 
00098 #define NV04_DX5_TEXTURED_TRIANGLE_NOP          0x00000100
00099 #define NV04_DX5_TEXTURED_TRIANGLE_NOTIFY       0x00000104
00100 
00101 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_NOTIFY       0x00000180
00102 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_1        0x00000184
00103 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_2        0x00000188
00104 #define NV04_DX5_TEXTURED_TRIANGLE_SURFACE      0x0000018c
00105 
00106 #define NV04_DX5_TEXTURED_TRIANGLE_COLOR_KEY        0x00000300
00107 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_OFFSET   0x00000304
00108 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT   0x00000308
00109 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_WRAP_T    30:28
00110 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_WRAP_S    26:24
00111 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_V    23:20
00112 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_U    19:16
00113 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_MIPMAPS   15:12
00114 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR     11:8
00115 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER   0x0000030C
00116 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER_MAG   30:28
00117 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER_MIN   26:24
00118 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER_LODBIAS   23:16
00119 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER_DITHER    15:15
00120 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND        0x00000310
00121 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_DST        31:28
00122 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SRC        27:24
00123 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_ENABLE     20:20
00124 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_FOG        16:16
00125 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SPECULAR   12:12
00126 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTUREPERSPECTIVE 8:8
00127 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADEMODE  7:6
00128 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTURE    3:0
00129 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL      0x00000314
00130 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHAREF 7:0
00131 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHAFUNC    11:8
00132 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHATEST    12:12
00133 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ZENABLE  14:14
00134 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ZFUNC    19:16
00135 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_CULLMODE 21:20
00136 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_DITHER   22:22
00137 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ZPERSPECTIVE 23:23
00138 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ZWRITE   24:24
00139 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ZFORMAT  31:30
00140 #define NV04_DX5_TEXTURED_TRIANGLE_FOG_COLOR        0x00000318
00141 
00142 
00143 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SX(i)   (0x00000400 + 0x20 * i)
00144 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SX__SIZE        16
00145 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SY(i)   (0x00000404 + 0x20 * i)
00146 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SY__SIZE        16
00147 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SZ(i)   (0x00000408 + 0x20 * i)
00148 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SZ__SIZE        16
00149 #define NV04_DX5_TEXTURED_TRIANGLE_INV_W(i)     (0x0000040C + 0x20 * i)
00150 #define NV04_DX5_TEXTURED_TRIANGLE_INV_W__SIZE          16
00151 #define NV04_DX5_TEXTURED_TRIANGLE_COLOR(i)     (0x00000410 + 0x20 * i)
00152 #define NV04_DX5_TEXTURED_TRIANGLE_COLOR__SIZE          16
00153 #define NV04_DX5_TEXTURED_TRIANGLE_SPECULAR(i)      (0x00000414 + 0x20 * i)
00154 #define NV04_DX5_TEXTURED_TRIANGLE_SPECULAR__SIZE       16
00155 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_S(i)     (0x00000418 + 0x20 * i)
00156 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_S__SIZE      16
00157 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_T(i)     (0x0000041C + 0x20 * i)
00158 #define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_T__SIZE      16
00159 
00160 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW         0x00000600
00161 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V0        3:0
00162 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V1        7:4
00163 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V2       11:8
00164 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V3      15:12
00165 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V4      19:16
00166 #define NV04_DX5_TEXTURED_TRIANGLE_DRAW_V5      23:20
00167 
00168 #define NV04_DX6_MULTITEX_TRIANGLE          0x00000055
00169 
00170 #define NV04_DX6_MULTITEX_TRIANGLE_NOP          0x00000100
00171 #define NV04_DX6_MULTITEX_TRIANGLE_NOTIFY       0x00000104
00172 
00173 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_NOTIFY       0x00000180
00174 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_1        0x00000184
00175 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_2        0x00000188
00176 #define NV04_DX6_MULTITEX_TRIANGLE_SURFACE      0x0000018c
00177 
00178 #define NV04_DX6_MULTITEX_TRIANGLE_OFFSET0      0x00000308
00179 #define NV04_DX6_MULTITEX_TRIANGLE_OFFSET1      0x0000030c
00180 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT0      0x00000310
00181 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT1      0x00000314
00182 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER0      0x00000318
00183 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER1      0x0000031c
00184 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA  0x00000320
00185 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR  0x00000324
00186 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA  0x0000032c
00187 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR  0x00000330
00188 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR   0x00000334
00189 
00190 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND        0x00000338
00191 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0     0x0000033c
00192 // control0 is more or less the same as 0x54 (dx5_tri)_control
00193 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_R_WRITE 27:27
00194 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_G_WRITE 28:28
00195 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_B_WRITE 29:29
00196 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_A_WRITE 26:26
00197 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_S_WRITE 25:25
00198 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1     0x00000340
00199 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCILENABLE 0:0
00200 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCILFUNC 7:4
00201 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCILREF  15:8
00202 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_READ   23:16
00203 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_WRITE  31:24
00204 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2     0x00000344
00205 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_FAIL    3:0
00206 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_ZFAIL   7:4
00207 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_ZPASS   11:8
00208 #define NV04_DX6_MULTITEX_TRIANGLE_FOG_COLOR        0x00000348
00209 
00210 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SX(i)   (0x00000400 + 0x28 * i)
00211 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SX__SIZE        8
00212 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SY(i)   (0x00000404 + 0x28 * i)
00213 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SY__SIZE        8
00214 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SZ(i)   (0x00000408 + 0x28 * i)
00215 #define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SZ__SIZE        8
00216 #define NV04_DX6_MULTITEX_TRIANGLE_INV_W(i)     (0x0000040C + 0x28 * i)
00217 #define NV04_DX6_MULTITEX_TRIANGLE_INV_W__SIZE          8
00218 #define NV04_DX6_MULTITEX_TRIANGLE_COLOR(i)     (0x00000410 + 0x28 * i)
00219 #define NV04_DX6_MULTITEX_TRIANGLE_COLOR__SIZE          8
00220 #define NV04_DX6_MULTITEX_TRIANGLE_SPECULAR(i)      (0x00000414 + 0x28 * i)
00221 #define NV04_DX6_MULTITEX_TRIANGLE_SPECULAR__SIZE       8
00222 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_S(i)    (0x00000418 + 0x28 * i)
00223 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_S__SIZE     8
00224 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_T(i)    (0x0000041C + 0x28 * i)
00225 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_T__SIZE     8
00226 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_S(i)    (0x00000420 + 0x28 * i)
00227 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_S__SIZE     8
00228 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_T(i)    (0x00000424 + 0x28 * i)
00229 #define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_T__SIZE     8
00230 
00231 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW         0x00000540
00232 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V0        3:0
00233 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V1        7:4
00234 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V2       11:8
00235 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V3      15:12
00236 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V4      19:16
00237 #define NV04_DX6_MULTITEX_TRIANGLE_DRAW_V5      23:20
00238 
00239 #define NV04_COLOR_KEY                  0x00000057
00240 #define NV04_COLOR_KEY_SET_DMA_TO_MEMORY        0x00000180
00241 #define NV04_COLOR_KEY_FORMAT               0x00000300
00242 #define NV04_COLOR_KEY_VALUE                0x00000304
00243 
00244 #define NV04_SOLID_LINE                 0x0000005c
00245 #define NV04_SOLID_LINE_CLIP_RECTANGLE          0x00000184
00246 #define NV04_SOLID_LINE_PATTERN             0x00000188
00247 #define NV04_SOLID_LINE_ROP             0x0000018c
00248 #define NV04_SOLID_LINE_SURFACE             0x00000198
00249 #define NV04_SOLID_LINE_OPERATION           0x000002FC
00250 #define NV04_SOLID_LINE_COLOR_FORMAT            0x00000300
00251 #define NV04_SOLID_LINE_COLOR_VALUE         0x00000304
00252 #define NV04_SOLID_LINE_START               0x00000400
00253 #define NV04_SOLID_LINE_START_X             15:0
00254 #define NV04_SOLID_LINE_START_Y             31:16
00255 #define NV04_SOLID_LINE_END             0x00000400
00256 #define NV04_SOLID_LINE_END_X               15:0
00257 #define NV04_SOLID_LINE_END_Y               31:16
00258 
00259 #define NV04_UNK005E                    0x0000005e
00260 #define NV04_UNK005E_COUNTER                0x00000304
00261 
00262 #define NV_IMAGE_FROM_CPU               0x00000061
00263 #define NV_IMAGE_FROM_CPU_DMA_NOTIFY            0x00000180
00264 #define NV_IMAGE_FROM_CPU_CLIP_RECTANGLE        0x00000188
00265 #define NV_IMAGE_FROM_CPU_PATTERN           0x0000018C
00266 #define NV_IMAGE_FROM_CPU_ROP               0x00000190
00267 #define NV_IMAGE_FROM_CPU_SURFACE           0x0000019C
00268 #define NV_IMAGE_FROM_CPU_OPERATION         0x000002FC
00269 #define NV_IMAGE_FROM_CPU_FORMAT            0x00000300
00270 
00271 // XXX: the hw context holds type = 061 !
00272 #define NV05_IMAGE_FROM_CPU             0x00000065
00273 
00274 #define NV05_IMAGE_FROM_CPU_DMA_NOTIFY          0x00000180
00275 #define NV05_IMAGE_FROM_CPU_CLIP_RECTANGLE      0x00000188
00276 #define NV05_IMAGE_FROM_CPU_PATTERN         0x0000018C
00277 #define NV05_IMAGE_FROM_CPU_ROP             0x00000190
00278 #define NV05_IMAGE_FROM_CPU_SURFACE         0x0000019C
00279 #define NV05_IMAGE_FROM_CPU_OPERATION           0x000002FC
00280 #define NV05_IMAGE_FROM_CPU_FORMAT          0x00000300
00281 #define NV05_IMAGE_FROM_CPU_POINT           0x00000304
00282 #define NV05_IMAGE_FROM_CPU_POINT_X         15:0
00283 #define NV05_IMAGE_FROM_CPU_POINT_Y         31:16
00284 #define NV05_IMAGE_FROM_CPU_SIZE_OUT            0x00000308
00285 #define NV05_IMAGE_FROM_CPU_SIZE_OUT_WIDTH      15:0
00286 #define NV05_IMAGE_FROM_CPU_SIZE_OUT_HEIGHT     31:16
00287 #define NV05_IMAGE_FROM_CPU_SIZE_IN         0x0000030c
00288 #define NV05_IMAGE_FROM_CPU_SIZE_IN_WIDTH       15:0
00289 #define NV05_IMAGE_FROM_CPU_SIZE_IN_HEIGHT      31:16
00290 #define NV05_IMAGE_FROM_CPU_COLOR(i)            (0x000000400 + 4 * i)
00291 #define NV05_IMAGE_FROM_CPU_COLOR__SIZE             1792
00292 
00293 /*
00294 NV10_TCL_PRIMITIVE_3D unknown commands
00295         values
00296 0100        1   nop like for NV04_DX6_MULTITEX_TRIANGLE?
00297 0104        1   notify like for NV04_DX6_MULTITEX_TRIANGLE?
00298 0120        1   set to 0 on init context, correspond to nv10_image_blit[0x120]
00299 0124        1   set to 1 on init context, correspond to nv10_image_blit[0x124]
00300 0128        1   set to 2 on init context, correspond to nv10_image_blit[0x128]
00301 01ac-01b0   2   (nv17gl only?) set to same dma object on init context
00302 0258-025c   2   (nv17gl only?) set to 1 on init context
00303 0290        1   set to 0x00100001 on init context
00304 02b4        1   set to 0 before setting the clip_horiz,vert values
00305 02c4-02dc   7   set to 0 on init context
00306 02e4-02fc   7   set to 0 on init context
00307 0318        1   set to 0 before point_smooth_enable in context setup
00308             point parameter stuff?
00309 03a8-03b0   3   set to (1.0,1.0,1.0) for some lighting stuff
00310 03f0        1   set to 3 when fsaa is enabled, renders then set to 2 for swap buffers
00311 03f4        1   set to 0 on init context
00312 03f8-03fc   2   (nv17 only) set to 0 on init context
00313 06a0        3   vector = func1(shininess)
00314 06ac        3   vector = func2(shininess)
00315 0cf0        1   just before sending vertex command and datas
00316 0d74        1   (nv17 only) set to 0 on init context
00317 0d84        1   (nv17gl only?) set to 3 on init context
00318 */
00319 
00320 #define NV10_TCL_PRIMITIVE_3D               0x00000096
00321 
00322 #define NV10_TCL_PRIMITIVE_3D_UNK0100           0x00000100
00323 #define NV10_TCL_PRIMITIVE_3D_UNK0104           0x00000104
00324 //                          0x00000120
00325 //                          0x00000124
00326 //                          0x00000128
00327 #define NV10_TCL_PRIMITIVE_3D_SET_DMA_TO_MEMORY     0x00000180
00328 #define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY0    0x00000184
00329 #define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY1    0x00000188
00330 #define NV10_TCL_PRIMITIVE_3D_SET_DISPLAY_LIST      0x0000018c
00331 #define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY2    0x00000194
00332 #define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY3    0x00000198
00333 //                          0x000001ac
00334 //                          0x000001b0
00335 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ        0x00000200
00336 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT     0x00000204
00337 #define NV10_TCL_PRIMITIVE_3D_BUFFER_FORMAT     0x00000208
00338 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH      0x0000020c
00339 #define NV10_TCL_PRIMITIVE_3D_COLOR_OFFSET      0x00000210
00340 #define NV10_TCL_PRIMITIVE_3D_DEPTH_OFFSET      0x00000214
00341 #define NV10_TCL_PRIMITIVE_3D_TX_OFFSET(n)      (0x00000218+(n<<2))
00342 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT(n)      (0x00000220+(n<<2))
00343 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE(n)      (0x00000228+(n<<2))
00344 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(n)      (0x00000230+(n<<2))
00345 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(n)       (0x00000240+(n<<2))
00346 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER(n)      (0x00000248+(n<<2))
00347 //                          0x00000258
00348 //                          0x0000025c
00349 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA(n)        (0x00000260+(n<<2)) /* input combiners, portion alpha */
00350 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB(n)      (0x00000268+(n<<2)) /* input combiners, portion rgb */
00351 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR0         0x00000270      /* combiners, constant colors */
00352 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR1         0x00000274
00353 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(n)       (0x00000278+(n<<2)) /* output combiners, portion alpha */
00354 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB(n)     (0x00000280+(n<<2)) /* output combiners, portion rgb */
00355 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0         0x00000288      /* final combiner, variables A-D */
00356 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1         0x0000028c      /* final combiner, variables E-G */
00357 //                          0x00000290
00358 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL       0x00000294
00359 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL        0x00000298
00360 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE          0x0000029c
00361 #define NV10_TCL_PRIMITIVE_3D_FOG_COORD_DIST        0x000002a0
00362 #define NV10_TCL_PRIMITIVE_3D_FOG_ENABLE        0x000002a4
00363 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR         0x000002a8
00364 //                          0x000002b4
00365 #define NV17_TCL_PRIMITIVE_3D_COLOR_MASK_ENABLE     0x000002bc
00366 #define NV10_TCL_PRIMITIVE_3D_CLIP_HORIZ        0x000002c0
00367 //                          0x000002c4
00368 //                          0x000002c8
00369 //                          0x000002cc
00370 //                          0x000002d0
00371 //                          0x000002d4
00372 //                          0x000002d8
00373 //                          0x000002dc
00374 #define NV10_TCL_PRIMITIVE_3D_CLIP_VERT         0x000002e0
00375 //                          0x000002e4
00376 //                          0x000002e8
00377 //                          0x000002ec
00378 //                          0x000002f0
00379 //                          0x000002f4
00380 //                          0x000002f8
00381 //                          0x000002fc
00382 #define NV10_TCL_PRIMITIVE_3D_ALPHA_TEST_ENABLE     0x00000300
00383 #define NV10_TCL_PRIMITIVE_3D_BLEND_ENABLE      0x00000304
00384 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE      0x00000308
00385 #define NV10_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE     0x0000030c
00386 #define NV10_TCL_PRIMITIVE_3D_DITHER_ENABLE     0x00000310
00387 #define NV10_TCL_PRIMITIVE_3D_LIGHTING_ENABLE       0x00000314
00388 //                          0x00000318
00389 #define NV10_TCL_PRIMITIVE_3D_POINT_SMOOTH_ENABLE   0x0000031c
00390 #define NV10_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE    0x00000320
00391 #define NV10_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
00392 #define NV10_TCL_PRIMITIVE_3D_VERTEX_WEIGHT_ENABLE  0x00000328
00393 #define NV10_TCL_PRIMITIVE_3D_STENCIL_TEST_ENABLE   0x0000032c
00394 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE   0x00000330
00395 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE    0x00000334
00396 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE    0x00000338
00397 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC        0x0000033c
00398 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF        0x00000340
00399 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC        0x00000344
00400 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST        0x00000348
00401 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR       0x0000034c
00402 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION        0x00000350
00403 #define NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC        0x00000354
00404 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK        0x00000358
00405 #define NV10_TCL_PRIMITIVE_3D_DEPTH_MASK        0x0000035c
00406 #define NV10_TCL_PRIMITIVE_3D_STENCIL_MASK      0x00000360
00407 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC     0x00000364
00408 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF      0x00000368
00409 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK     0x0000036c
00410 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL       0x00000370
00411 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL      0x00000374
00412 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS      0x00000378
00413 #define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL       0x0000037c
00414 #define NV10_TCL_PRIMITIVE_3D_LINE_WIDTH        0x00000380  /* 8.0 * line_width */
00415 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
00416 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS  0x00000388
00417 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT    0x0000038c
00418 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK     0x00000390
00419 #define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR      0x00000394  /* near * 16777216.0 */
00420 #define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR       0x00000398  /* far * 16777216.0 */
00421 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE         0x0000039c
00422 #define NV10_TCL_PRIMITIVE_3D_FRONT_FACE        0x000003a0
00423 #define NV10_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE      0x000003a4
00424 //                          0x000003a8
00425 //                          0x000003ac
00426 //                          0x000003b0
00427 #define NV10_TCL_PRIMITIVE_3D_MATERIAL_DIFFUSE_ALPHA    0x000003b4  /* color material diffuse a */
00428 #define NV10_TCL_PRIMITIVE_3D_COLOR_CONTROL     0x000003b8
00429 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS        0x000003bc
00430 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(n)  (0x000003c0+(n<<2))
00431 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE       8
00432 #define NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(n)   (0x000003e0+(n<<2))
00433 #define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE    0x000003e8
00434 #define NV10_TCL_PRIMITIVE_3D_POINT_SIZE        0x000003ec  /* 8.0 * point_size */
00435 //                          0x000003f0
00436 //                          0x000003f4
00437 //                          0x000003f8
00438 //                          0x000003fc
00439 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX     0x00000400
00440 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX     0x00000440
00441 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX 0x00000480
00442 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX 0x000004c0
00443 #define NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX     0x00000500
00444 #define NV10_TCL_PRIMITIVE_3D_TX_MATRIX(n)      (0x00000540+(n<<6))
00445 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A(n)       (0x00000600+(n<<4))
00446 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B(n)       (0x00000604+(n<<4))
00447 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C(n)       (0x00000608+(n<<4))
00448 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D(n)       (0x0000060c+(n<<4))
00449 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x00000680  /* 1.0+(end/(end-start)) */
00450 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR   0x00000684  /* -1.0/(end-start) */
00451 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC    0x00000688  /* 0.0 */
00452 //                          0x000006a0
00453 //                          0x000006a4
00454 //                          0x000006a8
00455 //                          0x000006ac
00456 //                          0x000006b0
00457 //                          0x000006b4
00458 #define NV10_TCL_PRIMITIVE_3D_MATERIAL_AMBIENT_EMISSION 0x000006c4  /* = color_material_emission */
00459 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_X      0x000006e8  /* unsure */
00460 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Y      0x000006ec
00461 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Z      0x000006f0
00462 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_W      0x000006f4
00463 #define NV10_TCL_PRIMITIVE_3D_LIGHT_AMBIENT(n)      (0x00000800+(n<<7)) /* = color_material_ambient * light<n>_ambient */
00464 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIFFUSE(n)      (0x0000080c+(n<<7)) /* = color_material_diffuse * light<n>_diffuse */
00465 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPECULAR(n)     (0x00000818+(n<<7)) /* = color_material_specular * light<n>_specular */
00466 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR(n)  (0x00000828+(n<<7))
00467 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION0(n)    (0x00000834+(n<<7)) /* position (x/w,y/w,z/w) */
00468 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_LIGHT(n)   (0x00000840+(n<<7)) /* 7 parameters: */
00469                                         /* 1,2,3 = f?(cutoff,exponent) */
00470                                         /* 4,5,6 = f?(cutoff,normalized(direction)) */
00471                                         /* 7 = -(1.0+(cos(cutoff)*2.0)) */
00472 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION1(n)    (0x0000085c+(n<<7)) /* position (x/w,y/w,z/w) */
00473 #define NV10_TCL_PRIMITIVE_3D_LIGHT_NORMAL(n)       (0x00000868+(n<<7))
00474 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X       0x00000c00
00475 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y       0x00000c04
00476 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z       0x00000c08
00477 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X       0x00000c18
00478 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y       0x00000c1c
00479 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z       0x00000c20
00480 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W       0x00000c24
00481 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X       0x00000c30
00482 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y       0x00000c34
00483 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z       0x00000c38
00484 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY      0x00000c40
00485 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z       0x00000c44
00486 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R       0x00000c50
00487 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G       0x00000c54
00488 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B       0x00000c58
00489 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A       0x00000c5c
00490 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R       0x00000c60
00491 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G       0x00000c64
00492 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B       0x00000c68
00493 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I     0x00000c6c
00494 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R      0x00000c80
00495 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G      0x00000c84
00496 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B      0x00000c88
00497 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I        0x00000c8c
00498 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S       0x00000c90
00499 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T       0x00000c94
00500 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I     0x00000c98
00501 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S       0x00000ca0
00502 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T       0x00000ca4
00503 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R       0x00000ca8
00504 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q       0x00000cac
00505 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST      0x00000cb0
00506 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ      0x00000cb4
00507 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S       0x00000cb8
00508 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T       0x00000cbc
00509 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I     0x00000cc0
00510 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S       0x00000cc8
00511 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T       0x00000ccc
00512 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R       0x00000cd0
00513 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q       0x00000cd4
00514 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST      0x00000cd8
00515 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ      0x00000cdc
00516 #define NV10_TCL_PRIMITIVE_3D_VERTEX_FOG_1F     0x00000ce0
00517 #define NV10_TCL_PRIMITIVE_3D_VERTEX_WGH_1F     0x00000ce4
00518 #define NV10_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE       0x00000cec
00519 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_VALIDATE 0x00000cf0
00520 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_POS   0x00000d00
00521 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS   0x00000d04
00522 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL   0x00000d08
00523 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL   0x00000d0c
00524 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL2  0x00000d10
00525 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2  0x00000d14
00526 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX0   0x00000d18
00527 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0   0x00000d1c
00528 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX1   0x00000d20
00529 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1   0x00000d24
00530 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_NOR   0x00000d28
00531 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR   0x00000d2c
00532 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_WGH   0x00000d30
00533 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH   0x00000d34
00534 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_FOG   0x00000d38
00535 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG   0x00000d3c
00536 #define NV10_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x00000d40
00537 #define NV10_TCL_PRIMITIVE_3D_LOGIC_OP          0x00000d44
00538 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH    0x00000d5c  /* LMA_DEPTH is nv17 only */
00539 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET   0x00000d60
00540 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_FILL_VALUE  0x00000d68
00541 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_CLEAR_ENABLE    0x00000d6c
00542 //                          0x00000d74
00543 //                          0x00000d84
00544 #define NV10_TCL_PRIMITIVE_3D_BEGIN_END         0x00000dfc
00545 #define NV10_TCL_PRIMITIVE_3D_INDEX_DATA        0x00000e00
00546 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END   0x000013fc
00547 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS 0x00001400
00548 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_X     0x00001638  /* unsure! */
00549 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Y     0x0000163c
00550 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Z     0x00001640
00551 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_W     0x00001644
00552 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_ENABLE      0x00001658
00553 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA     0x00001800
00554 
00555 
00556 #define NV10_IMAGE_FROM_CPU             0x0000008a
00557 #define NV10_IMAGE_FROM_CPU_SET_DMA_TO_MEMORY       0x00000180
00558 #define NV10_IMAGE_FROM_CPU_SET_CONTEXT_CLIP_RECTANGLE  0x00000188
00559 #define NV10_IMAGE_FROM_CPU_SET_IMAGE_PATTERN       0x0000018c
00560 #define NV10_IMAGE_FROM_CPU_SET_RASTER_OP       0x00000190
00561 #define NV10_IMAGE_FROM_CPU_SET_CONTEXT_SURFACES_2D 0x0000019c
00562 #define NV10_IMAGE_FROM_CPU_OPERATION           0x000002fc
00563 #define NV10_IMAGE_FROM_CPU_FORMAT          0x00000300
00564 #define NV10_IMAGE_FROM_CPU_POINT           0x00000304
00565 #define NV10_IMAGE_FROM_CPU_POINT_X         15:0
00566 #define NV10_IMAGE_FROM_CPU_POINT_Y         31:16
00567 #define NV10_IMAGE_FROM_CPU_SIZE_OUT            0x00000308
00568 #define NV10_IMAGE_FROM_CPU_SIZE_OUT_WIDTH      15:0
00569 #define NV10_IMAGE_FROM_CPU_SIZE_OUT_HEIGHT     31:16
00570 #define NV10_IMAGE_FROM_CPU_SIZE_IN         0x0000030c
00571 #define NV10_IMAGE_FROM_CPU_SIZE_IN_WIDTH       15:0
00572 #define NV10_IMAGE_FROM_CPU_SIZE_IN_HEIGHT      31:16
00573 #define NV10_IMAGE_FROM_CPU_HLINE           0x00000400
00574 
00575 
00576 #define NV10_UNK0072                0x00000072
00577 #define NV10_UNK0072_COUNTER            0x00000050
00578 #define NV10_UNK0072_SET_DMA_TO_MEMORY      0x00000180
00579 
00580 
00581 #define NV10_PRIMITIVE_2D               0x0000007b
00582 #define NV10_PRIMITIVE_2D_SET_DMA_TO_MEMORY     0x00000180
00583 #define NV10_PRIMITIVE_2D_SET_SURFACE           0x00000184
00584 #define NV10_PRIMITIVE_2D_SET_TYPE          0x00000300
00585 #define NV10_PRIMITIVE_2D_SET_POINT         0x00000304
00586 #define NV10_PRIMITIVE_2D_SET_POINT_X           15:0
00587 #define NV10_PRIMITIVE_2D_SET_POINT_Y           31:16
00588 #define NV10_PRIMITIVE_2D_SET_SIZE          0x00000308
00589 #define NV10_PRIMITIVE_2D_SET_SIZE_WIDTH        15:0
00590 #define NV10_PRIMITIVE_2D_SET_SIZE_HEIGHT       31:16
00591 #define NV10_PRIMITIVE_2D_SET_CLIP_DIM0         0x0000030c
00592 #define NV10_PRIMITIVE_2D_SET_CLIP_WIDTH        31:16
00593 #define NV10_PRIMITIVE_2D_SET_CLIP_DIM1         0x00000310
00594 #define NV10_PRIMITIVE_2D_SET_CLIP_HEIGHT       31:16
00595 #define NV10_PRIMITIVE_2D_SET_DATA          0x00000400
00596 
00597 #define NV01_CONTEXT_CLIP_RECTANGLE         0x00000019
00598 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_POINT       0x00000300
00599 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_POINT_X     15:0
00600 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_POINT_Y     31:16
00601 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_SIZE        0x00000304
00602 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_SIZE_WIDTH  15:0
00603 #define NV01_CONTEXT_CLIP_RECTANGLE_SET_SIZE_HEIGHT 31:16
00604 
00605 #define NV03_PRIMITIVE_RASTER_OP            0x00000043
00606 #define NV03_PRIMITIVE_RASTER_OP_NOTIFY         0x00000100
00607 #define NV03_PRIMITIVE_RASTER_OP_DMA_NOTIFY     0x00000180
00608 #define NV03_PRIMITIVE_RASTER_OP_LOGIC_OP       0x00000300
00609 #define NV03_PRIMITIVE_RASTER_OP_LOGIC_OP_CMD       7:4
00610 
00611 #define NV04_SURFACE                    0x00000042
00612 #define NV04_SURFACE_NOTIFY             0x00000104
00613 #define NV04_SURFACE_DMA_NOTIFY             0x00000180
00614 #define NV04_SURFACE_DMA_IMAGE_SOURCE           0x00000184
00615 #define NV04_SURFACE_DMA_IMAGE_DESTIN           0x00000188
00616 #define NV04_SURFACE_FORMAT             0x00000300
00617 #define NV04_SURFACE_PITCH              0x00000304
00618 #define NV04_SURFACE_PITCH_SOURCE           15:0
00619 #define NV04_SURFACE_PITCH_DESTIN           31:16
00620 #define NV04_SURFACE_OFFSET_SOURCE          0x00000308
00621 #define NV04_SURFACE_OFFSET_DESTIN          0x0000030c
00622 
00623 #define NV04_IMAGE_PATTERN              0x00000044
00624 #define NV04_IMAGE_PATTERN_COLOR_FORMAT         0x00000300
00625 #define NV04_IMAGE_PATTERN_MONO_FORMAT          0x00000304
00626 #define NV04_IMAGE_PATTERN_SELECT           0x0000030c
00627 #define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE     0x00000308
00628 #define NV04_IMAGE_PATTERN_MONOCHROME_COLOR0        0x00000310
00629 #define NV04_IMAGE_PATTERN_MONOCHROME_COLOR1        0x00000314
00630 #define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN0      0x00000318
00631 #define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN1      0x0000031c
00632 
00633 #define NV04_SWIZZLED_SURFACE               0x00000052
00634 #define NV04_SWIZZLED_SURFACE_DMA_NOTIFY        0x00000180
00635 #define NV04_SWIZZLED_SURFACE_DMA_IMAGE         0x00000184
00636 #define NV04_SWIZZLED_SURFACE_FORMAT            0x00000300
00637 #define NV04_SWIZZLED_SURFACE_FORMAT_HEIGHT     31:24
00638 #define NV04_SWIZZLED_SURFACE_FORMAT_WIDTH      23:16
00639 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR      15:0
00640 #define NV04_SWIZZLED_SURFACE_OFFSET            0x00000304
00641 
00642 #define NV_IMAGE_BLIT                   0x0000005f
00643 
00644 #define NV_IMAGE_BLIT_NOP               0x00000100
00645 #define NV_IMAGE_BLIT_NOTIFY                0x00000104
00646 #define NV_IMAGE_BLIT_DMA_NOTIFY            0x00000180
00647 #define NV_IMAGE_BLIT_COLOR_KEY             0x00000184
00648 #define NV_IMAGE_BLIT_CLIP_RECTANGLE            0x00000188
00649 #define NV_IMAGE_BLIT_PATTERN               0x0000018c
00650 #define NV_IMAGE_BLIT_ROP5              0x00000190
00651 #define NV_IMAGE_BLIT_SURFACE               0x0000019c
00652 #define NV_IMAGE_BLIT_OPERATION             0x000002FC
00653 #define NV_IMAGE_BLIT_POINT_IN              0x00000300
00654 #define NV_IMAGE_BLIT_POINT_IN_X            15:0
00655 #define NV_IMAGE_BLIT_POINT_IN_Y            31:16
00656 #define NV_IMAGE_BLIT_POINT_OUT             0x00000304
00657 #define NV_IMAGE_BLIT_POINT_OUT_X           15:0
00658 #define NV_IMAGE_BLIT_POINT_OUT_Y           31:16
00659 #define NV_IMAGE_BLIT_SIZE              0x00000308
00660 #define NV_IMAGE_BLIT_SIZE_WIDTH            15:0
00661 #define NV_IMAGE_BLIT_SIZE_HEIGHT           31:16
00662 
00663 #define NV10_CONTEXT_SURFACES_2D            0x00000062
00664 #define NV10_CONTEXT_SURFACES_2D_SET_DMA_TO_MEMORY  0x00000180
00665 #define NV10_CONTEXT_SURFACES_2D_SET_DMA_IN_MEMORY0 0x00000184
00666 #define NV10_CONTEXT_SURFACES_2D_SET_DMA_IN_MEMORY1 0x00000188
00667 #define NV10_CONTEXT_SURFACES_2D_FORMAT         0x00000300
00668 #define NV10_CONTEXT_SURFACES_2D_FORMAT_COLOR       7:0
00669 #define NV10_CONTEXT_SURFACES_2D_FORMAT_TYPE        15:7
00670 #define NV10_CONTEXT_SURFACES_2D_FORMAT_WIDTH       23:16
00671 #define NV10_CONTEXT_SURFACES_2D_FORMAT_HEIGHT      31:24
00672 #define NV10_CONTEXT_SURFACES_2D_PITCH          0x00000304
00673 #define NV10_CONTEXT_SURFACES_2D_PITCH_SRC      15:0
00674 #define NV10_CONTEXT_SURFACES_2D_PITCH_DST      31:16
00675 #define NV10_CONTEXT_SURFACES_2D_OFFSET_SRC     0x00000308
00676 #define NV10_CONTEXT_SURFACES_2D_OFFSET_DST     0x0000030c
00677 
00678 #define NV05_SCALED_IMAGE_FROM_MEMORY           0x00000063
00679 
00680 #define NV05_SCALED_IMAGE_FROM_MEMORY_SURFACE       0x00000198
00681 #define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION  0x000002fc
00682 #define NV05_SCALED_IMAGE_FROM_MEMORY_OPERATION     0x00000304
00683 
00684 #define NV04_SCALED_IMAGE_FROM_MEMORY           0x00000077
00685 #define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_NOTIFY    0x00000180
00686 #define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE     0x00000184
00687 #define NV04_SCALED_IMAGE_FROM_MEMORY_SURFACE       0x00000198
00688 
00689 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT  0x00000300
00690 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION     0x00000304
00691 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POS      0x00000308
00692 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE     0x0000030C
00693 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POS       0x00000310
00694 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE      0x00000314
00695 #define NV04_SCALED_IMAGE_FROM_MEMORY_DU_DX     0x00000318
00696 #define NV04_SCALED_IMAGE_FROM_MEMORY_DV_DY     0x0000031C
00697 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE      0x00000400
00698 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT        0x00000404
00699 #define NV04_SCALED_IMAGE_FROM_MEMORY_OFFSET        0x00000408
00700 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT     0x0000040C
00701 
00702 
00703 #define NV10_VIDEO_DISPLAY              0x0000007c
00704 #define NV10_VIDEO_DISPLAY_COUNTER          0x00000050
00705 #define NV10_VIDEO_DISPLAY_SET_DMA_FROM_MEMORY      0x00000180
00706 #define NV10_VIDEO_DISPLAY_SET_DMA_IN_MEMORY0       0x00000184
00707 #define NV10_VIDEO_DISPLAY_SET_DMA_IN_MEMORY1       0x00000188
00708 #define NV10_VIDEO_DISPLAY_SET_OBJECT3          0x0000019c
00709 #define NV10_VIDEO_DISPLAY_UNK0250          0x00000250
00710 #define NV10_VIDEO_DISPLAY_SIZE             0x000002f8
00711 #define NV10_VIDEO_DISPLAY_OFFSET           0x00000300
00712 #define NV10_VIDEO_DISPLAY_UNK0304          0x00000304
00713 
00714 
00715 #define NV10_SCALED_IMAGE_FROM_MEMORY               0x00000089
00716 #define NV10_SCALED_IMAGE_FROM_MEMORY_COUNTER           0x00000050
00717 #define NV10_SCALED_IMAGE_FROM_MEMORY_SET_DMA_IN_MEMORY     0x00000184
00718 #define NV10_SCALED_IMAGE_FROM_MEMORY_SET_IMAGE_PATTERN     0x00000188
00719 #define NV10_SCALED_IMAGE_FROM_MEMORY_SET_RASTER_OP     0x0000018c
00720 #define NV10_SCALED_IMAGE_FROM_MEMORY_SET_SURFACE       0x00000198  /* context_surfaces_2d or swizzled_surface */
00721 #define NV10_SCALED_IMAGE_FROM_MEMORY_UNK02fc           0x000002fc
00722 #define NV10_SCALED_IMAGE_FROM_MEMORY_UNK0300           0x00000300
00723 #define NV10_SCALED_IMAGE_FROM_MEMORY_UNK0304           0x00000304
00724 #define NV10_SCALED_IMAGE_FROM_MEMORY_CLIP_POS          0x00000308
00725 #define NV10_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE         0x0000030C
00726 #define NV10_SCALED_IMAGE_FROM_MEMORY_OUT_POS           0x00000310
00727 #define NV10_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE          0x00000314
00728 #define NV10_SCALED_IMAGE_FROM_MEMORY_SIZE          0x00000400
00729 #define NV10_SCALED_IMAGE_FROM_MEMORY_FORMAT            0x00000404
00730 #define NV10_SCALED_IMAGE_FROM_MEMORY_OFFSET            0x00000408
00731 #define NV10_SCALED_IMAGE_FROM_MEMORY_POINT         0x0000040C
00732 
00733 
00734 #define NV10_IMAGE_BLIT                 0x0000009f
00735 //                          0x00000120  /* quadro, set to 0,1,2 */
00736 //                          0x00000124
00737 //                          0x00000128
00738 #define NV10_IMAGE_BLIT_SET_DMA_TO_MEMORY       0x00000180
00739 #define NV10_IMAGE_BLIT_SET_CONTEXT_CLIP_RECTANGLE  0x00000188
00740 #define NV10_IMAGE_BLIT_SET_IMAGE_PATTERN       0x0000018c
00741 #define NV10_IMAGE_BLIT_SET_RASTER_OP           0x00000190
00742 #define NV10_IMAGE_BLIT_SET_CONTEXT_SURFACES_2D     0x0000019c
00743 #define NV10_IMAGE_BLIT_UNK02fc             0x000002fc
00744 #define NV10_IMAGE_BLIT_SET_POINT           0x00000300
00745 #define NV10_IMAGE_BLIT_SET_POINT_X         15:0
00746 #define NV10_IMAGE_BLIT_SET_POINT_Y         31:16
00747 #define NV10_IMAGE_BLIT_SET_PITCH           0x00000304
00748 #define NV10_IMAGE_BLIT_SET_PITCH_NEXT_LINE     31:16
00749 #define NV10_IMAGE_BLIT_SET_SIZE            0x00000308
00750 #define NV10_IMAGE_BLIT_SET_SIZE_WIDTH          15:0
00751 #define NV10_IMAGE_BLIT_SET_SIZE_HEIGHT         31:16
00752 
00753 
00754 #define NV20_SWIZZLED_SURFACE               0x0000009e
00755 #define NV20_SWIZZLED_SURFACE_SET_OBJECT0       0x00000180
00756 #define NV20_SWIZZLED_SURFACE_SET_OBJECT1       0x00000184
00757 #define NV20_SWIZZLED_SURFACE_FORMAT            0x00000300
00758 #define NV20_SWIZZLED_SURFACE_FORMAT_HEIGHT     31:24
00759 #define NV20_SWIZZLED_SURFACE_FORMAT_WIDTH      23:16
00760 #define NV20_SWIZZLED_SURFACE_FORMAT_COLOR      15:0
00761 #define NV20_SWIZZLED_SURFACE_OFFSET            0x00000304
00762 
00763 
00764 #define NV20_TCL_PRIMITIVE_3D                       0x00000097
00765 
00766 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT0               0x00000180
00767 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT1               0x00000184
00768 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT2               0x00000188
00769 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT3               0x00000194
00770 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT4               0x00000198
00771 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT5               0x0000019c
00772 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT6               0x000001a0
00773 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT7               0x000001a4
00774 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT8               0x000001a8
00775 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT9               0x000001ac
00776 #define NV20_TCL_PRIMITIVE_3D_SET_OBJECT10              0x000001b0
00777 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ                0x00000200
00778 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_VERT             0x00000204
00779 #define NV20_TCL_PRIMITIVE_3D_BUFFER_FORMAT             0x00000208
00780 #define NV20_TCL_PRIMITIVE_3D_BUFFER_PITCH              0x0000020c
00781 #define NV20_TCL_PRIMITIVE_3D_COLOR_OFFSET              0x00000210
00782 #define NV20_TCL_PRIMITIVE_3D_DEPTH_OFFSET              0x00000214
00783 #define NV20_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH            0x0000022c
00784 #define NV20_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET           0x00000230
00785 #define NV20_TCL_PRIMITIVE_3D_LIGHT_CONTROL             0x00000294
00786 #define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_CONTROL            0x00000298
00787 #define NV20_TCL_PRIMITIVE_3D_FOG_MODE                  0x0000029c
00788 #define NV20_TCL_PRIMITIVE_3D_FOG_COORD_DIST                0x000002a0
00789 #define NV20_TCL_PRIMITIVE_3D_ALPHA_TEST_ENABLE             0x00000300
00790 #define NV20_TCL_PRIMITIVE_3D_BLEND_ENABLE              0x00000304
00791 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE              0x00000308
00792 #define NV20_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE             0x0000030c
00793 #define NV20_TCL_PRIMITIVE_3D_DITHER_ENABLE             0x00000310
00794 #define NV20_TCL_PRIMITIVE_3D_LIGHTING_ENABLE               0x00000314
00795 #define NV20_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE            0x00000320
00796 #define NV20_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE         0x00000324
00797 #define NV20_TCL_PRIMITIVE_3D_STENCIL_TEST_ENABLE           0x0000032c
00798 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE       0x00000330
00799 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE        0x00000334
00800 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE        0x00000338
00801 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC               0x0000033c
00802 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF                0x00000340
00803 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC                0x00000344
00804 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST                0x00000348
00805 #define NV20_TCL_PRIMITIVE_3D_BLEND_COLOR               0x0000034c
00806 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION                0x00000350
00807 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC                0x00000354
00808 #define NV20_TCL_PRIMITIVE_3D_COLOR_MASK                0x00000358
00809 #define NV20_TCL_PRIMITIVE_3D_DEPTH_MASK                0x0000035c
00810 #define NV20_TCL_PRIMITIVE_3D_STENCIL_MASK              0x00000360
00811 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC             0x00000364
00812 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF              0x00000368
00813 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK             0x0000036c
00814 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL               0x00000370
00815 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL              0x00000374
00816 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS              0x00000378
00817 #define NV20_TCL_PRIMITIVE_3D_SHADE_MODEL               0x0000037c
00818 #define NV20_TCL_PRIMITIVE_3D_LINE_WIDTH                0x00000380
00819 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR         0x00000384
00820 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS          0x00000388
00821 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT            0x0000038c
00822 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK             0x00000390
00823 #define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR              0x00000394
00824 #define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR               0x00000398
00825 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE                 0x0000039c
00826 #define NV20_TCL_PRIMITIVE_3D_FRONT_FACE                0x000003a0
00827 #define NV20_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE              0x000003a4
00828 #define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT          0x000003a8
00829 #define NV20_TCL_PRIMITIVE_3D_SEPARATE_SPECULAR_ENABLE          0x000003b8
00830 #define NV20_TCL_PRIMITIVE_3D_ENABLED_LIGHTS                0x000003bc
00831 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(n)          (0x000003c0+(n<<2))
00832 #define NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(n)           (0x00000420+(n<<2))
00833 #define NV20_TCL_PRIMITIVE_3D_POINT_SIZE                0x0000043c
00834 #define NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX              0x00000480
00835 #define NV20_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW_MATRIX          0x00000580
00836 #define NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX             0x00000680
00837 #define NV20_TCL_PRIMITIVE_3D_TX_MATRIX(n)              (0x000006c0+(n<<6))
00838 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_A(n)               (0x00000840+(n<<4))
00839 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_B(n)               (0x00000844+(n<<4))
00840 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_C(n)               (0x00000848+(n<<4))
00841 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_D(n)               (0x0000084c+(n<<4))
00842 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT         0x000009c0
00843 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR           0x000009c4
00844 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC            0x000009c8
00845 #define NV20_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS          0x000009e0
00846 
00847 #define NV20_TCL_PRIMITIVE_3D_POINT_SPRITE              0x00000a1c
00848 
00849 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST0               0x00000b00
00850 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST1               0x00000b04
00851 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST2               0x00000b08
00852 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST3               0x00000b0c
00853 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_X             0x00000b80
00854 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_Y             0x00000b84
00855 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_Z             0x00000b88
00856 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_W             0x00000b8c
00857 
00858 #define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION  0x00000a10
00859 #define NV20_TCL_PRIMITIVE_3D_TX_OFFSET(n)              (0x00001b00+(n<<6))
00860 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT(n)              (0x00001b04+(n<<6))
00861 #define NV20_TCL_PRIMITIVE_3D_TX_ENABLE(n)              (0x00001b0c+(n<<6))
00862 #define NV20_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(n)              (0x00001b10+(n<<6))
00863 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER(n)              (0x00001b14+(n<<6))
00864 #define NV20_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(n)               (0x00001b1c+(n<<6))
00865 
00866 #define NV20_TCL_PRIMITIVE_3D_TX_SHADER_OP              0x000001e70
00867 #define NV20_TCL_PRIMITIVE_3D_TX_SHADER_CULL_MODE           0x0000017f8
00868 #define NV20_TCL_PRIMITIVE_3D_TX_SHADER_PREVIOUS            0x000001e78
00869 
00870 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID            0x00001ea4
00871 
00872 #define NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA(n)                (0x00000260+(n<<2)) /* input combiners, portion alpha */
00873 #define NV20_TCL_PRIMITIVE_3D_RC_IN_RGB(n)              (0x00000ac0+(n<<2)) /* input combiners, portion rgb */
00874 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(n)               (0x00000aa0+(n<<2)) /* output combiners, portion alpha */
00875 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB(n)             (0x00001e40+(n<<2)) /* output combiners, portion rgb */
00876 #define NV20_TCL_PRIMITIVE_3D_RC_COLOR0                 0x00001e20  /* combiners, constant colors */
00877 #define NV20_TCL_PRIMITIVE_3D_RC_COLOR1                 0x00001e24
00878 #define NV20_TCL_PRIMITIVE_3D_RC_FINAL0                 0x00000288  /* final combiner, variables A-D */
00879 #define NV20_TCL_PRIMITIVE_3D_RC_FINAL1                 0x0000028c  /* final combiner, variables E-G */
00880 
00881 #define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(n)           (0x0000105c+(n<<7))
00882 #define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(n)           (0x00001060+(n<<7))
00883 #define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(n)           (0x00001064+(n<<7))
00884 #define NV20_TCL_PRIMITIVE_3D_LIGHT_HVEC_AND_DIR(n)         (0x00001028+(n<<7))
00885 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_A(n) (0x00001000+(n<<7))
00886 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(n) (0x00001004+(n<<7))
00887 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_C(n) (0x00001008+(n<<7))
00888 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_A(n) (0x0000100c+(n<<7))
00889 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(n) (0x00001010+(n<<7))
00890 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_C(n) (0x00001014+(n<<7))
00891 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_A(n)    (0x00001018+(n<<7))
00892 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(n)    (0x0000101c+(n<<7))
00893 #define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_C(n)    (0x00001020+(n<<7))
00894 #define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_AMBIENT(n)    (0x00000c00+(n<<6))
00895 #define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_DIFFUSE(n)    (0x00000c0c+(n<<6))
00896 #define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_SPECULAR(n)   (0x00000c18+(n<<6))
00897 #define NV20_TCL_PRIMITIVE_3D_LIGHT_CONSTANT_ATTENUATION(n)     (0x00001068+(n<<7))
00898 #define NV20_TCL_PRIMITIVE_3D_LIGHT_LINEAR_ATTENUATION(n)       (0x0000106c+(n<<7))
00899 #define NV20_TCL_PRIMITIVE_3D_LIGHT_QUADRATIC_ATTENUATION(n)        (0x00001070+(n<<7))
00900 /* These commands seem right on NV28, but I do not know how the parameters are
00901  * calculated. */
00902 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(n)            (0x00001040+(n<<7))
00903 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_EXPONENT(n)            (0x00001044+(n<<7))
00904 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(n)            (0x00001048+(n<<7))
00905 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(n)           (0x0000104c+(n<<7))
00906 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(n)           (0x00001050+(n<<7))
00907 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(n)           (0x00001054+(n<<7))
00908 #define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(n)            (0x00001058+(n<<7))
00909 
00910 #define NV20_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS           0x00001e28
00911 
00912 #define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE            0x0000147c
00913 #define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ROW(n)            (0x00001480+(n<<2))
00914 
00915 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X               0x00001500
00916 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y               0x00001504
00917 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z               0x00001508
00918 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X               0x00001518
00919 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y               0x0000151c
00920 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z               0x00001520
00921 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W               0x00001524
00922 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY              0x00001528
00923 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW              0x0000152c
00924 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X               0x00001530
00925 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y               0x00001534
00926 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z               0x00001538
00927 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY              0x00001540
00928 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z               0x00001544
00929 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R               0x00001550
00930 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G               0x00001554
00931 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B               0x00001558
00932 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A               0x0000155c
00933 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R               0x00001560
00934 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G               0x00001564
00935 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B               0x00001568
00936 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I             0x0000156c
00937 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R              0x00001580
00938 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G              0x00001584
00939 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B              0x00001588
00940 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3I                0x0000158c
00941 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S               0x00001590
00942 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T               0x00001594
00943 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I             0x00001598
00944 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S               0x000015a0
00945 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T               0x000015a4
00946 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R               0x000015a8
00947 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q               0x000015ac
00948 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST              0x000015b0
00949 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ              0x000015b4
00950 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S               0x000015b8
00951 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T               0x000015bc
00952 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I             0x000015c0
00953 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S               0x000015c8
00954 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T               0x000015cc
00955 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R               0x000015d0
00956 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q               0x000015d4
00957 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST              0x000015d8
00958 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ              0x000015dc
00959 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S               0x000015e0
00960 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T               0x000015e4
00961 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I             0x000015e8
00962 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_S               0x000015f0
00963 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_T               0x000015f4
00964 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_R               0x000015f8
00965 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_Q               0x000015fc
00966 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST              0x00001600
00967 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ              0x00001604
00968 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S               0x00001608
00969 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T               0x0000160c
00970 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I             0x00001610
00971 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_S               0x00001620
00972 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_T               0x00001624
00973 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_R               0x00001628
00974 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_Q               0x0000162c
00975 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST              0x00001630
00976 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ              0x00001634
00977 #define NV20_TCL_PRIMITIVE_3D_VERTEX_FOG_1F             0x00001698
00978 #define NV20_TCL_PRIMITIVE_3D_EDGE_FLAG                 0x000016bc
00979 
00980 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR0_POS          0x00001720
00981 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR1_WGH          0x00001724
00982 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR2_NOR          0x00001728
00983 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR3_COL          0x0000172c
00984 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR4_COL2         0x00001730
00985 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR5_FOG          0x00001734
00986 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR6              0x00001738
00987 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR7              0x0000173c
00988 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR8_TX0          0x00001740
00989 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR9_TX1          0x00001744
00990 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR10_TX2         0x00001748
00991 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR11_TX3         0x0000174c
00992 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR12_TX4         0x00001750
00993 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR13_TX5         0x00001754
00994 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR14_TX6         0x00001758
00995 #define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR15_TX7         0x0000175c
00996 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR0_POS              0x00001760
00997 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR1_WGH              0x00001764
00998 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR2_NOR              0x00001768
00999 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR3_COL              0x0000176c
01000 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR4_COL2             0x00001770
01001 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR5_FOG              0x00001774
01002 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR6              0x00001778
01003 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR7              0x0000177c
01004 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR8_TX0              0x00001780
01005 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR9_TX1              0x00001784
01006 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR10_TX2             0x00001788
01007 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR11_TX3             0x0000178c
01008 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR12_TX4             0x00001790
01009 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR13_TX5             0x00001794
01010 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR14_TX6             0x00001798
01011 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR15_TX7             0x0000179c
01012 
01013 #define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION   0x000017a0
01014 #define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK           0x000017b0
01015 #define NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE         0x000017bc
01016 #define NV20_TCL_PRIMITIVE_3D_LOGIC_OP                  0x000017c0
01017 #define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_TWO_SIDE_ENABLE       0x000017c4
01018 #define NV20_TCL_PRIMITIVE_3D_BEGIN_END                 0x000017fc
01019 
01020 #define NV20_TCL_PRIMITIVE_3D_TX_DEPTH_UNIT(n)              (0x00001840 + (n*4))
01021 #define NV20_TCL_PRIMITIVE_3D_TX_ADDRESS_UNIT(n)            (0x00001A00 + (n * 32))
01022 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_UNIT(n)             (0x00001A04 + (n * 32))
01023 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_COUNT            23:20
01024 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_TYPE                14:13
01025 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT              12:8
01026 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_NCOMP               7:4 /* 2=2D, 3=3D, high bit may be wrong */
01027 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT_CUBIC               2:2
01028 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP_UNIT(n)               (0x00001A08 + (n * 32))
01029 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP_S                 7:0
01030 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP_T                 15:8
01031 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP_R                 23:16
01032 #define NV20_TCL_PRIMITIVE_3D_TX_UNK03_UNIT(n)              (0x00001A0C + (n * 32))
01033 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_UNIT(n)            (0x00001A10 + (n * 32))
01034 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_ZERO            0
01035 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_ONE             1
01036 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_S1              2
01037 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_X               3
01038 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_Y               2
01039 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_Z               1
01040 #define NV20_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_W               0
01041 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER_UNIT(n)             (0x00001A14 + (n * 32))
01042 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER_MIN             19:16
01043 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER_MAG             27:24
01044 #define NV20_TCL_PRIMITIVE_3D_TX_XY_DIM_UNIT(n)             (0x00001A18 + (n * 32))
01045 #define NV20_TCL_PRIMITIVE_3D_TX_UNK07_UNIT(n)              (0x00001A1C + (n * 32))
01046 
01047 #define NV20_TCL_PRIMITIVE_3D_CLEAR_COLOR               0x00001d90
01048 #define NV20_TCL_PRIMITIVE_3D_CLEAR_MASK                0x00001d94  /* not sure */
01049 
01050 #define NV20_TCL_PRIMITIVE_3D_INDEX_DATA                0x00001800
01051 #define NV20_TCL_PRIMITIVE_3D_VB_VERTEX_BATCH               0x00001810
01052 #define NV20_TCL_PRIMITIVE_3D_VERTEX_DATA               0x00001818
01053 
01054 
01055 
01056 #define NV30_TCL_PRIMITIVE_3D               0x00000097
01057 
01058 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT0       0x00000180
01059 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT1       0x00000184
01060 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT2       0x00000188
01061 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT3       0x0000018C
01062 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT4       0x00000194
01063 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT5       0x00000198
01064 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT11      0x0000019C /* vertex buffer related */
01065 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT12      0x000001A0 /* vertex buffer related - VB source? */
01066 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT6       0x000001A4
01067 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT7       0x000001A8
01068 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT8       0x000001AC
01069 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT9       0x000001B4
01070 #define NV30_TCL_PRIMITIVE_3D_SET_OBJECT10      0x000001B8
01071 #define NV30_TCL_PRIMITIVE_3D_BUFFER0_PITCH     0x0000020c
01072 #define NV30_TCL_PRIMITIVE_3D_COLOR0_OFFSET     0x00000210
01073 #define NV30_TCL_PRIMITIVE_3D_DEPTH_OFFSET      0x00000214
01074 #define NV30_TCL_PRIMITIVE_3D_COLOR1_OFFSET     0x00000218
01075 #define NV30_TCL_PRIMITIVE_3D_BUFFER1_PITCH     0x0000021c
01076 #define NV30_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH    0x0000022c
01077 #define NV30_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET   0x00000230
01078 #define NV30_TCL_PRIMITIVE_3D_BUFFER2_PITCH     0x00000280
01079 #define NV30_TCL_PRIMITIVE_3D_BUFFER3_PITCH     0x00000284
01080 #define NV30_TCL_PRIMITIVE_3D_BUFFER2_OFFSET        0x00000288
01081 #define NV30_TCL_PRIMITIVE_3D_BUFFER3_OFFSET        0x0000028c
01082 #define NV30_TCL_PRIMITIVE_3D_DITHER_ENABLE     0x00000300
01083 #define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE     0x00000304
01084 #define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC       0x00000308
01085 #define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF        0x0000030c
01086 #define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE     0x00000310
01087 #define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC        0x00000314
01088 #define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_DST        0x00000318
01089 #define NV30_TCL_PRIMITIVE_3D_BLEND_EQ_SRC      0x0000031c
01090 #define NV30_TCL_PRIMITIVE_3D_BLEND_EQ_DST      0x00000320
01091 #define NV30_TCL_PRIMITIVE_3D_COLOR_MASK        0x00000324
01092 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_ENABLE   0x00000328
01093 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_MASK     0x0000032c
01094 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC    0x00000330
01095 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_REF 0x00000334
01096 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_MASK    0x00000338
01097 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL  0x0000033c
01098 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL 0x00000340
01099 #define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS 0x00000344
01100 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_ENABLE  0x00000348
01101 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_MASK    0x0000034c
01102 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC   0x00000350
01103 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_REF    0x00000354
01104 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_MASK   0x00000358
01105 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL 0x0000035c
01106 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL    0x00000360
01107 #define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS    0x00000364
01108 #define NV30_TCL_PRIMITIVE_3D_SHADE_MODEL       0x00000368
01109 #define NV30_TCL_PRIMITIVE_3D_FOG_ENABLE        0x0000036c
01110 #define NV40_TCL_PRIMITIVE_3D_COLOR_MASK_BUFFER123  0x00000370
01111 #define NV30_TCL_PRIMITIVE_3D_LOGIC_OP_ENABLE       0x00000374
01112 #define NV30_TCL_PRIMITIVE_3D_LOGIC_OP_OP       0x00000378
01113 #define NV30_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE      0x0000037c
01114 #define NV30_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR      0x00000394
01115 #define NV30_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR       0x00000398
01116 #define NV30_TCL_PRIMITIVE_3D_LINE_WIDTH_SMOOTH     0x000003b8
01117 #define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(n)  (0x00000400+(n<<2))
01118 #define NV30_TCL_PRIMITIVE_3D_SCISSOR_WIDTH_XPOS        0x000008c0      
01119 #define NV30_TCL_PRIMITIVE_3D_SCISSOR_HEIGHT_YPOS   0x000008c4  
01120 #define NV30_TCL_PRIMITIVE_3D_FP_ACTIVE_PROGRAM     0x000008e4
01121 #define NV30_TCL_PRIMITIVE_3D_FOG_COORD_DIST        0x000008c8
01122 #define NV30_TCL_PRIMITIVE_3D_FOG_MODE          0x000008cc
01123 #define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x000008d0
01124 #define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR   0x000008d4
01125 #define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC    0x000008d8
01126 #define NV30_TCL_PRIMITIVE_3D_RC_FINAL0         0x000008f4  /* final combiner, variables A-D */
01127 #define NV30_TCL_PRIMITIVE_3D_RC_FINAL1         0x000008f8  /* final combiner, variables E-G */
01128 #define NV30_TCL_PRIMITIVE_3D_RC_IN_ALPHA       0x00000900  /* input combiner, portion alpha */
01129 #define NV30_TCL_PRIMITIVE_3D_RC_IN_RGB         0x00000904  /* input combiner, portion rgb */
01130 #define NV30_TCL_PRIMITIVE_3D_RC_OUT_ALPHA      0x00000910  /* output combiner, portion alpha */
01131 #define NV30_TCL_PRIMITIVE_3D_RC_OUT_RGB        0x00000914  /* output combiner, portion rgb */
01132 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0       0x00000a00
01133 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0_WIDTH 31:16
01134 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0_XOFFS 15:0
01135 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_1       0x00000a04
01136 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0_HEIGHT    31:16
01137 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0_YOFFS 15:0
01138 /* VIEWPORT_XFRM_* are FP32 values */
01139 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_OX      0x00000a20  /* center X? */
01140 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_OY      0x00000a24  /* center Y? */
01141 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_NPF_DIV2    0x00000a28  /* (near+far)/2 */
01142 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_UNK0_0x0    0x00000a2c  /* always 0? */
01143 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_PX_DIV2 0x00000a30  /* width/2 */
01144 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_PY_DIV2 0x00000a34  /* -(height/2) */
01145 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_FMN_DIV2    0x00000a38  /* (far-near)/2 */
01146 #define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_UNK1_0x0    0x00000a3c  /* always 0? */
01147 #define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE    0x00000a60
01148 #define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE    0x00000a64
01149 #define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE   0x00000a68
01150 #define NV30_TCL_PRIMITIVE_3D_DEPTH_FUNC        0x00000a6c
01151 #define NV30_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE    0x00000a70
01152 #define NV30_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE     0x00000a74
01153 #define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000a78
01154 #define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS  0x00000a7c /* units*2  ?? */
01155 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST0       0x00000b80
01156 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST1       0x00000b84
01157 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST2       0x00000b88
01158 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST3       0x00000b8c
01159 #define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_A(n)       (0x00000e00+(n<<4))
01160 #define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_B(n)       (0x00000e04+(n<<4))
01161 #define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_C(n)       (0x00000e08+(n<<4))
01162 #define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_D(n)       (0x00000e0c+(n<<4))
01163 
01164 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_A(n) (0x00001000+(n<<6))
01165 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(n) (0x00001004+(n<<6))
01166 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_C(n) (0x00001008+(n<<6))
01167 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_A(n) (0x0000100c+(n<<6))
01168 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(n) (0x00001010+(n<<6))
01169 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_C(n) (0x00001014+(n<<6))
01170 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_A(n)    (0x00001018+(n<<6))
01171 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(n)    (0x0000101c+(n<<6))
01172 #define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_C(n)    (0x00001020+(n<<6))
01173 
01174 #define NV30_TCL_PRIMITIVE_3D_LIGHT_CONSTANT_ATTENUATION(n)     (0x00001228+(n<<6))
01175 #define NV30_TCL_PRIMITIVE_3D_LIGHT_LINEAR_ATTENUATION(n)       (0x0000122c+(n<<6))
01176 #define NV30_TCL_PRIMITIVE_3D_LIGHT_QUADRATIC_ATTENUATION(n)        (0x00001230+(n<<6))
01177 
01178 /* These commands seem right on NV34, but I do not know how the parameters are
01179  * calculated. */
01180 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(n)            (0x00001200+(n<<6))
01181 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_EXPONENT(n)            (0x00001204+(n<<6))
01182 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(n)            (0x00001208+(n<<6))
01183 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(n)           (0x0000120c+(n<<6))
01184 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(n)           (0x00001210+(n<<6))
01185 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(n)           (0x00001214+(n<<6))
01186 #define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(n)            (0x00001218+(n<<6))
01187 
01188 #define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(n)           (0x0000121c+(n<<6))
01189 #define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(n)           (0x00001220+(n<<6))
01190 #define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(n)           (0x00001224+(n<<6))
01191 
01192 #define NV30_TCL_PRIMITIVE_3D_ENABLED_LIGHTS                0x00001420
01193 
01205 #define NV30_TCL_PRIMITIVE_3D_SET_CLIPPING_PLANES       0x00001478
01206 #define NV30_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE    0x0000147C
01207 #define NV30_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(i)    (0x00001480 + (i*4))
01208 #define NV30_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN__SIZE 32
01209 /* These seem to contain default values for each vertex attribute (0-15).
01210  * Values set outside of glBegin()/glEnd() appear here.
01211  */
01212 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3X(a)        (0x00001500 + (a * 0x10))
01213 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3Y(a)        (0x00001504 + (a * 0x10))
01214 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3Z(a)        (0x00001508 + (a * 0x10))
01215 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3W(a)        (0x0000150C + (a * 0x10)) /* This exists, but not used on gl*4f calls.. */
01216 #define NV30_TCL_PRIMITIVE_3D_VB_POINTER_ATTR(a)    (0x00001680 + (a * 0x04))
01217 
01218 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR0_POS      0x00001740
01219 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR1_WGH      0x00001744
01220 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR2_NOR      0x00001748
01221 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR3_COL      0x0000174c
01222 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR4_COL2     0x00001750
01223 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR5_FOG      0x00001754
01224 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR6      0x00001758
01225 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR7      0x0000175c
01226 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR8_TX0      0x00001760
01227 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR9_TX1      0x00001764
01228 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR10_TX2     0x00001768
01229 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR11_TX3     0x0000176c
01230 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR12_TX4     0x00001770
01231 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR13_TX5     0x00001774
01232 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR14_TX6     0x00001778
01233 #define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR15_TX7     0x0000177c
01234 
01244 #define NV30_TCL_PRIMITIVE_3D_OCC_QUERY_OR_COLOR_BUFF_ENABLE    0x000017c8
01245 
01259 #define NV30_TCL_PRIMITIVE_3D_STORE_RESULT              0x00001800
01260 
01266 #define NV30_TCL_PRIMITIVE_3D_BEGIN_END         0x00001808
01267 #define NV30_TCL_PRIMITIVE_3D_VB_VERTEX_BATCH       0x00001814
01268 #define NV30_TCL_PRIMITIVE_3D_VERTEX_DATA       0x00001818
01269 #define NV30_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT    0x00001828
01270 #define NV30_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK     0x0000182c
01271 #define NV30_TCL_PRIMITIVE_3D_CULL_FACE         0x00001830
01272 #define NV30_TCL_PRIMITIVE_3D_FRONT_FACE        0x00001834
01273 #define NV30_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00001838
01274 #define NV30_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE      0x0000183c
01275 #define NV30_TCL_PRIMITIVE_3D_TX_DEPTH_UNIT(n)      (0x00001840 + (n*4))
01276 #define NV30_TCL_PRIMITIVE_3D_TX_DEPTH          31:24
01277 #define NV30_TCL_PRIMITIVE_3D_TX_NPOT_PITCH     23:0
01278 #define NV30_TCL_PRIMITIVE_3D_TX_ADDRESS_UNIT(n)    (0x00001A00 + (n * 32))
01279 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_UNIT(n)     (0x00001A04 + (n * 32))
01280 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_COUNT    23:20
01281 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_TYPE        14:13
01282 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT      12:8
01283 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_NCOMP       7:4 /* 2=2D, 3=3D, high bit may be wrong */
01284 #define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_CUBIC       2:2
01285 #define NV30_TCL_PRIMITIVE_3D_TX_WRAP_UNIT(n)       (0x00001A08 + (n * 32))
01286 #define NV30_TCL_PRIMITIVE_3D_TX_WRAP_S         7:0
01287 #define NV30_TCL_PRIMITIVE_3D_TX_WRAP_T         15:8
01288 #define NV30_TCL_PRIMITIVE_3D_TX_WRAP_R         23:16
01289 #define NV30_TCL_PRIMITIVE_3D_TX_ENABLE_UNIT(n)     (0x00001A0C + (n * 32))
01290 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_UNIT(n)    (0x00001A10 + (n * 32))
01291 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_ZERO    0
01292 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_ONE     1
01293 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S0_S1      2
01294 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_X       3
01295 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_Y       2
01296 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_Z       1
01297 #define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_S1_W       0
01298 #define NV30_TCL_PRIMITIVE_3D_TX_FILTER_UNIT(n)     (0x00001A14 + (n * 32))
01299 #define NV30_TCL_PRIMITIVE_3D_TX_FILTER_MIN     19:16
01300 #define NV30_TCL_PRIMITIVE_3D_TX_FILTER_MAG     27:24
01301 #define NV30_TCL_PRIMITIVE_3D_TX_XY_DIM_UNIT(n)     (0x00001A18 + (n * 32))
01302 #define NV30_TCL_PRIMITIVE_3D_TX_UNK07_UNIT(n)      (0x00001A1C + (n * 32))
01303 /* These seem to contain default values for each vertex attribute (0-15).
01304  * Values set outside of glBegin()/glEnd() appear here.
01305  */
01306 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4X(a)        (0x00001C00 + (a * 0x10))
01307 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4Y(a)        (0x00001C04 + (a * 0x10))
01308 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4Z(a)        (0x00001C08 + (a * 0x10))
01309 #define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4W(a)        (0x00001C0C + (a * 0x10))
01310 
01311 #define NV30_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY      0x00000a90
01312 #define NV30_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z       0x00000a94
01313 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S       0x000018c0
01314 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T       0x000018c4
01315 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S       0x000018c8
01316 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T       0x000018cc
01317 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S       0x000018d0
01318 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T       0x000018d4
01319 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S       0x000018d8
01320 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T       0x000018dc
01321 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2I     0x00001920
01322 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2I     0x00001924
01323 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2I     0x00001928
01324 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2I     0x0000192c
01325 #define NV30_TCL_PRIMITIVE_3D_VERTEX_COL_4I     0x0000194c
01326 #define NV30_TCL_PRIMITIVE_3D_VERTEX_COL2_3I        0x00001950
01327 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST      0x000019c0
01328 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ      0x000019c4
01329 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST      0x000019c8
01330 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ      0x000019cc
01331 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST      0x000019d0
01332 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ      0x000019d4
01333 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST      0x000019d8
01334 #define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ      0x000019dc
01335 #define NV30_TCL_PRIMITIVE_3D_VERTEX_FOG_1F     0x00001e54
01336 
01337 #define NV30_TCL_PRIMITIVE_3D_LINE_STIPPLE      0x00001db4
01338 #define NV30_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN  0x00001db8
01339 #define NV30_TCL_PRIMITIVE_3D_CLEAR_VALUES      0x00001d8c
01340 #define NV30_TCL_PRIMITIVE_3D_CLEAR_WHICH_BUFFERS   0x00001d94
01341 #define NV30_TCL_PRIMITIVE_3D_DO_VERTICES       0x00001dac
01342 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_FROM_ID     0x00001e9C
01343 #define NV30_TCL_PRIMITIVE_3D_VP_PROGRAM_START_ID   0x00001ea0
01344 #define NV30_TCL_PRIMITIVE_3D_POINT_SPRITE      0x00001ee8
01345 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID    0x00001efc
01346 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_X  0x00001f00
01347 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_Y  0x00001f04
01348 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_Z  0x00001f08
01349 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_W  0x00001f0C
01350 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_X  0x00001f10
01351 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_Y  0x00001f14
01352 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_Z  0x00001f18
01353 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_W  0x00001f1C
01354 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_X  0x00001f20
01355 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_Y  0x00001f24
01356 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_Z  0x00001f28
01357 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_W  0x00001f2C
01358 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_X  0x00001f30
01359 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_Y  0x00001f34
01360 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_Z  0x00001f38
01361 #define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_W  0x00001f3C
01362 

Generated on Sat Aug 19 20:40:53 2006 for Renouveau by  doxygen 1.4.4