nouveau: header update
authorBen Skeggs <skeggsb@gmail.com>
Tue, 25 Dec 2007 13:56:00 +0000 (00:56 +1100)
committerBen Skeggs <skeggsb@gmail.com>
Tue, 25 Dec 2007 13:56:00 +0000 (00:56 +1100)
src/mesa/drivers/dri/nouveau_winsys/nv04_surface.c
src/mesa/pipe/nouveau/nouveau_class.h
src/mesa/pipe/nv40/nv40_state.c
src/mesa/pipe/nv40/nv40_vbo.c

index b50e744..baf4804 100644 (file)
@@ -40,7 +40,7 @@ nv04_surface_copy_m2mf(struct nouveau_context *nv, unsigned dx, unsigned dy,
        while (h) {
                int count = (h > 2047) ? 2047 : h;
 
-               BEGIN_RING(NvM2MF, NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN, 8);
+               BEGIN_RING(NvM2MF, NV04_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN, 8);
                OUT_RELOCl(src->buffer, src_offset, NOUVEAU_BO_VRAM |
                           NOUVEAU_BO_GART | NOUVEAU_BO_RD);
                OUT_RELOCl(dst->buffer, dst_offset, NOUVEAU_BO_VRAM |
@@ -81,7 +81,8 @@ nv04_surface_copy_prep(struct nouveau_context *nv, struct pipe_surface *dst,
         * to NV_MEMORY_TO_MEMORY_FORMAT in this case.
         */
        if ((src->offset & 63) || (dst->offset & 63)) {
-               BEGIN_RING(NvM2MF, NV_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN, 2);
+               BEGIN_RING(NvM2MF,
+                          NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN, 2);
                OUT_RELOCo(src->buffer, NOUVEAU_BO_GART | NOUVEAU_BO_VRAM |
                           NOUVEAU_BO_RD);
                OUT_RELOCo(dst->buffer, NOUVEAU_BO_GART | NOUVEAU_BO_VRAM |
@@ -179,7 +180,7 @@ nouveau_surface_init_nv04(struct nouveau_context *nv)
                return 1;
        }
        BIND_RING (NvM2MF, nv->next_subchannel++);
-       BEGIN_RING(NvM2MF, NV_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY, 1);
+       BEGIN_RING(NvM2MF, NV04_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY, 1);
        OUT_RING  (nv->sync_notifier->handle);
 
        class = nv->chipset < 0x10 ? NV04_CONTEXT_SURFACES_2D :
@@ -194,7 +195,7 @@ nouveau_surface_init_nv04(struct nouveau_context *nv)
        OUT_RING  (nv->channel->vram->handle);
        OUT_RING  (nv->channel->vram->handle);
 
-       class = nv->chipset < 0x10 ? NV_IMAGE_BLIT :
+       class = nv->chipset < 0x10 ? NV04_IMAGE_BLIT :
                                     NV12_IMAGE_BLIT;
        if ((ret = nouveau_grobj_alloc(nv->channel, nv->next_handle++, class,
                                       &nv->NvImageBlit))) {
@@ -202,12 +203,12 @@ nouveau_surface_init_nv04(struct nouveau_context *nv)
                return 1;
        }
        BIND_RING (NvImageBlit, nv->next_subchannel++);
-       BEGIN_RING(NvImageBlit, NV_IMAGE_BLIT_DMA_NOTIFY, 1);
+       BEGIN_RING(NvImageBlit, NV04_IMAGE_BLIT_DMA_NOTIFY, 1);
        OUT_RING  (nv->sync_notifier->handle);
-       BEGIN_RING(NvImageBlit, NV_IMAGE_BLIT_SURFACE, 1);
+       BEGIN_RING(NvImageBlit, NV04_IMAGE_BLIT_SURFACE, 1);
        OUT_RING  (nv->NvCtxSurf2D->handle);
-       BEGIN_RING(NvImageBlit, NV_IMAGE_BLIT_OPERATION, 1);
-       OUT_RING  (NV_IMAGE_BLIT_OPERATION_SRCCOPY);
+       BEGIN_RING(NvImageBlit, NV04_IMAGE_BLIT_OPERATION, 1);
+       OUT_RING  (NV04_IMAGE_BLIT_OPERATION_SRCCOPY);
 
        class = NV04_GDI_RECTANGLE_TEXT;
        if ((ret = nouveau_grobj_alloc(nv->channel, nv->next_handle++, class,
index 22b526a..56f4e90 100644 (file)
@@ -595,25 +595,25 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV04_DVD_SUBPICTURE_OVERLAY_POINT_V_MASK                                     0xffff0000
 
 
-#define NV_MEMORY_TO_MEMORY_FORMAT                                                     0x00000039
-
-#define  NV_MEMORY_TO_MEMORY_FORMAT_NOP                                                        0x00000100
-#define  NV_MEMORY_TO_MEMORY_FORMAT_NOTIFY                                             0x00000104
-#define  NV_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY                                         0x00000180
-#define  NV_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN                                      0x00000184
-#define  NV_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_OUT                                     0x00000188
-#define  NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN                                          0x0000030c
-#define  NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT                                         0x00000310
-#define  NV_MEMORY_TO_MEMORY_FORMAT_PITCH_IN                                           0x00000314
-#define  NV_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT                                          0x00000318
-#define  NV_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN                                     0x0000031c
-#define  NV_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT                                         0x00000320
-#define  NV_MEMORY_TO_MEMORY_FORMAT_FORMAT                                             0x00000324
-#define   NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_SHIFT                            0
-#define   NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_MASK                             0x0000000f
-#define   NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_SHIFT                           8
-#define   NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_MASK                            0x00000f00
-#define  NV_MEMORY_TO_MEMORY_FORMAT_BUF_NOTIFY                                         0x00000328
+#define NV04_MEMORY_TO_MEMORY_FORMAT                                                   0x00000039
+
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_NOP                                              0x00000100
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_NOTIFY                                           0x00000104
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY                                       0x00000180
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN                                    0x00000184
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_OUT                                   0x00000188
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN                                                0x0000030c
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT                                       0x00000310
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_PITCH_IN                                         0x00000314
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT                                                0x00000318
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN                                   0x0000031c
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT                                       0x00000320
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT                                           0x00000324
+#define   NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_SHIFT                          0
+#define   NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_MASK                           0x0000000f
+#define   NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_SHIFT                         8
+#define   NV04_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_MASK                          0x00000f00
+#define  NV04_MEMORY_TO_MEMORY_FORMAT_BUF_NOTIFY                                       0x00000328
 
 
 #define NV01_MEMORY_LOCAL_BANKED                                                       0x0000003d
@@ -1744,1159 +1744,1159 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I5_MASK                  0x00f00000
 
 
-#define NV10_TCL_PRIMITIVE_3D                                                          0x00000056
-
-#define  NV10_TCL_PRIMITIVE_3D_NOP                                                     0x00000100
-#define  NV10_TCL_PRIMITIVE_3D_NOTIFY                                                  0x00000104
-#define  NV10_TCL_PRIMITIVE_3D_DMA_NOTIFY                                              0x00000180
-#define  NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0                                          0x00000184
-#define  NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1                                          0x00000188
-#define  NV10_TCL_PRIMITIVE_3D_DISPLAY_LIST                                            0x0000018c
-#define  NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2                                          0x00000194
-#define  NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3                                          0x00000198
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ                                          0x00000200
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_X_SHIFT                                 0
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_X_MASK                                  0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_W_SHIFT                                 16
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_W_MASK                                  0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT                                           0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_Y_SHIFT                                  0
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_Y_MASK                                   0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_H_SHIFT                                  16
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_H_MASK                                   0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_BUFFER_FORMAT                                           0x00000208
-#define  NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH                                            0x0000020c
-#define   NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_COLOR_PITCH_SHIFT                         0
-#define   NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_COLOR_PITCH_MASK                          0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_ZETA_PITCH_SHIFT                          16
-#define   NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_ZETA_PITCH_MASK                           0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_OFFSET                                            0x00000210
-#define  NV10_TCL_PRIMITIVE_3D_ZETA_OFFSET                                             0x00000214
-#define  NV10_TCL_PRIMITIVE_3D_TX_OFFSET(x)                                            (0x00000218+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE                                         0x00000002
-#define  NV10_TCL_PRIMITIVE_3D_TX_FORMAT(x)                                            (0x00000220+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE                                         0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_CUBE_MAP                                     (1 <<  2)
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_SHIFT                                 7
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_MASK                                  0x00000780
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8                                   0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8                                   0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1                             0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT                              0x00000180
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4                             0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8                             0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_X8R8G8B8                             0x00000380
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_INDEX8                               0x00000580
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT1                                 0x00000600
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT3                                 0x00000700
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT5                                 0x00000780
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1_RECT                                0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8_RECT                                0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8_RECT                              0x00000980
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8                                 0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT2                             0x00000d80
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8_RECT                          0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4_RECT                                0x00000e80
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8_RECT                            0x00001000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16                                  0x00001900
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16_RECT                             0x00001a80
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA16_NV                      0x00002500
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA32_NV                      0x00002580
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_R32_NV                         0x00002600
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_NPOT                                         (1 << 11)
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_SHIFT                          12
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_MASK                           0x0000f000
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_SHIFT                            16
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_MASK                             0x000f0000
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_SHIFT                            20
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_MASK                             0x00f00000
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_SHIFT                                 24
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_MASK                                  0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_REPEAT                               0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_MIRRORED_REPEAT                      0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP_TO_EDGE                                0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP_TO_BORDER                      0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP                                        0x05000000
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_SHIFT                                 28
-#define   NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_MASK                                  0xf0000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_REPEAT                               0x10000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_MIRRORED_REPEAT                      0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP_TO_EDGE                                0x30000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP_TO_BORDER                      0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP                                        0x50000000
-#define  NV10_TCL_PRIMITIVE_3D_TX_ENABLE(x)                                            (0x00000228+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE                                         0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ANISOTROPY_SHIFT                             4
-#define   NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ANISOTROPY_MASK                              0x00000030
-#define   NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ENABLE                                       (1 << 30)
-#define  NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(x)                                                (0x00000230+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH__SIZE                                     0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH_PITCH_SHIFT                              16
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH_PITCH_MASK                               0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(x)                                         (0x00000240+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE__SIZE                                      0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_SHIFT                                   0
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_MASK                                    0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_SHIFT                                   16
-#define   NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_MASK                                    0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_TX_FILTER(x)                                            (0x00000248+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_FILTER__SIZE                                         0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_SHIFT                                 24
-#define   NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_MASK                                  0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST                              0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR                               0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST               0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST                        0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR                        0x05000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR                 0x06000000
-#define   NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_SHIFT                                        28
-#define   NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_MASK                                 0xf0000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST                             0x10000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR                              0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST              0x30000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST               0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR               0x50000000
-#define    NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR                        0x60000000
-#define  NV10_TCL_PRIMITIVE_3D_TX_PALETTE_OFFSET(x)                                    (0x00000250+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_PALETTE_OFFSET__SIZE                                 0x00000002
-#define  NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x)                                          (0x00000260+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE                                       0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SHIFT                              0
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_MASK                               0x0000000f
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_ZERO                              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR0_NV                        0x00000001
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR1_NV                        0x00000002
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_FOG                               0x00000003
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_PRIMARY_COLOR_NV                  0x00000004
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SECONDARY_COLOR_NV                        0x00000005
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_TEXTURE0_ARB                      0x00000008
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_TEXTURE1_ARB                      0x00000009
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE0_NV                         0x0000000c
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE1_NV                         0x0000000d
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV    0x0000000e
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_E_TIMES_F_NV                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE                          (1 <<  4)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_BLUE                    0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_ALPHA                   0x00000010
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SHIFT                            5
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_MASK                             0x000000e0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_IDENTITY_NV            0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_INVERT_NV              0x00000020
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NORMAL_NV                        0x00000040
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NEGATE_NV                        0x00000060
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NORMAL_NV             0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NEGATE_NV             0x000000a0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_IDENTITY_NV              0x000000c0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_NEGATE_NV                        0x000000e0
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SHIFT                              8
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_MASK                               0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_ZERO                              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR0_NV                        0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR1_NV                        0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_FOG                               0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_PRIMARY_COLOR_NV                  0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SECONDARY_COLOR_NV                        0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_TEXTURE0_ARB                      0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_TEXTURE1_ARB                      0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE0_NV                         0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE1_NV                         0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV    0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_E_TIMES_F_NV                      0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE                          (1 << 12)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_BLUE                    0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_ALPHA                   0x00001000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SHIFT                            13
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_MASK                             0x0000e000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_IDENTITY_NV            0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_INVERT_NV              0x00002000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NORMAL_NV                        0x00004000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NEGATE_NV                        0x00006000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NORMAL_NV             0x00008000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NEGATE_NV             0x0000a000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_IDENTITY_NV              0x0000c000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_NEGATE_NV                        0x0000e000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SHIFT                              16
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_MASK                               0x000f0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_ZERO                              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR0_NV                        0x00010000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR1_NV                        0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_FOG                               0x00030000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_PRIMARY_COLOR_NV                  0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SECONDARY_COLOR_NV                        0x00050000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_TEXTURE0_ARB                      0x00080000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_TEXTURE1_ARB                      0x00090000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE0_NV                         0x000c0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE1_NV                         0x000d0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV    0x000e0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_E_TIMES_F_NV                      0x000f0000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE                          (1 << 20)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_BLUE                    0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_ALPHA                   0x00100000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SHIFT                            21
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_MASK                             0x00e00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_IDENTITY_NV            0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_INVERT_NV              0x00200000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NORMAL_NV                        0x00400000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NEGATE_NV                        0x00600000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NORMAL_NV             0x00800000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NEGATE_NV             0x00a00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_IDENTITY_NV              0x00c00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_NEGATE_NV                        0x00e00000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SHIFT                              24
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_MASK                               0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_ZERO                              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR0_NV                        0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR1_NV                        0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_FOG                               0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_PRIMARY_COLOR_NV                  0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SECONDARY_COLOR_NV                        0x05000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_TEXTURE0_ARB                      0x08000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_TEXTURE1_ARB                      0x09000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE0_NV                         0x0c000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE1_NV                         0x0d000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV    0x0e000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_E_TIMES_F_NV                      0x0f000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE                          (1 << 28)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_BLUE                    0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_ALPHA                   0x10000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SHIFT                            29
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_MASK                             0xe0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_IDENTITY_NV            0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_INVERT_NV              0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NORMAL_NV                        0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NEGATE_NV                        0x60000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NORMAL_NV             0x80000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NEGATE_NV             0xa0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_IDENTITY_NV              0xc0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_NEGATE_NV                        0xe0000000
-#define  NV10_TCL_PRIMITIVE_3D_RC_IN_RGB(x)                                            (0x00000268+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE                                         0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SHIFT                                        0
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_MASK                                 0x0000000f
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR0_NV                  0x00000001
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR1_NV                  0x00000002
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_FOG                                 0x00000003
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_PRIMARY_COLOR_NV                    0x00000004
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SECONDARY_COLOR_NV                  0x00000005
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_TEXTURE0_ARB                                0x00000008
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_TEXTURE1_ARB                                0x00000009
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE0_NV                           0x0000000c
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE1_NV                           0x0000000d
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x0000000e
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_E_TIMES_F_NV                                0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE                            (1 <<  4)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE_ALPHA                     0x00000010
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SHIFT                              5
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_MASK                               0x000000e0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_INVERT_NV                        0x00000020
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_EXPAND_NORMAL_NV                  0x00000040
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_EXPAND_NEGATE_NV                  0x00000060
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NORMAL_NV               0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NEGATE_NV               0x000000a0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SIGNED_IDENTITY_NV                        0x000000c0
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SIGNED_NEGATE_NV                  0x000000e0
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SHIFT                                        8
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_MASK                                 0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR0_NV                  0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR1_NV                  0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_FOG                                 0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_PRIMARY_COLOR_NV                    0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SECONDARY_COLOR_NV                  0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_TEXTURE0_ARB                                0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_TEXTURE1_ARB                                0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE0_NV                           0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE1_NV                           0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_E_TIMES_F_NV                                0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE                            (1 << 12)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE_ALPHA                     0x00001000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SHIFT                              13
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_MASK                               0x0000e000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_INVERT_NV                        0x00002000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_EXPAND_NORMAL_NV                  0x00004000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_EXPAND_NEGATE_NV                  0x00006000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NORMAL_NV               0x00008000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NEGATE_NV               0x0000a000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SIGNED_IDENTITY_NV                        0x0000c000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SIGNED_NEGATE_NV                  0x0000e000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SHIFT                                        16
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_MASK                                 0x000f0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR0_NV                  0x00010000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR1_NV                  0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_FOG                                 0x00030000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_PRIMARY_COLOR_NV                    0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SECONDARY_COLOR_NV                  0x00050000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_TEXTURE0_ARB                                0x00080000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_TEXTURE1_ARB                                0x00090000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE0_NV                           0x000c0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE1_NV                           0x000d0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x000e0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_E_TIMES_F_NV                                0x000f0000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE                            (1 << 20)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE_ALPHA                     0x00100000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SHIFT                              21
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_MASK                               0x00e00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_INVERT_NV                        0x00200000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_EXPAND_NORMAL_NV                  0x00400000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_EXPAND_NEGATE_NV                  0x00600000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NORMAL_NV               0x00800000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NEGATE_NV               0x00a00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SIGNED_IDENTITY_NV                        0x00c00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SIGNED_NEGATE_NV                  0x00e00000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SHIFT                                        24
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_MASK                                 0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR0_NV                  0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR1_NV                  0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_FOG                                 0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_PRIMARY_COLOR_NV                    0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SECONDARY_COLOR_NV                  0x05000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_TEXTURE0_ARB                                0x08000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_TEXTURE1_ARB                                0x09000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE0_NV                           0x0c000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE1_NV                           0x0d000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x0e000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_E_TIMES_F_NV                                0x0f000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE                            (1 << 28)
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE_ALPHA                     0x10000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SHIFT                              29
-#define   NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_MASK                               0xe0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_INVERT_NV                        0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_EXPAND_NORMAL_NV                  0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_EXPAND_NEGATE_NV                  0x60000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NORMAL_NV               0x80000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NEGATE_NV               0xa0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SIGNED_IDENTITY_NV                        0xc0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SIGNED_NEGATE_NV                  0xe0000000
-#define  NV10_TCL_PRIMITIVE_3D_RC_COLOR(x)                                             (0x00000270+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_RC_COLOR__SIZE                                          0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_B_SHIFT                                       0
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_B_MASK                                                0x000000ff
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_G_SHIFT                                       8
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_G_MASK                                                0x0000ff00
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_R_SHIFT                                       16
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_R_MASK                                                0x00ff0000
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_A_SHIFT                                       24
-#define   NV10_TCL_PRIMITIVE_3D_RC_COLOR_A_MASK                                                0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x)                                         (0x00000278+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE                                      0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SHIFT                           0
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_MASK                            0x0000000f
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_ZERO                           0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR0_NV             0x00000001
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR1_NV             0x00000002
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_FOG                            0x00000003
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_PRIMARY_COLOR_NV               0x00000004
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SECONDARY_COLOR_NV             0x00000005
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE0_ARB                   0x00000008
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE1_ARB                   0x00000009
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_NV                      0x0000000c
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE1_NV                      0x0000000d
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV 0x0000000e
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_E_TIMES_F_NV                   0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SHIFT                           4
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_MASK                            0x000000f0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_ZERO                           0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR0_NV             0x00000010
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR1_NV             0x00000020
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_FOG                            0x00000030
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_PRIMARY_COLOR_NV               0x00000040
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SECONDARY_COLOR_NV             0x00000050
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE0_ARB                   0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE1_ARB                   0x00000090
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_NV                      0x000000c0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE1_NV                      0x000000d0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV 0x000000e0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_E_TIMES_F_NV                   0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SHIFT                          8
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_MASK                           0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_ZERO                          0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR0_NV            0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR1_NV            0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_FOG                           0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_PRIMARY_COLOR_NV              0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SECONDARY_COLOR_NV            0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE0_ARB                  0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE1_ARB                  0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_NV                     0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE1_NV                     0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV        0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_E_TIMES_F_NV                  0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_DOT_PRODUCT                            (1 << 12)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_DOT_PRODUCT                            (1 << 13)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_MUX_SUM                                   (1 << 14)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS                                      (1 << 15)
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS_NONE                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV                0x00008000
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SHIFT                               17
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_MASK                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_NONE                               0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_TWO_NV                    0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_FOUR_NV                   0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_ONE_HALF_NV               0x00060000
-#define  NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB(x)                                           (0x00000280+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE                                                0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SHIFT                             0
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_MASK                              0x0000000f
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_ZERO                             0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR0_NV               0x00000001
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR1_NV               0x00000002
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_FOG                              0x00000003
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_PRIMARY_COLOR_NV                 0x00000004
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SECONDARY_COLOR_NV               0x00000005
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE0_ARB                     0x00000008
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE1_ARB                     0x00000009
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0_NV                                0x0000000c
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE1_NV                                0x0000000d
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV   0x0000000e
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_E_TIMES_F_NV                     0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SHIFT                             4
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_MASK                              0x000000f0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_ZERO                             0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR0_NV               0x00000010
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR1_NV               0x00000020
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_FOG                              0x00000030
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_PRIMARY_COLOR_NV                 0x00000040
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SECONDARY_COLOR_NV               0x00000050
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE0_ARB                     0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE1_ARB                     0x00000090
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0_NV                                0x000000c0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE1_NV                                0x000000d0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV   0x000000e0
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_E_TIMES_F_NV                     0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SHIFT                            8
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_MASK                             0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_ZERO                            0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR0_NV              0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR1_NV              0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_FOG                             0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_PRIMARY_COLOR_NV                        0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SECONDARY_COLOR_NV              0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE0_ARB                    0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE1_ARB                    0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0_NV                       0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE1_NV                       0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV  0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_E_TIMES_F_NV                    0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_DOT_PRODUCT                              (1 << 12)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_DOT_PRODUCT                              (1 << 13)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_MUX_SUM                                     (1 << 14)
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS                                                (1 << 15)
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS_NONE                                  0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV          0x00008000
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SHIFT                                 17
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_MASK                                  0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_NONE                                 0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_TWO_NV                      0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_FOUR_NV                     0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_ONE_HALF_NV                 0x00060000
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_OPERATION_SHIFT                             27
-#define   NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_OPERATION_MASK                              0x38000000
-#define  NV10_TCL_PRIMITIVE_3D_RC_FINAL0                                               0x00000288
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SHIFT                                        0
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_MASK                                 0x0000000f
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR0_NV                  0x00000001
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR1_NV                  0x00000002
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_FOG                                 0x00000003
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_PRIMARY_COLOR_NV                    0x00000004
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SECONDARY_COLOR_NV                  0x00000005
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_TEXTURE0_ARB                                0x00000008
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_TEXTURE1_ARB                                0x00000009
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE0_NV                           0x0000000c
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE1_NV                           0x0000000d
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x0000000e
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_E_TIMES_F_NV                                0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE                            (1 <<  4)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE_ALPHA                     0x00000010
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SHIFT                              5
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_MASK                               0x000000e0
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_UNSIGNED_INVERT_NV                        0x00000020
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_EXPAND_NORMAL_NV                  0x00000040
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_EXPAND_NEGATE_NV                  0x00000060
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NORMAL_NV               0x00000080
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NEGATE_NV               0x000000a0
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SIGNED_IDENTITY_NV                        0x000000c0
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SIGNED_NEGATE_NV                  0x000000e0
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SHIFT                                        8
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_MASK                                 0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR0_NV                  0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR1_NV                  0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_FOG                                 0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_PRIMARY_COLOR_NV                    0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SECONDARY_COLOR_NV                  0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_TEXTURE0_ARB                                0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_TEXTURE1_ARB                                0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE0_NV                           0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE1_NV                           0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_E_TIMES_F_NV                                0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE                            (1 << 12)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE_ALPHA                     0x00001000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SHIFT                              13
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_MASK                               0x0000e000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_UNSIGNED_INVERT_NV                        0x00002000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_EXPAND_NORMAL_NV                  0x00004000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_EXPAND_NEGATE_NV                  0x00006000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NORMAL_NV               0x00008000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NEGATE_NV               0x0000a000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SIGNED_IDENTITY_NV                        0x0000c000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SIGNED_NEGATE_NV                  0x0000e000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SHIFT                                        16
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_MASK                                 0x000f0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR0_NV                  0x00010000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR1_NV                  0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_FOG                                 0x00030000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_PRIMARY_COLOR_NV                    0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SECONDARY_COLOR_NV                  0x00050000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_TEXTURE0_ARB                                0x00080000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_TEXTURE1_ARB                                0x00090000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE0_NV                           0x000c0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE1_NV                           0x000d0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x000e0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_E_TIMES_F_NV                                0x000f0000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE                            (1 << 20)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE_ALPHA                     0x00100000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SHIFT                              21
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_MASK                               0x00e00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_UNSIGNED_INVERT_NV                        0x00200000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_EXPAND_NORMAL_NV                  0x00400000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_EXPAND_NEGATE_NV                  0x00600000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NORMAL_NV               0x00800000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NEGATE_NV               0x00a00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SIGNED_IDENTITY_NV                        0x00c00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SIGNED_NEGATE_NV                  0x00e00000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SHIFT                                        24
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_MASK                                 0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR0_NV                  0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR1_NV                  0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_FOG                                 0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_PRIMARY_COLOR_NV                    0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SECONDARY_COLOR_NV                  0x05000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_TEXTURE0_ARB                                0x08000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_TEXTURE1_ARB                                0x09000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE0_NV                           0x0c000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE1_NV                           0x0d000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x0e000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_E_TIMES_F_NV                                0x0f000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE                            (1 << 28)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE_ALPHA                     0x10000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SHIFT                              29
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_MASK                               0xe0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_UNSIGNED_INVERT_NV                        0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_EXPAND_NORMAL_NV                  0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_EXPAND_NEGATE_NV                  0x60000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NORMAL_NV               0x80000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NEGATE_NV               0xa0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SIGNED_IDENTITY_NV                        0xc0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SIGNED_NEGATE_NV                  0xe0000000
-#define  NV10_TCL_PRIMITIVE_3D_RC_FINAL1                                               0x0000028c
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_COLOR_SUM_CLAMP                              (1 <<  7)
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SHIFT                                        8
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_MASK                                 0x00000f00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR0_NV                  0x00000100
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR1_NV                  0x00000200
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_FOG                                 0x00000300
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_PRIMARY_COLOR_NV                    0x00000400
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SECONDARY_COLOR_NV                  0x00000500
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_TEXTURE0_ARB                                0x00000800
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_TEXTURE1_ARB                                0x00000900
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE0_NV                           0x00000c00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE1_NV                           0x00000d00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x00000e00
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_E_TIMES_F_NV                                0x00000f00
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE                            (1 << 12)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE_ALPHA                     0x00001000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SHIFT                              13
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_MASK                               0x0000e000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_UNSIGNED_INVERT_NV                        0x00002000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_EXPAND_NORMAL_NV                  0x00004000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_EXPAND_NEGATE_NV                  0x00006000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NORMAL_NV               0x00008000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NEGATE_NV               0x0000a000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SIGNED_IDENTITY_NV                        0x0000c000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SIGNED_NEGATE_NV                  0x0000e000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SHIFT                                        16
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_MASK                                 0x000f0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR0_NV                  0x00010000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR1_NV                  0x00020000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_FOG                                 0x00030000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_PRIMARY_COLOR_NV                    0x00040000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SECONDARY_COLOR_NV                  0x00050000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_TEXTURE0_ARB                                0x00080000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_TEXTURE1_ARB                                0x00090000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE0_NV                           0x000c0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE1_NV                           0x000d0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x000e0000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_E_TIMES_F_NV                                0x000f0000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE                            (1 << 20)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE_ALPHA                     0x00100000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SHIFT                              21
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_MASK                               0x00e00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_UNSIGNED_INVERT_NV                        0x00200000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_EXPAND_NORMAL_NV                  0x00400000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_EXPAND_NEGATE_NV                  0x00600000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NORMAL_NV               0x00800000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NEGATE_NV               0x00a00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SIGNED_IDENTITY_NV                        0x00c00000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SIGNED_NEGATE_NV                  0x00e00000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SHIFT                                        24
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_MASK                                 0x0f000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_ZERO                                        0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR0_NV                  0x01000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR1_NV                  0x02000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_FOG                                 0x03000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_PRIMARY_COLOR_NV                    0x04000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SECONDARY_COLOR_NV                  0x05000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_TEXTURE0_ARB                                0x08000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_TEXTURE1_ARB                                0x09000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE0_NV                           0x0c000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE1_NV                           0x0d000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV      0x0e000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_E_TIMES_F_NV                                0x0f000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE                            (1 << 28)
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE_RGB                       0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE_ALPHA                     0x10000000
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SHIFT                              29
-#define   NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_MASK                               0xe0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_UNSIGNED_IDENTITY_NV              0x00000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_UNSIGNED_INVERT_NV                        0x20000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_EXPAND_NORMAL_NV                  0x40000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_EXPAND_NEGATE_NV                  0x60000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NORMAL_NV               0x80000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NEGATE_NV               0xa0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SIGNED_IDENTITY_NV                        0xc0000000
-#define    NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SIGNED_NEGATE_NV                  0xe0000000
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL                                             0x00000294
-#define   NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_COLOR_CONTROL                              (1 <<  1)
-#define   NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_LOCAL_VIEWER                               (1 << 16)
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE                                   0x00000298
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_SPECULAR                         (1 <<  0)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_DIFFUSE                          (1 <<  1)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_AMBIENT                          (1 <<  2)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_EMISSION                         (1 <<  3)
-#define  NV10_TCL_PRIMITIVE_3D_FOG_MODE                                                        0x0000029c
-#define   NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP                                           0x00000800
-#define   NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP_2                                         0x00000802
-#define   NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP2                                          0x00000803
-#define   NV10_TCL_PRIMITIVE_3D_FOG_MODE_LINEAR                                                0x00000804
-#define   NV10_TCL_PRIMITIVE_3D_FOG_MODE_LINEAR_2                                      0x00002601
-#define  NV10_TCL_PRIMITIVE_3D_FOG_COORD_DIST                                          0x000002a0
-#define  NV10_TCL_PRIMITIVE_3D_FOG_ENABLE                                              0x000002a4
-#define  NV10_TCL_PRIMITIVE_3D_FOG_COLOR                                               0x000002a8
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_R_SHIFT                                      0
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_R_MASK                                       0x000000ff
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_G_SHIFT                                      8
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_G_MASK                                       0x0000ff00
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_B_SHIFT                                      16
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_B_MASK                                       0x00ff0000
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_A_SHIFT                                      24
-#define   NV10_TCL_PRIMITIVE_3D_FOG_COLOR_A_MASK                                       0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_MODE                                      0x000002b4
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x)                                  (0x000002c0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE                               0x00000008
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_L_SHIFT                       0
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_L_MASK                                0x000007ff
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_LEFT_ENABLE                   (1 << 11)
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_R_SHIFT                       16
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_R_MASK                                0x07ff0000
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_RIGHT_ENABLE                  (1 << 27)
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x)                                   (0x000002e0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE                                        0x00000008
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_T_SHIFT                                0
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_T_MASK                         0x000007ff
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_TOP_ENABLE                     (1 << 11)
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_B_SHIFT                                16
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_B_MASK                         0x07ff0000
-#define   NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_BOTTOM_ENABLE                  (1 << 27)
-#define  NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE                                       0x00000300
-#define  NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE                                       0x00000304
-#define  NV10_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE                                                0x00000308
-#define  NV10_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE                                       0x0000030c
-#define  NV10_TCL_PRIMITIVE_3D_DITHER_ENABLE                                           0x00000310
-#define  NV10_TCL_PRIMITIVE_3D_LIGHTING_ENABLE                                         0x00000314
-#define  NV10_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE                                 0x00000318
-#define  NV10_TCL_PRIMITIVE_3D_POINT_SMOOTH_ENABLE                                     0x0000031c
-#define  NV10_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE                                      0x00000320
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE                                   0x00000324
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_WEIGHT_ENABLE                                    0x00000328
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_ENABLE                                          0x0000032c
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE                             0x00000330
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE                              0x00000334
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE                              0x00000338
-#define  NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC                                         0x0000033c
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER                                  0x00000200
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS                                   0x00000201
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL                                  0x00000202
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL                                 0x00000203
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL                               0x00000205
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL                                 0x00000206
-#define   NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS                                 0x00000207
-#define  NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF                                          0x00000340
-#define  NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC                                          0x00000344
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ZERO                                    0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE                                     0x00000001
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_COLOR                               0x00000300
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR                     0x00000301
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA                               0x00000302
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA                     0x00000303
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_ALPHA                               0x00000304
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA                     0x00000305
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_COLOR                               0x00000306
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR                     0x00000307
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE                      0x00000308
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_COLOR                          0x00008001
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR                        0x00008002
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_ALPHA                          0x00008003
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA                        0x00008004
-#define  NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST                                          0x00000348
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ZERO                                    0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE                                     0x00000001
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_COLOR                               0x00000300
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR                     0x00000301
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA                               0x00000302
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA                     0x00000303
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_ALPHA                               0x00000304
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA                     0x00000305
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_COLOR                               0x00000306
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR                     0x00000307
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA_SATURATE                      0x00000308
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_COLOR                          0x00008001
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR                        0x00008002
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_ALPHA                          0x00008003
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA                        0x00008004
-#define  NV10_TCL_PRIMITIVE_3D_BLEND_COLOR                                             0x0000034c
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_B_SHIFT                                    0
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_B_MASK                                     0x000000ff
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_G_SHIFT                                    8
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_G_MASK                                     0x0000ff00
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_R_SHIFT                                    16
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_R_MASK                                     0x00ff0000
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_A_SHIFT                                    24
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_A_MASK                                     0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION                                          0x00000350
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_ADD                                        0x00008006
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_MIN                                     0x00008007
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_MAX                                     0x00008008
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_SUBTRACT                           0x0000800a
-#define   NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT                   0x0000800b
-#define  NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC                                              0x00000354
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_NEVER                                       0x00000200
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_LESS                                                0x00000201
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_EQUAL                                       0x00000202
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_LEQUAL                                      0x00000203
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_NOTEQUAL                                    0x00000205
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_GEQUAL                                      0x00000206
-#define   NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC_ALWAYS                                      0x00000207
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MASK                                              0x00000358
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MASK_B                                           (1 <<  0)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MASK_G                                           (1 <<  8)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MASK_R                                           (1 << 16)
-#define   NV10_TCL_PRIMITIVE_3D_COLOR_MASK_A                                           (1 << 24)
-#define  NV10_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE                                      0x0000035c
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_MASK                                            0x00000360
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC                                       0x00000364
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NEVER                                        0x00000200
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LESS                                 0x00000201
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_EQUAL                                        0x00000202
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LEQUAL                               0x00000203
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER                              0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER                              0x00000204
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NOTEQUAL                             0x00000205
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GEQUAL                               0x00000206
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_ALWAYS                               0x00000207
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF                                                0x00000368
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK                                       0x0000036c
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL                                         0x00000370
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_ZERO                                   0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INVERT                                 0x0000150a
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_KEEP                                   0x00001e00
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_REPLACE                                        0x00001e01
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR                                   0x00001e02
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR                                   0x00001e03
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR_WRAP                              0x00008507
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR_WRAP                              0x00008508
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL                                                0x00000374
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_ZERO                                  0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INVERT                                        0x0000150a
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_KEEP                                  0x00001e00
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_REPLACE                               0x00001e01
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR                                  0x00001e02
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR                                  0x00001e03
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR_WRAP                             0x00008507
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR_WRAP                             0x00008508
-#define  NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS                                                0x00000378
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_ZERO                                  0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INVERT                                        0x0000150a
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_KEEP                                  0x00001e00
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_REPLACE                               0x00001e01
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR                                  0x00001e02
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR                                  0x00001e03
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR_WRAP                             0x00008507
-#define   NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR_WRAP                             0x00008508
-#define  NV10_TCL_PRIMITIVE_3D_SHADE_MODEL                                             0x0000037c
-#define   NV10_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT                                       0x00001d00
-#define   NV10_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH                                     0x00001d01
-#define  NV10_TCL_PRIMITIVE_3D_LINE_WIDTH                                              0x00000380
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR                                   0x00000384
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS                                    0x00000388
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT                                      0x0000038c
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT                               0x00001b00
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE                                        0x00001b01
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL                                        0x00001b02
-#define  NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK                                       0x00000390
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT                                        0x00001b00
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE                                 0x00001b01
-#define   NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL                                 0x00001b02
-#define  NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR                                                0x00000394
-#define  NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR                                         0x00000398
-#define  NV10_TCL_PRIMITIVE_3D_CULL_FACE                                               0x0000039c
-#define   NV10_TCL_PRIMITIVE_3D_CULL_FACE_FRONT                                                0x00000404
-#define   NV10_TCL_PRIMITIVE_3D_CULL_FACE_BACK                                         0x00000405
-#define   NV10_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK                               0x00000408
-#define  NV10_TCL_PRIMITIVE_3D_FRONT_FACE                                              0x000003a0
-#define   NV10_TCL_PRIMITIVE_3D_FRONT_FACE_CW                                          0x00000900
-#define   NV10_TCL_PRIMITIVE_3D_FRONT_FACE_CCW                                         0x00000901
-#define  NV10_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE                                                0x000003a4
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_R                                                0x000003a8
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_G                                                0x000003ac
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_B                                                0x000003b0
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_A                                                0x000003b4
-#define  NV10_TCL_PRIMITIVE_3D_COLOR_CONTROL                                           0x000003b8
-#define  NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS                                          0x000003bc
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT0                                  (1 <<  0)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT1                                  (1 <<  2)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT2                                  (1 <<  4)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT3                                  (1 <<  6)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT4                                  (1 <<  8)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT5                                  (1 << 10)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT6                                  (1 << 12)
-#define   NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT7                                  (1 << 14)
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x)                                    (0x000003c0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE                                 0x00000008
-#define   NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_FALSE                                        0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_EYE_LINEAR                           0x00002400
-#define   NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_OBJECT_LINEAR                                0x00002401
-#define  NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x)                                     (0x000003e0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE                                  0x00000002
-#define  NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE                                      0x000003e8
-#define   NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_MODELVIEW1                          (1 <<  0)
-#define   NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_MODELVIEW0                          (1 <<  1)
-#define   NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_PROJECTION                          (1 <<  2)
-#define  NV10_TCL_PRIMITIVE_3D_POINT_SIZE                                              0x000003ec
-#define  NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX(x)                                    (0x00000400+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX__SIZE                                 0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX(x)                                    (0x00000440+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX__SIZE                                 0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX(x)                            (0x00000480+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX__SIZE                         0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX(x)                            (0x000004c0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX__SIZE                         0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x)                                    (0x00000500+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE                                 0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_TX0_MATRIX(x)                                           (0x00000540+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE                                                0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_TX1_MATRIX(x)                                           (0x00000580+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE                                                0x00000010
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A(x)                                         (0x00000600+((x)*16))
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A__SIZE                                      0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B(x)                                         (0x00000604+((x)*16))
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B__SIZE                                      0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C(x)                                         (0x00000608+((x)*16))
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C__SIZE                                      0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D(x)                                         (0x0000060c+((x)*16))
-#define  NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D__SIZE                                      0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT                                   0x00000680
-#define  NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR                                     0x00000684
-#define  NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC                                  0x00000688
-#define  NV10_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS(x)                             (0x000006a0+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS__SIZE                          0x00000006
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R  0x000006c4
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G  0x000006c8
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B  0x000006cc
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_X                                                0x000006e8
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Y                                                0x000006ec
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Z                                                0x000006f0
-#define  NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_W                                                0x000006f4
-#define  NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER(x)                                      (0x000006f8+((x)*4))
-#define  NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER__SIZE                                   0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x)                   (0x00000800+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x)                   (0x00000804+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x)                   (0x00000808+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x)                   (0x0000080c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x)                   (0x00000810+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x)                   (0x00000814+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE                        0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x)                  (0x00000818+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x)                  (0x0000081c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x)                  (0x00000820+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X(x)                                  (0x00000828+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y(x)                                  (0x0000082c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z(x)                                  (0x00000830+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X(x)                                    (0x00000834+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X__SIZE                                 0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y(x)                                    (0x00000838+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y__SIZE                                 0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z(x)                                    (0x0000083c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z__SIZE                                 0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(x)                                  (0x00000840+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(x)                                  (0x00000844+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(x)                                  (0x00000848+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(x)                                     (0x0000084c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(x)                                     (0x00000850+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(x)                                     (0x00000854+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D(x)                                  (0x00000858+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D__SIZE                               0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(x)                                     (0x0000085c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_X__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(x)                                     (0x00000860+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(x)                                     (0x00000864+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z__SIZE                                  0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT(x)                           (0x00000868+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT__SIZE                                0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR(x)                             (0x0000086c+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR__SIZE                          0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC(x)                          (0x00000870+((x)*128))
-#define  NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC__SIZE                       0x00000008
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X                                         0x00000c00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y                                         0x00000c04
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z                                         0x00000c08
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X                                         0x00000c18
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y                                         0x00000c1c
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z                                         0x00000c20
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W                                         0x00000c24
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X                                         0x00000c30
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y                                         0x00000c34
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z                                         0x00000c38
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY                                                0x00000c40
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT                               0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK                                        0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT                               16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK                                        0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z                                         0x00000c44
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT                                        0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK                                 0x0000ffff
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R                                         0x00000c50
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G                                         0x00000c54
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B                                         0x00000c58
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A                                         0x00000c5c
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R                                         0x00000c60
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G                                         0x00000c64
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B                                         0x00000c68
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I                                           0x00000c6c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT                                  0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK                                   0x000000ff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT                                  8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK                                   0x0000ff00
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT                                  16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK                                   0x00ff0000
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT                                  24
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK                                   0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R                                                0x00000c80
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G                                                0x00000c84
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B                                                0x00000c88
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I                                          0x00000c8c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_R_SHIFT                                 0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_R_MASK                                  0x000000ff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_G_SHIFT                                 8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_G_MASK                                  0x0000ff00
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_B_SHIFT                                 16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_B_MASK                                  0x00ff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S                                         0x00000c90
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T                                         0x00000c94
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I                                           0x00000c98
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_SHIFT                                  0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_MASK                                   0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_SHIFT                                  16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_MASK                                   0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S                                         0x00000ca0
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T                                         0x00000ca4
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R                                         0x00000ca8
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q                                         0x00000cac
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST                                                0x00000cb0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_SHIFT                               0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_MASK                                        0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_SHIFT                               16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_MASK                                        0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ                                                0x00000cb4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_SHIFT                               0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_SHIFT                               16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S                                         0x00000cb8
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T                                         0x00000cbc
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I                                           0x00000cc0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_SHIFT                                  0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_MASK                                   0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_SHIFT                                  16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_MASK                                   0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S                                         0x00000cc8
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T                                         0x00000ccc
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R                                         0x00000cd0
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q                                         0x00000cd4
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST                                                0x00000cd8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_SHIFT                               0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_MASK                                        0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_SHIFT                               16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_MASK                                        0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ                                                0x00000cdc
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_SHIFT                               0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_SHIFT                               16
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_FOG_1F                                           0x00000ce0
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_WGH_1F                                           0x00000ce4
-#define  NV10_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE                                         0x00000cec
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_VALIDATE                                   0x00000cf0
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_POS                                 0x00000d00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS                                 0x00000d04
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL                                 0x00000d08
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL                                 0x00000d0c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL2                                        0x00000d10
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2                                        0x00000d14
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_TYPE_SHIFT                    0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_TYPE_MASK                     0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_FIELDS_SHIFT                  4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_FIELDS_MASK                   0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_STRIDE_SHIFT                  8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_STRIDE_MASK                   0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX0                                 0x00000d18
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0                                 0x00000d1c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX1                                 0x00000d20
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1                                 0x00000d24
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_NOR                                 0x00000d28
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR                                 0x00000d2c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_WGH                                 0x00000d30
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH                                 0x00000d34
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_FOG                                 0x00000d38
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG                                 0x00000d3c
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_TYPE_SHIFT                     0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_TYPE_MASK                      0x0000000f
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_FIELDS_SHIFT                   4
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_FIELDS_MASK                    0x000000f0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_STRIDE_SHIFT                   8
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_STRIDE_MASK                    0x0000ff00
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END                                                0x00000dfc
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_STOP                                  0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POINTS                                        0x00000001
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINES                                 0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_LOOP                             0x00000003
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_STRIP                            0x00000004
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLES                             0x00000005
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_STRIP                                0x00000006
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_FAN                          0x00000007
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUADS                                 0x00000008
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUAD_STRIP                            0x00000009
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POLYGON                               0x0000000a
-#define  NV10_TCL_PRIMITIVE_3D_DRAW_INDEX                                              0x00000e00
-#define   NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I0_SHIFT                                    0
-#define   NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I0_MASK                                     0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I1_SHIFT                                    24
-#define   NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I1_MASK                                     0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END                                 0x000013fc
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_STOP                           0x00000000
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_POINTS                         0x00000001
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINES                          0x00000002
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINE_LOOP                      0x00000003
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINE_STRIP                     0x00000004
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLES                      0x00000005
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLE_STRIP                 0x00000006
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLE_FAN                   0x00000007
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_QUADS                          0x00000008
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_QUAD_STRIP                     0x00000009
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_POLYGON                                0x0000000a
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS                               0x00001400
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_SHIFT                  0
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_MASK                   0x0000ffff
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_LAST_SHIFT                   24
-#define   NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_LAST_MASK                    0xff000000
-#define  NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA                                       0x00001800
+#define NV10TCL                                                                                0x00000056
+
+#define  NV10TCL_NOP                                                                   0x00000100
+#define  NV10TCL_NOTIFY                                                                        0x00000104
+#define  NV10TCL_DMA_NOTIFY                                                            0x00000180
+#define  NV10TCL_DMA_IN_MEMORY0                                                                0x00000184
+#define  NV10TCL_DMA_IN_MEMORY1                                                                0x00000188
+#define  NV10TCL_DISPLAY_LIST                                                          0x0000018c
+#define  NV10TCL_DMA_IN_MEMORY2                                                                0x00000194
+#define  NV10TCL_DMA_IN_MEMORY3                                                                0x00000198
+#define  NV10TCL_VIEWPORT_HORIZ                                                                0x00000200
+#define   NV10TCL_VIEWPORT_HORIZ_X_SHIFT                                               0
+#define   NV10TCL_VIEWPORT_HORIZ_X_MASK                                                        0x0000ffff
+#define   NV10TCL_VIEWPORT_HORIZ_W_SHIFT                                               16
+#define   NV10TCL_VIEWPORT_HORIZ_W_MASK                                                        0xffff0000
+#define  NV10TCL_VIEWPORT_VERT                                                         0x00000204
+#define   NV10TCL_VIEWPORT_VERT_Y_SHIFT                                                        0
+#define   NV10TCL_VIEWPORT_VERT_Y_MASK                                                 0x0000ffff
+#define   NV10TCL_VIEWPORT_VERT_H_SHIFT                                                        16
+#define   NV10TCL_VIEWPORT_VERT_H_MASK                                                 0xffff0000
+#define  NV10TCL_BUFFER_FORMAT                                                         0x00000208
+#define  NV10TCL_BUFFER_PITCH                                                          0x0000020c
+#define   NV10TCL_BUFFER_PITCH_COLOR_PITCH_SHIFT                                       0
+#define   NV10TCL_BUFFER_PITCH_COLOR_PITCH_MASK                                                0x0000ffff
+#define   NV10TCL_BUFFER_PITCH_ZETA_PITCH_SHIFT                                                16
+#define   NV10TCL_BUFFER_PITCH_ZETA_PITCH_MASK                                         0xffff0000
+#define  NV10TCL_COLOR_OFFSET                                                          0x00000210
+#define  NV10TCL_ZETA_OFFSET                                                           0x00000214
+#define  NV10TCL_TX_OFFSET(x)                                                          (0x00000218+((x)*4))
+#define  NV10TCL_TX_OFFSET__SIZE                                                       0x00000002
+#define  NV10TCL_TX_FORMAT(x)                                                          (0x00000220+((x)*4))
+#define  NV10TCL_TX_FORMAT__SIZE                                                       0x00000002
+#define   NV10TCL_TX_FORMAT_CUBE_MAP                                                   (1 <<  2)
+#define   NV10TCL_TX_FORMAT_FORMAT_SHIFT                                               7
+#define   NV10TCL_TX_FORMAT_FORMAT_MASK                                                        0x00000780
+#define    NV10TCL_TX_FORMAT_FORMAT_L8                                                 0x00000000
+#define    NV10TCL_TX_FORMAT_FORMAT_A8                                                 0x00000080
+#define    NV10TCL_TX_FORMAT_FORMAT_A1R5G5B5                                           0x00000100
+#define    NV10TCL_TX_FORMAT_FORMAT_A8_RECT                                            0x00000180
+#define    NV10TCL_TX_FORMAT_FORMAT_A4R4G4B4                                           0x00000200
+#define    NV10TCL_TX_FORMAT_FORMAT_A8R8G8B8                                           0x00000300
+#define    NV10TCL_TX_FORMAT_FORMAT_X8R8G8B8                                           0x00000380
+#define    NV10TCL_TX_FORMAT_FORMAT_INDEX8                                             0x00000580
+#define    NV10TCL_TX_FORMAT_FORMAT_DXT1                                               0x00000600
+#define    NV10TCL_TX_FORMAT_FORMAT_DXT3                                               0x00000700
+#define    NV10TCL_TX_FORMAT_FORMAT_DXT5                                               0x00000780
+#define    NV10TCL_TX_FORMAT_FORMAT_A1R5G5B5_RECT                                      0x00000800
+#define    NV10TCL_TX_FORMAT_FORMAT_A8R8G8B8_RECT                                      0x00000900
+#define    NV10TCL_TX_FORMAT_FORMAT_L8_RECT                                            0x00000980
+#define    NV10TCL_TX_FORMAT_FORMAT_A8L8                                               0x00000d00
+#define    NV10TCL_TX_FORMAT_FORMAT_A8_RECT2                                           0x00000d80
+#define    NV10TCL_TX_FORMAT_FORMAT_R8G8B8_RECT                                                0x00000f00
+#define    NV10TCL_TX_FORMAT_FORMAT_A4R4G4B4_RECT                                      0x00000e80
+#define    NV10TCL_TX_FORMAT_FORMAT_L8A8_RECT                                          0x00001000
+#define    NV10TCL_TX_FORMAT_FORMAT_A16                                                        0x00001900
+#define    NV10TCL_TX_FORMAT_FORMAT_A16_RECT                                           0x00001a80
+#define    NV10TCL_TX_FORMAT_FORMAT_FLOAT_RGBA16_NV                                    0x00002500
+#define    NV10TCL_TX_FORMAT_FORMAT_FLOAT_RGBA32_NV                                    0x00002580
+#define    NV10TCL_TX_FORMAT_FORMAT_FLOAT_R32_NV                                       0x00002600
+#define   NV10TCL_TX_FORMAT_NPOT                                                       (1 << 11)
+#define   NV10TCL_TX_FORMAT_MIPMAP_LEVELS_SHIFT                                                12
+#define   NV10TCL_TX_FORMAT_MIPMAP_LEVELS_MASK                                         0x0000f000
+#define   NV10TCL_TX_FORMAT_BASE_SIZE_U_SHIFT                                          16
+#define   NV10TCL_TX_FORMAT_BASE_SIZE_U_MASK                                           0x000f0000
+#define   NV10TCL_TX_FORMAT_BASE_SIZE_V_SHIFT                                          20
+#define   NV10TCL_TX_FORMAT_BASE_SIZE_V_MASK                                           0x00f00000
+#define   NV10TCL_TX_FORMAT_WRAP_S_SHIFT                                               24
+#define   NV10TCL_TX_FORMAT_WRAP_S_MASK                                                        0x0f000000
+#define    NV10TCL_TX_FORMAT_WRAP_S_REPEAT                                             0x01000000
+#define    NV10TCL_TX_FORMAT_WRAP_S_MIRRORED_REPEAT                                    0x02000000
+#define    NV10TCL_TX_FORMAT_WRAP_S_CLAMP_TO_EDGE                                      0x03000000
+#define    NV10TCL_TX_FORMAT_WRAP_S_CLAMP_TO_BORDER                                    0x04000000
+#define    NV10TCL_TX_FORMAT_WRAP_S_CLAMP                                              0x05000000
+#define   NV10TCL_TX_FORMAT_WRAP_T_SHIFT                                               28
+#define   NV10TCL_TX_FORMAT_WRAP_T_MASK                                                        0xf0000000
+#define    NV10TCL_TX_FORMAT_WRAP_T_REPEAT                                             0x10000000
+#define    NV10TCL_TX_FORMAT_WRAP_T_MIRRORED_REPEAT                                    0x20000000
+#define    NV10TCL_TX_FORMAT_WRAP_T_CLAMP_TO_EDGE                                      0x30000000
+#define    NV10TCL_TX_FORMAT_WRAP_T_CLAMP_TO_BORDER                                    0x40000000
+#define    NV10TCL_TX_FORMAT_WRAP_T_CLAMP                                              0x50000000
+#define  NV10TCL_TX_ENABLE(x)                                                          (0x00000228+((x)*4))
+#define  NV10TCL_TX_ENABLE__SIZE                                                       0x00000002
+#define   NV10TCL_TX_ENABLE_ANISOTROPY_SHIFT                                           4
+#define   NV10TCL_TX_ENABLE_ANISOTROPY_MASK                                            0x00000030
+#define   NV10TCL_TX_ENABLE_ENABLE                                                     (1 << 30)
+#define  NV10TCL_TX_NPOT_PITCH(x)                                                      (0x00000230+((x)*4))
+#define  NV10TCL_TX_NPOT_PITCH__SIZE                                                   0x00000002
+#define   NV10TCL_TX_NPOT_PITCH_PITCH_SHIFT                                            16
+#define   NV10TCL_TX_NPOT_PITCH_PITCH_MASK                                             0xffff0000
+#define  NV10TCL_TX_NPOT_SIZE(x)                                                       (0x00000240+((x)*4))
+#define  NV10TCL_TX_NPOT_SIZE__SIZE                                                    0x00000002
+#define   NV10TCL_TX_NPOT_SIZE_H_SHIFT                                                 0
+#define   NV10TCL_TX_NPOT_SIZE_H_MASK                                                  0x0000ffff
+#define   NV10TCL_TX_NPOT_SIZE_W_SHIFT                                                 16
+#define   NV10TCL_TX_NPOT_SIZE_W_MASK                                                  0xffff0000
+#define  NV10TCL_TX_FILTER(x)                                                          (0x00000248+((x)*4))
+#define  NV10TCL_TX_FILTER__SIZE                                                       0x00000002
+#define   NV10TCL_TX_FILTER_MINIFY_SHIFT                                               24
+#define   NV10TCL_TX_FILTER_MINIFY_MASK                                                        0x0f000000
+#define    NV10TCL_TX_FILTER_MINIFY_NEAREST                                            0x01000000
+#define    NV10TCL_TX_FILTER_MINIFY_LINEAR                                             0x02000000
+#define    NV10TCL_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST                             0x03000000
+#define    NV10TCL_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST                              0x04000000
+#define    NV10TCL_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR                              0x05000000
+#define    NV10TCL_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR                               0x06000000
+#define   NV10TCL_TX_FILTER_MAGNIFY_SHIFT                                              28
+#define   NV10TCL_TX_FILTER_MAGNIFY_MASK                                               0xf0000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_NEAREST                                           0x10000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_LINEAR                                            0x20000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST                            0x30000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST                             0x40000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR                             0x50000000
+#define    NV10TCL_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR                              0x60000000
+#define  NV10TCL_TX_PALETTE_OFFSET(x)                                                  (0x00000250+((x)*4))
+#define  NV10TCL_TX_PALETTE_OFFSET__SIZE                                               0x00000002
+#define  NV10TCL_RC_IN_ALPHA(x)                                                                (0x00000260+((x)*4))
+#define  NV10TCL_RC_IN_ALPHA__SIZE                                                     0x00000002
+#define   NV10TCL_RC_IN_ALPHA_D_INPUT_SHIFT                                            0
+#define   NV10TCL_RC_IN_ALPHA_D_INPUT_MASK                                             0x0000000f
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_ZERO                                            0x00000000
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR0_NV                              0x00000001
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR1_NV                              0x00000002
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_FOG                                             0x00000003
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_PRIMARY_COLOR_NV                                        0x00000004
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_SECONDARY_COLOR_NV                              0x00000005
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_TEXTURE0_ARB                                    0x00000008
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_TEXTURE1_ARB                                    0x00000009
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_SPARE0_NV                                       0x0000000c
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_SPARE1_NV                                       0x0000000d
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                  0x0000000e
+#define    NV10TCL_RC_IN_ALPHA_D_INPUT_E_TIMES_F_NV                                    0x0000000f
+#define   NV10TCL_RC_IN_ALPHA_D_COMPONENT_USAGE                                                (1 <<  4)
+#define    NV10TCL_RC_IN_ALPHA_D_COMPONENT_USAGE_BLUE                                  0x00000000
+#define    NV10TCL_RC_IN_ALPHA_D_COMPONENT_USAGE_ALPHA                                 0x00000010
+#define   NV10TCL_RC_IN_ALPHA_D_MAPPING_SHIFT                                          5
+#define   NV10TCL_RC_IN_ALPHA_D_MAPPING_MASK                                           0x000000e0
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_UNSIGNED_IDENTITY_NV                          0x00000000
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_UNSIGNED_INVERT_NV                            0x00000020
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_EXPAND_NORMAL_NV                              0x00000040
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_EXPAND_NEGATE_NV                              0x00000060
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NORMAL_NV                           0x00000080
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NEGATE_NV                           0x000000a0
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_SIGNED_IDENTITY_NV                            0x000000c0
+#define    NV10TCL_RC_IN_ALPHA_D_MAPPING_SIGNED_NEGATE_NV                              0x000000e0
+#define   NV10TCL_RC_IN_ALPHA_C_INPUT_SHIFT                                            8
+#define   NV10TCL_RC_IN_ALPHA_C_INPUT_MASK                                             0x00000f00
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_ZERO                                            0x00000000
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR0_NV                              0x00000100
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR1_NV                              0x00000200
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_FOG                                             0x00000300
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_PRIMARY_COLOR_NV                                        0x00000400
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_SECONDARY_COLOR_NV                              0x00000500
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_TEXTURE0_ARB                                    0x00000800
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_TEXTURE1_ARB                                    0x00000900
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_SPARE0_NV                                       0x00000c00
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_SPARE1_NV                                       0x00000d00
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                  0x00000e00
+#define    NV10TCL_RC_IN_ALPHA_C_INPUT_E_TIMES_F_NV                                    0x00000f00
+#define   NV10TCL_RC_IN_ALPHA_C_COMPONENT_USAGE                                                (1 << 12)
+#define    NV10TCL_RC_IN_ALPHA_C_COMPONENT_USAGE_BLUE                                  0x00000000
+#define    NV10TCL_RC_IN_ALPHA_C_COMPONENT_USAGE_ALPHA                                 0x00001000
+#define   NV10TCL_RC_IN_ALPHA_C_MAPPING_SHIFT                                          13
+#define   NV10TCL_RC_IN_ALPHA_C_MAPPING_MASK                                           0x0000e000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_UNSIGNED_IDENTITY_NV                          0x00000000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_UNSIGNED_INVERT_NV                            0x00002000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_EXPAND_NORMAL_NV                              0x00004000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_EXPAND_NEGATE_NV                              0x00006000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NORMAL_NV                           0x00008000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NEGATE_NV                           0x0000a000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_SIGNED_IDENTITY_NV                            0x0000c000
+#define    NV10TCL_RC_IN_ALPHA_C_MAPPING_SIGNED_NEGATE_NV                              0x0000e000
+#define   NV10TCL_RC_IN_ALPHA_B_INPUT_SHIFT                                            16
+#define   NV10TCL_RC_IN_ALPHA_B_INPUT_MASK                                             0x000f0000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_ZERO                                            0x00000000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR0_NV                              0x00010000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR1_NV                              0x00020000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_FOG                                             0x00030000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_PRIMARY_COLOR_NV                                        0x00040000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_SECONDARY_COLOR_NV                              0x00050000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_TEXTURE0_ARB                                    0x00080000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_TEXTURE1_ARB                                    0x00090000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_SPARE0_NV                                       0x000c0000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_SPARE1_NV                                       0x000d0000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                  0x000e0000
+#define    NV10TCL_RC_IN_ALPHA_B_INPUT_E_TIMES_F_NV                                    0x000f0000
+#define   NV10TCL_RC_IN_ALPHA_B_COMPONENT_USAGE                                                (1 << 20)
+#define    NV10TCL_RC_IN_ALPHA_B_COMPONENT_USAGE_BLUE                                  0x00000000
+#define    NV10TCL_RC_IN_ALPHA_B_COMPONENT_USAGE_ALPHA                                 0x00100000
+#define   NV10TCL_RC_IN_ALPHA_B_MAPPING_SHIFT                                          21
+#define   NV10TCL_RC_IN_ALPHA_B_MAPPING_MASK                                           0x00e00000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_UNSIGNED_IDENTITY_NV                          0x00000000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_UNSIGNED_INVERT_NV                            0x00200000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_EXPAND_NORMAL_NV                              0x00400000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_EXPAND_NEGATE_NV                              0x00600000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NORMAL_NV                           0x00800000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NEGATE_NV                           0x00a00000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_SIGNED_IDENTITY_NV                            0x00c00000
+#define    NV10TCL_RC_IN_ALPHA_B_MAPPING_SIGNED_NEGATE_NV                              0x00e00000
+#define   NV10TCL_RC_IN_ALPHA_A_INPUT_SHIFT                                            24
+#define   NV10TCL_RC_IN_ALPHA_A_INPUT_MASK                                             0x0f000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_ZERO                                            0x00000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR0_NV                              0x01000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR1_NV                              0x02000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_FOG                                             0x03000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_PRIMARY_COLOR_NV                                        0x04000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_SECONDARY_COLOR_NV                              0x05000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_TEXTURE0_ARB                                    0x08000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_TEXTURE1_ARB                                    0x09000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_SPARE0_NV                                       0x0c000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_SPARE1_NV                                       0x0d000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                  0x0e000000
+#define    NV10TCL_RC_IN_ALPHA_A_INPUT_E_TIMES_F_NV                                    0x0f000000
+#define   NV10TCL_RC_IN_ALPHA_A_COMPONENT_USAGE                                                (1 << 28)
+#define    NV10TCL_RC_IN_ALPHA_A_COMPONENT_USAGE_BLUE                                  0x00000000
+#define    NV10TCL_RC_IN_ALPHA_A_COMPONENT_USAGE_ALPHA                                 0x10000000
+#define   NV10TCL_RC_IN_ALPHA_A_MAPPING_SHIFT                                          29
+#define   NV10TCL_RC_IN_ALPHA_A_MAPPING_MASK                                           0xe0000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_UNSIGNED_IDENTITY_NV                          0x00000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_UNSIGNED_INVERT_NV                            0x20000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_EXPAND_NORMAL_NV                              0x40000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_EXPAND_NEGATE_NV                              0x60000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NORMAL_NV                           0x80000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NEGATE_NV                           0xa0000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_SIGNED_IDENTITY_NV                            0xc0000000
+#define    NV10TCL_RC_IN_ALPHA_A_MAPPING_SIGNED_NEGATE_NV                              0xe0000000
+#define  NV10TCL_RC_IN_RGB(x)                                                          (0x00000268+((x)*4))
+#define  NV10TCL_RC_IN_RGB__SIZE                                                       0x00000002
+#define   NV10TCL_RC_IN_RGB_D_INPUT_SHIFT                                              0
+#define   NV10TCL_RC_IN_RGB_D_INPUT_MASK                                               0x0000000f
+#define    NV10TCL_RC_IN_RGB_D_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_IN_RGB_D_INPUT_CONSTANT_COLOR0_NV                                        0x00000001
+#define    NV10TCL_RC_IN_RGB_D_INPUT_CONSTANT_COLOR1_NV                                        0x00000002
+#define    NV10TCL_RC_IN_RGB_D_INPUT_FOG                                               0x00000003
+#define    NV10TCL_RC_IN_RGB_D_INPUT_PRIMARY_COLOR_NV                                  0x00000004
+#define    NV10TCL_RC_IN_RGB_D_INPUT_SECONDARY_COLOR_NV                                        0x00000005
+#define    NV10TCL_RC_IN_RGB_D_INPUT_TEXTURE0_ARB                                      0x00000008
+#define    NV10TCL_RC_IN_RGB_D_INPUT_TEXTURE1_ARB                                      0x00000009
+#define    NV10TCL_RC_IN_RGB_D_INPUT_SPARE0_NV                                         0x0000000c
+#define    NV10TCL_RC_IN_RGB_D_INPUT_SPARE1_NV                                         0x0000000d
+#define    NV10TCL_RC_IN_RGB_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x0000000e
+#define    NV10TCL_RC_IN_RGB_D_INPUT_E_TIMES_F_NV                                      0x0000000f
+#define   NV10TCL_RC_IN_RGB_D_COMPONENT_USAGE                                          (1 <<  4)
+#define    NV10TCL_RC_IN_RGB_D_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_IN_RGB_D_COMPONENT_USAGE_ALPHA                                   0x00000010
+#define   NV10TCL_RC_IN_RGB_D_MAPPING_SHIFT                                            5
+#define   NV10TCL_RC_IN_RGB_D_MAPPING_MASK                                             0x000000e0
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_UNSIGNED_INVERT_NV                              0x00000020
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_EXPAND_NORMAL_NV                                        0x00000040
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_EXPAND_NEGATE_NV                                        0x00000060
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_HALF_BIAS_NORMAL_NV                             0x00000080
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_HALF_BIAS_NEGATE_NV                             0x000000a0
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_SIGNED_IDENTITY_NV                              0x000000c0
+#define    NV10TCL_RC_IN_RGB_D_MAPPING_SIGNED_NEGATE_NV                                        0x000000e0
+#define   NV10TCL_RC_IN_RGB_C_INPUT_SHIFT                                              8
+#define   NV10TCL_RC_IN_RGB_C_INPUT_MASK                                               0x00000f00
+#define    NV10TCL_RC_IN_RGB_C_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_IN_RGB_C_INPUT_CONSTANT_COLOR0_NV                                        0x00000100
+#define    NV10TCL_RC_IN_RGB_C_INPUT_CONSTANT_COLOR1_NV                                        0x00000200
+#define    NV10TCL_RC_IN_RGB_C_INPUT_FOG                                               0x00000300
+#define    NV10TCL_RC_IN_RGB_C_INPUT_PRIMARY_COLOR_NV                                  0x00000400
+#define    NV10TCL_RC_IN_RGB_C_INPUT_SECONDARY_COLOR_NV                                        0x00000500
+#define    NV10TCL_RC_IN_RGB_C_INPUT_TEXTURE0_ARB                                      0x00000800
+#define    NV10TCL_RC_IN_RGB_C_INPUT_TEXTURE1_ARB                                      0x00000900
+#define    NV10TCL_RC_IN_RGB_C_INPUT_SPARE0_NV                                         0x00000c00
+#define    NV10TCL_RC_IN_RGB_C_INPUT_SPARE1_NV                                         0x00000d00
+#define    NV10TCL_RC_IN_RGB_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x00000e00
+#define    NV10TCL_RC_IN_RGB_C_INPUT_E_TIMES_F_NV                                      0x00000f00
+#define   NV10TCL_RC_IN_RGB_C_COMPONENT_USAGE                                          (1 << 12)
+#define    NV10TCL_RC_IN_RGB_C_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_IN_RGB_C_COMPONENT_USAGE_ALPHA                                   0x00001000
+#define   NV10TCL_RC_IN_RGB_C_MAPPING_SHIFT                                            13
+#define   NV10TCL_RC_IN_RGB_C_MAPPING_MASK                                             0x0000e000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_UNSIGNED_INVERT_NV                              0x00002000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_EXPAND_NORMAL_NV                                        0x00004000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_EXPAND_NEGATE_NV                                        0x00006000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_HALF_BIAS_NORMAL_NV                             0x00008000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_HALF_BIAS_NEGATE_NV                             0x0000a000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_SIGNED_IDENTITY_NV                              0x0000c000
+#define    NV10TCL_RC_IN_RGB_C_MAPPING_SIGNED_NEGATE_NV                                        0x0000e000
+#define   NV10TCL_RC_IN_RGB_B_INPUT_SHIFT                                              16
+#define   NV10TCL_RC_IN_RGB_B_INPUT_MASK                                               0x000f0000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_CONSTANT_COLOR0_NV                                        0x00010000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_CONSTANT_COLOR1_NV                                        0x00020000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_FOG                                               0x00030000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_PRIMARY_COLOR_NV                                  0x00040000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_SECONDARY_COLOR_NV                                        0x00050000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_TEXTURE0_ARB                                      0x00080000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_TEXTURE1_ARB                                      0x00090000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_SPARE0_NV                                         0x000c0000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_SPARE1_NV                                         0x000d0000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x000e0000
+#define    NV10TCL_RC_IN_RGB_B_INPUT_E_TIMES_F_NV                                      0x000f0000
+#define   NV10TCL_RC_IN_RGB_B_COMPONENT_USAGE                                          (1 << 20)
+#define    NV10TCL_RC_IN_RGB_B_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_IN_RGB_B_COMPONENT_USAGE_ALPHA                                   0x00100000
+#define   NV10TCL_RC_IN_RGB_B_MAPPING_SHIFT                                            21
+#define   NV10TCL_RC_IN_RGB_B_MAPPING_MASK                                             0x00e00000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_UNSIGNED_INVERT_NV                              0x00200000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_EXPAND_NORMAL_NV                                        0x00400000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_EXPAND_NEGATE_NV                                        0x00600000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_HALF_BIAS_NORMAL_NV                             0x00800000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_HALF_BIAS_NEGATE_NV                             0x00a00000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_SIGNED_IDENTITY_NV                              0x00c00000
+#define    NV10TCL_RC_IN_RGB_B_MAPPING_SIGNED_NEGATE_NV                                        0x00e00000
+#define   NV10TCL_RC_IN_RGB_A_INPUT_SHIFT                                              24
+#define   NV10TCL_RC_IN_RGB_A_INPUT_MASK                                               0x0f000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_CONSTANT_COLOR0_NV                                        0x01000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_CONSTANT_COLOR1_NV                                        0x02000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_FOG                                               0x03000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_PRIMARY_COLOR_NV                                  0x04000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_SECONDARY_COLOR_NV                                        0x05000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_TEXTURE0_ARB                                      0x08000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_TEXTURE1_ARB                                      0x09000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_SPARE0_NV                                         0x0c000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_SPARE1_NV                                         0x0d000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x0e000000
+#define    NV10TCL_RC_IN_RGB_A_INPUT_E_TIMES_F_NV                                      0x0f000000
+#define   NV10TCL_RC_IN_RGB_A_COMPONENT_USAGE                                          (1 << 28)
+#define    NV10TCL_RC_IN_RGB_A_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_IN_RGB_A_COMPONENT_USAGE_ALPHA                                   0x10000000
+#define   NV10TCL_RC_IN_RGB_A_MAPPING_SHIFT                                            29
+#define   NV10TCL_RC_IN_RGB_A_MAPPING_MASK                                             0xe0000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_UNSIGNED_INVERT_NV                              0x20000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_EXPAND_NORMAL_NV                                        0x40000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_EXPAND_NEGATE_NV                                        0x60000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_HALF_BIAS_NORMAL_NV                             0x80000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_HALF_BIAS_NEGATE_NV                             0xa0000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_SIGNED_IDENTITY_NV                              0xc0000000
+#define    NV10TCL_RC_IN_RGB_A_MAPPING_SIGNED_NEGATE_NV                                        0xe0000000
+#define  NV10TCL_RC_COLOR(x)                                                           (0x00000270+((x)*4))
+#define  NV10TCL_RC_COLOR__SIZE                                                                0x00000002
+#define   NV10TCL_RC_COLOR_B_SHIFT                                                     0
+#define   NV10TCL_RC_COLOR_B_MASK                                                      0x000000ff
+#define   NV10TCL_RC_COLOR_G_SHIFT                                                     8
+#define   NV10TCL_RC_COLOR_G_MASK                                                      0x0000ff00
+#define   NV10TCL_RC_COLOR_R_SHIFT                                                     16
+#define   NV10TCL_RC_COLOR_R_MASK                                                      0x00ff0000
+#define   NV10TCL_RC_COLOR_A_SHIFT                                                     24
+#define   NV10TCL_RC_COLOR_A_MASK                                                      0xff000000
+#define  NV10TCL_RC_OUT_ALPHA(x)                                                       (0x00000278+((x)*4))
+#define  NV10TCL_RC_OUT_ALPHA__SIZE                                                    0x00000002
+#define   NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_SHIFT                                         0
+#define   NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_MASK                                          0x0000000f
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_ZERO                                         0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR0_NV                           0x00000001
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR1_NV                           0x00000002
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_FOG                                          0x00000003
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_PRIMARY_COLOR_NV                             0x00000004
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_SECONDARY_COLOR_NV                           0x00000005
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE0_ARB                                 0x00000008
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE1_ARB                                 0x00000009
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_NV                                    0x0000000c
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_SPARE1_NV                                    0x0000000d
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV               0x0000000e
+#define    NV10TCL_RC_OUT_ALPHA_CD_OUTPUT_E_TIMES_F_NV                                 0x0000000f
+#define   NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_SHIFT                                         4
+#define   NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_MASK                                          0x000000f0
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_ZERO                                         0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR0_NV                           0x00000010
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR1_NV                           0x00000020
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_FOG                                          0x00000030
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_PRIMARY_COLOR_NV                             0x00000040
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_SECONDARY_COLOR_NV                           0x00000050
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE0_ARB                                 0x00000080
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE1_ARB                                 0x00000090
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_NV                                    0x000000c0
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_SPARE1_NV                                    0x000000d0
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV               0x000000e0
+#define    NV10TCL_RC_OUT_ALPHA_AB_OUTPUT_E_TIMES_F_NV                                 0x000000f0
+#define   NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_SHIFT                                                8
+#define   NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_MASK                                         0x00000f00
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_ZERO                                                0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR0_NV                          0x00000100
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR1_NV                          0x00000200
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_FOG                                         0x00000300
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_PRIMARY_COLOR_NV                            0x00000400
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_SECONDARY_COLOR_NV                          0x00000500
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE0_ARB                                        0x00000800
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE1_ARB                                        0x00000900
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_NV                                   0x00000c00
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_SPARE1_NV                                   0x00000d00
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV              0x00000e00
+#define    NV10TCL_RC_OUT_ALPHA_SUM_OUTPUT_E_TIMES_F_NV                                        0x00000f00
+#define   NV10TCL_RC_OUT_ALPHA_CD_DOT_PRODUCT                                          (1 << 12)
+#define   NV10TCL_RC_OUT_ALPHA_AB_DOT_PRODUCT                                          (1 << 13)
+#define   NV10TCL_RC_OUT_ALPHA_MUX_SUM                                                 (1 << 14)
+#define   NV10TCL_RC_OUT_ALPHA_BIAS                                                    (1 << 15)
+#define    NV10TCL_RC_OUT_ALPHA_BIAS_NONE                                              0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV                      0x00008000
+#define   NV10TCL_RC_OUT_ALPHA_SCALE_SHIFT                                             17
+#define   NV10TCL_RC_OUT_ALPHA_SCALE_MASK                                              0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_SCALE_NONE                                             0x00000000
+#define    NV10TCL_RC_OUT_ALPHA_SCALE_SCALE_BY_TWO_NV                                  0x00020000
+#define    NV10TCL_RC_OUT_ALPHA_SCALE_SCALE_BY_FOUR_NV                                 0x00040000
+#define    NV10TCL_RC_OUT_ALPHA_SCALE_SCALE_BY_ONE_HALF_NV                             0x00060000
+#define  NV10TCL_RC_OUT_RGB(x)                                                         (0x00000280+((x)*4))
+#define  NV10TCL_RC_OUT_RGB__SIZE                                                      0x00000002
+#define   NV10TCL_RC_OUT_RGB_CD_OUTPUT_SHIFT                                           0
+#define   NV10TCL_RC_OUT_RGB_CD_OUTPUT_MASK                                            0x0000000f
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_ZERO                                           0x00000000
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR0_NV                             0x00000001
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR1_NV                             0x00000002
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_FOG                                            0x00000003
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_PRIMARY_COLOR_NV                               0x00000004
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_SECONDARY_COLOR_NV                             0x00000005
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_TEXTURE0_ARB                                   0x00000008
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_TEXTURE1_ARB                                   0x00000009
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_SPARE0_NV                                      0x0000000c
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_SPARE1_NV                                      0x0000000d
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                 0x0000000e
+#define    NV10TCL_RC_OUT_RGB_CD_OUTPUT_E_TIMES_F_NV                                   0x0000000f
+#define   NV10TCL_RC_OUT_RGB_AB_OUTPUT_SHIFT                                           4
+#define   NV10TCL_RC_OUT_RGB_AB_OUTPUT_MASK                                            0x000000f0
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_ZERO                                           0x00000000
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR0_NV                             0x00000010
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR1_NV                             0x00000020
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_FOG                                            0x00000030
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_PRIMARY_COLOR_NV                               0x00000040
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_SECONDARY_COLOR_NV                             0x00000050
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_TEXTURE0_ARB                                   0x00000080
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_TEXTURE1_ARB                                   0x00000090
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_SPARE0_NV                                      0x000000c0
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_SPARE1_NV                                      0x000000d0
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                 0x000000e0
+#define    NV10TCL_RC_OUT_RGB_AB_OUTPUT_E_TIMES_F_NV                                   0x000000f0
+#define   NV10TCL_RC_OUT_RGB_SUM_OUTPUT_SHIFT                                          8
+#define   NV10TCL_RC_OUT_RGB_SUM_OUTPUT_MASK                                           0x00000f00
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_ZERO                                          0x00000000
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR0_NV                            0x00000100
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR1_NV                            0x00000200
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_FOG                                           0x00000300
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_PRIMARY_COLOR_NV                              0x00000400
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_SECONDARY_COLOR_NV                            0x00000500
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_TEXTURE0_ARB                                  0x00000800
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_TEXTURE1_ARB                                  0x00000900
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_SPARE0_NV                                     0x00000c00
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_SPARE1_NV                                     0x00000d00
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                        0x00000e00
+#define    NV10TCL_RC_OUT_RGB_SUM_OUTPUT_E_TIMES_F_NV                                  0x00000f00
+#define   NV10TCL_RC_OUT_RGB_CD_DOT_PRODUCT                                            (1 << 12)
+#define   NV10TCL_RC_OUT_RGB_AB_DOT_PRODUCT                                            (1 << 13)
+#define   NV10TCL_RC_OUT_RGB_MUX_SUM                                                   (1 << 14)
+#define   NV10TCL_RC_OUT_RGB_BIAS                                                      (1 << 15)
+#define    NV10TCL_RC_OUT_RGB_BIAS_NONE                                                        0x00000000
+#define    NV10TCL_RC_OUT_RGB_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV                                0x00008000
+#define   NV10TCL_RC_OUT_RGB_SCALE_SHIFT                                               17
+#define   NV10TCL_RC_OUT_RGB_SCALE_MASK                                                        0x00000000
+#define    NV10TCL_RC_OUT_RGB_SCALE_NONE                                               0x00000000
+#define    NV10TCL_RC_OUT_RGB_SCALE_SCALE_BY_TWO_NV                                    0x00020000
+#define    NV10TCL_RC_OUT_RGB_SCALE_SCALE_BY_FOUR_NV                                   0x00040000
+#define    NV10TCL_RC_OUT_RGB_SCALE_SCALE_BY_ONE_HALF_NV                               0x00060000
+#define   NV10TCL_RC_OUT_RGB_OPERATION_SHIFT                                           27
+#define   NV10TCL_RC_OUT_RGB_OPERATION_MASK                                            0x38000000
+#define  NV10TCL_RC_FINAL0                                                             0x00000288
+#define   NV10TCL_RC_FINAL0_D_INPUT_SHIFT                                              0
+#define   NV10TCL_RC_FINAL0_D_INPUT_MASK                                               0x0000000f
+#define    NV10TCL_RC_FINAL0_D_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL0_D_INPUT_CONSTANT_COLOR0_NV                                        0x00000001
+#define    NV10TCL_RC_FINAL0_D_INPUT_CONSTANT_COLOR1_NV                                        0x00000002
+#define    NV10TCL_RC_FINAL0_D_INPUT_FOG                                               0x00000003
+#define    NV10TCL_RC_FINAL0_D_INPUT_PRIMARY_COLOR_NV                                  0x00000004
+#define    NV10TCL_RC_FINAL0_D_INPUT_SECONDARY_COLOR_NV                                        0x00000005
+#define    NV10TCL_RC_FINAL0_D_INPUT_TEXTURE0_ARB                                      0x00000008
+#define    NV10TCL_RC_FINAL0_D_INPUT_TEXTURE1_ARB                                      0x00000009
+#define    NV10TCL_RC_FINAL0_D_INPUT_SPARE0_NV                                         0x0000000c
+#define    NV10TCL_RC_FINAL0_D_INPUT_SPARE1_NV                                         0x0000000d
+#define    NV10TCL_RC_FINAL0_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x0000000e
+#define    NV10TCL_RC_FINAL0_D_INPUT_E_TIMES_F_NV                                      0x0000000f
+#define   NV10TCL_RC_FINAL0_D_COMPONENT_USAGE                                          (1 <<  4)
+#define    NV10TCL_RC_FINAL0_D_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL0_D_COMPONENT_USAGE_ALPHA                                   0x00000010
+#define   NV10TCL_RC_FINAL0_D_MAPPING_SHIFT                                            5
+#define   NV10TCL_RC_FINAL0_D_MAPPING_MASK                                             0x000000e0
+#define    NV10TCL_RC_FINAL0_D_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL0_D_MAPPING_UNSIGNED_INVERT_NV                              0x00000020
+#define    NV10TCL_RC_FINAL0_D_MAPPING_EXPAND_NORMAL_NV                                        0x00000040
+#define    NV10TCL_RC_FINAL0_D_MAPPING_EXPAND_NEGATE_NV                                        0x00000060
+#define    NV10TCL_RC_FINAL0_D_MAPPING_HALF_BIAS_NORMAL_NV                             0x00000080
+#define    NV10TCL_RC_FINAL0_D_MAPPING_HALF_BIAS_NEGATE_NV                             0x000000a0
+#define    NV10TCL_RC_FINAL0_D_MAPPING_SIGNED_IDENTITY_NV                              0x000000c0
+#define    NV10TCL_RC_FINAL0_D_MAPPING_SIGNED_NEGATE_NV                                        0x000000e0
+#define   NV10TCL_RC_FINAL0_C_INPUT_SHIFT                                              8
+#define   NV10TCL_RC_FINAL0_C_INPUT_MASK                                               0x00000f00
+#define    NV10TCL_RC_FINAL0_C_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL0_C_INPUT_CONSTANT_COLOR0_NV                                        0x00000100
+#define    NV10TCL_RC_FINAL0_C_INPUT_CONSTANT_COLOR1_NV                                        0x00000200
+#define    NV10TCL_RC_FINAL0_C_INPUT_FOG                                               0x00000300
+#define    NV10TCL_RC_FINAL0_C_INPUT_PRIMARY_COLOR_NV                                  0x00000400
+#define    NV10TCL_RC_FINAL0_C_INPUT_SECONDARY_COLOR_NV                                        0x00000500
+#define    NV10TCL_RC_FINAL0_C_INPUT_TEXTURE0_ARB                                      0x00000800
+#define    NV10TCL_RC_FINAL0_C_INPUT_TEXTURE1_ARB                                      0x00000900
+#define    NV10TCL_RC_FINAL0_C_INPUT_SPARE0_NV                                         0x00000c00
+#define    NV10TCL_RC_FINAL0_C_INPUT_SPARE1_NV                                         0x00000d00
+#define    NV10TCL_RC_FINAL0_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x00000e00
+#define    NV10TCL_RC_FINAL0_C_INPUT_E_TIMES_F_NV                                      0x00000f00
+#define   NV10TCL_RC_FINAL0_C_COMPONENT_USAGE                                          (1 << 12)
+#define    NV10TCL_RC_FINAL0_C_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL0_C_COMPONENT_USAGE_ALPHA                                   0x00001000
+#define   NV10TCL_RC_FINAL0_C_MAPPING_SHIFT                                            13
+#define   NV10TCL_RC_FINAL0_C_MAPPING_MASK                                             0x0000e000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_UNSIGNED_INVERT_NV                              0x00002000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_EXPAND_NORMAL_NV                                        0x00004000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_EXPAND_NEGATE_NV                                        0x00006000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_HALF_BIAS_NORMAL_NV                             0x00008000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_HALF_BIAS_NEGATE_NV                             0x0000a000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_SIGNED_IDENTITY_NV                              0x0000c000
+#define    NV10TCL_RC_FINAL0_C_MAPPING_SIGNED_NEGATE_NV                                        0x0000e000
+#define   NV10TCL_RC_FINAL0_B_INPUT_SHIFT                                              16
+#define   NV10TCL_RC_FINAL0_B_INPUT_MASK                                               0x000f0000
+#define    NV10TCL_RC_FINAL0_B_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL0_B_INPUT_CONSTANT_COLOR0_NV                                        0x00010000
+#define    NV10TCL_RC_FINAL0_B_INPUT_CONSTANT_COLOR1_NV                                        0x00020000
+#define    NV10TCL_RC_FINAL0_B_INPUT_FOG                                               0x00030000
+#define    NV10TCL_RC_FINAL0_B_INPUT_PRIMARY_COLOR_NV                                  0x00040000
+#define    NV10TCL_RC_FINAL0_B_INPUT_SECONDARY_COLOR_NV                                        0x00050000
+#define    NV10TCL_RC_FINAL0_B_INPUT_TEXTURE0_ARB                                      0x00080000
+#define    NV10TCL_RC_FINAL0_B_INPUT_TEXTURE1_ARB                                      0x00090000
+#define    NV10TCL_RC_FINAL0_B_INPUT_SPARE0_NV                                         0x000c0000
+#define    NV10TCL_RC_FINAL0_B_INPUT_SPARE1_NV                                         0x000d0000
+#define    NV10TCL_RC_FINAL0_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x000e0000
+#define    NV10TCL_RC_FINAL0_B_INPUT_E_TIMES_F_NV                                      0x000f0000
+#define   NV10TCL_RC_FINAL0_B_COMPONENT_USAGE                                          (1 << 20)
+#define    NV10TCL_RC_FINAL0_B_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL0_B_COMPONENT_USAGE_ALPHA                                   0x00100000
+#define   NV10TCL_RC_FINAL0_B_MAPPING_SHIFT                                            21
+#define   NV10TCL_RC_FINAL0_B_MAPPING_MASK                                             0x00e00000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_UNSIGNED_INVERT_NV                              0x00200000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_EXPAND_NORMAL_NV                                        0x00400000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_EXPAND_NEGATE_NV                                        0x00600000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_HALF_BIAS_NORMAL_NV                             0x00800000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_HALF_BIAS_NEGATE_NV                             0x00a00000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_SIGNED_IDENTITY_NV                              0x00c00000
+#define    NV10TCL_RC_FINAL0_B_MAPPING_SIGNED_NEGATE_NV                                        0x00e00000
+#define   NV10TCL_RC_FINAL0_A_INPUT_SHIFT                                              24
+#define   NV10TCL_RC_FINAL0_A_INPUT_MASK                                               0x0f000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_CONSTANT_COLOR0_NV                                        0x01000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_CONSTANT_COLOR1_NV                                        0x02000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_FOG                                               0x03000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_PRIMARY_COLOR_NV                                  0x04000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_SECONDARY_COLOR_NV                                        0x05000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_TEXTURE0_ARB                                      0x08000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_TEXTURE1_ARB                                      0x09000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_SPARE0_NV                                         0x0c000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_SPARE1_NV                                         0x0d000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x0e000000
+#define    NV10TCL_RC_FINAL0_A_INPUT_E_TIMES_F_NV                                      0x0f000000
+#define   NV10TCL_RC_FINAL0_A_COMPONENT_USAGE                                          (1 << 28)
+#define    NV10TCL_RC_FINAL0_A_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL0_A_COMPONENT_USAGE_ALPHA                                   0x10000000
+#define   NV10TCL_RC_FINAL0_A_MAPPING_SHIFT                                            29
+#define   NV10TCL_RC_FINAL0_A_MAPPING_MASK                                             0xe0000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_UNSIGNED_INVERT_NV                              0x20000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_EXPAND_NORMAL_NV                                        0x40000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_EXPAND_NEGATE_NV                                        0x60000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_HALF_BIAS_NORMAL_NV                             0x80000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_HALF_BIAS_NEGATE_NV                             0xa0000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_SIGNED_IDENTITY_NV                              0xc0000000
+#define    NV10TCL_RC_FINAL0_A_MAPPING_SIGNED_NEGATE_NV                                        0xe0000000
+#define  NV10TCL_RC_FINAL1                                                             0x0000028c
+#define   NV10TCL_RC_FINAL1_COLOR_SUM_CLAMP                                            (1 <<  7)
+#define   NV10TCL_RC_FINAL1_G_INPUT_SHIFT                                              8
+#define   NV10TCL_RC_FINAL1_G_INPUT_MASK                                               0x00000f00
+#define    NV10TCL_RC_FINAL1_G_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL1_G_INPUT_CONSTANT_COLOR0_NV                                        0x00000100
+#define    NV10TCL_RC_FINAL1_G_INPUT_CONSTANT_COLOR1_NV                                        0x00000200
+#define    NV10TCL_RC_FINAL1_G_INPUT_FOG                                               0x00000300
+#define    NV10TCL_RC_FINAL1_G_INPUT_PRIMARY_COLOR_NV                                  0x00000400
+#define    NV10TCL_RC_FINAL1_G_INPUT_SECONDARY_COLOR_NV                                        0x00000500
+#define    NV10TCL_RC_FINAL1_G_INPUT_TEXTURE0_ARB                                      0x00000800
+#define    NV10TCL_RC_FINAL1_G_INPUT_TEXTURE1_ARB                                      0x00000900
+#define    NV10TCL_RC_FINAL1_G_INPUT_SPARE0_NV                                         0x00000c00
+#define    NV10TCL_RC_FINAL1_G_INPUT_SPARE1_NV                                         0x00000d00
+#define    NV10TCL_RC_FINAL1_G_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x00000e00
+#define    NV10TCL_RC_FINAL1_G_INPUT_E_TIMES_F_NV                                      0x00000f00
+#define   NV10TCL_RC_FINAL1_G_COMPONENT_USAGE                                          (1 << 12)
+#define    NV10TCL_RC_FINAL1_G_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL1_G_COMPONENT_USAGE_ALPHA                                   0x00001000
+#define   NV10TCL_RC_FINAL1_G_MAPPING_SHIFT                                            13
+#define   NV10TCL_RC_FINAL1_G_MAPPING_MASK                                             0x0000e000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_UNSIGNED_INVERT_NV                              0x00002000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_EXPAND_NORMAL_NV                                        0x00004000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_EXPAND_NEGATE_NV                                        0x00006000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_HALF_BIAS_NORMAL_NV                             0x00008000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_HALF_BIAS_NEGATE_NV                             0x0000a000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_SIGNED_IDENTITY_NV                              0x0000c000
+#define    NV10TCL_RC_FINAL1_G_MAPPING_SIGNED_NEGATE_NV                                        0x0000e000
+#define   NV10TCL_RC_FINAL1_F_INPUT_SHIFT                                              16
+#define   NV10TCL_RC_FINAL1_F_INPUT_MASK                                               0x000f0000
+#define    NV10TCL_RC_FINAL1_F_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL1_F_INPUT_CONSTANT_COLOR0_NV                                        0x00010000
+#define    NV10TCL_RC_FINAL1_F_INPUT_CONSTANT_COLOR1_NV                                        0x00020000
+#define    NV10TCL_RC_FINAL1_F_INPUT_FOG                                               0x00030000
+#define    NV10TCL_RC_FINAL1_F_INPUT_PRIMARY_COLOR_NV                                  0x00040000
+#define    NV10TCL_RC_FINAL1_F_INPUT_SECONDARY_COLOR_NV                                        0x00050000
+#define    NV10TCL_RC_FINAL1_F_INPUT_TEXTURE0_ARB                                      0x00080000
+#define    NV10TCL_RC_FINAL1_F_INPUT_TEXTURE1_ARB                                      0x00090000
+#define    NV10TCL_RC_FINAL1_F_INPUT_SPARE0_NV                                         0x000c0000
+#define    NV10TCL_RC_FINAL1_F_INPUT_SPARE1_NV                                         0x000d0000
+#define    NV10TCL_RC_FINAL1_F_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x000e0000
+#define    NV10TCL_RC_FINAL1_F_INPUT_E_TIMES_F_NV                                      0x000f0000
+#define   NV10TCL_RC_FINAL1_F_COMPONENT_USAGE                                          (1 << 20)
+#define    NV10TCL_RC_FINAL1_F_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL1_F_COMPONENT_USAGE_ALPHA                                   0x00100000
+#define   NV10TCL_RC_FINAL1_F_MAPPING_SHIFT                                            21
+#define   NV10TCL_RC_FINAL1_F_MAPPING_MASK                                             0x00e00000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_UNSIGNED_INVERT_NV                              0x00200000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_EXPAND_NORMAL_NV                                        0x00400000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_EXPAND_NEGATE_NV                                        0x00600000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_HALF_BIAS_NORMAL_NV                             0x00800000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_HALF_BIAS_NEGATE_NV                             0x00a00000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_SIGNED_IDENTITY_NV                              0x00c00000
+#define    NV10TCL_RC_FINAL1_F_MAPPING_SIGNED_NEGATE_NV                                        0x00e00000
+#define   NV10TCL_RC_FINAL1_E_INPUT_SHIFT                                              24
+#define   NV10TCL_RC_FINAL1_E_INPUT_MASK                                               0x0f000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_ZERO                                              0x00000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_CONSTANT_COLOR0_NV                                        0x01000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_CONSTANT_COLOR1_NV                                        0x02000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_FOG                                               0x03000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_PRIMARY_COLOR_NV                                  0x04000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_SECONDARY_COLOR_NV                                        0x05000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_TEXTURE0_ARB                                      0x08000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_TEXTURE1_ARB                                      0x09000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_SPARE0_NV                                         0x0c000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_SPARE1_NV                                         0x0d000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV                    0x0e000000
+#define    NV10TCL_RC_FINAL1_E_INPUT_E_TIMES_F_NV                                      0x0f000000
+#define   NV10TCL_RC_FINAL1_E_COMPONENT_USAGE                                          (1 << 28)
+#define    NV10TCL_RC_FINAL1_E_COMPONENT_USAGE_RGB                                     0x00000000
+#define    NV10TCL_RC_FINAL1_E_COMPONENT_USAGE_ALPHA                                   0x10000000
+#define   NV10TCL_RC_FINAL1_E_MAPPING_SHIFT                                            29
+#define   NV10TCL_RC_FINAL1_E_MAPPING_MASK                                             0xe0000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_UNSIGNED_IDENTITY_NV                            0x00000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_UNSIGNED_INVERT_NV                              0x20000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_EXPAND_NORMAL_NV                                        0x40000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_EXPAND_NEGATE_NV                                        0x60000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_HALF_BIAS_NORMAL_NV                             0x80000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_HALF_BIAS_NEGATE_NV                             0xa0000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_SIGNED_IDENTITY_NV                              0xc0000000
+#define    NV10TCL_RC_FINAL1_E_MAPPING_SIGNED_NEGATE_NV                                        0xe0000000
+#define  NV10TCL_LIGHT_MODEL                                                           0x00000294
+#define   NV10TCL_LIGHT_MODEL_COLOR_CONTROL                                            (1 <<  1)
+#define   NV10TCL_LIGHT_MODEL_LOCAL_VIEWER                                             (1 << 16)
+#define  NV10TCL_COLOR_MATERIAL_ENABLE                                                 0x00000298
+#define   NV10TCL_COLOR_MATERIAL_ENABLE_SPECULAR                                       (1 <<  0)
+#define   NV10TCL_COLOR_MATERIAL_ENABLE_DIFFUSE                                                (1 <<  1)
+#define   NV10TCL_COLOR_MATERIAL_ENABLE_AMBIENT                                                (1 <<  2)
+#define   NV10TCL_COLOR_MATERIAL_ENABLE_EMISSION                                       (1 <<  3)
+#define  NV10TCL_FOG_MODE                                                              0x0000029c
+#define   NV10TCL_FOG_MODE_EXP                                                         0x00000800
+#define   NV10TCL_FOG_MODE_EXP_2                                                       0x00000802
+#define   NV10TCL_FOG_MODE_EXP2                                                                0x00000803
+#define   NV10TCL_FOG_MODE_LINEAR                                                      0x00000804
+#define   NV10TCL_FOG_MODE_LINEAR_2                                                    0x00002601
+#define  NV10TCL_FOG_COORD_DIST                                                                0x000002a0
+#define  NV10TCL_FOG_ENABLE                                                            0x000002a4
+#define  NV10TCL_FOG_COLOR                                                             0x000002a8
+#define   NV10TCL_FOG_COLOR_R_SHIFT                                                    0
+#define   NV10TCL_FOG_COLOR_R_MASK                                                     0x000000ff
+#define   NV10TCL_FOG_COLOR_G_SHIFT                                                    8
+#define   NV10TCL_FOG_COLOR_G_MASK                                                     0x0000ff00
+#define   NV10TCL_FOG_COLOR_B_SHIFT                                                    16
+#define   NV10TCL_FOG_COLOR_B_MASK                                                     0x00ff0000
+#define   NV10TCL_FOG_COLOR_A_SHIFT                                                    24
+#define   NV10TCL_FOG_COLOR_A_MASK                                                     0xff000000
+#define  NV10TCL_VIEWPORT_CLIP_MODE                                                    0x000002b4
+#define  NV10TCL_VIEWPORT_CLIP_HORIZ(x)                                                        (0x000002c0+((x)*4))
+#define  NV10TCL_VIEWPORT_CLIP_HORIZ__SIZE                                             0x00000008
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_L_SHIFT                                     0
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_L_MASK                                      0x000007ff
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_LEFT_ENABLE                                 (1 << 11)
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_R_SHIFT                                     16
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_R_MASK                                      0x07ff0000
+#define   NV10TCL_VIEWPORT_CLIP_HORIZ_CLIP_RIGHT_ENABLE                                        (1 << 27)
+#define  NV10TCL_VIEWPORT_CLIP_VERT(x)                                                 (0x000002e0+((x)*4))
+#define  NV10TCL_VIEWPORT_CLIP_VERT__SIZE                                              0x00000008
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_T_SHIFT                                      0
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_T_MASK                                       0x000007ff
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_TOP_ENABLE                                   (1 << 11)
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_B_SHIFT                                      16
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_B_MASK                                       0x07ff0000
+#define   NV10TCL_VIEWPORT_CLIP_VERT_CLIP_BOTTOM_ENABLE                                        (1 << 27)
+#define  NV10TCL_ALPHA_FUNC_ENABLE                                                     0x00000300
+#define  NV10TCL_BLEND_FUNC_ENABLE                                                     0x00000304
+#define  NV10TCL_CULL_FACE_ENABLE                                                      0x00000308
+#define  NV10TCL_DEPTH_TEST_ENABLE                                                     0x0000030c
+#define  NV10TCL_DITHER_ENABLE                                                         0x00000310
+#define  NV10TCL_LIGHTING_ENABLE                                                       0x00000314
+#define  NV10TCL_POINT_PARAMETERS_ENABLE                                               0x00000318
+#define  NV10TCL_POINT_SMOOTH_ENABLE                                                   0x0000031c
+#define  NV10TCL_LINE_SMOOTH_ENABLE                                                    0x00000320
+#define  NV10TCL_POLYGON_SMOOTH_ENABLE                                                 0x00000324
+#define  NV10TCL_VERTEX_WEIGHT_ENABLE                                                  0x00000328
+#define  NV10TCL_STENCIL_ENABLE                                                                0x0000032c
+#define  NV10TCL_POLYGON_OFFSET_POINT_ENABLE                                           0x00000330
+#define  NV10TCL_POLYGON_OFFSET_LINE_ENABLE                                            0x00000334
+#define  NV10TCL_POLYGON_OFFSET_FILL_ENABLE                                            0x00000338
+#define  NV10TCL_ALPHA_FUNC_FUNC                                                       0x0000033c
+#define   NV10TCL_ALPHA_FUNC_FUNC_NEVER                                                        0x00000200
+#define   NV10TCL_ALPHA_FUNC_FUNC_LESS                                                 0x00000201
+#define   NV10TCL_ALPHA_FUNC_FUNC_EQUAL                                                        0x00000202
+#define   NV10TCL_ALPHA_FUNC_FUNC_LEQUAL                                               0x00000203
+#define   NV10TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV10TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV10TCL_ALPHA_FUNC_FUNC_NOTEQUAL                                             0x00000205
+#define   NV10TCL_ALPHA_FUNC_FUNC_GEQUAL                                               0x00000206
+#define   NV10TCL_ALPHA_FUNC_FUNC_ALWAYS                                               0x00000207
+#define  NV10TCL_ALPHA_FUNC_REF                                                                0x00000340
+#define  NV10TCL_BLEND_FUNC_SRC                                                                0x00000344
+#define   NV10TCL_BLEND_FUNC_SRC_ZERO                                                  0x00000000
+#define   NV10TCL_BLEND_FUNC_SRC_ONE                                                   0x00000001
+#define   NV10TCL_BLEND_FUNC_SRC_SRC_COLOR                                             0x00000300
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR                                   0x00000301
+#define   NV10TCL_BLEND_FUNC_SRC_SRC_ALPHA                                             0x00000302
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA                                   0x00000303
+#define   NV10TCL_BLEND_FUNC_SRC_DST_ALPHA                                             0x00000304
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA                                   0x00000305
+#define   NV10TCL_BLEND_FUNC_SRC_DST_COLOR                                             0x00000306
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR                                   0x00000307
+#define   NV10TCL_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE                                    0x00000308
+#define   NV10TCL_BLEND_FUNC_SRC_CONSTANT_COLOR                                                0x00008001
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR                              0x00008002
+#define   NV10TCL_BLEND_FUNC_SRC_CONSTANT_ALPHA                                                0x00008003
+#define   NV10TCL_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA                              0x00008004
+#define  NV10TCL_BLEND_FUNC_DST                                                                0x00000348
+#define   NV10TCL_BLEND_FUNC_DST_ZERO                                                  0x00000000
+#define   NV10TCL_BLEND_FUNC_DST_ONE                                                   0x00000001
+#define   NV10TCL_BLEND_FUNC_DST_SRC_COLOR                                             0x00000300
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR                                   0x00000301
+#define   NV10TCL_BLEND_FUNC_DST_SRC_ALPHA                                             0x00000302
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA                                   0x00000303
+#define   NV10TCL_BLEND_FUNC_DST_DST_ALPHA                                             0x00000304
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA                                   0x00000305
+#define   NV10TCL_BLEND_FUNC_DST_DST_COLOR                                             0x00000306
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR                                   0x00000307
+#define   NV10TCL_BLEND_FUNC_DST_SRC_ALPHA_SATURATE                                    0x00000308
+#define   NV10TCL_BLEND_FUNC_DST_CONSTANT_COLOR                                                0x00008001
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR                              0x00008002
+#define   NV10TCL_BLEND_FUNC_DST_CONSTANT_ALPHA                                                0x00008003
+#define   NV10TCL_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA                              0x00008004
+#define  NV10TCL_BLEND_COLOR                                                           0x0000034c
+#define   NV10TCL_BLEND_COLOR_B_SHIFT                                                  0
+#define   NV10TCL_BLEND_COLOR_B_MASK                                                   0x000000ff
+#define   NV10TCL_BLEND_COLOR_G_SHIFT                                                  8
+#define   NV10TCL_BLEND_COLOR_G_MASK                                                   0x0000ff00
+#define   NV10TCL_BLEND_COLOR_R_SHIFT                                                  16
+#define   NV10TCL_BLEND_COLOR_R_MASK                                                   0x00ff0000
+#define   NV10TCL_BLEND_COLOR_A_SHIFT                                                  24
+#define   NV10TCL_BLEND_COLOR_A_MASK                                                   0xff000000
+#define  NV10TCL_BLEND_EQUATION                                                                0x00000350
+#define   NV10TCL_BLEND_EQUATION_FUNC_ADD                                              0x00008006
+#define   NV10TCL_BLEND_EQUATION_MIN                                                   0x00008007
+#define   NV10TCL_BLEND_EQUATION_MAX                                                   0x00008008
+#define   NV10TCL_BLEND_EQUATION_FUNC_SUBTRACT                                         0x0000800a
+#define   NV10TCL_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT                                 0x0000800b
+#define  NV10TCL_DEPTH_FUNC                                                            0x00000354
+#define   NV10TCL_DEPTH_FUNC_NEVER                                                     0x00000200
+#define   NV10TCL_DEPTH_FUNC_LESS                                                      0x00000201
+#define   NV10TCL_DEPTH_FUNC_EQUAL                                                     0x00000202
+#define   NV10TCL_DEPTH_FUNC_LEQUAL                                                    0x00000203
+#define   NV10TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV10TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV10TCL_DEPTH_FUNC_NOTEQUAL                                                  0x00000205
+#define   NV10TCL_DEPTH_FUNC_GEQUAL                                                    0x00000206
+#define   NV10TCL_DEPTH_FUNC_ALWAYS                                                    0x00000207
+#define  NV10TCL_COLOR_MASK                                                            0x00000358
+#define   NV10TCL_COLOR_MASK_B                                                         (1 <<  0)
+#define   NV10TCL_COLOR_MASK_G                                                         (1 <<  8)
+#define   NV10TCL_COLOR_MASK_R                                                         (1 << 16)
+#define   NV10TCL_COLOR_MASK_A                                                         (1 << 24)
+#define  NV10TCL_DEPTH_WRITE_ENABLE                                                    0x0000035c
+#define  NV10TCL_STENCIL_MASK                                                          0x00000360
+#define  NV10TCL_STENCIL_FUNC_FUNC                                                     0x00000364
+#define   NV10TCL_STENCIL_FUNC_FUNC_NEVER                                              0x00000200
+#define   NV10TCL_STENCIL_FUNC_FUNC_LESS                                               0x00000201
+#define   NV10TCL_STENCIL_FUNC_FUNC_EQUAL                                              0x00000202
+#define   NV10TCL_STENCIL_FUNC_FUNC_LEQUAL                                             0x00000203
+#define   NV10TCL_STENCIL_FUNC_FUNC_GREATER                                            0x00000204
+#define   NV10TCL_STENCIL_FUNC_FUNC_GREATER                                            0x00000204
+#define   NV10TCL_STENCIL_FUNC_FUNC_NOTEQUAL                                           0x00000205
+#define   NV10TCL_STENCIL_FUNC_FUNC_GEQUAL                                             0x00000206
+#define   NV10TCL_STENCIL_FUNC_FUNC_ALWAYS                                             0x00000207
+#define  NV10TCL_STENCIL_FUNC_REF                                                      0x00000368
+#define  NV10TCL_STENCIL_FUNC_MASK                                                     0x0000036c
+#define  NV10TCL_STENCIL_OP_FAIL                                                       0x00000370
+#define   NV10TCL_STENCIL_OP_FAIL_ZERO                                                 0x00000000
+#define   NV10TCL_STENCIL_OP_FAIL_INVERT                                               0x0000150a
+#define   NV10TCL_STENCIL_OP_FAIL_KEEP                                                 0x00001e00
+#define   NV10TCL_STENCIL_OP_FAIL_REPLACE                                              0x00001e01
+#define   NV10TCL_STENCIL_OP_FAIL_INCR                                                 0x00001e02
+#define   NV10TCL_STENCIL_OP_FAIL_DECR                                                 0x00001e03
+#define   NV10TCL_STENCIL_OP_FAIL_INCR_WRAP                                            0x00008507
+#define   NV10TCL_STENCIL_OP_FAIL_DECR_WRAP                                            0x00008508
+#define  NV10TCL_STENCIL_OP_ZFAIL                                                      0x00000374
+#define   NV10TCL_STENCIL_OP_ZFAIL_ZERO                                                        0x00000000
+#define   NV10TCL_STENCIL_OP_ZFAIL_INVERT                                              0x0000150a
+#define   NV10TCL_STENCIL_OP_ZFAIL_KEEP                                                        0x00001e00
+#define   NV10TCL_STENCIL_OP_ZFAIL_REPLACE                                             0x00001e01
+#define   NV10TCL_STENCIL_OP_ZFAIL_INCR                                                        0x00001e02
+#define   NV10TCL_STENCIL_OP_ZFAIL_DECR                                                        0x00001e03
+#define   NV10TCL_STENCIL_OP_ZFAIL_INCR_WRAP                                           0x00008507
+#define   NV10TCL_STENCIL_OP_ZFAIL_DECR_WRAP                                           0x00008508
+#define  NV10TCL_STENCIL_OP_ZPASS                                                      0x00000378
+#define   NV10TCL_STENCIL_OP_ZPASS_ZERO                                                        0x00000000
+#define   NV10TCL_STENCIL_OP_ZPASS_INVERT                                              0x0000150a
+#define   NV10TCL_STENCIL_OP_ZPASS_KEEP                                                        0x00001e00
+#define   NV10TCL_STENCIL_OP_ZPASS_REPLACE                                             0x00001e01
+#define   NV10TCL_STENCIL_OP_ZPASS_INCR                                                        0x00001e02
+#define   NV10TCL_STENCIL_OP_ZPASS_DECR                                                        0x00001e03
+#define   NV10TCL_STENCIL_OP_ZPASS_INCR_WRAP                                           0x00008507
+#define   NV10TCL_STENCIL_OP_ZPASS_DECR_WRAP                                           0x00008508
+#define  NV10TCL_SHADE_MODEL                                                           0x0000037c
+#define   NV10TCL_SHADE_MODEL_FLAT                                                     0x00001d00
+#define   NV10TCL_SHADE_MODEL_SMOOTH                                                   0x00001d01
+#define  NV10TCL_LINE_WIDTH                                                            0x00000380
+#define  NV10TCL_POLYGON_OFFSET_FACTOR                                                 0x00000384
+#define  NV10TCL_POLYGON_OFFSET_UNITS                                                  0x00000388
+#define  NV10TCL_POLYGON_MODE_FRONT                                                    0x0000038c
+#define   NV10TCL_POLYGON_MODE_FRONT_POINT                                             0x00001b00
+#define   NV10TCL_POLYGON_MODE_FRONT_LINE                                              0x00001b01
+#define   NV10TCL_POLYGON_MODE_FRONT_FILL                                              0x00001b02
+#define  NV10TCL_POLYGON_MODE_BACK                                                     0x00000390
+#define   NV10TCL_POLYGON_MODE_BACK_POINT                                              0x00001b00
+#define   NV10TCL_POLYGON_MODE_BACK_LINE                                               0x00001b01
+#define   NV10TCL_POLYGON_MODE_BACK_FILL                                               0x00001b02
+#define  NV10TCL_DEPTH_RANGE_NEAR                                                      0x00000394
+#define  NV10TCL_DEPTH_RANGE_FAR                                                       0x00000398
+#define  NV10TCL_CULL_FACE                                                             0x0000039c
+#define   NV10TCL_CULL_FACE_FRONT                                                      0x00000404
+#define   NV10TCL_CULL_FACE_BACK                                                       0x00000405
+#define   NV10TCL_CULL_FACE_FRONT_AND_BACK                                             0x00000408
+#define  NV10TCL_FRONT_FACE                                                            0x000003a0
+#define   NV10TCL_FRONT_FACE_CW                                                                0x00000900
+#define   NV10TCL_FRONT_FACE_CCW                                                       0x00000901
+#define  NV10TCL_NORMALIZE_ENABLE                                                      0x000003a4
+#define  NV10TCL_COLOR_MATERIAL_R                                                      0x000003a8
+#define  NV10TCL_COLOR_MATERIAL_G                                                      0x000003ac
+#define  NV10TCL_COLOR_MATERIAL_B                                                      0x000003b0
+#define  NV10TCL_COLOR_MATERIAL_A                                                      0x000003b4
+#define  NV10TCL_COLOR_CONTROL                                                         0x000003b8
+#define  NV10TCL_ENABLED_LIGHTS                                                                0x000003bc
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT0                                                        (1 <<  0)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT1                                                        (1 <<  2)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT2                                                        (1 <<  4)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT3                                                        (1 <<  6)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT4                                                        (1 <<  8)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT5                                                        (1 << 10)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT6                                                        (1 << 12)
+#define   NV10TCL_ENABLED_LIGHTS_LIGHT7                                                        (1 << 14)
+#define  NV10TCL_CLIP_PLANE_ENABLE(x)                                                  (0x000003c0+((x)*4))
+#define  NV10TCL_CLIP_PLANE_ENABLE__SIZE                                               0x00000008
+#define   NV10TCL_CLIP_PLANE_ENABLE_FALSE                                              0x00000000
+#define   NV10TCL_CLIP_PLANE_ENABLE_EYE_LINEAR                                         0x00002400
+#define   NV10TCL_CLIP_PLANE_ENABLE_OBJECT_LINEAR                                      0x00002401
+#define  NV10TCL_TX_MATRIX_ENABLE(x)                                                   (0x000003e0+((x)*4))
+#define  NV10TCL_TX_MATRIX_ENABLE__SIZE                                                        0x00000002
+#define  NV10TCL_VIEW_MATRIX_ENABLE                                                    0x000003e8
+#define   NV10TCL_VIEW_MATRIX_ENABLE_MODELVIEW1                                                (1 <<  0)
+#define   NV10TCL_VIEW_MATRIX_ENABLE_MODELVIEW0                                                (1 <<  1)
+#define   NV10TCL_VIEW_MATRIX_ENABLE_PROJECTION                                                (1 <<  2)
+#define  NV10TCL_POINT_SIZE                                                            0x000003ec
+#define  NV10TCL_MODELVIEW0_MATRIX(x)                                                  (0x00000400+((x)*4))
+#define  NV10TCL_MODELVIEW0_MATRIX__SIZE                                               0x00000010
+#define  NV10TCL_MODELVIEW1_MATRIX(x)                                                  (0x00000440+((x)*4))
+#define  NV10TCL_MODELVIEW1_MATRIX__SIZE                                               0x00000010
+#define  NV10TCL_INVERSE_MODELVIEW0_MATRIX(x)                                          (0x00000480+((x)*4))
+#define  NV10TCL_INVERSE_MODELVIEW0_MATRIX__SIZE                                       0x00000010
+#define  NV10TCL_INVERSE_MODELVIEW1_MATRIX(x)                                          (0x000004c0+((x)*4))
+#define  NV10TCL_INVERSE_MODELVIEW1_MATRIX__SIZE                                       0x00000010
+#define  NV10TCL_PROJECTION_MATRIX(x)                                                  (0x00000500+((x)*4))
+#define  NV10TCL_PROJECTION_MATRIX__SIZE                                               0x00000010
+#define  NV10TCL_TX0_MATRIX(x)                                                         (0x00000540+((x)*4))
+#define  NV10TCL_TX0_MATRIX__SIZE                                                      0x00000010
+#define  NV10TCL_TX1_MATRIX(x)                                                         (0x00000580+((x)*4))
+#define  NV10TCL_TX1_MATRIX__SIZE                                                      0x00000010
+#define  NV10TCL_CLIP_PLANE_A(x)                                                       (0x00000600+((x)*16))
+#define  NV10TCL_CLIP_PLANE_A__SIZE                                                    0x00000008
+#define  NV10TCL_CLIP_PLANE_B(x)                                                       (0x00000604+((x)*16))
+#define  NV10TCL_CLIP_PLANE_B__SIZE                                                    0x00000008
+#define  NV10TCL_CLIP_PLANE_C(x)                                                       (0x00000608+((x)*16))
+#define  NV10TCL_CLIP_PLANE_C__SIZE                                                    0x00000008
+#define  NV10TCL_CLIP_PLANE_D(x)                                                       (0x0000060c+((x)*16))
+#define  NV10TCL_CLIP_PLANE_D__SIZE                                                    0x00000008
+#define  NV10TCL_FOG_EQUATION_CONSTANT                                                 0x00000680
+#define  NV10TCL_FOG_EQUATION_LINEAR                                                   0x00000684
+#define  NV10TCL_FOG_EQUATION_QUADRATIC                                                        0x00000688
+#define  NV10TCL_FRONT_MATERIAL_SHININESS(x)                                           (0x000006a0+((x)*4))
+#define  NV10TCL_FRONT_MATERIAL_SHININESS__SIZE                                                0x00000006
+#define  NV10TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R                        0x000006c4
+#define  NV10TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G                        0x000006c8
+#define  NV10TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B                        0x000006cc
+#define  NV10TCL_VIEWPORT_SCALE_X                                                      0x000006e8
+#define  NV10TCL_VIEWPORT_SCALE_Y                                                      0x000006ec
+#define  NV10TCL_VIEWPORT_SCALE_Z                                                      0x000006f0
+#define  NV10TCL_VIEWPORT_SCALE_W                                                      0x000006f4
+#define  NV10TCL_POINT_PARAMETER(x)                                                    (0x000006f8+((x)*4))
+#define  NV10TCL_POINT_PARAMETER__SIZE                                                 0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x)                                 (0x00000800+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x)                                 (0x00000804+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x)                                 (0x00000808+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x)                                 (0x0000080c+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x)                                 (0x00000810+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x)                                 (0x00000814+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE                              0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x)                                        (0x00000818+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE                             0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x)                                        (0x0000081c+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE                             0x00000008
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x)                                        (0x00000820+((x)*128))
+#define  NV10TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE                             0x00000008
+#define  NV10TCL_LIGHT_HALF_VECTOR_X(x)                                                        (0x00000828+((x)*128))
+#define  NV10TCL_LIGHT_HALF_VECTOR_X__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_HALF_VECTOR_Y(x)                                                        (0x0000082c+((x)*128))
+#define  NV10TCL_LIGHT_HALF_VECTOR_Y__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_HALF_VECTOR_Z(x)                                                        (0x00000830+((x)*128))
+#define  NV10TCL_LIGHT_HALF_VECTOR_Z__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_DIRECTION_X(x)                                                  (0x00000834+((x)*128))
+#define  NV10TCL_LIGHT_DIRECTION_X__SIZE                                               0x00000008
+#define  NV10TCL_LIGHT_DIRECTION_Y(x)                                                  (0x00000838+((x)*128))
+#define  NV10TCL_LIGHT_DIRECTION_Y__SIZE                                               0x00000008
+#define  NV10TCL_LIGHT_DIRECTION_Z(x)                                                  (0x0000083c+((x)*128))
+#define  NV10TCL_LIGHT_DIRECTION_Z__SIZE                                               0x00000008
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_A(x)                                                        (0x00000840+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_A__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_B(x)                                                        (0x00000844+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_B__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_C(x)                                                        (0x00000848+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_C__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_SPOT_DIR_X(x)                                                   (0x0000084c+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_DIR_X__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_SPOT_DIR_Y(x)                                                   (0x00000850+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_DIR_Y__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_SPOT_DIR_Z(x)                                                   (0x00000854+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_DIR_Z__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_D(x)                                                        (0x00000858+((x)*128))
+#define  NV10TCL_LIGHT_SPOT_CUTOFF_D__SIZE                                             0x00000008
+#define  NV10TCL_LIGHT_POSITION_X(x)                                                   (0x0000085c+((x)*128))
+#define  NV10TCL_LIGHT_POSITION_X__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_POSITION_Y(x)                                                   (0x00000860+((x)*128))
+#define  NV10TCL_LIGHT_POSITION_Y__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_POSITION_Z(x)                                                   (0x00000864+((x)*128))
+#define  NV10TCL_LIGHT_POSITION_Z__SIZE                                                        0x00000008
+#define  NV10TCL_LIGHT_ATTENUATION_CONSTANT(x)                                         (0x00000868+((x)*128))
+#define  NV10TCL_LIGHT_ATTENUATION_CONSTANT__SIZE                                      0x00000008
+#define  NV10TCL_LIGHT_ATTENUATION_LINEAR(x)                                           (0x0000086c+((x)*128))
+#define  NV10TCL_LIGHT_ATTENUATION_LINEAR__SIZE                                                0x00000008
+#define  NV10TCL_LIGHT_ATTENUATION_QUADRATIC(x)                                                (0x00000870+((x)*128))
+#define  NV10TCL_LIGHT_ATTENUATION_QUADRATIC__SIZE                                     0x00000008
+#define  NV10TCL_VERTEX_POS_3F_X                                                       0x00000c00
+#define  NV10TCL_VERTEX_POS_3F_Y                                                       0x00000c04
+#define  NV10TCL_VERTEX_POS_3F_Z                                                       0x00000c08
+#define  NV10TCL_VERTEX_POS_4F_X                                                       0x00000c18
+#define  NV10TCL_VERTEX_POS_4F_Y                                                       0x00000c1c
+#define  NV10TCL_VERTEX_POS_4F_Z                                                       0x00000c20
+#define  NV10TCL_VERTEX_POS_4F_W                                                       0x00000c24
+#define  NV10TCL_VERTEX_NOR_3F_X                                                       0x00000c30
+#define  NV10TCL_VERTEX_NOR_3F_Y                                                       0x00000c34
+#define  NV10TCL_VERTEX_NOR_3F_Z                                                       0x00000c38
+#define  NV10TCL_VERTEX_NOR_3I_XY                                                      0x00000c40
+#define   NV10TCL_VERTEX_NOR_3I_XY_X_SHIFT                                             0
+#define   NV10TCL_VERTEX_NOR_3I_XY_X_MASK                                              0x0000ffff
+#define   NV10TCL_VERTEX_NOR_3I_XY_Y_SHIFT                                             16
+#define   NV10TCL_VERTEX_NOR_3I_XY_Y_MASK                                              0xffff0000
+#define  NV10TCL_VERTEX_NOR_3I_Z                                                       0x00000c44
+#define   NV10TCL_VERTEX_NOR_3I_Z_Z_SHIFT                                              0
+#define   NV10TCL_VERTEX_NOR_3I_Z_Z_MASK                                               0x0000ffff
+#define  NV10TCL_VERTEX_COL_4F_R                                                       0x00000c50
+#define  NV10TCL_VERTEX_COL_4F_G                                                       0x00000c54
+#define  NV10TCL_VERTEX_COL_4F_B                                                       0x00000c58
+#define  NV10TCL_VERTEX_COL_4F_A                                                       0x00000c5c
+#define  NV10TCL_VERTEX_COL_3F_R                                                       0x00000c60
+#define  NV10TCL_VERTEX_COL_3F_G                                                       0x00000c64
+#define  NV10TCL_VERTEX_COL_3F_B                                                       0x00000c68
+#define  NV10TCL_VERTEX_COL_4I                                                         0x00000c6c
+#define   NV10TCL_VERTEX_COL_4I_R_SHIFT                                                        0
+#define   NV10TCL_VERTEX_COL_4I_R_MASK                                                 0x000000ff
+#define   NV10TCL_VERTEX_COL_4I_G_SHIFT                                                        8
+#define   NV10TCL_VERTEX_COL_4I_G_MASK                                                 0x0000ff00
+#define   NV10TCL_VERTEX_COL_4I_B_SHIFT                                                        16
+#define   NV10TCL_VERTEX_COL_4I_B_MASK                                                 0x00ff0000
+#define   NV10TCL_VERTEX_COL_4I_A_SHIFT                                                        24
+#define   NV10TCL_VERTEX_COL_4I_A_MASK                                                 0xff000000
+#define  NV10TCL_VERTEX_COL2_3F_R                                                      0x00000c80
+#define  NV10TCL_VERTEX_COL2_3F_G                                                      0x00000c84
+#define  NV10TCL_VERTEX_COL2_3F_B                                                      0x00000c88
+#define  NV10TCL_VERTEX_COL2_3I                                                                0x00000c8c
+#define   NV10TCL_VERTEX_COL2_3I_R_SHIFT                                               0
+#define   NV10TCL_VERTEX_COL2_3I_R_MASK                                                        0x000000ff
+#define   NV10TCL_VERTEX_COL2_3I_G_SHIFT                                               8
+#define   NV10TCL_VERTEX_COL2_3I_G_MASK                                                        0x0000ff00
+#define   NV10TCL_VERTEX_COL2_3I_B_SHIFT                                               16
+#define   NV10TCL_VERTEX_COL2_3I_B_MASK                                                        0x00ff0000
+#define  NV10TCL_VERTEX_TX0_2F_S                                                       0x00000c90
+#define  NV10TCL_VERTEX_TX0_2F_T                                                       0x00000c94
+#define  NV10TCL_VERTEX_TX0_2I                                                         0x00000c98
+#define   NV10TCL_VERTEX_TX0_2I_S_SHIFT                                                        0
+#define   NV10TCL_VERTEX_TX0_2I_S_MASK                                                 0x0000ffff
+#define   NV10TCL_VERTEX_TX0_2I_T_SHIFT                                                        16
+#define   NV10TCL_VERTEX_TX0_2I_T_MASK                                                 0xffff0000
+#define  NV10TCL_VERTEX_TX0_4F_S                                                       0x00000ca0
+#define  NV10TCL_VERTEX_TX0_4F_T                                                       0x00000ca4
+#define  NV10TCL_VERTEX_TX0_4F_R                                                       0x00000ca8
+#define  NV10TCL_VERTEX_TX0_4F_Q                                                       0x00000cac
+#define  NV10TCL_VERTEX_TX0_4I_ST                                                      0x00000cb0
+#define   NV10TCL_VERTEX_TX0_4I_ST_S_SHIFT                                             0
+#define   NV10TCL_VERTEX_TX0_4I_ST_S_MASK                                              0x0000ffff
+#define   NV10TCL_VERTEX_TX0_4I_ST_T_SHIFT                                             16
+#define   NV10TCL_VERTEX_TX0_4I_ST_T_MASK                                              0xffff0000
+#define  NV10TCL_VERTEX_TX0_4I_RQ                                                      0x00000cb4
+#define   NV10TCL_VERTEX_TX0_4I_RQ_R_SHIFT                                             0
+#define   NV10TCL_VERTEX_TX0_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV10TCL_VERTEX_TX0_4I_RQ_Q_SHIFT                                             16
+#define   NV10TCL_VERTEX_TX0_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV10TCL_VERTEX_TX1_2F_S                                                       0x00000cb8
+#define  NV10TCL_VERTEX_TX1_2F_T                                                       0x00000cbc
+#define  NV10TCL_VERTEX_TX1_2I                                                         0x00000cc0
+#define   NV10TCL_VERTEX_TX1_2I_S_SHIFT                                                        0
+#define   NV10TCL_VERTEX_TX1_2I_S_MASK                                                 0x0000ffff
+#define   NV10TCL_VERTEX_TX1_2I_T_SHIFT                                                        16
+#define   NV10TCL_VERTEX_TX1_2I_T_MASK                                                 0xffff0000
+#define  NV10TCL_VERTEX_TX1_4F_S                                                       0x00000cc8
+#define  NV10TCL_VERTEX_TX1_4F_T                                                       0x00000ccc
+#define  NV10TCL_VERTEX_TX1_4F_R                                                       0x00000cd0
+#define  NV10TCL_VERTEX_TX1_4F_Q                                                       0x00000cd4
+#define  NV10TCL_VERTEX_TX1_4I_ST                                                      0x00000cd8
+#define   NV10TCL_VERTEX_TX1_4I_ST_S_SHIFT                                             0
+#define   NV10TCL_VERTEX_TX1_4I_ST_S_MASK                                              0x0000ffff
+#define   NV10TCL_VERTEX_TX1_4I_ST_T_SHIFT                                             16
+#define   NV10TCL_VERTEX_TX1_4I_ST_T_MASK                                              0xffff0000
+#define  NV10TCL_VERTEX_TX1_4I_RQ                                                      0x00000cdc
+#define   NV10TCL_VERTEX_TX1_4I_RQ_R_SHIFT                                             0
+#define   NV10TCL_VERTEX_TX1_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV10TCL_VERTEX_TX1_4I_RQ_Q_SHIFT                                             16
+#define   NV10TCL_VERTEX_TX1_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV10TCL_VERTEX_FOG_1F                                                         0x00000ce0
+#define  NV10TCL_VERTEX_WGH_1F                                                         0x00000ce4
+#define  NV10TCL_EDGEFLAG_ENABLE                                                       0x00000cec
+#define  NV10TCL_VERTEX_ARRAY_VALIDATE                                                 0x00000cf0
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_POS                                               0x00000d00
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_POS                                               0x00000d04
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_POS_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_COL                                               0x00000d08
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_COL                                               0x00000d0c
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_COL2                                              0x00000d10
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_COL2                                              0x00000d14
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_TYPE_SHIFT                                  0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_TYPE_MASK                                   0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_FIELDS_SHIFT                                        4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_FIELDS_MASK                                 0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_STRIDE_SHIFT                                        8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_COL2_STRIDE_MASK                                 0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_TX0                                               0x00000d18
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_TX0                                               0x00000d1c
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX0_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_TX1                                               0x00000d20
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_TX1                                               0x00000d24
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_TX1_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_NOR                                               0x00000d28
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_NOR                                               0x00000d2c
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_NOR_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_WGH                                               0x00000d30
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_WGH                                               0x00000d34
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_WGH_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_ARRAY_OFFSET_FOG                                               0x00000d38
+#define  NV10TCL_VERTEX_ARRAY_FORMAT_FOG                                               0x00000d3c
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_TYPE_SHIFT                                   0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_TYPE_MASK                                    0x0000000f
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_FIELDS_SHIFT                                 4
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_FIELDS_MASK                                  0x000000f0
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_STRIDE_SHIFT                                 8
+#define   NV10TCL_VERTEX_ARRAY_FORMAT_FOG_STRIDE_MASK                                  0x0000ff00
+#define  NV10TCL_VERTEX_BEGIN_END                                                      0x00000dfc
+#define   NV10TCL_VERTEX_BEGIN_END_STOP                                                        0x00000000
+#define   NV10TCL_VERTEX_BEGIN_END_POINTS                                              0x00000001
+#define   NV10TCL_VERTEX_BEGIN_END_LINES                                               0x00000002
+#define   NV10TCL_VERTEX_BEGIN_END_LINE_LOOP                                           0x00000003
+#define   NV10TCL_VERTEX_BEGIN_END_LINE_STRIP                                          0x00000004
+#define   NV10TCL_VERTEX_BEGIN_END_TRIANGLES                                           0x00000005
+#define   NV10TCL_VERTEX_BEGIN_END_TRIANGLE_STRIP                                      0x00000006
+#define   NV10TCL_VERTEX_BEGIN_END_TRIANGLE_FAN                                                0x00000007
+#define   NV10TCL_VERTEX_BEGIN_END_QUADS                                               0x00000008
+#define   NV10TCL_VERTEX_BEGIN_END_QUAD_STRIP                                          0x00000009
+#define   NV10TCL_VERTEX_BEGIN_END_POLYGON                                             0x0000000a
+#define  NV10TCL_DRAW_INDEX                                                            0x00000e00
+#define   NV10TCL_DRAW_INDEX_I0_SHIFT                                                  0
+#define   NV10TCL_DRAW_INDEX_I0_MASK                                                   0x0000ffff
+#define   NV10TCL_DRAW_INDEX_I1_SHIFT                                                  24
+#define   NV10TCL_DRAW_INDEX_I1_MASK                                                   0xff000000
+#define  NV10TCL_VERTEX_BUFFER_BEGIN_END                                               0x000013fc
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_STOP                                         0x00000000
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_POINTS                                       0x00000001
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_LINES                                                0x00000002
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_LINE_LOOP                                    0x00000003
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_LINE_STRIP                                   0x00000004
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_TRIANGLES                                    0x00000005
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_TRIANGLE_STRIP                               0x00000006
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_TRIANGLE_FAN                                 0x00000007
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_QUADS                                                0x00000008
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_QUAD_STRIP                                   0x00000009
+#define   NV10TCL_VERTEX_BUFFER_BEGIN_END_POLYGON                                      0x0000000a
+#define  NV10TCL_VERTEX_BUFFER_DRAW_ARRAYS                                             0x00001400
+#define   NV10TCL_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_SHIFT                                        0
+#define   NV10TCL_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_MASK                                 0x0000ffff
+#define   NV10TCL_VERTEX_BUFFER_DRAW_ARRAYS_LAST_SHIFT                                 24
+#define   NV10TCL_VERTEX_BUFFER_DRAW_ARRAYS_LAST_MASK                                  0xff000000
+#define  NV10TCL_VERTEX_ARRAY_DATA                                                     0x00001800
 
 
 #define NV04_CONTEXT_COLOR_KEY                                                         0x00000057
@@ -2943,24 +2943,24 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV04_RENDER_SOLID_RECTANGLE_SURFACE                                           0x00000198
 
 
-#define NV_IMAGE_BLIT                                                                  0x0000005f
+#define NV04_IMAGE_BLIT                                                                        0x0000005f
 
-#define  NV_IMAGE_BLIT_NOP                                                             0x00000100
-#define  NV_IMAGE_BLIT_NOTIFY                                                          0x00000104
-#define  NV_IMAGE_BLIT_DMA_NOTIFY                                                      0x00000180
-#define  NV_IMAGE_BLIT_COLOR_KEY                                                       0x00000184
-#define  NV_IMAGE_BLIT_CLIP_RECTANGLE                                                  0x00000188
-#define  NV_IMAGE_BLIT_PATTERN                                                         0x0000018c
-#define  NV_IMAGE_BLIT_ROP                                                             0x00000190
-#define  NV_IMAGE_BLIT_BETA4                                                           0x00000198
-#define  NV_IMAGE_BLIT_SURFACE                                                         0x0000019c
-#define  NV_IMAGE_BLIT_OPERATION                                                       0x000002fc
-#define   NV_IMAGE_BLIT_OPERATION_SRCCOPY_AND                                          0x00000000
-#define   NV_IMAGE_BLIT_OPERATION_ROP_AND                                              0x00000001
-#define   NV_IMAGE_BLIT_OPERATION_BLEND_AND                                            0x00000002
-#define   NV_IMAGE_BLIT_OPERATION_SRCCOPY                                              0x00000003
-#define   NV_IMAGE_BLIT_OPERATION_SRCCOPY_PREMULT                                      0x00000004
-#define   NV_IMAGE_BLIT_OPERATION_BLEND_PREMULT                                                0x00000005
+#define  NV04_IMAGE_BLIT_NOP                                                           0x00000100
+#define  NV04_IMAGE_BLIT_NOTIFY                                                                0x00000104
+#define  NV04_IMAGE_BLIT_DMA_NOTIFY                                                    0x00000180
+#define  NV04_IMAGE_BLIT_COLOR_KEY                                                     0x00000184
+#define  NV04_IMAGE_BLIT_CLIP_RECTANGLE                                                        0x00000188
+#define  NV04_IMAGE_BLIT_PATTERN                                                       0x0000018c
+#define  NV04_IMAGE_BLIT_ROP                                                           0x00000190
+#define  NV04_IMAGE_BLIT_BETA4                                                         0x00000198
+#define  NV04_IMAGE_BLIT_SURFACE                                                       0x0000019c
+#define  NV04_IMAGE_BLIT_OPERATION                                                     0x000002fc
+#define   NV04_IMAGE_BLIT_OPERATION_SRCCOPY_AND                                                0x00000000
+#define   NV04_IMAGE_BLIT_OPERATION_ROP_AND                                            0x00000001
+#define   NV04_IMAGE_BLIT_OPERATION_BLEND_AND                                          0x00000002
+#define   NV04_IMAGE_BLIT_OPERATION_SRCCOPY                                            0x00000003
+#define   NV04_IMAGE_BLIT_OPERATION_SRCCOPY_PREMULT                                    0x00000004
+#define   NV04_IMAGE_BLIT_OPERATION_BLEND_PREMULT                                      0x00000005
 
 
 #define NV04_INDEXED_IMAGE_FROM_CPU                                                    0x00000060
@@ -2979,10 +2979,10 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV04_INDEXED_IMAGE_FROM_CPU_COLOR                                             0x00000400
 
 
-#define NV_IMAGE_FROM_CPU                                                              0x00000061
+#define NV04_IMAGE_FROM_CPU                                                            0x00000061
 
-#define  NV_IMAGE_FROM_CPU_BETA4                                                       0x00000198
-#define  NV_IMAGE_FROM_CPU_SURFACE                                                     0x0000019c
+#define  NV04_IMAGE_FROM_CPU_BETA4                                                     0x00000198
+#define  NV04_IMAGE_FROM_CPU_SURFACE                                                   0x0000019c
 
 
 #define NV10_CONTEXT_SURFACES_2D                                                       0x00000062
@@ -3204,435 +3204,436 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 
 
-#define NV11_TCL_PRIMITIVE_3D                                                          0x00000096
-
-#define  NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE                                   0x00000d40
-#define  NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP                                       0x00000d44
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_CLEAR                                        0x00001500
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND                                  0x00001501
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_REVERSE                          0x00001502
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY                                 0x00001503
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_INVERTED                         0x00001504
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOOP                                 0x00001505
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_XOR                                  0x00001506
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR                                   0x00001507
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOR                                  0x00001508
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_EQUIV                                        0x00001509
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_INVERT                               0x0000150a
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_REVERSE                           0x0000150b
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY_INVERTED                                0x0000150c
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_INVERTED                          0x0000150d
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NAND                                 0x0000150e
-#define   NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_SET                                  0x0000150f
-
-
-#define NV20_TCL_PRIMITIVE_3D                                                          0x00000097
-
-#define  NV20_TCL_PRIMITIVE_3D_NOP                                                     0x00000100
-#define  NV20_TCL_PRIMITIVE_3D_NOTIFY                                                  0x00000104
-#define  NV20_TCL_PRIMITIVE_3D_DMA_NOTIFY                                              0x00000180
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0                                          0x00000184
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1                                          0x00000188
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2                                          0x00000194
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3                                          0x00000198
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY6                                          0x000001a4
-#define  NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY7                                          0x000001a8
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ                                          0x00000200
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_VERT                                           0x00000204
-#define  NV20_TCL_PRIMITIVE_3D_BUFFER_FORMAT                                           0x00000208
-#define  NV20_TCL_PRIMITIVE_3D_BUFFER_PITCH                                            0x0000020c
-#define  NV20_TCL_PRIMITIVE_3D_COLOR_OFFSET                                            0x00000210
-#define  NV20_TCL_PRIMITIVE_3D_ZETA_OFFSET                                             0x00000214
-#define  NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x)                                          (0x00000260+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE                                       0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_RC_FINAL0                                               0x00000288
-#define  NV20_TCL_PRIMITIVE_3D_RC_FINAL1                                               0x0000028c
-#define  NV20_TCL_PRIMITIVE_3D_LIGHT_CONTROL                                           0x00000294
-#define  NV20_TCL_PRIMITIVE_3D_FOG_MODE                                                        0x0000029c
-#define  NV20_TCL_PRIMITIVE_3D_FOG_COORD_DIST                                          0x000002a0
-#define  NV20_TCL_PRIMITIVE_3D_FOG_ENABLE                                              0x000002a4
-#define  NV20_TCL_PRIMITIVE_3D_FOG_COLOR                                               0x000002a8
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_MODE                                      0x000002b4
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x)                                  (0x000002c0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE                               0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x)                                   (0x000002e0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE                                        0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE                                       0x00000300
-#define  NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE                                       0x00000304
-#define  NV20_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE                                                0x00000308
-#define  NV20_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE                                       0x0000030c
-#define  NV20_TCL_PRIMITIVE_3D_DITHER_ENABLE                                           0x00000310
-#define  NV20_TCL_PRIMITIVE_3D_LIGHTING_ENABLE                                         0x00000314
-#define  NV20_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE                                 0x00000318
-#define  NV20_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE                                      0x00000320
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE                                   0x00000324
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_ENABLE                                          0x0000032c
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE                             0x00000330
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE                              0x00000334
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE                              0x00000338
-#define  NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC                                         0x0000033c
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER                                  0x00000200
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS                                   0x00000201
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL                                  0x00000202
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL                                 0x00000203
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL                               0x00000205
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL                                 0x00000206
-#define   NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS                                 0x00000207
-#define  NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF                                          0x00000340
-#define  NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC                                          0x00000344
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ZERO                                    0x00000000
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE                                     0x00000001
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_COLOR                               0x00000300
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR                     0x00000301
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA                               0x00000302
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA                     0x00000303
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_ALPHA                               0x00000304
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA                     0x00000305
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_COLOR                               0x00000306
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR                     0x00000307
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE                      0x00000308
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_COLOR                          0x00008001
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR                        0x00008002
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_ALPHA                          0x00008003
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA                        0x00008004
-#define  NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST                                          0x00000348
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ZERO                                    0x00000000
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE                                     0x00000001
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_COLOR                               0x00000300
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR                     0x00000301
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA                               0x00000302
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA                     0x00000303
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_ALPHA                               0x00000304
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA                     0x00000305
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_COLOR                               0x00000306
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR                     0x00000307
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA_SATURATE                      0x00000308
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_COLOR                          0x00008001
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR                        0x00008002
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_ALPHA                          0x00008003
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA                        0x00008004
-#define  NV20_TCL_PRIMITIVE_3D_BLEND_COLOR                                             0x0000034c
-#define  NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION                                          0x00000350
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_ADD                                        0x00008006
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_MIN                                     0x00008007
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_MAX                                     0x00008008
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_SUBTRACT                           0x0000800a
-#define   NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT                   0x0000800b
-#define  NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC                                              0x00000354
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_NEVER                                       0x00000200
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_LESS                                                0x00000201
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_EQUAL                                       0x00000202
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_LEQUAL                                      0x00000203
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_NOTEQUAL                                    0x00000205
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GEQUAL                                      0x00000206
-#define   NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_ALWAYS                                      0x00000207
-#define  NV20_TCL_PRIMITIVE_3D_COLOR_MASK                                              0x00000358
-#define  NV20_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE                                      0x0000035c
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_MASK                                            0x00000360
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC                                       0x00000364
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NEVER                                        0x00000200
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LESS                                 0x00000201
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_EQUAL                                        0x00000202
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LEQUAL                               0x00000203
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER                              0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER                              0x00000204
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NOTEQUAL                             0x00000205
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GEQUAL                               0x00000206
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_ALWAYS                               0x00000207
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF                                                0x00000368
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK                                       0x0000036c
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL                                         0x00000370
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_ZERO                                   0x00000000
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INVERT                                 0x0000150a
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_KEEP                                   0x00001e00
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_REPLACE                                        0x00001e01
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR                                   0x00001e02
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR                                   0x00001e03
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR_WRAP                              0x00008507
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR_WRAP                              0x00008508
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL                                                0x00000374
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_ZERO                                  0x00000000
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INVERT                                        0x0000150a
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_KEEP                                  0x00001e00
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_REPLACE                               0x00001e01
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR                                  0x00001e02
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR                                  0x00001e03
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR_WRAP                             0x00008507
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR_WRAP                             0x00008508
-#define  NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS                                                0x00000378
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_ZERO                                  0x00000000
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INVERT                                        0x0000150a
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_KEEP                                  0x00001e00
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_REPLACE                               0x00001e01
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR                                  0x00001e02
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR                                  0x00001e03
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR_WRAP                             0x00008507
-#define   NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR_WRAP                             0x00008508
-#define  NV20_TCL_PRIMITIVE_3D_SHADE_MODEL                                             0x0000037c
-#define   NV20_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT                                       0x00001d00
-#define   NV20_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH                                     0x00001d01
-#define  NV20_TCL_PRIMITIVE_3D_LINE_WIDTH                                              0x00000380
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR                                   0x00000384
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS                                    0x00000388
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT                                      0x0000038c
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT                               0x00001b00
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE                                        0x00001b01
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL                                        0x00001b02
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK                                       0x00000390
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT                                        0x00001b00
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE                                 0x00001b01
-#define   NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL                                 0x00001b02
-#define  NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR                                                0x00000394
-#define  NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR                                         0x00000398
-#define  NV20_TCL_PRIMITIVE_3D_CULL_FACE                                               0x0000039c
-#define   NV20_TCL_PRIMITIVE_3D_CULL_FACE_FRONT                                                0x00000404
-#define   NV20_TCL_PRIMITIVE_3D_CULL_FACE_BACK                                         0x00000405
-#define   NV20_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK                               0x00000408
-#define  NV20_TCL_PRIMITIVE_3D_FRONT_FACE                                              0x000003a0
-#define   NV20_TCL_PRIMITIVE_3D_FRONT_FACE_CW                                          0x00000900
-#define   NV20_TCL_PRIMITIVE_3D_FRONT_FACE_CCW                                         0x00000901
-#define  NV20_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE                                                0x000003a4
-#define  NV20_TCL_PRIMITIVE_3D_SEPARATE_SPECULAR_ENABLE                                        0x000003b8
-#define  NV20_TCL_PRIMITIVE_3D_ENABLED_LIGHTS                                          0x000003bc
-#define  NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x)                                    (0x000003c0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE                                 0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x)                                     (0x00000420+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE                                  0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_POINT_SIZE                                              0x0000043c
-#define  NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX(x)                                     (0x00000480+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX__SIZE                                  0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x)                                    (0x00000680+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE                                 0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_TX0_MATRIX(x)                                           (0x000006c0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE                                                0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_TX1_MATRIX(x)                                           (0x00000700+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE                                                0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_TX2_MATRIX(x)                                           (0x00000740+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_TX2_MATRIX__SIZE                                                0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_TX3_MATRIX(x)                                           (0x00000780+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_TX3_MATRIX__SIZE                                                0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT                                   0x000009c0
-#define  NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR                                     0x000009c4
-#define  NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC                                  0x000009c8
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_X                                       0x00000a20
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Y                                       0x00000a24
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Z                                       0x00000a28
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_W                                       0x00000a2c
-#define  NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER(x)                                      (0x00000a30+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER__SIZE                                   0x00000007
-#define  NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0(x)                                   (0x00000a60+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0__SIZE                                        0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1(x)                                   (0x00000a80+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1__SIZE                                        0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x)                                         (0x00000aa0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE                                      0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_RC_IN_RGB(x)                                            (0x00000ac0+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE                                         0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_X                                       0x00000af0
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Y                                       0x00000af4
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Z                                       0x00000af8
-#define  NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_W                                       0x00000afc
-#define  NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST(x)                                       (0x00000b00+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST__SIZE                                    0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST(x)                                      (0x00000b80+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST__SIZE                                   0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE                                  0x0000147c
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(x)                              (0x00001480+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN__SIZE                           0x00000020
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X                                         0x00001500
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y                                         0x00001504
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z                                         0x00001508
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X                                         0x00001518
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y                                         0x0000151c
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z                                         0x00001520
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY                                                0x00001528
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_X_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_X_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_Y_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_Y_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z                                         0x0000152c
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z_Z_SHIFT                                        0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z_Z_MASK                                 0x0000ffff
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X                                         0x00001530
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y                                         0x00001534
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z                                         0x00001538
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY                                                0x00001540
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z                                         0x00001544
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT                                        0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK                                 0x0000ffff
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_X                                         0x00001550
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_Y                                         0x00001554
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_Z                                         0x00001558
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_W                                         0x0000155c
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_X                                         0x00001560
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_Y                                         0x00001564
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_Z                                         0x00001568
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I                                           0x0000156c
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT                                  0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK                                   0x000000ff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT                                  8
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK                                   0x0000ff00
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT                                  16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK                                   0x00ff0000
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT                                  24
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK                                   0xff000000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_X                                                0x00001580
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_Y                                                0x00001584
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_Z                                                0x00001588
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I                                          0x0000158c
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_R_SHIFT                                 0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_R_MASK                                  0x000000ff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_G_SHIFT                                 8
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_G_MASK                                  0x0000ff00
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_B_SHIFT                                 16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_B_MASK                                  0x00ff0000
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_A_SHIFT                                 24
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_A_MASK                                  0xff000000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S                                         0x00001590
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T                                         0x00001594
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I                                           0x00001598
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_SHIFT                                  0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_MASK                                   0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_SHIFT                                  16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_MASK                                   0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S                                         0x000015a0
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T                                         0x000015a4
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R                                         0x000015a8
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q                                         0x000015ac
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST                                                0x000015b0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ                                                0x000015b4
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S                                         0x000015b8
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T                                         0x000015bc
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I                                           0x000015c0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_SHIFT                                  0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_MASK                                   0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_SHIFT                                  16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_MASK                                   0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S                                         0x000015c8
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T                                         0x000015cc
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R                                         0x000015d0
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q                                         0x000015d4
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST                                                0x000015d8
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ                                                0x000015dc
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S                                         0x000015e0
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T                                         0x000015e4
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I                                           0x000015e8
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_S_SHIFT                                  0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_S_MASK                                   0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_T_SHIFT                                  16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_T_MASK                                   0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_S                                         0x000015f0
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_T                                         0x000015f4
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_R                                         0x000015f8
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_Q                                         0x000015fc
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST                                                0x00001600
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_S_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_S_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_T_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_T_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ                                                0x00001604
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_R_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_Q_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S                                         0x00001608
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T                                         0x0000160c
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I                                           0x00001610
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_S_SHIFT                                  0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_S_MASK                                   0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_T_SHIFT                                  16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_T_MASK                                   0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_S                                         0x00001620
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_T                                         0x00001624
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_R                                         0x00001628
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_Q                                         0x0000162c
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST                                                0x00001630
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_S_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_S_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_T_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_T_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ                                                0x00001634
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_R_SHIFT                               0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_R_MASK                                        0x0000ffff
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_Q_SHIFT                               16
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_Q_MASK                                        0xffff0000
-#define  NV20_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE                                         0x000016bc
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR_OFFSET(x)                                   (0x00001720+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR_OFFSET__SIZE                                        0x00000010
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT(x)                                  (0x00001760+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT__SIZE                               0x00000010
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_SHIFT                         0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_MASK                          0x0000000f
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_SHIFT                       4
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_MASK                                0x000000f0
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT                       8
-#define   NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_MASK                                0x0000ff00
-#define  NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE                                   0x000017bc
-#define  NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP                                       0x000017c0
-#define  NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_TWO_SIDE_ENABLE                             0x000017c4
-#define  NV20_TCL_PRIMITIVE_3D_TX_SHADER_CULL_MODE                                     0x000017f8
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END                                                0x000017fc
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS                               0x00001810
-#define  NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA                                       0x00001818
-#define  NV20_TCL_PRIMITIVE_3D_TX_OFFSET(x)                                            (0x00001b00+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE                                         0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_TX_FORMAT(x)                                            (0x00001b04+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE                                         0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_TX_WRAP(x)                                              (0x00001b08+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_WRAP__SIZE                                           0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_TX_ENABLE(x)                                            (0x00001b0c+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE                                         0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_TX_FILTER(x)                                            (0x00001b14+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_FILTER__SIZE                                         0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_TX_BORDER_COLOR(x)                                      (0x00001b24+((x)*64))
-#define  NV20_TCL_PRIMITIVE_3D_TX_BORDER_COLOR__SIZE                                   0x00000004
-#define  NV20_TCL_PRIMITIVE_3D_SCISSOR_HORIZ                                           0x00001c30
-#define  NV20_TCL_PRIMITIVE_3D_SCISSOR_VERT                                            0x00001c50
-#define  NV20_TCL_PRIMITIVE_3D_CLEAR_VALUE                                             0x00001d90
-#define  NV20_TCL_PRIMITIVE_3D_CLEAR_BUFFERS                                           0x00001d94
-#define  NV20_TCL_PRIMITIVE_3D_RC_COLOR0                                               0x00001e20
-#define  NV20_TCL_PRIMITIVE_3D_RC_COLOR1                                               0x00001e24
-#define  NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB(x)                                           (0x00001e40+((x)*4))
-#define  NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE                                                0x00000008
-#define  NV20_TCL_PRIMITIVE_3D_RC_ENABLE                                               0x00001e60
-#define  NV20_TCL_PRIMITIVE_3D_TX_SHADER_OP                                            0x00001e70
-#define  NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID                                      0x00001ea4
-
-
-#define NV17_TCL_PRIMITIVE_3D                                                          0x00000099
-
-#define  NV17_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4                                          0x000001ac
-#define  NV17_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5                                          0x000001b0
-#define  NV17_TCL_PRIMITIVE_3D_COLOR_MASK_ENABLE                                       0x000002bc
-#define  NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH                                  0x00000d5c
-#define  NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET                                 0x00000d60
-#define  NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_FILL_VALUE                                    0x00000d68
-#define  NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_CLEAR                                  0x00000d6c
-#define  NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_ENABLE                                                0x00001658
+#define NV11TCL                                                                                0x00000096
+
+#define  NV11TCL_COLOR_LOGIC_OP_ENABLE                                                 0x00000d40
+#define  NV11TCL_COLOR_LOGIC_OP_OP                                                     0x00000d44
+#define   NV11TCL_COLOR_LOGIC_OP_OP_CLEAR                                              0x00001500
+#define   NV11TCL_COLOR_LOGIC_OP_OP_AND                                                        0x00001501
+#define   NV11TCL_COLOR_LOGIC_OP_OP_AND_REVERSE                                                0x00001502
+#define   NV11TCL_COLOR_LOGIC_OP_OP_COPY                                               0x00001503
+#define   NV11TCL_COLOR_LOGIC_OP_OP_AND_INVERTED                                       0x00001504
+#define   NV11TCL_COLOR_LOGIC_OP_OP_NOOP                                               0x00001505
+#define   NV11TCL_COLOR_LOGIC_OP_OP_XOR                                                        0x00001506
+#define   NV11TCL_COLOR_LOGIC_OP_OP_OR                                                 0x00001507
+#define   NV11TCL_COLOR_LOGIC_OP_OP_NOR                                                        0x00001508
+#define   NV11TCL_COLOR_LOGIC_OP_OP_EQUIV                                              0x00001509
+#define   NV11TCL_COLOR_LOGIC_OP_OP_INVERT                                             0x0000150a
+#define   NV11TCL_COLOR_LOGIC_OP_OP_OR_REVERSE                                         0x0000150b
+#define   NV11TCL_COLOR_LOGIC_OP_OP_COPY_INVERTED                                      0x0000150c
+#define   NV11TCL_COLOR_LOGIC_OP_OP_OR_INVERTED                                                0x0000150d
+#define   NV11TCL_COLOR_LOGIC_OP_OP_NAND                                               0x0000150e
+#define   NV11TCL_COLOR_LOGIC_OP_OP_SET                                                        0x0000150f
+
+
+#define NV20TCL                                                                                0x00000097
+
+#define  NV20TCL_NOP                                                                   0x00000100
+#define  NV20TCL_NOTIFY                                                                        0x00000104
+#define  NV20TCL_DMA_NOTIFY                                                            0x00000180
+#define  NV20TCL_DMA_IN_MEMORY0                                                                0x00000184
+#define  NV20TCL_DMA_IN_MEMORY1                                                                0x00000188
+#define  NV20TCL_DMA_IN_MEMORY2                                                                0x00000194
+#define  NV20TCL_DMA_IN_MEMORY3                                                                0x00000198
+#define  NV20TCL_DMA_IN_MEMORY6                                                                0x000001a4
+#define  NV20TCL_DMA_IN_MEMORY7                                                                0x000001a8
+#define  NV20TCL_VIEWPORT_HORIZ                                                                0x00000200
+#define  NV20TCL_VIEWPORT_VERT                                                         0x00000204
+#define  NV20TCL_BUFFER_FORMAT                                                         0x00000208
+#define  NV20TCL_BUFFER_PITCH                                                          0x0000020c
+#define  NV20TCL_COLOR_OFFSET                                                          0x00000210
+#define  NV20TCL_ZETA_OFFSET                                                           0x00000214
+#define  NV20TCL_RC_IN_ALPHA(x)                                                                (0x00000260+((x)*4))
+#define  NV20TCL_RC_IN_ALPHA__SIZE                                                     0x00000008
+#define  NV20TCL_RC_FINAL0                                                             0x00000288
+#define  NV20TCL_RC_FINAL1                                                             0x0000028c
+#define  NV20TCL_LIGHT_CONTROL                                                         0x00000294
+#define  NV20TCL_FOG_MODE                                                              0x0000029c
+#define  NV20TCL_FOG_COORD_DIST                                                                0x000002a0
+#define  NV20TCL_FOG_ENABLE                                                            0x000002a4
+#define  NV20TCL_FOG_COLOR                                                             0x000002a8
+#define  NV20TCL_VIEWPORT_CLIP_MODE                                                    0x000002b4
+#define  NV20TCL_VIEWPORT_CLIP_HORIZ(x)                                                        (0x000002c0+((x)*4))
+#define  NV20TCL_VIEWPORT_CLIP_HORIZ__SIZE                                             0x00000008
+#define  NV20TCL_VIEWPORT_CLIP_VERT(x)                                                 (0x000002e0+((x)*4))
+#define  NV20TCL_VIEWPORT_CLIP_VERT__SIZE                                              0x00000008
+#define  NV20TCL_ALPHA_FUNC_ENABLE                                                     0x00000300
+#define  NV20TCL_BLEND_FUNC_ENABLE                                                     0x00000304
+#define  NV20TCL_CULL_FACE_ENABLE                                                      0x00000308
+#define  NV20TCL_DEPTH_TEST_ENABLE                                                     0x0000030c
+#define  NV20TCL_DITHER_ENABLE                                                         0x00000310
+#define  NV20TCL_LIGHTING_ENABLE                                                       0x00000314
+#define  NV20TCL_POINT_PARAMETERS_ENABLE                                               0x00000318
+#define  NV20TCL_LINE_SMOOTH_ENABLE                                                    0x00000320
+#define  NV20TCL_POLYGON_SMOOTH_ENABLE                                                 0x00000324
+#define  NV20TCL_STENCIL_ENABLE                                                                0x0000032c
+#define  NV20TCL_POLYGON_OFFSET_POINT_ENABLE                                           0x00000330
+#define  NV20TCL_POLYGON_OFFSET_LINE_ENABLE                                            0x00000334
+#define  NV20TCL_POLYGON_OFFSET_FILL_ENABLE                                            0x00000338
+#define  NV20TCL_ALPHA_FUNC_FUNC                                                       0x0000033c
+#define   NV20TCL_ALPHA_FUNC_FUNC_NEVER                                                        0x00000200
+#define   NV20TCL_ALPHA_FUNC_FUNC_LESS                                                 0x00000201
+#define   NV20TCL_ALPHA_FUNC_FUNC_EQUAL                                                        0x00000202
+#define   NV20TCL_ALPHA_FUNC_FUNC_LEQUAL                                               0x00000203
+#define   NV20TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV20TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV20TCL_ALPHA_FUNC_FUNC_NOTEQUAL                                             0x00000205
+#define   NV20TCL_ALPHA_FUNC_FUNC_GEQUAL                                               0x00000206
+#define   NV20TCL_ALPHA_FUNC_FUNC_ALWAYS                                               0x00000207
+#define  NV20TCL_ALPHA_FUNC_REF                                                                0x00000340
+#define  NV20TCL_BLEND_FUNC_SRC                                                                0x00000344
+#define   NV20TCL_BLEND_FUNC_SRC_ZERO                                                  0x00000000
+#define   NV20TCL_BLEND_FUNC_SRC_ONE                                                   0x00000001
+#define   NV20TCL_BLEND_FUNC_SRC_SRC_COLOR                                             0x00000300
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR                                   0x00000301
+#define   NV20TCL_BLEND_FUNC_SRC_SRC_ALPHA                                             0x00000302
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA                                   0x00000303
+#define   NV20TCL_BLEND_FUNC_SRC_DST_ALPHA                                             0x00000304
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA                                   0x00000305
+#define   NV20TCL_BLEND_FUNC_SRC_DST_COLOR                                             0x00000306
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR                                   0x00000307
+#define   NV20TCL_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE                                    0x00000308
+#define   NV20TCL_BLEND_FUNC_SRC_CONSTANT_COLOR                                                0x00008001
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR                              0x00008002
+#define   NV20TCL_BLEND_FUNC_SRC_CONSTANT_ALPHA                                                0x00008003
+#define   NV20TCL_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA                              0x00008004
+#define  NV20TCL_BLEND_FUNC_DST                                                                0x00000348
+#define   NV20TCL_BLEND_FUNC_DST_ZERO                                                  0x00000000
+#define   NV20TCL_BLEND_FUNC_DST_ONE                                                   0x00000001
+#define   NV20TCL_BLEND_FUNC_DST_SRC_COLOR                                             0x00000300
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR                                   0x00000301
+#define   NV20TCL_BLEND_FUNC_DST_SRC_ALPHA                                             0x00000302
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA                                   0x00000303
+#define   NV20TCL_BLEND_FUNC_DST_DST_ALPHA                                             0x00000304
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA                                   0x00000305
+#define   NV20TCL_BLEND_FUNC_DST_DST_COLOR                                             0x00000306
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR                                   0x00000307
+#define   NV20TCL_BLEND_FUNC_DST_SRC_ALPHA_SATURATE                                    0x00000308
+#define   NV20TCL_BLEND_FUNC_DST_CONSTANT_COLOR                                                0x00008001
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR                              0x00008002
+#define   NV20TCL_BLEND_FUNC_DST_CONSTANT_ALPHA                                                0x00008003
+#define   NV20TCL_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA                              0x00008004
+#define  NV20TCL_BLEND_COLOR                                                           0x0000034c
+#define  NV20TCL_BLEND_EQUATION                                                                0x00000350
+#define   NV20TCL_BLEND_EQUATION_FUNC_ADD                                              0x00008006
+#define   NV20TCL_BLEND_EQUATION_MIN                                                   0x00008007
+#define   NV20TCL_BLEND_EQUATION_MAX                                                   0x00008008
+#define   NV20TCL_BLEND_EQUATION_FUNC_SUBTRACT                                         0x0000800a
+#define   NV20TCL_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT                                 0x0000800b
+#define  NV20TCL_DEPTH_FUNC                                                            0x00000354
+#define   NV20TCL_DEPTH_FUNC_NEVER                                                     0x00000200
+#define   NV20TCL_DEPTH_FUNC_LESS                                                      0x00000201
+#define   NV20TCL_DEPTH_FUNC_EQUAL                                                     0x00000202
+#define   NV20TCL_DEPTH_FUNC_LEQUAL                                                    0x00000203
+#define   NV20TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV20TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV20TCL_DEPTH_FUNC_NOTEQUAL                                                  0x00000205
+#define   NV20TCL_DEPTH_FUNC_GEQUAL                                                    0x00000206
+#define   NV20TCL_DEPTH_FUNC_ALWAYS                                                    0x00000207
+#define  NV20TCL_COLOR_MASK                                                            0x00000358
+#define  NV20TCL_DEPTH_WRITE_ENABLE                                                    0x0000035c
+#define  NV20TCL_STENCIL_MASK                                                          0x00000360
+#define  NV20TCL_STENCIL_FUNC_FUNC                                                     0x00000364
+#define   NV20TCL_STENCIL_FUNC_FUNC_NEVER                                              0x00000200
+#define   NV20TCL_STENCIL_FUNC_FUNC_LESS                                               0x00000201
+#define   NV20TCL_STENCIL_FUNC_FUNC_EQUAL                                              0x00000202
+#define   NV20TCL_STENCIL_FUNC_FUNC_LEQUAL                                             0x00000203
+#define   NV20TCL_STENCIL_FUNC_FUNC_GREATER                                            0x00000204
+#define   NV20TCL_STENCIL_FUNC_FUNC_GREATER                                            0x00000204
+#define   NV20TCL_STENCIL_FUNC_FUNC_NOTEQUAL                                           0x00000205
+#define   NV20TCL_STENCIL_FUNC_FUNC_GEQUAL                                             0x00000206
+#define   NV20TCL_STENCIL_FUNC_FUNC_ALWAYS                                             0x00000207
+#define  NV20TCL_STENCIL_FUNC_REF                                                      0x00000368
+#define  NV20TCL_STENCIL_FUNC_MASK                                                     0x0000036c
+#define  NV20TCL_STENCIL_OP_FAIL                                                       0x00000370
+#define   NV20TCL_STENCIL_OP_FAIL_ZERO                                                 0x00000000
+#define   NV20TCL_STENCIL_OP_FAIL_INVERT                                               0x0000150a
+#define   NV20TCL_STENCIL_OP_FAIL_KEEP                                                 0x00001e00
+#define   NV20TCL_STENCIL_OP_FAIL_REPLACE                                              0x00001e01
+#define   NV20TCL_STENCIL_OP_FAIL_INCR                                                 0x00001e02
+#define   NV20TCL_STENCIL_OP_FAIL_DECR                                                 0x00001e03
+#define   NV20TCL_STENCIL_OP_FAIL_INCR_WRAP                                            0x00008507
+#define   NV20TCL_STENCIL_OP_FAIL_DECR_WRAP                                            0x00008508
+#define  NV20TCL_STENCIL_OP_ZFAIL                                                      0x00000374
+#define   NV20TCL_STENCIL_OP_ZFAIL_ZERO                                                        0x00000000
+#define   NV20TCL_STENCIL_OP_ZFAIL_INVERT                                              0x0000150a
+#define   NV20TCL_STENCIL_OP_ZFAIL_KEEP                                                        0x00001e00
+#define   NV20TCL_STENCIL_OP_ZFAIL_REPLACE                                             0x00001e01
+#define   NV20TCL_STENCIL_OP_ZFAIL_INCR                                                        0x00001e02
+#define   NV20TCL_STENCIL_OP_ZFAIL_DECR                                                        0x00001e03
+#define   NV20TCL_STENCIL_OP_ZFAIL_INCR_WRAP                                           0x00008507
+#define   NV20TCL_STENCIL_OP_ZFAIL_DECR_WRAP                                           0x00008508
+#define  NV20TCL_STENCIL_OP_ZPASS                                                      0x00000378
+#define   NV20TCL_STENCIL_OP_ZPASS_ZERO                                                        0x00000000
+#define   NV20TCL_STENCIL_OP_ZPASS_INVERT                                              0x0000150a
+#define   NV20TCL_STENCIL_OP_ZPASS_KEEP                                                        0x00001e00
+#define   NV20TCL_STENCIL_OP_ZPASS_REPLACE                                             0x00001e01
+#define   NV20TCL_STENCIL_OP_ZPASS_INCR                                                        0x00001e02
+#define   NV20TCL_STENCIL_OP_ZPASS_DECR                                                        0x00001e03
+#define   NV20TCL_STENCIL_OP_ZPASS_INCR_WRAP                                           0x00008507
+#define   NV20TCL_STENCIL_OP_ZPASS_DECR_WRAP                                           0x00008508
+#define  NV20TCL_SHADE_MODEL                                                           0x0000037c
+#define   NV20TCL_SHADE_MODEL_FLAT                                                     0x00001d00
+#define   NV20TCL_SHADE_MODEL_SMOOTH                                                   0x00001d01
+#define  NV20TCL_LINE_WIDTH                                                            0x00000380
+#define  NV20TCL_POLYGON_OFFSET_FACTOR                                                 0x00000384
+#define  NV20TCL_POLYGON_OFFSET_UNITS                                                  0x00000388
+#define  NV20TCL_POLYGON_MODE_FRONT                                                    0x0000038c
+#define   NV20TCL_POLYGON_MODE_FRONT_POINT                                             0x00001b00
+#define   NV20TCL_POLYGON_MODE_FRONT_LINE                                              0x00001b01
+#define   NV20TCL_POLYGON_MODE_FRONT_FILL                                              0x00001b02
+#define  NV20TCL_POLYGON_MODE_BACK                                                     0x00000390
+#define   NV20TCL_POLYGON_MODE_BACK_POINT                                              0x00001b00
+#define   NV20TCL_POLYGON_MODE_BACK_LINE                                               0x00001b01
+#define   NV20TCL_POLYGON_MODE_BACK_FILL                                               0x00001b02
+#define  NV20TCL_DEPTH_RANGE_NEAR                                                      0x00000394
+#define  NV20TCL_DEPTH_RANGE_FAR                                                       0x00000398
+#define  NV20TCL_CULL_FACE                                                             0x0000039c
+#define   NV20TCL_CULL_FACE_FRONT                                                      0x00000404
+#define   NV20TCL_CULL_FACE_BACK                                                       0x00000405
+#define   NV20TCL_CULL_FACE_FRONT_AND_BACK                                             0x00000408
+#define  NV20TCL_FRONT_FACE                                                            0x000003a0
+#define   NV20TCL_FRONT_FACE_CW                                                                0x00000900
+#define   NV20TCL_FRONT_FACE_CCW                                                       0x00000901
+#define  NV20TCL_NORMALIZE_ENABLE                                                      0x000003a4
+#define  NV20TCL_SEPARATE_SPECULAR_ENABLE                                              0x000003b8
+#define  NV20TCL_ENABLED_LIGHTS                                                                0x000003bc
+#define  NV20TCL_CLIP_PLANE_ENABLE(x)                                                  (0x000003c0+((x)*4))
+#define  NV20TCL_CLIP_PLANE_ENABLE__SIZE                                               0x00000010
+#define  NV20TCL_TX_MATRIX_ENABLE(x)                                                   (0x00000420+((x)*4))
+#define  NV20TCL_TX_MATRIX_ENABLE__SIZE                                                        0x00000004
+#define  NV20TCL_POINT_SIZE                                                            0x0000043c
+#define  NV20TCL_MODELVIEW_MATRIX(x)                                                   (0x00000480+((x)*4))
+#define  NV20TCL_MODELVIEW_MATRIX__SIZE                                                        0x00000010
+#define  NV20TCL_PROJECTION_MATRIX(x)                                                  (0x00000680+((x)*4))
+#define  NV20TCL_PROJECTION_MATRIX__SIZE                                               0x00000010
+#define  NV20TCL_TX0_MATRIX(x)                                                         (0x000006c0+((x)*4))
+#define  NV20TCL_TX0_MATRIX__SIZE                                                      0x00000010
+#define  NV20TCL_TX1_MATRIX(x)                                                         (0x00000700+((x)*4))
+#define  NV20TCL_TX1_MATRIX__SIZE                                                      0x00000010
+#define  NV20TCL_TX2_MATRIX(x)                                                         (0x00000740+((x)*4))
+#define  NV20TCL_TX2_MATRIX__SIZE                                                      0x00000010
+#define  NV20TCL_TX3_MATRIX(x)                                                         (0x00000780+((x)*4))
+#define  NV20TCL_TX3_MATRIX__SIZE                                                      0x00000010
+#define  NV20TCL_FOG_EQUATION_CONSTANT                                                 0x000009c0
+#define  NV20TCL_FOG_EQUATION_LINEAR                                                   0x000009c4
+#define  NV20TCL_FOG_EQUATION_QUADRATIC                                                        0x000009c8
+#define  NV20TCL_VIEWPORT_SCALE0_X                                                     0x00000a20
+#define  NV20TCL_VIEWPORT_SCALE0_Y                                                     0x00000a24
+#define  NV20TCL_VIEWPORT_SCALE0_Z                                                     0x00000a28
+#define  NV20TCL_VIEWPORT_SCALE0_W                                                     0x00000a2c
+#define  NV20TCL_POINT_PARAMETER(x)                                                    (0x00000a30+((x)*4))
+#define  NV20TCL_POINT_PARAMETER__SIZE                                                 0x00000007
+#define  NV20TCL_RC_CONSTANT_COLOR0(x)                                                 (0x00000a60+((x)*4))
+#define  NV20TCL_RC_CONSTANT_COLOR0__SIZE                                              0x00000008
+#define  NV20TCL_RC_CONSTANT_COLOR1(x)                                                 (0x00000a80+((x)*4))
+#define  NV20TCL_RC_CONSTANT_COLOR1__SIZE                                              0x00000008
+#define  NV20TCL_RC_OUT_ALPHA(x)                                                       (0x00000aa0+((x)*4))
+#define  NV20TCL_RC_OUT_ALPHA__SIZE                                                    0x00000008
+#define  NV20TCL_RC_IN_RGB(x)                                                          (0x00000ac0+((x)*4))
+#define  NV20TCL_RC_IN_RGB__SIZE                                                       0x00000008
+#define  NV20TCL_VIEWPORT_SCALE1_X                                                     0x00000af0
+#define  NV20TCL_VIEWPORT_SCALE1_Y                                                     0x00000af4
+#define  NV20TCL_VIEWPORT_SCALE1_Z                                                     0x00000af8
+#define  NV20TCL_VIEWPORT_SCALE1_W                                                     0x00000afc
+#define  NV20TCL_VP_UPLOAD_INST(x)                                                     (0x00000b00+((x)*4))
+#define  NV20TCL_VP_UPLOAD_INST__SIZE                                                  0x00000004
+#define  NV20TCL_VP_UPLOAD_CONST(x)                                                    (0x00000b80+((x)*4))
+#define  NV20TCL_VP_UPLOAD_CONST__SIZE                                                 0x00000004
+#define  NV20TCL_POLYGON_STIPPLE_ENABLE                                                        0x0000147c
+#define  NV20TCL_POLYGON_STIPPLE_PATTERN(x)                                            (0x00001480+((x)*4))
+#define  NV20TCL_POLYGON_STIPPLE_PATTERN__SIZE                                         0x00000020
+#define  NV20TCL_VERTEX_POS_3F_X                                                       0x00001500
+#define  NV20TCL_VERTEX_POS_3F_Y                                                       0x00001504
+#define  NV20TCL_VERTEX_POS_3F_Z                                                       0x00001508
+#define  NV20TCL_VERTEX_POS_4F_X                                                       0x00001518
+#define  NV20TCL_VERTEX_POS_4F_Y                                                       0x0000151c
+#define  NV20TCL_VERTEX_POS_4F_Z                                                       0x00001520
+#define  NV20TCL_VERTEX_POS_3I_XY                                                      0x00001528
+#define   NV20TCL_VERTEX_POS_3I_XY_X_SHIFT                                             0
+#define   NV20TCL_VERTEX_POS_3I_XY_X_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_POS_3I_XY_Y_SHIFT                                             16
+#define   NV20TCL_VERTEX_POS_3I_XY_Y_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_POS_3I_Z                                                       0x0000152c
+#define   NV20TCL_VERTEX_POS_3I_Z_Z_SHIFT                                              0
+#define   NV20TCL_VERTEX_POS_3I_Z_Z_MASK                                               0x0000ffff
+#define  NV20TCL_VERTEX_NOR_3F_X                                                       0x00001530
+#define  NV20TCL_VERTEX_NOR_3F_Y                                                       0x00001534
+#define  NV20TCL_VERTEX_NOR_3F_Z                                                       0x00001538
+#define  NV20TCL_VERTEX_NOR_3I_XY                                                      0x00001540
+#define   NV20TCL_VERTEX_NOR_3I_XY_X_SHIFT                                             0
+#define   NV20TCL_VERTEX_NOR_3I_XY_X_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_NOR_3I_XY_Y_SHIFT                                             16
+#define   NV20TCL_VERTEX_NOR_3I_XY_Y_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_NOR_3I_Z                                                       0x00001544
+#define   NV20TCL_VERTEX_NOR_3I_Z_Z_SHIFT                                              0
+#define   NV20TCL_VERTEX_NOR_3I_Z_Z_MASK                                               0x0000ffff
+#define  NV20TCL_VERTEX_COL_4F_X                                                       0x00001550
+#define  NV20TCL_VERTEX_COL_4F_Y                                                       0x00001554
+#define  NV20TCL_VERTEX_COL_4F_Z                                                       0x00001558
+#define  NV20TCL_VERTEX_COL_4F_W                                                       0x0000155c
+#define  NV20TCL_VERTEX_COL_3F_X                                                       0x00001560
+#define  NV20TCL_VERTEX_COL_3F_Y                                                       0x00001564
+#define  NV20TCL_VERTEX_COL_3F_Z                                                       0x00001568
+#define  NV20TCL_VERTEX_COL_4I                                                         0x0000156c
+#define   NV20TCL_VERTEX_COL_4I_R_SHIFT                                                        0
+#define   NV20TCL_VERTEX_COL_4I_R_MASK                                                 0x000000ff
+#define   NV20TCL_VERTEX_COL_4I_G_SHIFT                                                        8
+#define   NV20TCL_VERTEX_COL_4I_G_MASK                                                 0x0000ff00
+#define   NV20TCL_VERTEX_COL_4I_B_SHIFT                                                        16
+#define   NV20TCL_VERTEX_COL_4I_B_MASK                                                 0x00ff0000
+#define   NV20TCL_VERTEX_COL_4I_A_SHIFT                                                        24
+#define   NV20TCL_VERTEX_COL_4I_A_MASK                                                 0xff000000
+#define  NV20TCL_VERTEX_COL2_3F_X                                                      0x00001580
+#define  NV20TCL_VERTEX_COL2_3F_Y                                                      0x00001584
+#define  NV20TCL_VERTEX_COL2_3F_Z                                                      0x00001588
+#define  NV20TCL_VERTEX_COL2_4I                                                                0x0000158c
+#define   NV20TCL_VERTEX_COL2_4I_R_SHIFT                                               0
+#define   NV20TCL_VERTEX_COL2_4I_R_MASK                                                        0x000000ff
+#define   NV20TCL_VERTEX_COL2_4I_G_SHIFT                                               8
+#define   NV20TCL_VERTEX_COL2_4I_G_MASK                                                        0x0000ff00
+#define   NV20TCL_VERTEX_COL2_4I_B_SHIFT                                               16
+#define   NV20TCL_VERTEX_COL2_4I_B_MASK                                                        0x00ff0000
+#define   NV20TCL_VERTEX_COL2_4I_A_SHIFT                                               24
+#define   NV20TCL_VERTEX_COL2_4I_A_MASK                                                        0xff000000
+#define  NV20TCL_VERTEX_TX0_2F_S                                                       0x00001590
+#define  NV20TCL_VERTEX_TX0_2F_T                                                       0x00001594
+#define  NV20TCL_VERTEX_TX0_2I                                                         0x00001598
+#define   NV20TCL_VERTEX_TX0_2I_S_SHIFT                                                        0
+#define   NV20TCL_VERTEX_TX0_2I_S_MASK                                                 0x0000ffff
+#define   NV20TCL_VERTEX_TX0_2I_T_SHIFT                                                        16
+#define   NV20TCL_VERTEX_TX0_2I_T_MASK                                                 0xffff0000
+#define  NV20TCL_VERTEX_TX0_4F_S                                                       0x000015a0
+#define  NV20TCL_VERTEX_TX0_4F_T                                                       0x000015a4
+#define  NV20TCL_VERTEX_TX0_4F_R                                                       0x000015a8
+#define  NV20TCL_VERTEX_TX0_4F_Q                                                       0x000015ac
+#define  NV20TCL_VERTEX_TX0_4I_ST                                                      0x000015b0
+#define   NV20TCL_VERTEX_TX0_4I_ST_S_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX0_4I_ST_S_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX0_4I_ST_T_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX0_4I_ST_T_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX0_4I_RQ                                                      0x000015b4
+#define   NV20TCL_VERTEX_TX0_4I_RQ_R_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX0_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX0_4I_RQ_Q_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX0_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX1_2F_S                                                       0x000015b8
+#define  NV20TCL_VERTEX_TX1_2F_T                                                       0x000015bc
+#define  NV20TCL_VERTEX_TX1_2I                                                         0x000015c0
+#define   NV20TCL_VERTEX_TX1_2I_S_SHIFT                                                        0
+#define   NV20TCL_VERTEX_TX1_2I_S_MASK                                                 0x0000ffff
+#define   NV20TCL_VERTEX_TX1_2I_T_SHIFT                                                        16
+#define   NV20TCL_VERTEX_TX1_2I_T_MASK                                                 0xffff0000
+#define  NV20TCL_VERTEX_TX1_4F_S                                                       0x000015c8
+#define  NV20TCL_VERTEX_TX1_4F_T                                                       0x000015cc
+#define  NV20TCL_VERTEX_TX1_4F_R                                                       0x000015d0
+#define  NV20TCL_VERTEX_TX1_4F_Q                                                       0x000015d4
+#define  NV20TCL_VERTEX_TX1_4I_ST                                                      0x000015d8
+#define   NV20TCL_VERTEX_TX1_4I_ST_S_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX1_4I_ST_S_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX1_4I_ST_T_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX1_4I_ST_T_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX1_4I_RQ                                                      0x000015dc
+#define   NV20TCL_VERTEX_TX1_4I_RQ_R_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX1_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX1_4I_RQ_Q_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX1_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX2_2F_S                                                       0x000015e0
+#define  NV20TCL_VERTEX_TX2_2F_T                                                       0x000015e4
+#define  NV20TCL_VERTEX_TX2_2I                                                         0x000015e8
+#define   NV20TCL_VERTEX_TX2_2I_S_SHIFT                                                        0
+#define   NV20TCL_VERTEX_TX2_2I_S_MASK                                                 0x0000ffff
+#define   NV20TCL_VERTEX_TX2_2I_T_SHIFT                                                        16
+#define   NV20TCL_VERTEX_TX2_2I_T_MASK                                                 0xffff0000
+#define  NV20TCL_VERTEX_TX2_4F_S                                                       0x000015f0
+#define  NV20TCL_VERTEX_TX2_4F_T                                                       0x000015f4
+#define  NV20TCL_VERTEX_TX2_4F_R                                                       0x000015f8
+#define  NV20TCL_VERTEX_TX2_4F_Q                                                       0x000015fc
+#define  NV20TCL_VERTEX_TX2_4I_ST                                                      0x00001600
+#define   NV20TCL_VERTEX_TX2_4I_ST_S_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX2_4I_ST_S_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX2_4I_ST_T_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX2_4I_ST_T_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX2_4I_RQ                                                      0x00001604
+#define   NV20TCL_VERTEX_TX2_4I_RQ_R_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX2_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX2_4I_RQ_Q_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX2_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX3_2F_S                                                       0x00001608
+#define  NV20TCL_VERTEX_TX3_2F_T                                                       0x0000160c
+#define  NV20TCL_VERTEX_TX3_2I                                                         0x00001610
+#define   NV20TCL_VERTEX_TX3_2I_S_SHIFT                                                        0
+#define   NV20TCL_VERTEX_TX3_2I_S_MASK                                                 0x0000ffff
+#define   NV20TCL_VERTEX_TX3_2I_T_SHIFT                                                        16
+#define   NV20TCL_VERTEX_TX3_2I_T_MASK                                                 0xffff0000
+#define  NV20TCL_VERTEX_TX3_4F_S                                                       0x00001620
+#define  NV20TCL_VERTEX_TX3_4F_T                                                       0x00001624
+#define  NV20TCL_VERTEX_TX3_4F_R                                                       0x00001628
+#define  NV20TCL_VERTEX_TX3_4F_Q                                                       0x0000162c
+#define  NV20TCL_VERTEX_TX3_4I_ST                                                      0x00001630
+#define   NV20TCL_VERTEX_TX3_4I_ST_S_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX3_4I_ST_S_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX3_4I_ST_T_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX3_4I_ST_T_MASK                                              0xffff0000
+#define  NV20TCL_VERTEX_TX3_4I_RQ                                                      0x00001634
+#define   NV20TCL_VERTEX_TX3_4I_RQ_R_SHIFT                                             0
+#define   NV20TCL_VERTEX_TX3_4I_RQ_R_MASK                                              0x0000ffff
+#define   NV20TCL_VERTEX_TX3_4I_RQ_Q_SHIFT                                             16
+#define   NV20TCL_VERTEX_TX3_4I_RQ_Q_MASK                                              0xffff0000
+#define  NV20TCL_EDGEFLAG_ENABLE                                                       0x000016bc
+#define  NV20TCL_VERTEX_ATTR_OFFSET(x)                                                 (0x00001720+((x)*4))
+#define  NV20TCL_VERTEX_ATTR_OFFSET__SIZE                                              0x00000010
+#define  NV20TCL_VERTEX_ARRAY_FORMAT(x)                                                        (0x00001760+((x)*4))
+#define  NV20TCL_VERTEX_ARRAY_FORMAT__SIZE                                             0x00000010
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_TYPE_SHIFT                                       0
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_TYPE_MASK                                                0x0000000f
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_FIELDS_SHIFT                                     4
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_FIELDS_MASK                                      0x000000f0
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT                                     8
+#define   NV20TCL_VERTEX_ARRAY_FORMAT_STRIDE_MASK                                      0x0000ff00
+#define  NV20TCL_COLOR_LOGIC_OP_ENABLE                                                 0x000017bc
+#define  NV20TCL_COLOR_LOGIC_OP_OP                                                     0x000017c0
+#define  NV20TCL_LIGHT_MODEL_TWO_SIDE_ENABLE                                           0x000017c4
+#define  NV20TCL_TX_SHADER_CULL_MODE                                                   0x000017f8
+#define  NV20TCL_VERTEX_BEGIN_END                                                      0x000017fc
+#define  NV20TCL_VERTEX_BUFFER_DRAW_ARRAYS                                             0x00001810
+#define  NV20TCL_VERTEX_ARRAY_DATA                                                     0x00001818
+#define  NV20TCL_TX_OFFSET(x)                                                          (0x00001b00+((x)*64))
+#define  NV20TCL_TX_OFFSET__SIZE                                                       0x00000004
+#define  NV20TCL_TX_FORMAT(x)                                                          (0x00001b04+((x)*64))
+#define  NV20TCL_TX_FORMAT__SIZE                                                       0x00000004
+#define  NV20TCL_TX_WRAP(x)                                                            (0x00001b08+((x)*64))
+#define  NV20TCL_TX_WRAP__SIZE                                                         0x00000004
+#define  NV20TCL_TX_ENABLE(x)                                                          (0x00001b0c+((x)*64))
+#define  NV20TCL_TX_ENABLE__SIZE                                                       0x00000004
+#define  NV20TCL_TX_FILTER(x)                                                          (0x00001b14+((x)*64))
+#define  NV20TCL_TX_FILTER__SIZE                                                       0x00000004
+#define  NV20TCL_TX_BORDER_COLOR(x)                                                    (0x00001b24+((x)*64))
+#define  NV20TCL_TX_BORDER_COLOR__SIZE                                                 0x00000004
+#define  NV20TCL_SCISSOR_HORIZ                                                         0x00001c30
+#define  NV20TCL_SCISSOR_VERT                                                          0x00001c50
+#define  NV20TCL_MULTISAMPLE_CONTROL                                                   0x00001d7c
+#define  NV20TCL_CLEAR_VALUE                                                           0x00001d90
+#define  NV20TCL_CLEAR_BUFFERS                                                         0x00001d94
+#define  NV20TCL_RC_COLOR0                                                             0x00001e20
+#define  NV20TCL_RC_COLOR1                                                             0x00001e24
+#define  NV20TCL_RC_OUT_RGB(x)                                                         (0x00001e40+((x)*4))
+#define  NV20TCL_RC_OUT_RGB__SIZE                                                      0x00000008
+#define  NV20TCL_RC_ENABLE                                                             0x00001e60
+#define  NV20TCL_TX_SHADER_OP                                                          0x00001e70
+#define  NV20TCL_VP_UPLOAD_CONST_ID                                                    0x00001ea4
+
+
+#define NV17TCL                                                                                0x00000099
+
+#define  NV17TCL_DMA_IN_MEMORY4                                                                0x000001ac
+#define  NV17TCL_DMA_IN_MEMORY5                                                                0x000001b0
+#define  NV17TCL_COLOR_MASK_ENABLE                                                     0x000002bc
+#define  NV17TCL_LMA_DEPTH_BUFFER_PITCH                                                        0x00000d5c
+#define  NV17TCL_LMA_DEPTH_BUFFER_OFFSET                                               0x00000d60
+#define  NV17TCL_LMA_DEPTH_FILL_VALUE                                                  0x00000d68
+#define  NV17TCL_LMA_DEPTH_BUFFER_CLEAR                                                        0x00000d6c
+#define  NV17TCL_LMA_DEPTH_ENABLE                                                      0x00001658
 
 
 #define NV20_SWIZZLED_SURFACE                                                          0x0000009e
@@ -3663,7 +3664,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 
 
-#define NV30_TCL_PRIMITIVE_3D                                                          0x00000397
+#define NV30TCL                                                                                0x00000397
 
 
 
@@ -3671,649 +3672,883 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 
 
-#define NV36_TCL_PRIMITIVE_3D                                                          0x00000497
-
-
-
-#define NV25_TCL_PRIMITIVE_3D                                                          0x00000597
-
-#define  NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4                                          0x0000019c
-#define  NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5                                          0x000001a0
-#define  NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY8                                          0x000001ac
-#define  NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY9                                          0x000001b0
-
-
-#define NV34_TCL_PRIMITIVE_3D                                                          0x00000697
-
-#define  NV34_TCL_PRIMITIVE_3D_NOP                                                     0x00000100
-#define  NV34_TCL_PRIMITIVE_3D_NOTIFY                                                  0x00000104
-#define  NV34_TCL_PRIMITIVE_3D_DMA_NOTIFY                                              0x00000180
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0                                          0x00000184
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1                                          0x00000188
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2                                          0x0000018c
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3                                          0x00000194
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4                                          0x00000198
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5                                          0x000001a4
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY6                                          0x000001a8
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY7                                          0x000001ac
-#define  NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY8                                          0x000001b0
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ                                          0x00000200
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_VERT                                           0x00000204
-#define  NV34_TCL_PRIMITIVE_3D_FORMAT                                                  0x00000208
-#define  NV34_TCL_PRIMITIVE_3D_PITCH                                                   0x0000020c
-#define   NV34_TCL_PRIMITIVE_3D_PITCH_COLOR_SHIFT                                      0
-#define   NV34_TCL_PRIMITIVE_3D_PITCH_COLOR_MASK                                       0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_PITCH_ZETA_SHIFT                                       16
-#define   NV34_TCL_PRIMITIVE_3D_PITCH_ZETA_MASK                                                0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_OFFSET                                            0x00000210
-#define  NV34_TCL_PRIMITIVE_3D_ZETA_OFFSET                                             0x00000214
-#define  NV34_TCL_PRIMITIVE_3D_COLOR1_OFFSET                                           0x00000218
-#define  NV34_TCL_PRIMITIVE_3D_COLOR1_PITCH                                            0x0000021c
-#define  NV34_TCL_PRIMITIVE_3D_LMA_DEPTH_PITCH                                         0x0000022c
-#define  NV34_TCL_PRIMITIVE_3D_LMA_DEPTH_OFFSET                                                0x00000230
-#define  NV34_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x)                                     (0x00000240+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE                                  0x00000004
-#define  NV34_TCL_PRIMITIVE_3D_UNK0250(x)                                              (0x00000250+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_UNK0250__SIZE                                           0x00000004
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x)                                  (0x000002c0+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x)                                   (0x000002c4+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE                                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_DITHER_ENABLE                                           0x00000300
-#define  NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE                                       0x00000304
-#define  NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC                                         0x00000308
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER                                  0x00000200
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS                                   0x00000201
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL                                  0x00000202
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL                                 0x00000203
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER                                        0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL                               0x00000205
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL                                 0x00000206
-#define   NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS                                 0x00000207
-#define  NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF                                          0x0000030c
-#define  NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE                                       0x00000310
-#define  NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC                                          0x00000314
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_MASK                                        0x0000ffff
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ZERO                               0x00000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE                                        0x00000001
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_COLOR                          0x00000300
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR                        0x00000301
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA                          0x00000302
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA                        0x00000303
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_DST_ALPHA                          0x00000304
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA                        0x00000305
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_DST_COLOR                          0x00000306
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR                        0x00000307
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE                 0x00000308
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR                     0x00008001
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR           0x00008002
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA                     0x00008003
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA           0x00008004
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SHIFT                             16
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_MASK                              0xffff0000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ZERO                             0x00000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE                              0x00010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_COLOR                                0x03000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR              0x03010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA                                0x03020000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA              0x03030000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_DST_ALPHA                                0x03040000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA              0x03050000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_DST_COLOR                                0x03060000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR              0x03070000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE               0x03080000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR                   0x80010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR         0x80020000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA                   0x80030000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA         0x80040000
-#define  NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST                                          0x00000318
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_MASK                                        0x0000ffff
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ZERO                               0x00000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE                                        0x00000001
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_COLOR                          0x00000300
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR                        0x00000301
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA                          0x00000302
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA                        0x00000303
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_DST_ALPHA                          0x00000304
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA                        0x00000305
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_DST_COLOR                          0x00000306
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR                        0x00000307
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE                 0x00000308
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_CONSTANT_COLOR                     0x00008001
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR           0x00008002
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA                     0x00008003
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA           0x00008004
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SHIFT                             16
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_MASK                              0xffff0000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ZERO                             0x00000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE                              0x00010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_COLOR                                0x03000000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR              0x03010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA                                0x03020000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA              0x03030000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_DST_ALPHA                                0x03040000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA              0x03050000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_DST_COLOR                                0x03060000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR              0x03070000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE               0x03080000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR                   0x80010000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR         0x80020000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA                   0x80030000
-#define    NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA         0x80040000
-#define  NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_COLOR                                                0x0000031c
-#define  NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION                                     0x00000320
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_ADD                           0x00008006
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_MIN                                        0x00008007
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_MAX                                        0x00008008
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_SUBTRACT                      0x0000800a
-#define   NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_REVERSE_SUBTRACT              0x0000800b
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MASK                                              0x00000324
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_B_SHIFT                                     0
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_B_MASK                                      0x000000ff
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_G_SHIFT                                     8
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_G_MASK                                      0x0000ff00
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_R_SHIFT                                     16
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_R_MASK                                      0x00ff0000
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_A_SHIFT                                     24
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_MASK_A_MASK                                      0xff000000
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_ENABLE                                     0x00000328
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_MASK                                       0x0000032c
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC                                  0x00000330
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_NEVER                           0x00000200
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_LESS                            0x00000201
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_EQUAL                           0x00000202
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_LEQUAL                          0x00000203
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GREATER                         0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GREATER                         0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_NOTEQUAL                                0x00000205
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GEQUAL                          0x00000206
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_ALWAYS                          0x00000207
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_REF                                   0x00000334
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_MASK                                  0x00000338
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL                                    0x0000033c
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_ZERO                              0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INVERT                            0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_KEEP                              0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_REPLACE                           0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INCR                              0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_DECR                              0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INCR_WRAP                         0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_DECR_WRAP                         0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL                                   0x00000340
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_ZERO                             0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INVERT                           0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_KEEP                             0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_REPLACE                          0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INCR                             0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_DECR                             0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INCR_WRAP                                0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_DECR_WRAP                                0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS                                   0x00000344
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_ZERO                             0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INVERT                           0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_KEEP                             0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_REPLACE                          0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INCR                             0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_DECR                             0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INCR_WRAP                                0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_DECR_WRAP                                0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_ENABLE                                    0x00000348
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_MASK                                      0x0000034c
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC                                 0x00000350
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_NEVER                          0x00000200
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_LESS                           0x00000201
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_EQUAL                          0x00000202
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_LEQUAL                         0x00000203
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GREATER                                0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GREATER                                0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL                       0x00000205
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GEQUAL                         0x00000206
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_ALWAYS                         0x00000207
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_REF                                  0x00000354
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_MASK                                 0x00000358
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL                                   0x0000035c
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_ZERO                             0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INVERT                           0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_KEEP                             0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_REPLACE                          0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INCR                             0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_DECR                             0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INCR_WRAP                                0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_DECR_WRAP                                0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL                                  0x00000360
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_ZERO                            0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INVERT                          0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_KEEP                            0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_REPLACE                         0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INCR                            0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_DECR                            0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP                       0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP                       0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS                                  0x00000364
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_ZERO                            0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INVERT                          0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_KEEP                            0x00001e00
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_REPLACE                         0x00001e01
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INCR                            0x00001e02
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_DECR                            0x00001e03
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INCR_WRAP                       0x00008507
-#define   NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_DECR_WRAP                       0x00008508
-#define  NV34_TCL_PRIMITIVE_3D_SHADE_MODEL                                             0x00000368
-#define   NV34_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT                                       0x00001d00
-#define   NV34_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH                                     0x00001d01
-#define  NV34_TCL_PRIMITIVE_3D_FOG_ENABLE                                              0x0000036c
-#define  NV34_TCL_PRIMITIVE_3D_FOG_COLOR                                               0x00000370
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE                                   0x00000374
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP                                       0x00000378
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_CLEAR                                        0x00001500
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND                                  0x00001501
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_REVERSE                          0x00001502
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY                                 0x00001503
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_INVERTED                         0x00001504
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOOP                                 0x00001505
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_XOR                                  0x00001506
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR                                   0x00001507
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOR                                  0x00001508
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_EQUIV                                        0x00001509
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_INVERT                               0x0000150a
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_REVERSE                           0x0000150b
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY_INVERTED                                0x0000150c
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_INVERTED                          0x0000150d
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NAND                                 0x0000150e
-#define   NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_SET                                  0x0000150f
-#define  NV34_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE                                                0x0000037c
-#define  NV34_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR                                                0x00000394
-#define  NV34_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR                                         0x00000398
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_R                                  0x000003a0
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_G                                  0x000003a4
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_B                                  0x000003a8
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_A                                  0x000003b4
-#define  NV34_TCL_PRIMITIVE_3D_LINE_WIDTH                                              0x000003b8
-#define  NV34_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE                                      0x000003bc
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x)                                    (0x00000400+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE                                 0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX(x)                                     (0x00000480+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x)                                    (0x00000680+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE                                 0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_TX0_MATRIX(x)                                           (0x000006c0+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE                                                0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_TX1_MATRIX(x)                                           (0x00000700+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE                                                0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_TX2_MATRIX(x)                                           (0x00000740+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_TX2_MATRIX__SIZE                                                0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_TX3_MATRIX(x)                                           (0x00000780+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_TX3_MATRIX__SIZE                                                0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ                                           0x000008c0
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_X_SHIFT                                  0
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_X_MASK                                   0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_W_SHIFT                                  16
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_W_MASK                                   0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT                                            0x000008c4
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_Y_SHIFT                                   0
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_Y_MASK                                    0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_H_SHIFT                                   16
-#define   NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_H_MASK                                    0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_FOG_COORD_DIST                                          0x000008c8
-#define  NV34_TCL_PRIMITIVE_3D_FOG_MODE                                                        0x000008cc
-#define  NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT                                   0x000008d0
-#define  NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR                                     0x000008d4
-#define  NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC                                  0x000008d8
-#define  NV34_TCL_PRIMITIVE_3D_FP_ACTIVE_PROGRAM                                       0x000008e4
-#define  NV34_TCL_PRIMITIVE_3D_RC_COLOR0                                               0x000008ec
-#define  NV34_TCL_PRIMITIVE_3D_RC_COLOR1                                               0x000008f0
-#define  NV34_TCL_PRIMITIVE_3D_RC_FINAL0                                               0x000008f4
-#define  NV34_TCL_PRIMITIVE_3D_RC_FINAL1                                               0x000008f8
-#define  NV34_TCL_PRIMITIVE_3D_RC_ENABLE                                               0x000008fc
-#define  NV34_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x)                                          (0x00000900+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE                                       0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_RC_IN_RGB(x)                                            (0x00000904+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE                                         0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0(x)                                   (0x00000908+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0__SIZE                                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1(x)                                   (0x0000090c+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1__SIZE                                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x)                                         (0x00000910+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE                                      0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_RC_OUT_RGB(x)                                           (0x00000914+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE                                                0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R  0x00000a10
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G  0x00000a14
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B  0x00000a18
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_X                                       0x00000a20
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Y                                       0x00000a24
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Z                                       0x00000a28
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_W                                       0x00000a2c
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_X                                       0x00000a30
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Y                                       0x00000a34
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Z                                       0x00000a38
-#define  NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_W                                       0x00000a3c
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE                              0x00000a60
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE                              0x00000a64
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE                             0x00000a68
-#define  NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC                                              0x00000a6c
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_NEVER                                       0x00000200
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_LESS                                                0x00000201
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_EQUAL                                       0x00000202
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_LEQUAL                                      0x00000203
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER                                     0x00000204
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_NOTEQUAL                                    0x00000205
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GEQUAL                                      0x00000206
-#define   NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_ALWAYS                                      0x00000207
-#define  NV34_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE                                      0x00000a70
-#define  NV34_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE                                       0x00000a74
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR                                   0x00000a78
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS                                    0x00000a7c
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY                                                0x00000a90
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK                                        0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT                               16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK                                        0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z                                         0x00000a94
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT                                        0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK                                 0x0000ffff
-#define  NV34_TCL_PRIMITIVE_3D_VP_UPLOAD_INST(x)                                       (0x00000b80+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_VP_UPLOAD_INST__SIZE                                    0x00000004
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_A(x)                                         (0x00000e00+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_A__SIZE                                      0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_B(x)                                         (0x00000e04+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_B__SIZE                                      0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_C(x)                                         (0x00000e08+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_C__SIZE                                      0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_D(x)                                         (0x00000e0c+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_D__SIZE                                      0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x)                   (0x00001000+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x)                   (0x00001004+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x)                   (0x00001008+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x)                   (0x0000100c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x)                   (0x00001010+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x)                   (0x00001014+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE                        0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x)                  (0x00001018+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x)                  (0x0000101c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x)                  (0x00001020+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X(x)                                  (0x00001028+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y(x)                                  (0x0000102c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z(x)                                  (0x00001030+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X(x)                                    (0x00001034+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X__SIZE                                 0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y(x)                                    (0x00001038+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y__SIZE                                 0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z(x)                                    (0x0000103c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z__SIZE                                 0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(x)                                  (0x00001200+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(x)                                  (0x00001204+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(x)                                  (0x00001208+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(x)                                     (0x0000120c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(x)                                     (0x00001210+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(x)                                     (0x00001214+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D(x)                                  (0x00001218+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D__SIZE                               0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(x)                                     (0x0000121c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_X__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(x)                                     (0x00001220+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(x)                                     (0x00001224+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT(x)                           (0x00001228+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT__SIZE                                0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR(x)                             (0x0000122c+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR__SIZE                          0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC(x)                          (0x00001230+((x)*64))
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC__SIZE                       0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS(x)                             (0x00001400+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS__SIZE                          0x00000006
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE                                  0x0000147c
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(x)                              (0x00001480+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN__SIZE                           0x00000020
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_X(x)                                     (0x00001500+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_X__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Y(x)                                     (0x00001504+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Y__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Z(x)                                     (0x00001508+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Z__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT(x)                                  (0x00001740+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT__SIZE                               0x0000000c
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_SHIFT                         0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_MASK                          0x0000000f
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_SHIFT                       4
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_MASK                                0x000000f0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT                       8
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_MASK                                0x0000ff00
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R   0x000017a0
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G   0x000017a4
-#define  NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B   0x000017a8
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_R                                   0x000017b0
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_G                                   0x000017b4
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_B                                   0x000017b8
-#define  NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_A                                   0x000017c0
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END                                                0x00001808
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_STOP                                  0x00000000
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POINTS                                        0x00000001
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINES                                 0x00000002
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_LOOP                             0x00000003
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_STRIP                            0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLES                             0x00000005
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_STRIP                                0x00000006
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_FAN                          0x00000007
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUADS                                 0x00000008
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUAD_STRIP                            0x00000009
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POLYGON                               0x0000000a
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_DATA                                             0x00001818
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT                                      0x00001828
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT                               0x00001b00
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE                                        0x00001b01
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL                                        0x00001b02
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK                                       0x0000182c
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT                                        0x00001b00
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE                                 0x00001b01
-#define   NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL                                 0x00001b02
-#define  NV34_TCL_PRIMITIVE_3D_CULL_FACE                                               0x00001830
-#define   NV34_TCL_PRIMITIVE_3D_CULL_FACE_FRONT                                                0x00000404
-#define   NV34_TCL_PRIMITIVE_3D_CULL_FACE_BACK                                         0x00000405
-#define   NV34_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK                               0x00000408
-#define  NV34_TCL_PRIMITIVE_3D_FRONT_FACE                                              0x00001834
-#define   NV34_TCL_PRIMITIVE_3D_FRONT_FACE_CW                                          0x00000900
-#define   NV34_TCL_PRIMITIVE_3D_FRONT_FACE_CCW                                         0x00000901
-#define  NV34_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE                                   0x00001838
-#define  NV34_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE                                                0x0000183c
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_X(x)                                     (0x00001880+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_X__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_Y(x)                                     (0x00001884+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_Y__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I(x)                                       (0x00001900+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I__SIZE                                    0x00000010
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_Y_SHIFT                                 16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_Y_MASK                                  0xffff0000
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_X_SHIFT                                 0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_X_MASK                                  0x0000ffff
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I(x)                                                (0x0000194c+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I__SIZE                                     0x00000002
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT                                  0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK                                   0x000000ff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT                                  8
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK                                   0x0000ff00
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT                                  16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK                                   0x00ff0000
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT                                  24
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK                                   0xff000000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY                                                0x00001980
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_X_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_X_MASK                                        0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_Y_SHIFT                               16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_Y_MASK                                        0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW                                                0x00001984
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_Z_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_Z_MASK                                        0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_W_SHIFT                               16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_W_MASK                                        0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST(x)                                      (0x000019c0+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST__SIZE                                   0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_S_SHIFT                                        0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_S_MASK                                 0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_T_SHIFT                                        16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_T_MASK                                 0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ(x)                                      (0x000019c4+((x)*8))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ__SIZE                                   0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_R_SHIFT                                        0
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_R_MASK                                 0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_Q_SHIFT                                        16
-#define   NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_Q_MASK                                 0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_TX_OFFSET(x)                                            (0x00001a00+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE                                         0x00000004
-#define  NV34_TCL_PRIMITIVE_3D_TX_FORMAT(x)                                            (0x00001a04+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE                                         0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_CUBE_MAP                                     (1 <<  2)
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_COMPONENTS_SHIFT                             4
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_COMPONENTS_MASK                              0x000000f0
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_SHIFT                                 8
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_MASK                                  0x0000ff00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8                                   0x00000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8                                   0x00000100
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1                             0x00000200
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT                              0x00000300
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4                             0x00000400
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8                             0x00000600
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_X8R8G8B8                             0x00000700
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_INDEX8                               0x00000b00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT1                                 0x00000c00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT3                                 0x00000e00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT5                                 0x00000f00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1_RECT                                0x00001000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8_RECT                                0x00001200
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8_RECT                              0x00001300
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8                                 0x00001a00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT2                             0x00001b00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8_RECT                          0x00001e00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4_RECT                                0x00001d00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8_RECT                            0x00002000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16                                  0x00003200
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16_RECT                             0x00003500
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA16_NV                      0x00004a00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA32_NV                      0x00004b00
-#define    NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_R32_NV                         0x00004c00
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_NPOT                                         (1 << 12)
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_RECT                                         (1 << 14)
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_SHIFT                          16
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_MASK                           0x000f0000
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_SHIFT                            20
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_MASK                             0x00f00000
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_SHIFT                            24
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_MASK                             0x0f000000
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_W_SHIFT                            28
-#define   NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_W_MASK                             0xf0000000
-#define  NV34_TCL_PRIMITIVE_3D_TX_WRAP(x)                                              (0x00001a08+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_WRAP__SIZE                                           0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_SHIFT                                                0
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_MASK                                         0x000000ff
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_REPEAT                                      0x00000001
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_MIRRORED_REPEAT                             0x00000002
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP_TO_EDGE                               0x00000003
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP_TO_BORDER                             0x00000004
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP                                       0x00000005
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_SHIFT                                                8
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_MASK                                         0x0000ff00
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_REPEAT                                      0x00000100
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_MIRRORED_REPEAT                             0x00000200
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP_TO_EDGE                               0x00000300
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP_TO_BORDER                             0x00000400
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP                                       0x00000500
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_SHIFT                                                16
-#define   NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_MASK                                         0x00ff0000
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_REPEAT                                      0x00010000
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_MIRRORED_REPEAT                             0x00020000
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP_TO_EDGE                               0x00030000
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP_TO_BORDER                             0x00040000
-#define    NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP                                       0x00050000
-#define  NV34_TCL_PRIMITIVE_3D_TX_ENABLE(x)                                            (0x00001a0c+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE                                         0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_ENABLE_ENABLE                                       (1 << 30)
-#define  NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE(x)                                           (0x00001a10+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE__SIZE                                                0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_SWIZZLE_SHIFT                               0
-#define   NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_SWIZZLE_MASK                                        0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_RECT_PITCH_SHIFT                            16
-#define   NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_RECT_PITCH_MASK                             0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_TX_FILTER(x)                                            (0x00001a14+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_FILTER__SIZE                                         0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_SHIFT                                 16
-#define   NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_MASK                                  0x000f0000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST                              0x00010000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR                               0x00020000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST               0x00030000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST                        0x00040000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR                        0x00050000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR                 0x00060000
-#define   NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_SHIFT                                        24
-#define   NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_MASK                                 0x0f000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST                             0x01000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR                              0x02000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST              0x03000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST               0x04000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR               0x05000000
-#define    NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR                        0x06000000
-#define  NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(x)                                         (0x00001a18+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE__SIZE                                      0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_SHIFT                                   0
-#define   NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_MASK                                    0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_SHIFT                                   16
-#define   NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_MASK                                    0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR(x)                                      (0x00001a1c+((x)*32))
-#define  NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR__SIZE                                   0x00000004
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_B_SHIFT                                        0
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_B_MASK                                 0x000000ff
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_G_SHIFT                                        8
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_G_MASK                                 0x0000ff00
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_R_SHIFT                                        16
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_R_MASK                                 0x00ff0000
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_A_SHIFT                                        24
-#define   NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_A_MASK                                 0xff000000
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_X(x)                                     (0x00001c00+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_X__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Y(x)                                     (0x00001c04+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Y__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Z(x)                                     (0x00001c08+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Z__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_W(x)                                     (0x00001c0c+((x)*16))
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_W__SIZE                                  0x00000010
-#define  NV34_TCL_PRIMITIVE_3D_CLEAR_DEPTH_VALUE                                       0x00001d8c
-#define  NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_ENABLE                                     0x00001db4
-#define  NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN                                    0x00001db8
-#define   NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_FACTOR_SHIFT                      0
-#define   NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_FACTOR_MASK                       0x0000ffff
-#define   NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_PATTERN_SHIFT                     16
-#define   NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_PATTERN_MASK                      0xffff0000
-#define  NV34_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS(x)                              (0x00001e20+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS__SIZE                           0x00000006
-#define  NV34_TCL_PRIMITIVE_3D_VERTEX_FOG_1F                                           0x00001e54
-#define  NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS(x)                                     (0x00001ec0+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS__SIZE                                  0x00000008
-#define  NV34_TCL_PRIMITIVE_3D_POINT_SIZE                                              0x00001ee0
-#define  NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE                                 0x00001ee4
-#define  NV34_TCL_PRIMITIVE_3D_POINT_SPRITE                                            0x00001ee8
-#define  NV34_TCL_PRIMITIVE_3D_UNK1f80(x)                                              (0x00001f80+((x)*4))
-#define  NV34_TCL_PRIMITIVE_3D_UNK1f80__SIZE                                           0x00000010
+#define NV36TCL                                                                                0x00000497
+
+
+
+#define NV25TCL                                                                                0x00000597
+
+#define  NV25TCL_DMA_IN_MEMORY4                                                                0x0000019c
+#define  NV25TCL_DMA_IN_MEMORY5                                                                0x000001a0
+#define  NV25TCL_DMA_IN_MEMORY8                                                                0x000001ac
+#define  NV25TCL_DMA_IN_MEMORY9                                                                0x000001b0
+
+
+#define NV34TCL                                                                                0x00000697
+
+#define  NV34TCL_NOP                                                                   0x00000100
+#define  NV34TCL_NOTIFY                                                                        0x00000104
+#define  NV34TCL_DMA_NOTIFY                                                            0x00000180
+#define  NV34TCL_DMA_TEXTURE0                                                          0x00000184
+#define  NV34TCL_DMA_TEXTURE1                                                          0x00000188
+#define  NV34TCL_DMA_COLOR1                                                            0x0000018c
+#define  NV34TCL_DMA_COLOR0                                                            0x00000194
+#define  NV34TCL_DMA_ZETA                                                              0x00000198
+#define  NV34TCL_DMA_VTXBUF0                                                           0x0000019c
+#define  NV34TCL_DMA_VTXBUF1                                                           0x000001a0
+#define  NV34TCL_DMA_FENCE                                                             0x000001a4
+#define  NV34TCL_DMA_QUERY                                                             0x000001a8
+#define  NV34TCL_DMA_IN_MEMORY7                                                                0x000001ac
+#define  NV34TCL_DMA_IN_MEMORY8                                                                0x000001b0
+#define  NV34TCL_DMA_COLOR2                                                            0x000001b4
+#define  NV34TCL_DMA_COLOR3                                                            0x000001b8
+#define  NV34TCL_VIEWPORT_HORIZ                                                                0x00000200
+#define   NV34TCL_VIEWPORT_HORIZ_X_SHIFT                                               0
+#define   NV34TCL_VIEWPORT_HORIZ_X_MASK                                                        0x0000ffff
+#define   NV34TCL_VIEWPORT_HORIZ_W_SHIFT                                               16
+#define   NV34TCL_VIEWPORT_HORIZ_W_MASK                                                        0xffff0000
+#define  NV34TCL_VIEWPORT_VERT                                                         0x00000204
+#define   NV34TCL_VIEWPORT_VERT_Y_SHIFT                                                        0
+#define   NV34TCL_VIEWPORT_VERT_Y_MASK                                                 0x0000ffff
+#define   NV34TCL_VIEWPORT_VERT_H_SHIFT                                                        16
+#define   NV34TCL_VIEWPORT_VERT_H_MASK                                                 0xffff0000
+#define  NV34TCL_RT_FORMAT                                                             0x00000208
+#define   NV34TCL_RT_FORMAT_TYPE_SHIFT                                                 8
+#define   NV34TCL_RT_FORMAT_TYPE_MASK                                                  0x00000f00
+#define    NV34TCL_RT_FORMAT_TYPE_LINEAR                                               0x00000100
+#define    NV34TCL_RT_FORMAT_TYPE_SWIZZLED                                             0x00000200
+#define   NV34TCL_RT_FORMAT_ZETA_SHIFT                                                 5
+#define   NV34TCL_RT_FORMAT_ZETA_MASK                                                  0x000000e0
+#define    NV34TCL_RT_FORMAT_ZETA_Z16                                                  0x00000020
+#define    NV34TCL_RT_FORMAT_ZETA_Z24S8                                                        0x00000040
+#define   NV34TCL_RT_FORMAT_COLOR_SHIFT                                                        0
+#define   NV34TCL_RT_FORMAT_COLOR_MASK                                                 0x0000001f
+#define    NV34TCL_RT_FORMAT_COLOR_R5G6B5                                              0x00000003
+#define    NV34TCL_RT_FORMAT_COLOR_X8R8G8B8                                            0x00000005
+#define    NV34TCL_RT_FORMAT_COLOR_A8R8G8B8                                            0x00000008
+#define    NV34TCL_RT_FORMAT_COLOR_B8                                                  0x00000009
+#define    NV34TCL_RT_FORMAT_COLOR_X8B8G8R8                                            0x0000000f
+#define    NV34TCL_RT_FORMAT_COLOR_A8B8G8R8                                            0x00000010
+#define  NV34TCL_COLOR0_PITCH                                                          0x0000020c
+#define   NV34TCL_COLOR0_PITCH_COLOR0_SHIFT                                            0
+#define   NV34TCL_COLOR0_PITCH_COLOR0_MASK                                             0x0000ffff
+#define   NV34TCL_COLOR0_PITCH_ZETA_SHIFT                                              16
+#define   NV34TCL_COLOR0_PITCH_ZETA_MASK                                               0xffff0000
+#define  NV34TCL_COLOR0_OFFSET                                                         0x00000210
+#define  NV34TCL_ZETA_OFFSET                                                           0x00000214
+#define  NV34TCL_COLOR1_OFFSET                                                         0x00000218
+#define  NV34TCL_COLOR1_PITCH                                                          0x0000021c
+#define  NV34TCL_RT_ENABLE                                                             0x00000220
+#define   NV34TCL_RT_ENABLE_MRT                                                                (1 <<  4)
+#define   NV34TCL_RT_ENABLE_COLOR3                                                     (1 <<  3)
+#define   NV34TCL_RT_ENABLE_COLOR2                                                     (1 <<  2)
+#define   NV34TCL_RT_ENABLE_COLOR1                                                     (1 <<  1)
+#define   NV34TCL_RT_ENABLE_COLOR0                                                     (1 <<  0)
+#define  NV34TCL_ZETA_PITCH                                                            0x0000022c
+#define  NV34TCL_LMA_DEPTH_OFFSET                                                      0x00000230
+#define  NV34TCL_TX_UNITS_ENABLE                                                       0x0000023c
+#define   NV34TCL_TX_UNITS_ENABLE_TX0                                                  (1 <<  0)
+#define   NV34TCL_TX_UNITS_ENABLE_TX1                                                  (1 <<  1)
+#define   NV34TCL_TX_UNITS_ENABLE_TX2                                                  (1 <<  2)
+#define   NV34TCL_TX_UNITS_ENABLE_TX3                                                  (1 <<  3)
+#define  NV34TCL_TX_MATRIX_ENABLE(x)                                                   (0x00000240+((x)*4))
+#define  NV34TCL_TX_MATRIX_ENABLE__SIZE                                                        0x00000004
+#define  NV34TCL_UNK0250(x)                                                            (0x00000250+((x)*4))
+#define  NV34TCL_UNK0250__SIZE                                                         0x00000004
+#define  NV34TCL_VIEWPORT_TX_ORIGIN                                                    0x000002b8
+#define   NV34TCL_VIEWPORT_TX_ORIGIN_X_SHIFT                                           0
+#define   NV34TCL_VIEWPORT_TX_ORIGIN_X_MASK                                            0x0000ffff
+#define   NV34TCL_VIEWPORT_TX_ORIGIN_Y_SHIFT                                           16
+#define   NV34TCL_VIEWPORT_TX_ORIGIN_Y_MASK                                            0xffff0000
+#define  NV34TCL_VIEWPORT_CLIP_HORIZ(x)                                                        (0x000002c0+((x)*8))
+#define  NV34TCL_VIEWPORT_CLIP_HORIZ__SIZE                                             0x00000008
+#define   NV34TCL_VIEWPORT_CLIP_HORIZ_L_SHIFT                                          0
+#define   NV34TCL_VIEWPORT_CLIP_HORIZ_L_MASK                                           0x0000ffff
+#define   NV34TCL_VIEWPORT_CLIP_HORIZ_R_SHIFT                                          16
+#define   NV34TCL_VIEWPORT_CLIP_HORIZ_R_MASK                                           0xffff0000
+#define  NV34TCL_VIEWPORT_CLIP_VERT(x)                                                 (0x000002c4+((x)*8))
+#define  NV34TCL_VIEWPORT_CLIP_VERT__SIZE                                              0x00000008
+#define   NV34TCL_VIEWPORT_CLIP_VERT_T_SHIFT                                           0
+#define   NV34TCL_VIEWPORT_CLIP_VERT_T_MASK                                            0x0000ffff
+#define   NV34TCL_VIEWPORT_CLIP_VERT_D_SHIFT                                           16
+#define   NV34TCL_VIEWPORT_CLIP_VERT_D_MASK                                            0xffff0000
+#define  NV34TCL_COLOR2_PITCH                                                          0x00000280
+#define  NV34TCL_COLOR3_PITCH                                                          0x00000284
+#define  NV34TCL_COLOR2_OFFSET                                                         0x00000288
+#define  NV34TCL_COLOR3_OFFSET                                                         0x0000028c
+#define  NV34TCL_DITHER_ENABLE                                                         0x00000300
+#define  NV34TCL_ALPHA_FUNC_ENABLE                                                     0x00000304
+#define  NV34TCL_ALPHA_FUNC_FUNC                                                       0x00000308
+#define   NV34TCL_ALPHA_FUNC_FUNC_NEVER                                                        0x00000200
+#define   NV34TCL_ALPHA_FUNC_FUNC_LESS                                                 0x00000201
+#define   NV34TCL_ALPHA_FUNC_FUNC_EQUAL                                                        0x00000202
+#define   NV34TCL_ALPHA_FUNC_FUNC_LEQUAL                                               0x00000203
+#define   NV34TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV34TCL_ALPHA_FUNC_FUNC_GREATER                                              0x00000204
+#define   NV34TCL_ALPHA_FUNC_FUNC_NOTEQUAL                                             0x00000205
+#define   NV34TCL_ALPHA_FUNC_FUNC_GEQUAL                                               0x00000206
+#define   NV34TCL_ALPHA_FUNC_FUNC_ALWAYS                                               0x00000207
+#define  NV34TCL_ALPHA_FUNC_REF                                                                0x0000030c
+#define  NV34TCL_BLEND_FUNC_ENABLE                                                     0x00000310
+#define  NV34TCL_BLEND_FUNC_SRC                                                                0x00000314
+#define   NV34TCL_BLEND_FUNC_SRC_RGB_SHIFT                                             0
+#define   NV34TCL_BLEND_FUNC_SRC_RGB_MASK                                              0x0000ffff
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ZERO                                             0x00000000
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE                                              0x00000001
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_SRC_COLOR                                                0x00000300
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR                              0x00000301
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA                                                0x00000302
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA                              0x00000303
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_DST_ALPHA                                                0x00000304
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA                              0x00000305
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_DST_COLOR                                                0x00000306
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR                              0x00000307
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE                               0x00000308
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR                                   0x00008001
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR                         0x00008002
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA                                   0x00008003
+#define    NV34TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA                         0x00008004
+#define   NV34TCL_BLEND_FUNC_SRC_ALPHA_SHIFT                                           16
+#define   NV34TCL_BLEND_FUNC_SRC_ALPHA_MASK                                            0xffff0000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ZERO                                           0x00000000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE                                            0x00010000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_SRC_COLOR                                      0x03000000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR                            0x03010000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA                                      0x03020000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA                            0x03030000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_DST_ALPHA                                      0x03040000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA                            0x03050000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_DST_COLOR                                      0x03060000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR                            0x03070000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE                             0x03080000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR                                 0x80010000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR                       0x80020000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA                                 0x80030000
+#define    NV34TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA                       0x80040000
+#define  NV34TCL_BLEND_FUNC_DST                                                                0x00000318
+#define   NV34TCL_BLEND_FUNC_DST_RGB_SHIFT                                             0
+#define   NV34TCL_BLEND_FUNC_DST_RGB_MASK                                              0x0000ffff
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ZERO                                             0x00000000
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE                                              0x00000001
+#define    NV34TCL_BLEND_FUNC_DST_RGB_SRC_COLOR                                                0x00000300
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR                              0x00000301
+#define    NV34TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA                                                0x00000302
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA                              0x00000303
+#define    NV34TCL_BLEND_FUNC_DST_RGB_DST_ALPHA                                                0x00000304
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA                              0x00000305
+#define    NV34TCL_BLEND_FUNC_DST_RGB_DST_COLOR                                                0x00000306
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR                              0x00000307
+#define    NV34TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE                               0x00000308
+#define    NV34TCL_BLEND_FUNC_DST_RGB_CONSTANT_COLOR                                   0x00008001
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR                         0x00008002
+#define    NV34TCL_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA                                   0x00008003
+#define    NV34TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA                         0x00008004
+#define   NV34TCL_BLEND_FUNC_DST_ALPHA_SHIFT                                           16
+#define   NV34TCL_BLEND_FUNC_DST_ALPHA_MASK                                            0xffff0000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ZERO                                           0x00000000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE                                            0x00010000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_SRC_COLOR                                      0x03000000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR                            0x03010000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA                                      0x03020000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA                            0x03030000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_DST_ALPHA                                      0x03040000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA                            0x03050000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_DST_COLOR                                      0x03060000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR                            0x03070000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE                             0x03080000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR                                 0x80010000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR                       0x80020000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA                                 0x80030000
+#define    NV34TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA                       0x80040000
+#define  NV34TCL_BLEND_FUNC_COLOR                                                      0x0000031c
+#define  NV34TCL_BLEND_FUNC_EQUATION                                                   0x00000320
+#define   NV34TCL_BLEND_FUNC_EQUATION_FUNC_ADD                                         0x00008006
+#define   NV34TCL_BLEND_FUNC_EQUATION_MIN                                              0x00008007
+#define   NV34TCL_BLEND_FUNC_EQUATION_MAX                                              0x00008008
+#define   NV34TCL_BLEND_FUNC_EQUATION_FUNC_SUBTRACT                                    0x0000800a
+#define   NV34TCL_BLEND_FUNC_EQUATION_FUNC_REVERSE_SUBTRACT                            0x0000800b
+#define  NV34TCL_COLOR_MASK                                                            0x00000324
+#define   NV34TCL_COLOR_MASK_B_SHIFT                                                   0
+#define   NV34TCL_COLOR_MASK_B_MASK                                                    0x000000ff
+#define   NV34TCL_COLOR_MASK_G_SHIFT                                                   8
+#define   NV34TCL_COLOR_MASK_G_MASK                                                    0x0000ff00
+#define   NV34TCL_COLOR_MASK_R_SHIFT                                                   16
+#define   NV34TCL_COLOR_MASK_R_MASK                                                    0x00ff0000
+#define   NV34TCL_COLOR_MASK_A_SHIFT                                                   24
+#define   NV34TCL_COLOR_MASK_A_MASK                                                    0xff000000
+#define  NV34TCL_STENCIL_BACK_ENABLE                                                   0x00000328
+#define  NV34TCL_STENCIL_BACK_MASK                                                     0x0000032c
+#define  NV34TCL_STENCIL_BACK_FUNC_FUNC                                                        0x00000330
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_NEVER                                         0x00000200
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_LESS                                          0x00000201
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_EQUAL                                         0x00000202
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL                                                0x00000203
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL                                      0x00000205
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL                                                0x00000206
+#define   NV34TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS                                                0x00000207
+#define  NV34TCL_STENCIL_BACK_FUNC_REF                                                 0x00000334
+#define  NV34TCL_STENCIL_BACK_FUNC_MASK                                                        0x00000338
+#define  NV34TCL_STENCIL_BACK_OP_FAIL                                                  0x0000033c
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_ZERO                                            0x00000000
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_INVERT                                          0x0000150a
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_KEEP                                            0x00001e00
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_REPLACE                                         0x00001e01
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_INCR                                            0x00001e02
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_DECR                                            0x00001e03
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP                                       0x00008507
+#define   NV34TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP                                       0x00008508
+#define  NV34TCL_STENCIL_BACK_OP_ZFAIL                                                 0x00000340
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_ZERO                                           0x00000000
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_INVERT                                         0x0000150a
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_KEEP                                           0x00001e00
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_REPLACE                                                0x00001e01
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_INCR                                           0x00001e02
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_DECR                                           0x00001e03
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP                                      0x00008507
+#define   NV34TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP                                      0x00008508
+#define  NV34TCL_STENCIL_BACK_OP_ZPASS                                                 0x00000344
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_ZERO                                           0x00000000
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_INVERT                                         0x0000150a
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_KEEP                                           0x00001e00
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_REPLACE                                                0x00001e01
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_INCR                                           0x00001e02
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_DECR                                           0x00001e03
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP                                      0x00008507
+#define   NV34TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP                                      0x00008508
+#define  NV34TCL_STENCIL_FRONT_ENABLE                                                  0x00000348
+#define  NV34TCL_STENCIL_FRONT_MASK                                                    0x0000034c
+#define  NV34TCL_STENCIL_FRONT_FUNC_FUNC                                               0x00000350
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_NEVER                                                0x00000200
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_LESS                                         0x00000201
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL                                                0x00000202
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL                                       0x00000203
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_GREATER                                      0x00000204
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_GREATER                                      0x00000204
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL                                     0x00000205
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL                                       0x00000206
+#define   NV34TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS                                       0x00000207
+#define  NV34TCL_STENCIL_FRONT_FUNC_REF                                                        0x00000354
+#define  NV34TCL_STENCIL_FRONT_FUNC_MASK                                               0x00000358
+#define  NV34TCL_STENCIL_FRONT_OP_FAIL                                                 0x0000035c
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_ZERO                                           0x00000000
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_INVERT                                         0x0000150a
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_KEEP                                           0x00001e00
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_REPLACE                                                0x00001e01
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_INCR                                           0x00001e02
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_DECR                                           0x00001e03
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP                                      0x00008507
+#define   NV34TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP                                      0x00008508
+#define  NV34TCL_STENCIL_FRONT_OP_ZFAIL                                                        0x00000360
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_ZERO                                          0x00000000
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_INVERT                                                0x0000150a
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_KEEP                                          0x00001e00
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_REPLACE                                       0x00001e01
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_INCR                                          0x00001e02
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_DECR                                          0x00001e03
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP                                     0x00008507
+#define   NV34TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP                                     0x00008508
+#define  NV34TCL_STENCIL_FRONT_OP_ZPASS                                                        0x00000364
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_ZERO                                          0x00000000
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_INVERT                                                0x0000150a
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_KEEP                                          0x00001e00
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_REPLACE                                       0x00001e01
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_INCR                                          0x00001e02
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_DECR                                          0x00001e03
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP                                     0x00008507
+#define   NV34TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP                                     0x00008508
+#define  NV34TCL_SHADE_MODEL                                                           0x00000368
+#define   NV34TCL_SHADE_MODEL_FLAT                                                     0x00001d00
+#define   NV34TCL_SHADE_MODEL_SMOOTH                                                   0x00001d01
+#define  NV34TCL_FOG_ENABLE                                                            0x0000036c
+#define  NV34TCL_FOG_COLOR                                                             0x00000370
+#define  NV34TCL_COLOR_LOGIC_OP_ENABLE                                                 0x00000374
+#define  NV34TCL_COLOR_LOGIC_OP_OP                                                     0x00000378
+#define   NV34TCL_COLOR_LOGIC_OP_OP_CLEAR                                              0x00001500
+#define   NV34TCL_COLOR_LOGIC_OP_OP_AND                                                        0x00001501
+#define   NV34TCL_COLOR_LOGIC_OP_OP_AND_REVERSE                                                0x00001502
+#define   NV34TCL_COLOR_LOGIC_OP_OP_COPY                                               0x00001503
+#define   NV34TCL_COLOR_LOGIC_OP_OP_AND_INVERTED                                       0x00001504
+#define   NV34TCL_COLOR_LOGIC_OP_OP_NOOP                                               0x00001505
+#define   NV34TCL_COLOR_LOGIC_OP_OP_XOR                                                        0x00001506
+#define   NV34TCL_COLOR_LOGIC_OP_OP_OR                                                 0x00001507
+#define   NV34TCL_COLOR_LOGIC_OP_OP_NOR                                                        0x00001508
+#define   NV34TCL_COLOR_LOGIC_OP_OP_EQUIV                                              0x00001509
+#define   NV34TCL_COLOR_LOGIC_OP_OP_INVERT                                             0x0000150a
+#define   NV34TCL_COLOR_LOGIC_OP_OP_OR_REVERSE                                         0x0000150b
+#define   NV34TCL_COLOR_LOGIC_OP_OP_COPY_INVERTED                                      0x0000150c
+#define   NV34TCL_COLOR_LOGIC_OP_OP_OR_INVERTED                                                0x0000150d
+#define   NV34TCL_COLOR_LOGIC_OP_OP_NAND                                               0x0000150e
+#define   NV34TCL_COLOR_LOGIC_OP_OP_SET                                                        0x0000150f
+#define  NV34TCL_NORMALIZE_ENABLE                                                      0x0000037c
+#define  NV34TCL_COLOR_MATERIAL                                                                0x00000390
+#define   NV34TCL_COLOR_MATERIAL_FRONT_EMISSION_ENABLE                                 (1 <<  0)
+#define   NV34TCL_COLOR_MATERIAL_FRONT_AMBIENT_ENABLE                                  (1 <<  2)
+#define   NV34TCL_COLOR_MATERIAL_FRONT_DIFFUSE_ENABLE                                  (1 <<  4)
+#define   NV34TCL_COLOR_MATERIAL_FRONT_SPECULAR_ENABLE                                 (1 <<  6)
+#define   NV34TCL_COLOR_MATERIAL_BACK_EMISSION_ENABLE                                  (1 <<  8)
+#define   NV34TCL_COLOR_MATERIAL_BACK_AMBIENT_ENABLE                                   (1 << 10)
+#define   NV34TCL_COLOR_MATERIAL_BACK_DIFFUSE_ENABLE                                   (1 << 12)
+#define   NV34TCL_COLOR_MATERIAL_BACK_SPECULAR_ENABLE                                  (1 << 14)
+#define  NV34TCL_DEPTH_RANGE_NEAR                                                      0x00000394
+#define  NV34TCL_DEPTH_RANGE_FAR                                                       0x00000398
+#define  NV34TCL_COLOR_MATERIAL_FRONT_R                                                        0x000003a0
+#define  NV34TCL_COLOR_MATERIAL_FRONT_G                                                        0x000003a4
+#define  NV34TCL_COLOR_MATERIAL_FRONT_B                                                        0x000003a8
+#define  NV34TCL_COLOR_MATERIAL_FRONT_A                                                        0x000003b4
+#define  NV34TCL_LINE_WIDTH                                                            0x000003b8
+#define  NV34TCL_LINE_SMOOTH_ENABLE                                                    0x000003bc
+#define  NV34TCL_CLIP_PLANE_ENABLE(x)                                                  (0x00000400+((x)*4))
+#define  NV34TCL_CLIP_PLANE_ENABLE__SIZE                                               0x00000020
+#define   NV34TCL_CLIP_PLANE_ENABLE_FALSE                                              0x00000000
+#define   NV34TCL_CLIP_PLANE_ENABLE_EYE_LINEAR                                         0x00002400
+#define   NV34TCL_CLIP_PLANE_ENABLE_OBJECT_LINEAR                                      0x00002401
+#define  NV34TCL_MODELVIEW_MATRIX(x)                                                   (0x00000480+((x)*4))
+#define  NV34TCL_MODELVIEW_MATRIX__SIZE                                                        0x00000010
+#define  NV34TCL_INVERSE_MODELVIEW_MATRIX(x)                                           (0x00000580+((x)*4))
+#define  NV34TCL_INVERSE_MODELVIEW_MATRIX__SIZE                                                0x0000000c
+#define  NV34TCL_PROJECTION_MATRIX(x)                                                  (0x00000680+((x)*4))
+#define  NV34TCL_PROJECTION_MATRIX__SIZE                                               0x00000010
+#define  NV34TCL_TX0_MATRIX(x)                                                         (0x000006c0+((x)*4))
+#define  NV34TCL_TX0_MATRIX__SIZE                                                      0x00000010
+#define  NV34TCL_TX1_MATRIX(x)                                                         (0x00000700+((x)*4))
+#define  NV34TCL_TX1_MATRIX__SIZE                                                      0x00000010
+#define  NV34TCL_TX2_MATRIX(x)                                                         (0x00000740+((x)*4))
+#define  NV34TCL_TX2_MATRIX__SIZE                                                      0x00000010
+#define  NV34TCL_TX3_MATRIX(x)                                                         (0x00000780+((x)*4))
+#define  NV34TCL_TX3_MATRIX__SIZE                                                      0x00000010
+#define  NV34TCL_SCISSOR_HORIZ                                                         0x000008c0
+#define   NV34TCL_SCISSOR_HORIZ_X_SHIFT                                                        0
+#define   NV34TCL_SCISSOR_HORIZ_X_MASK                                                 0x0000ffff
+#define   NV34TCL_SCISSOR_HORIZ_W_SHIFT                                                        16
+#define   NV34TCL_SCISSOR_HORIZ_W_MASK                                                 0xffff0000
+#define  NV34TCL_SCISSOR_VERT                                                          0x000008c4
+#define   NV34TCL_SCISSOR_VERT_Y_SHIFT                                                 0
+#define   NV34TCL_SCISSOR_VERT_Y_MASK                                                  0x0000ffff
+#define   NV34TCL_SCISSOR_VERT_H_SHIFT                                                 16
+#define   NV34TCL_SCISSOR_VERT_H_MASK                                                  0xffff0000
+#define  NV34TCL_FOG_COORD_DIST                                                                0x000008c8
+#define  NV34TCL_FOG_MODE                                                              0x000008cc
+#define   NV34TCL_FOG_MODE_EXP                                                         0x00000800
+#define   NV34TCL_FOG_MODE_EXP_2                                                       0x00000802
+#define   NV34TCL_FOG_MODE_EXP2                                                                0x00000803
+#define   NV34TCL_FOG_MODE_LINEAR                                                      0x00000804
+#define   NV34TCL_FOG_MODE_LINEAR_2                                                    0x00002601
+#define  NV34TCL_FOG_EQUATION_CONSTANT                                                 0x000008d0
+#define  NV34TCL_FOG_EQUATION_LINEAR                                                   0x000008d4
+#define  NV34TCL_FOG_EQUATION_QUADRATIC                                                        0x000008d8
+#define  NV34TCL_FP_ACTIVE_PROGRAM                                                     0x000008e4
+#define  NV34TCL_RC_COLOR0                                                             0x000008ec
+#define   NV34TCL_RC_COLOR0_B_SHIFT                                                    0
+#define   NV34TCL_RC_COLOR0_B_MASK                                                     0x000000ff
+#define   NV34TCL_RC_COLOR0_G_SHIFT                                                    8
+#define   NV34TCL_RC_COLOR0_G_MASK                                                     0x0000ff00
+#define   NV34TCL_RC_COLOR0_R_SHIFT                                                    16
+#define   NV34TCL_RC_COLOR0_R_MASK                                                     0x00ff0000
+#define   NV34TCL_RC_COLOR0_A_SHIFT                                                    24
+#define   NV34TCL_RC_COLOR0_A_MASK                                                     0xff000000
+#define  NV34TCL_RC_COLOR1                                                             0x000008f0
+#define   NV34TCL_RC_COLOR1_B_SHIFT                                                    0
+#define   NV34TCL_RC_COLOR1_B_MASK                                                     0x000000ff
+#define   NV34TCL_RC_COLOR1_G_SHIFT                                                    8
+#define   NV34TCL_RC_COLOR1_G_MASK                                                     0x0000ff00
+#define   NV34TCL_RC_COLOR1_R_SHIFT                                                    16
+#define   NV34TCL_RC_COLOR1_R_MASK                                                     0x00ff0000
+#define   NV34TCL_RC_COLOR1_A_SHIFT                                                    24
+#define   NV34TCL_RC_COLOR1_A_MASK                                                     0xff000000
+#define  NV34TCL_RC_FINAL0                                                             0x000008f4
+#define  NV34TCL_RC_FINAL1                                                             0x000008f8
+#define  NV34TCL_RC_ENABLE                                                             0x000008fc
+#define  NV34TCL_RC_IN_ALPHA(x)                                                                (0x00000900+((x)*32))
+#define  NV34TCL_RC_IN_ALPHA__SIZE                                                     0x00000008
+#define  NV34TCL_RC_IN_RGB(x)                                                          (0x00000904+((x)*32))
+#define  NV34TCL_RC_IN_RGB__SIZE                                                       0x00000008
+#define  NV34TCL_RC_CONSTANT_COLOR0(x)                                                 (0x00000908+((x)*32))
+#define  NV34TCL_RC_CONSTANT_COLOR0__SIZE                                              0x00000008
+#define   NV34TCL_RC_CONSTANT_COLOR0_B_SHIFT                                           0
+#define   NV34TCL_RC_CONSTANT_COLOR0_B_MASK                                            0x000000ff
+#define   NV34TCL_RC_CONSTANT_COLOR0_G_SHIFT                                           8
+#define   NV34TCL_RC_CONSTANT_COLOR0_G_MASK                                            0x0000ff00
+#define   NV34TCL_RC_CONSTANT_COLOR0_R_SHIFT                                           16
+#define   NV34TCL_RC_CONSTANT_COLOR0_R_MASK                                            0x00ff0000
+#define   NV34TCL_RC_CONSTANT_COLOR0_A_SHIFT                                           24
+#define   NV34TCL_RC_CONSTANT_COLOR0_A_MASK                                            0xff000000
+#define  NV34TCL_RC_CONSTANT_COLOR1(x)                                                 (0x0000090c+((x)*32))
+#define  NV34TCL_RC_CONSTANT_COLOR1__SIZE                                              0x00000008
+#define   NV34TCL_RC_CONSTANT_COLOR1_B_SHIFT                                           0
+#define   NV34TCL_RC_CONSTANT_COLOR1_B_MASK                                            0x000000ff
+#define   NV34TCL_RC_CONSTANT_COLOR1_G_SHIFT                                           8
+#define   NV34TCL_RC_CONSTANT_COLOR1_G_MASK                                            0x0000ff00
+#define   NV34TCL_RC_CONSTANT_COLOR1_R_SHIFT                                           16
+#define   NV34TCL_RC_CONSTANT_COLOR1_R_MASK                                            0x00ff0000
+#define   NV34TCL_RC_CONSTANT_COLOR1_A_SHIFT                                           24
+#define   NV34TCL_RC_CONSTANT_COLOR1_A_MASK                                            0xff000000
+#define  NV34TCL_RC_OUT_ALPHA(x)                                                       (0x00000910+((x)*32))
+#define  NV34TCL_RC_OUT_ALPHA__SIZE                                                    0x00000008
+#define  NV34TCL_RC_OUT_RGB(x)                                                         (0x00000914+((x)*32))
+#define  NV34TCL_RC_OUT_RGB__SIZE                                                      0x00000008
+#define  NV34TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R                        0x00000a10
+#define  NV34TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G                        0x00000a14
+#define  NV34TCL_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B                        0x00000a18
+#define  NV34TCL_VIEWPORT_SCALE0_X                                                     0x00000a20
+#define  NV34TCL_VIEWPORT_SCALE0_Y                                                     0x00000a24
+#define  NV34TCL_VIEWPORT_SCALE0_Z                                                     0x00000a28
+#define  NV34TCL_VIEWPORT_SCALE0_W                                                     0x00000a2c
+#define  NV34TCL_VIEWPORT_SCALE1_X                                                     0x00000a30
+#define  NV34TCL_VIEWPORT_SCALE1_Y                                                     0x00000a34
+#define  NV34TCL_VIEWPORT_SCALE1_Z                                                     0x00000a38
+#define  NV34TCL_VIEWPORT_SCALE1_W                                                     0x00000a3c
+#define  NV34TCL_POLYGON_OFFSET_FILL_ENABLE                                            0x00000a60
+#define  NV34TCL_POLYGON_OFFSET_LINE_ENABLE                                            0x00000a64
+#define  NV34TCL_POLYGON_OFFSET_POINT_ENABLE                                           0x00000a68
+#define  NV34TCL_DEPTH_FUNC                                                            0x00000a6c
+#define   NV34TCL_DEPTH_FUNC_NEVER                                                     0x00000200
+#define   NV34TCL_DEPTH_FUNC_LESS                                                      0x00000201
+#define   NV34TCL_DEPTH_FUNC_EQUAL                                                     0x00000202
+#define   NV34TCL_DEPTH_FUNC_LEQUAL                                                    0x00000203
+#define   NV34TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV34TCL_DEPTH_FUNC_GREATER                                                   0x00000204
+#define   NV34TCL_DEPTH_FUNC_NOTEQUAL                                                  0x00000205
+#define   NV34TCL_DEPTH_FUNC_GEQUAL                                                    0x00000206
+#define   NV34TCL_DEPTH_FUNC_ALWAYS                                                    0x00000207
+#define  NV34TCL_DEPTH_WRITE_ENABLE                                                    0x00000a70
+#define  NV34TCL_DEPTH_TEST_ENABLE                                                     0x00000a74
+#define  NV34TCL_POLYGON_OFFSET_FACTOR                                                 0x00000a78
+#define  NV34TCL_POLYGON_OFFSET_UNITS                                                  0x00000a7c
+#define  NV34TCL_VERTEX_NOR_3I_XY                                                      0x00000a90
+#define   NV34TCL_VERTEX_NOR_3I_XY_X_SHIFT                                             0
+#define   NV34TCL_VERTEX_NOR_3I_XY_X_MASK                                              0x0000ffff
+#define   NV34TCL_VERTEX_NOR_3I_XY_Y_SHIFT                                             16
+#define   NV34TCL_VERTEX_NOR_3I_XY_Y_MASK                                              0xffff0000
+#define  NV34TCL_VERTEX_NOR_3I_Z                                                       0x00000a94
+#define   NV34TCL_VERTEX_NOR_3I_Z_Z_SHIFT                                              0
+#define   NV34TCL_VERTEX_NOR_3I_Z_Z_MASK                                               0x0000ffff
+#define  NV34TCL_VP_UPLOAD_INST(x)                                                     (0x00000b80+((x)*4))
+#define  NV34TCL_VP_UPLOAD_INST__SIZE                                                  0x00000004
+#define  NV34TCL_CLIP_PLANE_A(x)                                                       (0x00000e00+((x)*16))
+#define  NV34TCL_CLIP_PLANE_A__SIZE                                                    0x00000020
+#define  NV34TCL_CLIP_PLANE_B(x)                                                       (0x00000e04+((x)*16))
+#define  NV34TCL_CLIP_PLANE_B__SIZE                                                    0x00000020
+#define  NV34TCL_CLIP_PLANE_C(x)                                                       (0x00000e08+((x)*16))
+#define  NV34TCL_CLIP_PLANE_C__SIZE                                                    0x00000020
+#define  NV34TCL_CLIP_PLANE_D(x)                                                       (0x00000e0c+((x)*16))
+#define  NV34TCL_CLIP_PLANE_D__SIZE                                                    0x00000020
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x)                                 (0x00001000+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x)                                 (0x00001004+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x)                                 (0x00001008+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x)                                 (0x0000100c+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x)                                 (0x00001010+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x)                                 (0x00001014+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE                              0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x)                                        (0x00001018+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE                             0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x)                                        (0x0000101c+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE                             0x00000008
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x)                                        (0x00001020+((x)*64))
+#define  NV34TCL_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE                             0x00000008
+#define  NV34TCL_LIGHT_HALF_VECTOR_X(x)                                                        (0x00001028+((x)*64))
+#define  NV34TCL_LIGHT_HALF_VECTOR_X__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_HALF_VECTOR_Y(x)                                                        (0x0000102c+((x)*64))
+#define  NV34TCL_LIGHT_HALF_VECTOR_Y__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_HALF_VECTOR_Z(x)                                                        (0x00001030+((x)*64))
+#define  NV34TCL_LIGHT_HALF_VECTOR_Z__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_DIRECTION_X(x)                                                  (0x00001034+((x)*64))
+#define  NV34TCL_LIGHT_DIRECTION_X__SIZE                                               0x00000008
+#define  NV34TCL_LIGHT_DIRECTION_Y(x)                                                  (0x00001038+((x)*64))
+#define  NV34TCL_LIGHT_DIRECTION_Y__SIZE                                               0x00000008
+#define  NV34TCL_LIGHT_DIRECTION_Z(x)                                                  (0x0000103c+((x)*64))
+#define  NV34TCL_LIGHT_DIRECTION_Z__SIZE                                               0x00000008
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_A(x)                                                        (0x00001200+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_A__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_B(x)                                                        (0x00001204+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_B__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_C(x)                                                        (0x00001208+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_C__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_SPOT_DIR_X(x)                                                   (0x0000120c+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_DIR_X__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_SPOT_DIR_Y(x)                                                   (0x00001210+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_DIR_Y__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_SPOT_DIR_Z(x)                                                   (0x00001214+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_DIR_Z__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_D(x)                                                        (0x00001218+((x)*64))
+#define  NV34TCL_LIGHT_SPOT_CUTOFF_D__SIZE                                             0x00000008
+#define  NV34TCL_LIGHT_POSITION_X(x)                                                   (0x0000121c+((x)*64))
+#define  NV34TCL_LIGHT_POSITION_X__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_POSITION_Y(x)                                                   (0x00001220+((x)*64))
+#define  NV34TCL_LIGHT_POSITION_Y__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_POSITION_Z(x)                                                   (0x00001224+((x)*64))
+#define  NV34TCL_LIGHT_POSITION_Z__SIZE                                                        0x00000008
+#define  NV34TCL_LIGHT_ATTENUATION_CONSTANT(x)                                         (0x00001228+((x)*64))
+#define  NV34TCL_LIGHT_ATTENUATION_CONSTANT__SIZE                                      0x00000008
+#define  NV34TCL_LIGHT_ATTENUATION_LINEAR(x)                                           (0x0000122c+((x)*64))
+#define  NV34TCL_LIGHT_ATTENUATION_LINEAR__SIZE                                                0x00000008
+#define  NV34TCL_LIGHT_ATTENUATION_QUADRATIC(x)                                                (0x00001230+((x)*64))
+#define  NV34TCL_LIGHT_ATTENUATION_QUADRATIC__SIZE                                     0x00000008
+#define  NV34TCL_FRONT_MATERIAL_SHININESS(x)                                           (0x00001400+((x)*4))
+#define  NV34TCL_FRONT_MATERIAL_SHININESS__SIZE                                                0x00000006
+#define  NV34TCL_FP_REG_CONTROL                                                                0x00001450
+#define   NV34TCL_FP_REG_CONTROL_USED_REGS_SHIFT                                       16
+#define   NV34TCL_FP_REG_CONTROL_USED_REGS_MASK                                                0xffff0000
+#define  NV34TCL_VP_CLIP_PLANES_ENABLE                                                 0x00001478
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE0                                         (1 <<  1)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE1                                         (1 <<  5)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE2                                         (1 <<  9)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE3                                         (1 << 13)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE4                                         (1 << 17)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE5                                         (1 << 21)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE6                                         (1 << 25)
+#define   NV34TCL_VP_CLIP_PLANES_ENABLE_PLANE7                                         (1 << 29)
+#define  NV34TCL_POLYGON_STIPPLE_ENABLE                                                        0x0000147c
+#define  NV34TCL_POLYGON_STIPPLE_PATTERN(x)                                            (0x00001480+((x)*4))
+#define  NV34TCL_POLYGON_STIPPLE_PATTERN__SIZE                                         0x00000020
+#define  NV34TCL_VERTEX_ATTR_3F_X(x)                                                   (0x00001500+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_3F_X__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_3F_Y(x)                                                   (0x00001504+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_3F_Y__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_3F_Z(x)                                                   (0x00001508+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_3F_Z__SIZE                                                        0x00000010
+#define  NV34TCL_VP_CLIP_PLANE_A(x)                                                    (0x00001600+((x)*16))
+#define  NV34TCL_VP_CLIP_PLANE_A__SIZE                                                 0x00000006
+#define  NV34TCL_VP_CLIP_PLANE_B(x)                                                    (0x00001604+((x)*16))
+#define  NV34TCL_VP_CLIP_PLANE_B__SIZE                                                 0x00000006
+#define  NV34TCL_VP_CLIP_PLANE_C(x)                                                    (0x00001608+((x)*16))
+#define  NV34TCL_VP_CLIP_PLANE_C__SIZE                                                 0x00000006
+#define  NV34TCL_VP_CLIP_PLANE_D(x)                                                    (0x0000160c+((x)*16))
+#define  NV34TCL_VP_CLIP_PLANE_D__SIZE                                                 0x00000006
+#define  NV34TCL_VERTEX_BUFFER_ADDRESS(x)                                              (0x00001680+((x)*4))
+#define  NV34TCL_VERTEX_BUFFER_ADDRESS__SIZE                                           0x00000010
+#define   NV34TCL_VERTEX_BUFFER_ADDRESS_DMA1                                           (1 << 31)
+#define   NV34TCL_VERTEX_BUFFER_ADDRESS_OFFSET_SHIFT                                   0
+#define   NV34TCL_VERTEX_BUFFER_ADDRESS_OFFSET_MASK                                    0x0fffffff
+#define  NV34TCL_VERTEX_ARRAY_FORMAT(x)                                                        (0x00001740+((x)*4))
+#define  NV34TCL_VERTEX_ARRAY_FORMAT__SIZE                                             0x00000010
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_TYPE_SHIFT                                       0
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_TYPE_MASK                                                0x0000000f
+#define    NV34TCL_VERTEX_ARRAY_FORMAT_TYPE_FLOAT                                      0x00000002
+#define    NV34TCL_VERTEX_ARRAY_FORMAT_TYPE_UBYTE                                      0x00000004
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_SIZE_SHIFT                                       4
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_SIZE_MASK                                                0x000000f0
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT                                     8
+#define   NV34TCL_VERTEX_ARRAY_FORMAT_STRIDE_MASK                                      0x0000ff00
+#define  NV34TCL_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R                 0x000017a0
+#define  NV34TCL_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G                 0x000017a4
+#define  NV34TCL_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B                 0x000017a8
+#define  NV34TCL_COLOR_MATERIAL_BACK_R                                                 0x000017b0
+#define  NV34TCL_COLOR_MATERIAL_BACK_G                                                 0x000017b4
+#define  NV34TCL_COLOR_MATERIAL_BACK_B                                                 0x000017b8
+#define  NV34TCL_COLOR_MATERIAL_BACK_A                                                 0x000017c0
+#define  NV34TCL_QUERY_RESET                                                           0x000017c8
+#define  NV34TCL_QUERY_UNK17CC                                                         0x000017cc
+#define  NV34TCL_QUERY_GET                                                             0x00001800
+#define   NV34TCL_QUERY_GET_UNK24_SHIFT                                                        24
+#define   NV34TCL_QUERY_GET_UNK24_MASK                                                 0xff000000
+#define   NV34TCL_QUERY_GET_OFFSET_SHIFT                                               0
+#define   NV34TCL_QUERY_GET_OFFSET_MASK                                                        0x00ffffff
+#define  NV34TCL_VERTEX_BEGIN_END                                                      0x00001808
+#define   NV34TCL_VERTEX_BEGIN_END_STOP                                                        0x00000000
+#define   NV34TCL_VERTEX_BEGIN_END_POINTS                                              0x00000001
+#define   NV34TCL_VERTEX_BEGIN_END_LINES                                               0x00000002
+#define   NV34TCL_VERTEX_BEGIN_END_LINE_LOOP                                           0x00000003
+#define   NV34TCL_VERTEX_BEGIN_END_LINE_STRIP                                          0x00000004
+#define   NV34TCL_VERTEX_BEGIN_END_TRIANGLES                                           0x00000005
+#define   NV34TCL_VERTEX_BEGIN_END_TRIANGLE_STRIP                                      0x00000006
+#define   NV34TCL_VERTEX_BEGIN_END_TRIANGLE_FAN                                                0x00000007
+#define   NV34TCL_VERTEX_BEGIN_END_QUADS                                               0x00000008
+#define   NV34TCL_VERTEX_BEGIN_END_QUAD_STRIP                                          0x00000009
+#define   NV34TCL_VERTEX_BEGIN_END_POLYGON                                             0x0000000a
+#define  NV34TCL_VB_ELEMENT_U16                                                                0x0000180c
+#define   NV34TCL_VB_ELEMENT_U16_I0_SHIFT                                              0
+#define   NV34TCL_VB_ELEMENT_U16_I0_MASK                                               0x0000ffff
+#define   NV34TCL_VB_ELEMENT_U16_I1_SHIFT                                              16
+#define   NV34TCL_VB_ELEMENT_U16_I1_MASK                                               0xffff0000
+#define  NV34TCL_VB_ELEMENT_U32                                                                0x00001810
+#define  NV34TCL_VB_VERTEX_BATCH                                                       0x00001814
+#define   NV34TCL_VB_VERTEX_BATCH_OFFSET_SHIFT                                         0
+#define   NV34TCL_VB_VERTEX_BATCH_OFFSET_MASK                                          0x00ffffff
+#define   NV34TCL_VB_VERTEX_BATCH_COUNT_SHIFT                                          24
+#define   NV34TCL_VB_VERTEX_BATCH_COUNT_MASK                                           0xff000000
+#define  NV34TCL_VERTEX_DATA                                                           0x00001818
+#define  NV34TCL_POLYGON_MODE_FRONT                                                    0x00001828
+#define   NV34TCL_POLYGON_MODE_FRONT_POINT                                             0x00001b00
+#define   NV34TCL_POLYGON_MODE_FRONT_LINE                                              0x00001b01
+#define   NV34TCL_POLYGON_MODE_FRONT_FILL                                              0x00001b02
+#define  NV34TCL_POLYGON_MODE_BACK                                                     0x0000182c
+#define   NV34TCL_POLYGON_MODE_BACK_POINT                                              0x00001b00
+#define   NV34TCL_POLYGON_MODE_BACK_LINE                                               0x00001b01
+#define   NV34TCL_POLYGON_MODE_BACK_FILL                                               0x00001b02
+#define  NV34TCL_CULL_FACE                                                             0x00001830
+#define   NV34TCL_CULL_FACE_FRONT                                                      0x00000404
+#define   NV34TCL_CULL_FACE_BACK                                                       0x00000405
+#define   NV34TCL_CULL_FACE_FRONT_AND_BACK                                             0x00000408
+#define  NV34TCL_FRONT_FACE                                                            0x00001834
+#define   NV34TCL_FRONT_FACE_CW                                                                0x00000900
+#define   NV34TCL_FRONT_FACE_CCW                                                       0x00000901
+#define  NV34TCL_POLYGON_SMOOTH_ENABLE                                                 0x00001838
+#define  NV34TCL_CULL_FACE_ENABLE                                                      0x0000183c
+#define  NV34TCL_VERTEX_ATTR_2F_X(x)                                                   (0x00001880+((x)*8))
+#define  NV34TCL_VERTEX_ATTR_2F_X__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_2F_Y(x)                                                   (0x00001884+((x)*8))
+#define  NV34TCL_VERTEX_ATTR_2F_Y__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_2I(x)                                                     (0x00001900+((x)*4))
+#define  NV34TCL_VERTEX_ATTR_2I__SIZE                                                  0x00000010
+#define   NV34TCL_VERTEX_ATTR_2I_Y_SHIFT                                               16
+#define   NV34TCL_VERTEX_ATTR_2I_Y_MASK                                                        0xffff0000
+#define   NV34TCL_VERTEX_ATTR_2I_X_SHIFT                                               0
+#define   NV34TCL_VERTEX_ATTR_2I_X_MASK                                                        0x0000ffff
+#define  NV34TCL_VERTEX_COL_4I(x)                                                      (0x0000194c+((x)*4))
+#define  NV34TCL_VERTEX_COL_4I__SIZE                                                   0x00000002
+#define   NV34TCL_VERTEX_COL_4I_R_SHIFT                                                        0
+#define   NV34TCL_VERTEX_COL_4I_R_MASK                                                 0x000000ff
+#define   NV34TCL_VERTEX_COL_4I_G_SHIFT                                                        8
+#define   NV34TCL_VERTEX_COL_4I_G_MASK                                                 0x0000ff00
+#define   NV34TCL_VERTEX_COL_4I_B_SHIFT                                                        16
+#define   NV34TCL_VERTEX_COL_4I_B_MASK                                                 0x00ff0000
+#define   NV34TCL_VERTEX_COL_4I_A_SHIFT                                                        24
+#define   NV34TCL_VERTEX_COL_4I_A_MASK                                                 0xff000000
+#define  NV34TCL_VERTEX_POS_4I_XY                                                      0x00001980
+#define   NV34TCL_VERTEX_POS_4I_XY_X_SHIFT                                             0
+#define   NV34TCL_VERTEX_POS_4I_XY_X_MASK                                              0x0000ffff
+#define   NV34TCL_VERTEX_POS_4I_XY_Y_SHIFT                                             16
+#define   NV34TCL_VERTEX_POS_4I_XY_Y_MASK                                              0xffff0000
+#define  NV34TCL_VERTEX_POS_4I_ZW                                                      0x00001984
+#define   NV34TCL_VERTEX_POS_4I_ZW_Z_SHIFT                                             0
+#define   NV34TCL_VERTEX_POS_4I_ZW_Z_MASK                                              0x0000ffff
+#define   NV34TCL_VERTEX_POS_4I_ZW_W_SHIFT                                             16
+#define   NV34TCL_VERTEX_POS_4I_ZW_W_MASK                                              0xffff0000
+#define  NV34TCL_VERTEX_TX_4I_ST(x)                                                    (0x000019c0+((x)*8))
+#define  NV34TCL_VERTEX_TX_4I_ST__SIZE                                                 0x00000004
+#define   NV34TCL_VERTEX_TX_4I_ST_S_SHIFT                                              0
+#define   NV34TCL_VERTEX_TX_4I_ST_S_MASK                                               0x0000ffff
+#define   NV34TCL_VERTEX_TX_4I_ST_T_SHIFT                                              16
+#define   NV34TCL_VERTEX_TX_4I_ST_T_MASK                                               0xffff0000
+#define  NV34TCL_VERTEX_TX_4I_RQ(x)                                                    (0x000019c4+((x)*8))
+#define  NV34TCL_VERTEX_TX_4I_RQ__SIZE                                                 0x00000004
+#define   NV34TCL_VERTEX_TX_4I_RQ_R_SHIFT                                              0
+#define   NV34TCL_VERTEX_TX_4I_RQ_R_MASK                                               0x0000ffff
+#define   NV34TCL_VERTEX_TX_4I_RQ_Q_SHIFT                                              16
+#define   NV34TCL_VERTEX_TX_4I_RQ_Q_MASK                                               0xffff0000
+#define  NV34TCL_TX_OFFSET(x)                                                          (0x00001a00+((x)*32))
+#define  NV34TCL_TX_OFFSET__SIZE                                                       0x00000004
+#define  NV34TCL_TX_FORMAT(x)                                                          (0x00001a04+((x)*32))
+#define  NV34TCL_TX_FORMAT__SIZE                                                       0x00000004
+#define   NV34TCL_TX_FORMAT_CUBE_MAP                                                   (1 <<  2)
+#define   NV34TCL_TX_FORMAT_COMPONENTS_SHIFT                                           4
+#define   NV34TCL_TX_FORMAT_COMPONENTS_MASK                                            0x000000f0
+#define   NV34TCL_TX_FORMAT_FORMAT_SHIFT                                               8
+#define   NV34TCL_TX_FORMAT_FORMAT_MASK                                                        0x0000ff00
+#define    NV34TCL_TX_FORMAT_FORMAT_L8                                                 0x00000000
+#define    NV34TCL_TX_FORMAT_FORMAT_A8                                                 0x00000100
+#define    NV34TCL_TX_FORMAT_FORMAT_A1R5G5B5                                           0x00000200
+#define    NV34TCL_TX_FORMAT_FORMAT_A8_RECT                                            0x00000300
+#define    NV34TCL_TX_FORMAT_FORMAT_A4R4G4B4                                           0x00000400
+#define    NV34TCL_TX_FORMAT_FORMAT_A8R8G8B8                                           0x00000600
+#define    NV34TCL_TX_FORMAT_FORMAT_X8R8G8B8                                           0x00000700
+#define    NV34TCL_TX_FORMAT_FORMAT_INDEX8                                             0x00000b00
+#define    NV34TCL_TX_FORMAT_FORMAT_DXT1                                               0x00000c00
+#define    NV34TCL_TX_FORMAT_FORMAT_DXT3                                               0x00000e00
+#define    NV34TCL_TX_FORMAT_FORMAT_DXT5                                               0x00000f00
+#define    NV34TCL_TX_FORMAT_FORMAT_A1R5G5B5_RECT                                      0x00001000
+#define    NV34TCL_TX_FORMAT_FORMAT_A8R8G8B8_RECT                                      0x00001200
+#define    NV34TCL_TX_FORMAT_FORMAT_L8_RECT                                            0x00001300
+#define    NV34TCL_TX_FORMAT_FORMAT_A8L8                                               0x00001a00
+#define    NV34TCL_TX_FORMAT_FORMAT_A8_RECT2                                           0x00001b00
+#define    NV34TCL_TX_FORMAT_FORMAT_R8G8B8_RECT                                                0x00001e00
+#define    NV34TCL_TX_FORMAT_FORMAT_A4R4G4B4_RECT                                      0x00001d00
+#define    NV34TCL_TX_FORMAT_FORMAT_L8A8_RECT                                          0x00002000
+#define    NV34TCL_TX_FORMAT_FORMAT_A16                                                        0x00003200
+#define    NV34TCL_TX_FORMAT_FORMAT_A16_RECT                                           0x00003500
+#define    NV34TCL_TX_FORMAT_FORMAT_FLOAT_RGBA16_NV                                    0x00004a00
+#define    NV34TCL_TX_FORMAT_FORMAT_FLOAT_RGBA32_NV                                    0x00004b00
+#define    NV34TCL_TX_FORMAT_FORMAT_FLOAT_R32_NV                                       0x00004c00
+#define   NV34TCL_TX_FORMAT_NPOT                                                       (1 << 12)
+#define   NV34TCL_TX_FORMAT_RECT                                                       (1 << 14)
+#define   NV34TCL_TX_FORMAT_MIPMAP_LEVELS_SHIFT                                                16
+#define   NV34TCL_TX_FORMAT_MIPMAP_LEVELS_MASK                                         0x000f0000
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_U_SHIFT                                          20
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_U_MASK                                           0x00f00000
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_V_SHIFT                                          24
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_V_MASK                                           0x0f000000
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_W_SHIFT                                          28
+#define   NV34TCL_TX_FORMAT_BASE_SIZE_W_MASK                                           0xf0000000
+#define  NV34TCL_TX_WRAP(x)                                                            (0x00001a08+((x)*32))
+#define  NV34TCL_TX_WRAP__SIZE                                                         0x00000004
+#define   NV34TCL_TX_WRAP_S_SHIFT                                                      0
+#define   NV34TCL_TX_WRAP_S_MASK                                                       0x000000ff
+#define    NV34TCL_TX_WRAP_S_REPEAT                                                    0x00000001
+#define    NV34TCL_TX_WRAP_S_MIRRORED_REPEAT                                           0x00000002
+#define    NV34TCL_TX_WRAP_S_CLAMP_TO_EDGE                                             0x00000003
+#define    NV34TCL_TX_WRAP_S_CLAMP_TO_BORDER                                           0x00000004
+#define    NV34TCL_TX_WRAP_S_CLAMP                                                     0x00000005
+#define   NV34TCL_TX_WRAP_T_SHIFT                                                      8
+#define   NV34TCL_TX_WRAP_T_MASK                                                       0x0000ff00
+#define    NV34TCL_TX_WRAP_T_REPEAT                                                    0x00000100
+#define    NV34TCL_TX_WRAP_T_MIRRORED_REPEAT                                           0x00000200
+#define    NV34TCL_TX_WRAP_T_CLAMP_TO_EDGE                                             0x00000300
+#define    NV34TCL_TX_WRAP_T_CLAMP_TO_BORDER                                           0x00000400
+#define    NV34TCL_TX_WRAP_T_CLAMP                                                     0x00000500
+#define   NV34TCL_TX_WRAP_R_SHIFT                                                      16
+#define   NV34TCL_TX_WRAP_R_MASK                                                       0x00ff0000
+#define    NV34TCL_TX_WRAP_R_REPEAT                                                    0x00010000
+#define    NV34TCL_TX_WRAP_R_MIRRORED_REPEAT                                           0x00020000
+#define    NV34TCL_TX_WRAP_R_CLAMP_TO_EDGE                                             0x00030000
+#define    NV34TCL_TX_WRAP_R_CLAMP_TO_BORDER                                           0x00040000
+#define    NV34TCL_TX_WRAP_R_CLAMP                                                     0x00050000
+#define  NV34TCL_TX_ENABLE(x)                                                          (0x00001a0c+((x)*32))
+#define  NV34TCL_TX_ENABLE__SIZE                                                       0x00000004
+#define   NV34TCL_TX_ENABLE_ENABLE                                                     (1 << 30)
+#define  NV34TCL_TX_SWIZZLE(x)                                                         (0x00001a10+((x)*32))
+#define  NV34TCL_TX_SWIZZLE__SIZE                                                      0x00000004
+#define   NV34TCL_TX_SWIZZLE_S0_X_SHIFT                                                        14
+#define   NV34TCL_TX_SWIZZLE_S0_X_MASK                                                 0x0000c000
+#define    NV34TCL_TX_SWIZZLE_S0_X_ZERO                                                        0x00000000
+#define    NV34TCL_TX_SWIZZLE_S0_X_ONE                                                 0x00004000
+#define    NV34TCL_TX_SWIZZLE_S0_X_S1                                                  0x00008000
+#define   NV34TCL_TX_SWIZZLE_S0_Y_SHIFT                                                        12
+#define   NV34TCL_TX_SWIZZLE_S0_Y_MASK                                                 0x00003000
+#define    NV34TCL_TX_SWIZZLE_S0_Y_ZERO                                                        0x00000000
+#define    NV34TCL_TX_SWIZZLE_S0_Y_ONE                                                 0x00001000
+#define    NV34TCL_TX_SWIZZLE_S0_Y_S1                                                  0x00002000
+#define   NV34TCL_TX_SWIZZLE_S0_Z_SHIFT                                                        10
+#define   NV34TCL_TX_SWIZZLE_S0_Z_MASK                                                 0x00000c00
+#define    NV34TCL_TX_SWIZZLE_S0_Z_ZERO                                                        0x00000000
+#define    NV34TCL_TX_SWIZZLE_S0_Z_ONE                                                 0x00000400
+#define    NV34TCL_TX_SWIZZLE_S0_Z_S1                                                  0x00000800
+#define   NV34TCL_TX_SWIZZLE_S0_W_SHIFT                                                        8
+#define   NV34TCL_TX_SWIZZLE_S0_W_MASK                                                 0x00000300
+#define    NV34TCL_TX_SWIZZLE_S0_W_ZERO                                                        0x00000000
+#define    NV34TCL_TX_SWIZZLE_S0_W_ONE                                                 0x00000100
+#define    NV34TCL_TX_SWIZZLE_S0_W_S1                                                  0x00000200
+#define   NV34TCL_TX_SWIZZLE_S1_X_SHIFT                                                        6
+#define   NV34TCL_TX_SWIZZLE_S1_X_MASK                                                 0x000000c0
+#define    NV34TCL_TX_SWIZZLE_S1_X_W                                                   0x00000000
+#define    NV34TCL_TX_SWIZZLE_S1_X_Z                                                   0x00000040
+#define    NV34TCL_TX_SWIZZLE_S1_X_Y                                                   0x00000080
+#define    NV34TCL_TX_SWIZZLE_S1_X_X                                                   0x000000c0
+#define   NV34TCL_TX_SWIZZLE_S1_Y_SHIFT                                                        4
+#define   NV34TCL_TX_SWIZZLE_S1_Y_MASK                                                 0x00000030
+#define    NV34TCL_TX_SWIZZLE_S1_Y_W                                                   0x00000000
+#define    NV34TCL_TX_SWIZZLE_S1_Y_Z                                                   0x00000010
+#define    NV34TCL_TX_SWIZZLE_S1_Y_Y                                                   0x00000020
+#define    NV34TCL_TX_SWIZZLE_S1_Y_X                                                   0x00000030
+#define   NV34TCL_TX_SWIZZLE_S1_Z_SHIFT                                                        2
+#define   NV34TCL_TX_SWIZZLE_S1_Z_MASK                                                 0x0000000c
+#define    NV34TCL_TX_SWIZZLE_S1_Z_W                                                   0x00000000
+#define    NV34TCL_TX_SWIZZLE_S1_Z_Z                                                   0x00000004
+#define    NV34TCL_TX_SWIZZLE_S1_Z_Y                                                   0x00000008
+#define    NV34TCL_TX_SWIZZLE_S1_Z_X                                                   0x0000000c
+#define   NV34TCL_TX_SWIZZLE_S1_W_SHIFT                                                        0
+#define   NV34TCL_TX_SWIZZLE_S1_W_MASK                                                 0x00000003
+#define    NV34TCL_TX_SWIZZLE_S1_W_W                                                   0x00000000
+#define    NV34TCL_TX_SWIZZLE_S1_W_Z                                                   0x00000001
+#define    NV34TCL_TX_SWIZZLE_S1_W_Y                                                   0x00000002
+#define    NV34TCL_TX_SWIZZLE_S1_W_X                                                   0x00000003
+#define   NV34TCL_TX_SWIZZLE_RECT_PITCH_SHIFT                                          16
+#define   NV34TCL_TX_SWIZZLE_RECT_PITCH_MASK                                           0xffff0000
+#define  NV34TCL_TX_FILTER(x)                                                          (0x00001a14+((x)*32))
+#define  NV34TCL_TX_FILTER__SIZE                                                       0x00000004
+#define   NV34TCL_TX_FILTER_MINIFY_SHIFT                                               16
+#define   NV34TCL_TX_FILTER_MINIFY_MASK                                                        0x000f0000
+#define    NV34TCL_TX_FILTER_MINIFY_NEAREST                                            0x00010000
+#define    NV34TCL_TX_FILTER_MINIFY_LINEAR                                             0x00020000
+#define    NV34TCL_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST                             0x00030000
+#define    NV34TCL_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST                              0x00040000
+#define    NV34TCL_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR                              0x00050000
+#define    NV34TCL_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR                               0x00060000
+#define   NV34TCL_TX_FILTER_MAGNIFY_SHIFT                                              24
+#define   NV34TCL_TX_FILTER_MAGNIFY_MASK                                               0x0f000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_NEAREST                                           0x01000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_LINEAR                                            0x02000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST                            0x03000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST                             0x04000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR                             0x05000000
+#define    NV34TCL_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR                              0x06000000
+#define  NV34TCL_TX_NPOT_SIZE(x)                                                       (0x00001a18+((x)*32))
+#define  NV34TCL_TX_NPOT_SIZE__SIZE                                                    0x00000004
+#define   NV34TCL_TX_NPOT_SIZE_H_SHIFT                                                 0
+#define   NV34TCL_TX_NPOT_SIZE_H_MASK                                                  0x0000ffff
+#define   NV34TCL_TX_NPOT_SIZE_W_SHIFT                                                 16
+#define   NV34TCL_TX_NPOT_SIZE_W_MASK                                                  0xffff0000
+#define  NV34TCL_TX_BORDER_COLOR(x)                                                    (0x00001a1c+((x)*32))
+#define  NV34TCL_TX_BORDER_COLOR__SIZE                                                 0x00000004
+#define   NV34TCL_TX_BORDER_COLOR_B_SHIFT                                              0
+#define   NV34TCL_TX_BORDER_COLOR_B_MASK                                               0x000000ff
+#define   NV34TCL_TX_BORDER_COLOR_G_SHIFT                                              8
+#define   NV34TCL_TX_BORDER_COLOR_G_MASK                                               0x0000ff00
+#define   NV34TCL_TX_BORDER_COLOR_R_SHIFT                                              16
+#define   NV34TCL_TX_BORDER_COLOR_R_MASK                                               0x00ff0000
+#define   NV34TCL_TX_BORDER_COLOR_A_SHIFT                                              24
+#define   NV34TCL_TX_BORDER_COLOR_A_MASK                                               0xff000000
+#define  NV34TCL_VERTEX_ATTR_4F_X(x)                                                   (0x00001c00+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_4F_X__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_4F_Y(x)                                                   (0x00001c04+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_4F_Y__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_4F_Z(x)                                                   (0x00001c08+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_4F_Z__SIZE                                                        0x00000010
+#define  NV34TCL_VERTEX_ATTR_4F_W(x)                                                   (0x00001c0c+((x)*16))
+#define  NV34TCL_VERTEX_ATTR_4F_W__SIZE                                                        0x00000010
+#define  NV34TCL_FP_CONTROL                                                            0x00001d60
+#define   NV34TCL_FP_CONTROL_USES_KIL                                                  (1 <<  7)
+#define  NV34TCL_MULTISAMPLE_CONTROL                                                   0x00001d7c
+#define  NV34TCL_CLEAR_DEPTH_VALUE                                                     0x00001d8c
+#define  NV34TCL_CLEAR_COLOR_VALUE                                                     0x00001d90
+#define   NV34TCL_CLEAR_COLOR_VALUE_B_SHIFT                                            0
+#define   NV34TCL_CLEAR_COLOR_VALUE_B_MASK                                             0x000000ff
+#define   NV34TCL_CLEAR_COLOR_VALUE_G_SHIFT                                            8
+#define   NV34TCL_CLEAR_COLOR_VALUE_G_MASK                                             0x0000ff00
+#define   NV34TCL_CLEAR_COLOR_VALUE_R_SHIFT                                            16
+#define   NV34TCL_CLEAR_COLOR_VALUE_R_MASK                                             0x00ff0000
+#define   NV34TCL_CLEAR_COLOR_VALUE_A_SHIFT                                            24
+#define   NV34TCL_CLEAR_COLOR_VALUE_A_MASK                                             0xff000000
+#define  NV34TCL_CLEAR_BUFFERS                                                         0x00001d94
+#define   NV34TCL_CLEAR_BUFFERS_COLOR_A                                                        (1 <<  7)
+#define   NV34TCL_CLEAR_BUFFERS_COLOR_B                                                        (1 <<  6)
+#define   NV34TCL_CLEAR_BUFFERS_COLOR_G                                                        (1 <<  5)
+#define   NV34TCL_CLEAR_BUFFERS_COLOR_R                                                        (1 <<  4)
+#define   NV34TCL_CLEAR_BUFFERS_STENCIL                                                        (1 <<  1)
+#define   NV34TCL_CLEAR_BUFFERS_DEPTH                                                  (1 <<  0)
+#define  NV34TCL_DO_VERTICES                                                           0x00001dac
+#define  NV34TCL_LINE_STIPPLE_ENABLE                                                   0x00001db4
+#define  NV34TCL_LINE_STIPPLE_PATTERN                                                  0x00001db8
+#define   NV34TCL_LINE_STIPPLE_PATTERN_FACTOR_SHIFT                                    0
+#define   NV34TCL_LINE_STIPPLE_PATTERN_FACTOR_MASK                                     0x0000ffff
+#define   NV34TCL_LINE_STIPPLE_PATTERN_PATTERN_SHIFT                                   16
+#define   NV34TCL_LINE_STIPPLE_PATTERN_PATTERN_MASK                                    0xffff0000
+#define  NV34TCL_BACK_MATERIAL_SHININESS(x)                                            (0x00001e20+((x)*4))
+#define  NV34TCL_BACK_MATERIAL_SHININESS__SIZE                                         0x00000006
+#define  NV34TCL_VERTEX_FOG_1F                                                         0x00001e54
+#define  NV34TCL_VP_UPLOAD_FROM_ID                                                     0x00001e9c
+#define  NV34TCL_VP_START_FROM_ID                                                      0x00001ea0
+#define  NV34TCL_POINT_PARAMETERS(x)                                                   (0x00001ec0+((x)*4))
+#define  NV34TCL_POINT_PARAMETERS__SIZE                                                        0x00000008
+#define  NV34TCL_POINT_SIZE                                                            0x00001ee0
+#define  NV34TCL_POINT_PARAMETERS_ENABLE                                               0x00001ee4
+#define  NV34TCL_POINT_SPRITE                                                          0x00001ee8
+#define   NV34TCL_POINT_SPRITE_ENABLE                                                  (1 <<  0)
+#define   NV34TCL_POINT_SPRITE_R_MODE_SHIFT                                            1
+#define   NV34TCL_POINT_SPRITE_R_MODE_MASK                                             0x00000006
+#define    NV34TCL_POINT_SPRITE_R_MODE_GL_ZERO                                         0x00000000
+#define    NV34TCL_POINT_SPRITE_R_MODE_GL_R                                            0x00000002
+#define    NV34TCL_POINT_SPRITE_R_MODE_GL_S                                            0x00000004
+#define   NV34TCL_POINT_SPRITE_COORD_REPLACE                                           (1 << 11)
+#define  NV34TCL_VP_UPLOAD_CONST_ID                                                    0x00001efc
+#define  NV34TCL_VP_UPLOAD_CONST_X(x)                                                  (0x00001f00+((x)*16))
+#define  NV34TCL_VP_UPLOAD_CONST_X__SIZE                                               0x00000004
+#define  NV34TCL_VP_UPLOAD_CONST_Y(x)                                                  (0x00001f04+((x)*16))
+#define  NV34TCL_VP_UPLOAD_CONST_Y__SIZE                                               0x00000004
+#define  NV34TCL_VP_UPLOAD_CONST_Z(x)                                                  (0x00001f08+((x)*16))
+#define  NV34TCL_VP_UPLOAD_CONST_Z__SIZE                                               0x00000004
+#define  NV34TCL_VP_UPLOAD_CONST_W(x)                                                  (0x00001f0c+((x)*16))
+#define  NV34TCL_VP_UPLOAD_CONST_W__SIZE                                               0x00000004
+#define  NV34TCL_UNK1f80(x)                                                            (0x00001f80+((x)*4))
+#define  NV34TCL_UNK1f80__SIZE                                                         0x00000010
+#define  NV34TCL_VP_ATTRIB_EN                                                          0x00001ff0
+#define  NV34TCL_VP_RESULT_EN                                                          0x00001ff4
 
 
 #define NV40_CONTEXT_SURFACES_2D                                                       0x00003062
@@ -4388,6 +4623,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define    NV40TCL_RT_FORMAT_COLOR_X8R8G8B8                                            0x00000005
 #define    NV40TCL_RT_FORMAT_COLOR_A8R8G8B8                                            0x00000008
 #define    NV40TCL_RT_FORMAT_COLOR_B8                                                  0x00000009
+#define    NV40TCL_RT_FORMAT_COLOR_X8B8G8R8                                            0x0000000f
+#define    NV40TCL_RT_FORMAT_COLOR_A8B8G8R8                                            0x00000010
 #define  NV40TCL_COLOR0_PITCH                                                          0x0000020c
 #define  NV40TCL_COLOR0_OFFSET                                                         0x00000210
 #define  NV40TCL_ZETA_OFFSET                                                           0x00000214
@@ -4517,50 +4754,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_COLOR_MASK_BUFFER0_R_MASK                                            0x00ff0000
 #define   NV40TCL_COLOR_MASK_BUFFER0_A_SHIFT                                           24
 #define   NV40TCL_COLOR_MASK_BUFFER0_A_MASK                                            0xff000000
-#define  NV40TCL_STENCIL_BACK_ENABLE                                                   0x00000328
-#define  NV40TCL_STENCIL_BACK_MASK                                                     0x0000032c
-#define  NV40TCL_STENCIL_BACK_FUNC_FUNC                                                        0x00000330
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_NEVER                                         0x00000200
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_LESS                                          0x00000201
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_EQUAL                                         0x00000202
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL                                                0x00000203
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL                                      0x00000205
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL                                                0x00000206
-#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS                                                0x00000207
-#define  NV40TCL_STENCIL_BACK_FUNC_REF                                                 0x00000334
-#define  NV40TCL_STENCIL_BACK_FUNC_MASK                                                        0x00000338
-#define  NV40TCL_STENCIL_BACK_OP_FAIL                                                  0x0000033c
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_ZERO                                            0x00000000
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_INVERT                                          0x0000150a
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_KEEP                                            0x00001e00
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_REPLACE                                         0x00001e01
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_INCR                                            0x00001e02
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_DECR                                            0x00001e03
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP                                       0x00008507
-#define   NV40TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP                                       0x00008508
-#define  NV40TCL_STENCIL_BACK_OP_ZFAIL                                                 0x00000340
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_ZERO                                           0x00000000
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INVERT                                         0x0000150a
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_KEEP                                           0x00001e00
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_REPLACE                                                0x00001e01
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR                                           0x00001e02
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR                                           0x00001e03
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP                                      0x00008507
-#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP                                      0x00008508
-#define  NV40TCL_STENCIL_BACK_OP_ZPASS                                                 0x00000344
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_ZERO                                           0x00000000
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INVERT                                         0x0000150a
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_KEEP                                           0x00001e00
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_REPLACE                                                0x00001e01
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INCR                                           0x00001e02
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_DECR                                           0x00001e03
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP                                      0x00008507
-#define   NV40TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP                                      0x00008508
-#define  NV40TCL_STENCIL_FRONT_ENABLE                                                  0x00000348
-#define  NV40TCL_STENCIL_FRONT_MASK                                                    0x0000034c
-#define  NV40TCL_STENCIL_FRONT_FUNC_FUNC                                               0x00000350
+#define  NV40TCL_STENCIL_FRONT_ENABLE                                                  0x00000328
+#define  NV40TCL_STENCIL_FRONT_MASK                                                    0x0000032c
+#define  NV40TCL_STENCIL_FRONT_FUNC_FUNC                                               0x00000330
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_NEVER                                                0x00000200
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_LESS                                         0x00000201
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL                                                0x00000202
@@ -4570,9 +4766,9 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL                                     0x00000205
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL                                       0x00000206
 #define   NV40TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS                                       0x00000207
-#define  NV40TCL_STENCIL_FRONT_FUNC_REF                                                        0x00000354
-#define  NV40TCL_STENCIL_FRONT_FUNC_MASK                                               0x00000358
-#define  NV40TCL_STENCIL_FRONT_OP_FAIL                                                 0x0000035c
+#define  NV40TCL_STENCIL_FRONT_FUNC_REF                                                        0x00000334
+#define  NV40TCL_STENCIL_FRONT_FUNC_MASK                                               0x00000338
+#define  NV40TCL_STENCIL_FRONT_OP_FAIL                                                 0x0000033c
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_ZERO                                           0x00000000
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_INVERT                                         0x0000150a
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_KEEP                                           0x00001e00
@@ -4581,7 +4777,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_DECR                                           0x00001e03
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP                                      0x00008507
 #define   NV40TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP                                      0x00008508
-#define  NV40TCL_STENCIL_FRONT_OP_ZFAIL                                                        0x00000360
+#define  NV40TCL_STENCIL_FRONT_OP_ZFAIL                                                        0x00000340
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_ZERO                                          0x00000000
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_INVERT                                                0x0000150a
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_KEEP                                          0x00001e00
@@ -4590,7 +4786,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_DECR                                          0x00001e03
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP                                     0x00008507
 #define   NV40TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP                                     0x00008508
-#define  NV40TCL_STENCIL_FRONT_OP_ZPASS                                                        0x00000364
+#define  NV40TCL_STENCIL_FRONT_OP_ZPASS                                                        0x00000344
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_ZERO                                          0x00000000
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_INVERT                                                0x0000150a
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_KEEP                                          0x00001e00
@@ -4599,6 +4795,47 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_DECR                                          0x00001e03
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP                                     0x00008507
 #define   NV40TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP                                     0x00008508
+#define  NV40TCL_STENCIL_BACK_ENABLE                                                   0x00000348
+#define  NV40TCL_STENCIL_BACK_MASK                                                     0x0000034c
+#define  NV40TCL_STENCIL_BACK_FUNC_FUNC                                                        0x00000350
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_NEVER                                         0x00000200
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_LESS                                          0x00000201
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_EQUAL                                         0x00000202
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL                                                0x00000203
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER                                       0x00000204
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL                                      0x00000205
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL                                                0x00000206
+#define   NV40TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS                                                0x00000207
+#define  NV40TCL_STENCIL_BACK_FUNC_REF                                                 0x00000354
+#define  NV40TCL_STENCIL_BACK_FUNC_MASK                                                        0x00000358
+#define  NV40TCL_STENCIL_BACK_OP_FAIL                                                  0x0000035c
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_ZERO                                            0x00000000
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_INVERT                                          0x0000150a
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_KEEP                                            0x00001e00
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_REPLACE                                         0x00001e01
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_INCR                                            0x00001e02
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_DECR                                            0x00001e03
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP                                       0x00008507
+#define   NV40TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP                                       0x00008508
+#define  NV40TCL_STENCIL_BACK_OP_ZFAIL                                                 0x00000360
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_ZERO                                           0x00000000
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INVERT                                         0x0000150a
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_KEEP                                           0x00001e00
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_REPLACE                                                0x00001e01
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR                                           0x00001e02
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR                                           0x00001e03
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP                                      0x00008507
+#define   NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP                                      0x00008508
+#define  NV40TCL_STENCIL_BACK_OP_ZPASS                                                 0x00000364
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_ZERO                                           0x00000000
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INVERT                                         0x0000150a
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_KEEP                                           0x00001e00
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_REPLACE                                                0x00001e01
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INCR                                           0x00001e02
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_DECR                                           0x00001e03
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP                                      0x00008507
+#define   NV40TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP                                      0x00008508
 #define  NV40TCL_SHADE_MODEL                                                           0x00000368
 #define   NV40TCL_SHADE_MODEL_FLAT                                                     0x00001d00
 #define   NV40TCL_SHADE_MODEL_SMOOTH                                                   0x00001d01
@@ -4764,6 +5001,18 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_VB_VERTEX_BATCH_START_SHIFT                                          0
 #define   NV40TCL_VB_VERTEX_BATCH_START_MASK                                           0x00ffffff
 #define  NV40TCL_VERTEX_DATA                                                           0x00001818
+#define  NV40TCL_IDXBUF_ADDRESS                                                                0x0000181c
+#define  NV40TCL_IDXBUF_FORMAT                                                         0x00001820
+#define   NV40TCL_IDXBUF_FORMAT_TYPE_SHIFT                                             4
+#define   NV40TCL_IDXBUF_FORMAT_TYPE_MASK                                              0x000000f0
+#define    NV40TCL_IDXBUF_FORMAT_TYPE_U32                                              0x00000000
+#define    NV40TCL_IDXBUF_FORMAT_TYPE_U16                                              0x00000010
+#define   NV40TCL_IDXBUF_FORMAT_DMA1                                                   (1 <<  0)
+#define  NV40TCL_VB_INDEX_BATCH                                                                0x00001824
+#define   NV40TCL_VB_INDEX_BATCH_COUNT_SHIFT                                           24
+#define   NV40TCL_VB_INDEX_BATCH_COUNT_MASK                                            0xff000000
+#define   NV40TCL_VB_INDEX_BATCH_START_SHIFT                                           0
+#define   NV40TCL_VB_INDEX_BATCH_START_MASK                                            0x00ffffff
 #define  NV40TCL_POLYGON_MODE_FRONT                                                    0x00001828
 #define   NV40TCL_POLYGON_MODE_FRONT_POINT                                             0x00001b00
 #define   NV40TCL_POLYGON_MODE_FRONT_LINE                                              0x00001b01
@@ -4964,8 +5213,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define   NV40TCL_FP_CONTROL_TEMP_COUNT_SHIFT                                          24
 #define   NV40TCL_FP_CONTROL_TEMP_COUNT_MASK                                           0xff000000
 #define   NV40TCL_FP_CONTROL_KIL                                                       (1 <<  7)
-#define  NV40TCL_FENCE_OFFSET                                                          0x00001d6c
-#define  NV40TCL_FENCE_VALUE                                                           0x00001d70
+#define  NV40TCL_MULTISAMPLE_CONTROL                                                   0x00001d7c
 #define  NV40TCL_CLEAR_VALUE_DEPTH                                                     0x00001d8c
 #define  NV40TCL_CLEAR_VALUE_COLOR                                                     0x00001d90
 #define  NV40TCL_CLEAR_BUFFERS                                                         0x00001d94
@@ -5075,6 +5323,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 #define NV50_MEMORY_TO_MEMORY_FORMAT                                                   0x00005039
 
+#define  NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN_HIGH                                   0x00000238
+#define  NV50_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT_HIGH                                  0x0000023c
 
 
 #define NV50TCL                                                                                0x00005097
@@ -5777,6 +6027,46 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #define  NV50TCL_COLOR_MASK__SIZE                                                      0x00000008
 
 
+#define NV50_COMPUTE                                                                   0x000050c0
+
+#define  NV50_COMPUTE_DMA_UNK0                                                         0x000001a0
+#define  NV50_COMPUTE_DMA_STATUS                                                       0x000001a4
+#define  NV50_COMPUTE_DMA_UNK1                                                         0x000001b8
+#define  NV50_COMPUTE_DMA_UNK2                                                         0x000001bc
+#define  NV50_COMPUTE_DMA_UNK3                                                         0x000001c0
+#define  NV50_COMPUTE_UNK4_HIGH                                                                0x00000210
+#define  NV50_COMPUTE_UNK4_LOW                                                         0x00000214
+#define  NV50_COMPUTE_UNK5_HIGH                                                                0x00000218
+#define  NV50_COMPUTE_UNK5_LOW                                                         0x0000021c
+#define  NV50_COMPUTE_UNK6_HIGH                                                                0x00000294
+#define  NV50_COMPUTE_UNK6_LOW                                                         0x00000298
+#define  NV50_COMPUTE_CONST_BASE_HIGH                                                  0x000002a4
+#define  NV50_COMPUTE_CONST_BASE_LO                                                    0x000002a8
+#define  NV50_COMPUTE_CONST_SIZE_SEG                                                   0x000002ac
+#define  NV50_COMPUTE_REG_COUNT                                                                0x000002c0
+#define  NV50_COMPUTE_STATUS_HIGH                                                      0x00000310
+#define  NV50_COMPUTE_STATUS_LOW                                                       0x00000314
+#define  NV50_COMPUTE_EXECUTE                                                          0x0000031c
+#define  NV50_COMPUTE_USER_PARAM_COUNT                                                 0x00000374
+#define  NV50_COMPUTE_GRIDDIM_YX                                                       0x000003a4
+#define  NV50_COMPUTE_SHARED_SIZE                                                      0x000003a8
+#define  NV50_COMPUTE_BLOCKDIM_YX                                                      0x000003ac
+#define  NV50_COMPUTE_BLOCKDIM_Z                                                       0x000003b0
+#define  NV50_COMPUTE_CALL_ADDRESS                                                     0x000003b4
+#define  NV50_COMPUTE_GLOBAL_BASE_HIGH(x)                                              (0x00000400+((x)*32))
+#define  NV50_COMPUTE_GLOBAL_BASE_HIGH__SIZE                                           0x00000010
+#define  NV50_COMPUTE_GLOBAL_BASE_LOW(x)                                               (0x00000404+((x)*32))
+#define  NV50_COMPUTE_GLOBAL_BASE_LOW__SIZE                                            0x00000010
+#define  NV50_COMPUTE_GLOBAL_LIMIT_HIGH(x)                                             (0x00000408+((x)*32))
+#define  NV50_COMPUTE_GLOBAL_LIMIT_HIGH__SIZE                                          0x00000010
+#define  NV50_COMPUTE_GLOBAL_LIMIT_LOW(x)                                              (0x0000040c+((x)*32))
+#define  NV50_COMPUTE_GLOBAL_LIMIT_LOW__SIZE                                           0x00000010
+#define  NV50_COMPUTE_GLOBAL_UNK(x)                                                    (0x00000410+((x)*32))
+#define  NV50_COMPUTE_GLOBAL_UNK__SIZE                                                 0x00000010
+#define  NV50_COMPUTE_USER_PARAM(x)                                                    (0x00000600+((x)*4))
+#define  NV50_COMPUTE_USER_PARAM__SIZE                                                 0x00000040
+
+
 #define NV54TCL                                                                                0x00008297
 
 
index 30cd429..42a1589 100644 (file)
@@ -425,8 +425,7 @@ nv40_depth_stencil_alpha_state_bind(struct pipe_context *pipe, void *hwcso)
 
        BEGIN_RING(curie, NV40TCL_DEPTH_FUNC, 3);
        OUT_RINGp ((uint32_t *)&hw->depth, 3);
-       /*XXX: fix in nouveau_class.h, faces backwards.. */
-       BEGIN_RING(curie, NV40TCL_STENCIL_BACK_ENABLE, 16);
+       BEGIN_RING(curie, NV40TCL_STENCIL_FRONT_ENABLE, 16);
        OUT_RINGp ((uint32_t *)&hw->stencil.front, 8);
        OUT_RINGp ((uint32_t *)&hw->stencil.back, 8);
        BEGIN_RING(curie, NV40TCL_ALPHA_TEST_ENABLE, 3);
index 7562781..d462e98 100644 (file)
@@ -175,11 +175,12 @@ nv40_vbo_validate_state(struct nv40_context *nv40,
        }
 
        if (ib) {
-               BEGIN_RING(curie, 0x181c, 2);
+               BEGIN_RING(curie, NV40TCL_IDXBUF_ADDRESS, 2);
                OUT_RELOCl(ib, 0, NOUVEAU_BO_VRAM | NOUVEAU_BO_GART |
                           NOUVEAU_BO_RD);
                OUT_RELOCd(ib, ib_format, NOUVEAU_BO_VRAM | NOUVEAU_BO_GART |
-                          NOUVEAU_BO_RD | NOUVEAU_BO_OR, 0, 1);
+                          NOUVEAU_BO_RD | NOUVEAU_BO_OR,
+                          0, NV40TCL_IDXBUF_FORMAT_DMA1);
        }
 
        BEGIN_RING(curie, 0x1710, 1);
@@ -342,26 +343,27 @@ nv40_draw_elements_vbo(struct pipe_context *pipe,
                       unsigned mode, unsigned start, unsigned count)
 {
        struct nv40_context *nv40 = (struct nv40_context *)pipe;
-       unsigned nr;
+       unsigned nr, type;
 
        switch (ib_size) {
        case 2:
-               assert(nv40_vbo_validate_state(nv40, ib, 0x00000010));
+               type = NV40TCL_IDXBUF_FORMAT_TYPE_U16;
                break;
        case 4:
-               assert(nv40_vbo_validate_state(nv40, ib, 0x00000000));
+               type = NV40TCL_IDXBUF_FORMAT_TYPE_U32;
                break;
        default:
                assert(0);
        }
 
+       assert(nv40_vbo_validate_state(nv40, ib, type));
 
        BEGIN_RING(curie, NV40TCL_BEGIN_END, 1);
        OUT_RING  (nvgl_primitive(mode));
 
        nr = (count & 0xff);
        if (nr) {
-               BEGIN_RING(curie, 0x1824, 1);
+               BEGIN_RING(curie, NV40TCL_VB_INDEX_BATCH, 1);
                OUT_RING  (((nr - 1) << 24) | start);
                start += nr;
        }
@@ -372,7 +374,7 @@ nv40_draw_elements_vbo(struct pipe_context *pipe,
 
                nr -= push;
 
-               BEGIN_RING_NI(curie, 0x1824, push);
+               BEGIN_RING_NI(curie, NV40TCL_VB_INDEX_BATCH, push);
                while (push--) {
                        OUT_RING(((0x100 - 1) << 24) | start);
                        start += 0x100;