Architect the DRI :
[mesa.git] / src / mesa / drivers / dri / nouveau / nouveau_reg.h
1 /*
2 Autogenerated file, do not edit !
3
4 **************************************************************************
5
6 Copyright (C) 2006 :
7 Dmitry Baryshkov,
8 Laurent Carlier,
9 Matthieu Castet,
10 Dawid Gajownik,
11 Jeremy Kolb,
12 Stephane Loeuillet,
13 Patrice Mandin,
14 Stephane Marchesin,
15 Serge Martin,
16 Sylvain Munaut,
17 Ben Skeggs,
18 Erik Waling,
19 koala_br,
20 sturmflut.
21
22 All Rights Reserved.
23
24 Permission is hereby granted, free of charge, to any person obtaining
25 a copy of this software and associated documentation files (the
26 "Software"), to deal in the Software without restriction, including
27 without limitation the rights to use, copy, modify, merge, publish,
28 distribute, sublicense, and/or sell copies of the Software, and to
29 permit persons to whom the Software is furnished to do so, subject to
30 the following conditions:
31
32 The above copyright notice and this permission notice (including the
33 next paragraph) shall be included in all copies or substantial
34 portions of the Software.
35
36 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
37 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
38 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
39 IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
40 LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
41 OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
42 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
43
44 **************************************************************************
45
46 Created from objects.c rev. 1.332
47 */
48
49 #ifndef _NOUVEAU_REG_H
50 #define _NOUVEAU_REG_H
51
52 /******************************************
53 Object NV01_CONTEXT_CLIP_RECTANGLE used on: NV03 NV04 NV10 NV15 NV20 NV40 G70
54 */
55 #define NV01_CONTEXT_CLIP_RECTANGLE 0x00000019
56 # define NV01_CONTEXT_CLIP_RECTANGLE_SET_POINT 0x00000300 /* Parameters: x y */
57 # define NV01_CONTEXT_CLIP_RECTANGLE_SET_SIZE 0x00000304 /* Parameters: width height */
58
59 /******************************************
60 Object NV_MEMORY_TO_MEMORY_FORMAT used on: NV04 NV10 NV15 NV20 NV30 NV40 G70
61 */
62 #define NV_MEMORY_TO_MEMORY_FORMAT 0x00000039
63 # define NV_MEMORY_TO_MEMORY_FORMAT_NOTIFY 0x00000104
64 # define NV_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY 0x00000180
65 # define NV_MEMORY_TO_MEMORY_FORMAT_OBJECT_IN 0x00000184
66 # define NV_MEMORY_TO_MEMORY_FORMAT_OBJECT_OUT 0x00000188
67 # define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN 0x0000030c
68 # define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT 0x00000310
69 # define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_IN 0x00000314
70 # define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT 0x00000318
71 # define NV_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN 0x0000031c
72 # define NV_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT 0x00000320
73
74 /******************************************
75 Object NV03_PRIMITIVE_RASTER_OP used on: NV03 NV04 NV10 NV15 NV20 NV30 NV40 G70
76 */
77 #define NV03_PRIMITIVE_RASTER_OP 0x00000043
78 # define NV03_PRIMITIVE_RASTER_OP_NOTIFY 0x00000100
79 # define NV03_PRIMITIVE_RASTER_OP_DMA_NOTIFY 0x00000180
80 # define NV03_PRIMITIVE_RASTER_OP_LOGIC_OP 0x00000300 /* Parameters: logic_op */
81
82 /******************************************
83 Object NV04_GDI_RECTANGLE_TEXT used on: NV04 NV10 NV15 NV20 NV30 NV40 G70
84 */
85 #define NV04_GDI_RECTANGLE_TEXT 0x0000004a
86 # define NV04_GDI_RECTANGLE_TEXT_SET_DMA_NOTIFY 0x00000180
87 # define NV04_GDI_RECTANGLE_TEXT_PATTERN 0x00000188
88 # define NV04_GDI_RECTANGLE_TEXT_ROP5 0x0000018c
89 # define NV04_GDI_RECTANGLE_TEXT_SURFACE 0x00000198
90 # define NV04_GDI_RECTANGLE_TEXT_OPERATION 0x000002fc
91 # define NV04_GDI_RECTANGLE_TEXT_FORMAT 0x00000300
92 # define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL1_TL 0x000005f4 /* Parameters: left top */
93 # define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL1_BR 0x000005f8 /* Parameters: right bottom */
94 # define NV04_GDI_RECTANGLE_TEXT_FILL_VALUE 0x000005fc
95 # define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL2_TL 0x00000600 /* Parameters: left top */
96 # define NV04_GDI_RECTANGLE_TEXT_BLOCK_LEVEL2_BR 0x00000604 /* Parameters: right bottom */
97
98 /******************************************
99 Object NV04_SWIZZLED_SURFACE used on: NV04 NV10 NV15
100 */
101 #define NV04_SWIZZLED_SURFACE 0x00000052
102 # define NV04_SWIZZLED_SURFACE_DMA_NOTIFY 0x00000180
103 # define NV04_SWIZZLED_SURFACE_DMA_IMAGE 0x00000184
104 # define NV04_SWIZZLED_SURFACE_FORMAT 0x00000300 /* Parameters: log2(height) log2(width) color */
105 # define NV04_SWIZZLED_SURFACE_OFFSET 0x00000304
106
107 /******************************************
108 Object NV04_CONTEXT_SURFACES_3D used on: NV04
109 */
110 #define NV04_CONTEXT_SURFACES_3D 0x00000053
111 # define NV04_CONTEXT_SURFACES_3D_DMA_NOTIFY 0x00000180
112 # define NV04_CONTEXT_SURFACES_3D_DMA_COLOR 0x00000184
113 # define NV04_CONTEXT_SURFACES_3D_DMA_ZETA 0x00000188
114 # define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL 0x000002f8 /* Parameters: x width */
115 # define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL 0x000002fc /* Parameters: y height */
116 # define NV04_CONTEXT_SURFACES_3D_FORMAT 0x00000300 /* Parameters: color type width height */
117 # define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE 0x00000304 /* Parameters: width height */
118 # define NV04_CONTEXT_SURFACES_3D_PITCH 0x00000308 /* Parameters: color zeta */
119 # define NV04_CONTEXT_SURFACES_3D_OFFSET_COLOR 0x0000030c
120 # define NV04_CONTEXT_SURFACES_3D_OFFSET_ZETA 0x00000310
121
122 /******************************************
123 Object NV04_DX5_TEXTURED_TRIANGLE used on: NV04
124 */
125 #define NV04_DX5_TEXTURED_TRIANGLE 0x00000054
126 # define NV04_DX5_TEXTURED_TRIANGLE_NOP 0x00000100
127 # define NV04_DX5_TEXTURED_TRIANGLE_NOTIFY 0x00000104
128 # define NV04_DX5_TEXTURED_TRIANGLE_DMA_NOTIFY 0x00000180
129 # define NV04_DX5_TEXTURED_TRIANGLE_DMA_1 0x00000184
130 # define NV04_DX5_TEXTURED_TRIANGLE_DMA_2 0x00000188
131 # define NV04_DX5_TEXTURED_TRIANGLE_SURFACE 0x0000018c
132 # define NV04_DX5_TEXTURED_TRIANGLE_COLOR_KEY 0x00000300
133 # define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_OFFSET 0x00000304
134 # define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FORMAT 0x00000308 /* Parameters: color mipmaps log(u) log(v) wrap_s wrap_t */
135 # define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_FILTER 0x0000030c /* Parameters: magfilter minfilter lodbias */
136 # define NV04_DX5_TEXTURED_TRIANGLE_BLEND 0x00000310 /* Parameters: texture benable dst src */
137 # define NV04_DX5_TEXTURED_TRIANGLE_CONTROL 0x00000314 /* Parameters: alpharef alphafunc alphaenable zenable zwrite zfunc cullmode */
138 # define NV04_DX5_TEXTURED_TRIANGLE_FOG_COLOR 0x00000318
139 # define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SX( d) (0x00000400 + d * 0x0020)
140 # define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SY( d) (0x00000404 + d * 0x0020)
141 # define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SZ( d) (0x00000408 + d * 0x0020)
142 # define NV04_DX5_TEXTURED_TRIANGLE_INV_W( d) (0x0000040c + d * 0x0020)
143 # define NV04_DX5_TEXTURED_TRIANGLE_COLOR( d) (0x00000410 + d * 0x0020)
144 # define NV04_DX5_TEXTURED_TRIANGLE_SPECULAR( d) (0x00000414 + d * 0x0020)
145 # define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_S( d) (0x00000418 + d * 0x0020)
146 # define NV04_DX5_TEXTURED_TRIANGLE_TEXTURE_T( d) (0x0000041c + d * 0x0020)
147 # define NV04_DX5_TEXTURED_TRIANGLE_DRAW 0x00000600 /* Parameters: v0 v1 v2 v3 v4 v5 */
148
149 /******************************************
150 Object NV04_DX6_MULTITEX_TRIANGLE used on: NV04 NV10 NV15
151 */
152 #define NV04_DX6_MULTITEX_TRIANGLE 0x00000055
153 # define NV04_DX6_MULTITEX_TRIANGLE_NOP 0x00000100
154 # define NV04_DX6_MULTITEX_TRIANGLE_NOTIFY 0x00000104
155 # define NV04_DX6_MULTITEX_TRIANGLE_DMA_NOTIFY 0x00000180
156 # define NV04_DX6_MULTITEX_TRIANGLE_DMA_1 0x00000184
157 # define NV04_DX6_MULTITEX_TRIANGLE_DMA_2 0x00000188
158 # define NV04_DX6_MULTITEX_TRIANGLE_SURFACE 0x0000018c
159 # define NV04_DX6_MULTITEX_TRIANGLE_OFFSET0 0x00000308
160 # define NV04_DX6_MULTITEX_TRIANGLE_OFFSET1 0x0000030c
161 # define NV04_DX6_MULTITEX_TRIANGLE_FORMAT0 0x00000310 /* Parameters: color mipmaps log(u) log(v) wrap_s wrap_t */
162 # define NV04_DX6_MULTITEX_TRIANGLE_FORMAT1 0x00000314 /* Parameters: color mipmaps log(u) log(v) wrap_s wrap_t */
163 # define NV04_DX6_MULTITEX_TRIANGLE_FILTER0 0x00000318 /* Parameters: magfilter minfilter lodbias */
164 # define NV04_DX6_MULTITEX_TRIANGLE_FILTER1 0x0000031c /* Parameters: magfilter minfilter lodbias */
165 # define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA 0x00000320
166 # define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR 0x00000324
167 # define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA 0x0000032c
168 # define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR 0x00000330
169 # define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR 0x00000334
170 # define NV04_DX6_MULTITEX_TRIANGLE_BLEND 0x00000338 /* Parameters: benable dst src */
171 # define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0 0x0000033c /* Parameters: red_write green_write blue_write alpha_write alpha_write stencil_write alpharef alphafunc alphaenable zenable zwrite zfunc cullmode */
172 # define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1 0x00000340 /* Parameters: stencil_enable stencil_mask_write stencil_mask_read stencilref stencilfunc */
173 # define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2 0x00000344 /* Parameters: stencil_fail stencil_zfail stencil_zpass */
174 # define NV04_DX6_MULTITEX_TRIANGLE_FOG_COLOR 0x00000348
175 # define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SX( d) (0x00000400 + d * 0x0028)
176 # define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SY( d) (0x00000404 + d * 0x0028)
177 # define NV04_DX6_MULTITEX_TRIANGLE_TLVERTEX_SZ( d) (0x00000408 + d * 0x0028)
178 # define NV04_DX6_MULTITEX_TRIANGLE_INV_W( d) (0x0000040c + d * 0x0028)
179 # define NV04_DX6_MULTITEX_TRIANGLE_COLOR( d) (0x00000410 + d * 0x0028)
180 # define NV04_DX6_MULTITEX_TRIANGLE_SPECULAR( d) (0x00000414 + d * 0x0028)
181 # define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_S( d) (0x00000418 + d * 0x0028)
182 # define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE0_T( d) (0x0000041c + d * 0x0028)
183 # define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_S( d) (0x00000420 + d * 0x0028)
184 # define NV04_DX6_MULTITEX_TRIANGLE_TEXTURE1_T( d) (0x00000424 + d * 0x0028)
185 # define NV04_DX6_MULTITEX_TRIANGLE_DRAW 0x00000540 /* Parameters: v0 v1 v2 v3 v4 v5 */
186
187 /******************************************
188 Object NV04_COLOR_KEY used on: NV04 NV10 NV15 NV20
189 */
190 #define NV04_COLOR_KEY 0x00000057
191 # define NV04_COLOR_KEY_SET_DMA_NOTIFY 0x00000180
192 # define NV04_COLOR_KEY_FORMAT 0x00000300
193 # define NV04_COLOR_KEY_VALUE 0x00000304
194
195 /******************************************
196 Object NV04_SOLID_LINE used on: NV04
197 */
198 #define NV04_SOLID_LINE 0x0000005c
199 # define NV04_SOLID_LINE_CLIP_RECTANGLE 0x00000184
200 # define NV04_SOLID_LINE_PATTERN 0x00000188
201 # define NV04_SOLID_LINE_ROP 0x0000018c
202 # define NV04_SOLID_LINE_SURFACE 0x00000198
203 # define NV04_SOLID_LINE_OPERATION 0x000002fc
204 # define NV04_SOLID_LINE_COLOR_FORMAT 0x00000300
205 # define NV04_SOLID_LINE_COLOR_VALUE 0x00000304
206 # define NV04_SOLID_LINE_START 0x00000400 /* Parameters: x y */
207 # define NV04_SOLID_LINE_END 0x00000400 /* Parameters: x y */
208
209 /******************************************
210 Object NV04_UNK005E used on: NV04
211 */
212 #define NV04_UNK005E 0x0000005e
213 # define NV04_UNK005E_SET_SURFACE 0x00000198
214 # define NV04_UNK005E_UNK02fc 0x000002fc
215 # define NV04_UNK005E_UNK0300 0x00000300
216 # define NV04_UNK005E_COUNTER 0x00000304
217
218 /******************************************
219 Object NV05_SCALED_IMAGE_FROM_MEMORY used on: NV04
220 */
221 #define NV05_SCALED_IMAGE_FROM_MEMORY 0x00000063
222 # define NV05_SCALED_IMAGE_FROM_MEMORY_SURFACE 0x00000198
223 # define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION 0x000002fc
224 # define NV05_SCALED_IMAGE_FROM_MEMORY_OPERATION 0x00000304
225
226 /******************************************
227 Object NV04_SCALED_IMAGE_FROM_MEMORY used on: NV04
228 */
229 #define NV04_SCALED_IMAGE_FROM_MEMORY 0x00000077
230 # define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_NOTIFY 0x00000180
231 # define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE 0x00000184
232 # define NV04_SCALED_IMAGE_FROM_MEMORY_SURFACE 0x00000198
233 # define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT 0x00000300
234 # define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION 0x00000304
235 # define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POS 0x00000308 /* Parameters: x y */
236 # define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE 0x0000030c /* Parameters: width height */
237 # define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POS 0x00000310 /* Parameters: x y */
238 # define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE 0x00000314 /* Parameters: width height */
239 # define NV04_SCALED_IMAGE_FROM_MEMORY_DU_DX 0x00000318 /* Parameters: int frac*0x100000 */
240 # define NV04_SCALED_IMAGE_FROM_MEMORY_DV_DY 0x0000031c /* Parameters: int frac*0x100000 */
241 # define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE 0x00000400 /* Parameters: width height */
242 # define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT 0x00000404 /* Parameters: pitch */
243 # define NV04_SCALED_IMAGE_FROM_MEMORY_OFFSET 0x00000408
244 # define NV04_SCALED_IMAGE_FROM_MEMORY_POINT 0x0000040c /* Parameters: u_int u_frac*0x10 v_int v_frac*0x10 */
245
246 /******************************************
247 Object NV_IMAGE_FROM_CPU used on: NV04
248 */
249 #define NV_IMAGE_FROM_CPU 0x00000061
250 # define NV_IMAGE_FROM_CPU_DMA_NOTIFY 0x00000180
251 # define NV_IMAGE_FROM_CPU_CLIP_RECTANGLE 0x00000188
252 # define NV_IMAGE_FROM_CPU_PATTERN 0x0000018c
253 # define NV_IMAGE_FROM_CPU_ROP 0x00000190
254 # define NV_IMAGE_FROM_CPU_SURFACE 0x0000019c
255 # define NV_IMAGE_FROM_CPU_OPERATION 0x000002fc
256 # define NV_IMAGE_FROM_CPU_FORMAT 0x00000300
257
258 /******************************************
259 Object NV05_IMAGE_FROM_CPU used on: NV04
260 */
261 #define NV05_IMAGE_FROM_CPU 0x00000065
262 # define NV05_IMAGE_FROM_CPU_DMA_NOTIFY 0x00000180
263 # define NV05_IMAGE_FROM_CPU_CLIP_RECTANGLE 0x00000188
264 # define NV05_IMAGE_FROM_CPU_PATTERN 0x0000018c
265 # define NV05_IMAGE_FROM_CPU_ROP 0x00000190
266 # define NV05_IMAGE_FROM_CPU_SURFACE 0x0000019c
267 # define NV05_IMAGE_FROM_CPU_OPERATION 0x000002fc
268 # define NV05_IMAGE_FROM_CPU_FORMAT 0x00000300
269 # define NV05_IMAGE_FROM_CPU_POINT 0x00000304 /* Parameters: x y */
270 # define NV05_IMAGE_FROM_CPU_SIZE_OUT 0x00000308 /* Parameters: x y */
271 # define NV05_IMAGE_FROM_CPU_SIZE_IN 0x0000030c /* Parameters: x y */
272 # define NV05_IMAGE_FROM_CPU_COLOR( d) (0x00000400 + d * 0x0004)
273
274 /******************************************
275 Object NV_IMAGE_BLIT used on: NV04 NV10 NV15 NV20
276 */
277 #define NV_IMAGE_BLIT 0x0000005f
278 # define NV_IMAGE_BLIT_DMA_NOTIFY 0x00000180
279 # define NV_IMAGE_BLIT_COLOR_KEY 0x00000184
280 # define NV_IMAGE_BLIT_CLIP_RECTANGLE 0x00000188
281 # define NV_IMAGE_BLIT_PATTERN 0x0000018c
282 # define NV_IMAGE_BLIT_ROP5 0x00000190
283 # define NV_IMAGE_BLIT_SURFACE 0x0000019c
284 # define NV_IMAGE_BLIT_OPERATION 0x000002fc
285 # define NV_IMAGE_BLIT_POINT_IN 0x00000300 /* Parameters: x y */
286 # define NV_IMAGE_BLIT_POINT_OUT 0x00000304 /* Parameters: x y */
287 # define NV_IMAGE_BLIT_SIZE 0x00000308 /* Parameters: width height */
288
289 /******************************************
290 Object NV10_TCL_PRIMITIVE_3D used on: NV10
291 */
292 #define NV10_TCL_PRIMITIVE_3D 0x00000056
293 # define NV10_TCL_PRIMITIVE_3D_NOP 0x00000100
294 # define NV10_TCL_PRIMITIVE_3D_NOTIFY 0x00000104
295 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_NOTIFY 0x00000180
296 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY0 0x00000184
297 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY1 0x00000188
298 # define NV10_TCL_PRIMITIVE_3D_SET_DISPLAY_LIST 0x0000018c
299 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY2 0x00000194
300 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY3 0x00000198
301 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200 /* Parameters: width x */
302 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204 /* Parameters: height y */
303 # define NV10_TCL_PRIMITIVE_3D_BUFFER_FORMAT 0x00000208 /* Parameters: type color */
304 # define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH 0x0000020c /* Parameters: depth/stencil buffer pitch color buffer pitch */
305 # define NV10_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
306 # define NV10_TCL_PRIMITIVE_3D_DEPTH_OFFSET 0x00000214
307 # define NV10_TCL_PRIMITIVE_3D_TX_OFFSET(d) (0x00000218 + d * 0x0004)
308 # define NV10_TCL_PRIMITIVE_3D_TX_FORMAT(d) (0x00000220 + d * 0x0004) /* Parameters: wrap_t wrap_s log2(height) log2(width) lod npot format cube_map */
309 # define NV10_TCL_PRIMITIVE_3D_TX_ENABLE(d) (0x00000228 + d * 0x0004) /* Parameters: enable anisotropy */
310 # define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(d) (0x00000230 + d * 0x0004) /* Parameters: pitch */
311 # define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(d) (0x00000240 + d * 0x0004) /* Parameters: width height */
312 # define NV10_TCL_PRIMITIVE_3D_TX_FILTER(d) (0x00000248 + d * 0x0004) /* Parameters: mag_filter min_filter */
313 # define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA(d) (0x00000260 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
314 # define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB(d) (0x00000268 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
315 # define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(d) (0x00000278 + d * 0x0004) /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
316 # define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB(d) (0x00000280 + d * 0x0004) /* Parameters: rc1_tx_units_enabled rc1_rc_enabled scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
317 # define NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(d) (0x000003e0 + d * 0x0004)
318 # define NV10_TCL_PRIMITIVE_3D_TX_MATRIX(x,y) (0x00000540 + y * 0x0010 + x * 0x0004)
319 # define NV10_TCL_PRIMITIVE_3D_RC_COLOR0 0x00000270 /* Parameters: a r g b */
320 # define NV10_TCL_PRIMITIVE_3D_RC_COLOR1 0x00000274 /* Parameters: a r g b */
321 # define NV10_TCL_PRIMITIVE_3D_RC_FINAL0 0x00000288 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
322 # define NV10_TCL_PRIMITIVE_3D_RC_FINAL1 0x0000028c /* Parameters: vare_mapping vare_component_usage vare_input varf_mapping varf_component_usage varf_input varg_mapping varg_component_usage varg_input color_sum_clamp */
323 # define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL 0x00000294 /* Parameters: local_viewer color_control */
324 # define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL 0x00000298 /* Parameters: specular diffuse ambient emission */
325 # define NV10_TCL_PRIMITIVE_3D_FOG_MODE 0x0000029c
326 # define NV10_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000002a0
327 # define NV10_TCL_PRIMITIVE_3D_FOG_ENABLE 0x000002a4
328 # define NV10_TCL_PRIMITIVE_3D_FOG_COLOR 0x000002a8 /* Parameters: a b g r */
329 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(d) (0x000002c0 + d * 0x0004) /* Parameters: x2 x1 */
330 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(d) (0x000002e0 + d * 0x0004) /* Parameters: y2 y1 */
331 # define NV10_TCL_PRIMITIVE_3D_ALPHA_TEST_ENABLE 0x00000300
332 # define NV10_TCL_PRIMITIVE_3D_BLEND_ENABLE 0x00000304
333 # define NV10_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x00000308
334 # define NV10_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x0000030c
335 # define NV10_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000310
336 # define NV10_TCL_PRIMITIVE_3D_LIGHTING_ENABLE 0x00000314
337 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00000318
338 # define NV10_TCL_PRIMITIVE_3D_POINT_SMOOTH_ENABLE 0x0000031c
339 # define NV10_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x00000320
340 # define NV10_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
341 # define NV10_TCL_PRIMITIVE_3D_VERTEX_WEIGHT_ENABLE 0x00000328
342 # define NV10_TCL_PRIMITIVE_3D_STENCIL_TEST_ENABLE 0x0000032c
343 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000330
344 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000334
345 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000338
346 # define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC 0x0000033c
347 # define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x00000340
348 # define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000344
349 # define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000348
350 # define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000034c /* Parameters: a r g b */
351 # define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000350
352 # define NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000354
353 # define NV10_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000358 /* Parameters: r g b */
354 # define NV10_TCL_PRIMITIVE_3D_DEPTH_MASK 0x0000035c
355 # define NV10_TCL_PRIMITIVE_3D_STENCIL_MASK 0x00000360
356 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC 0x00000364
357 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF 0x00000368
358 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK 0x0000036c
359 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL 0x00000370
360 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL 0x00000374
361 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS 0x00000378
362 # define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL 0x0000037c
363 # define NV10_TCL_PRIMITIVE_3D_LINE_WIDTH 0x00000380
364 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
365 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000388
366 # define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x0000038c
367 # define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x00000390
368 # define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
369 # define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
370 # define NV10_TCL_PRIMITIVE_3D_CULL_FACE 0x0000039c
371 # define NV10_TCL_PRIMITIVE_3D_FRONT_FACE 0x000003a0
372 # define NV10_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x000003a4
373 # define NV10_TCL_PRIMITIVE_3D_MATERIAL_DIFFUSE_ALPHA 0x000003b4
374 # define NV10_TCL_PRIMITIVE_3D_COLOR_CONTROL 0x000003b8 /* Parameters: color_control */
375 # define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x000003bc /* Parameters: light 7 light 6 light 5 light 4 light 3 light 2 light 1 light 0 */
376 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE( d) (0x000003c0 + d * 0x0004)
377 # define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE 0x000003e8 /* Parameters: projection modelview0 modelview1 */
378 # define NV10_TCL_PRIMITIVE_3D_POINT_SIZE 0x000003ec
379 # define NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX( d) (0x00000400 + d * 0x0004)
380 # define NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX( d) (0x00000440 + d * 0x0004)
381 # define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX( d) (0x00000480 + d * 0x0004)
382 # define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX( d) (0x000004c0 + d * 0x0004)
383 # define NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX( d) (0x00000500 + d * 0x0004)
384 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A(d) (0x00000600 + d * 0x0010)
385 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B(d) (0x00000604 + d * 0x0010)
386 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C(d) (0x00000608 + d * 0x0010)
387 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D(d) (0x0000060c + d * 0x0010)
388 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x00000680
389 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x00000684
390 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x00000688
391 # define NV10_TCL_PRIMITIVE_3D_SHININESS_A 0x000006a0
392 # define NV10_TCL_PRIMITIVE_3D_SHININESS_B 0x000006a4
393 # define NV10_TCL_PRIMITIVE_3D_SHININESS_C 0x000006a8
394 # define NV10_TCL_PRIMITIVE_3D_SHININESS_D 0x000006ac
395 # define NV10_TCL_PRIMITIVE_3D_SHININESS_E 0x000006b0
396 # define NV10_TCL_PRIMITIVE_3D_SHININESS_F 0x000006b4
397 # define NV10_TCL_PRIMITIVE_3D_MATERIAL_AMBIENT_EMISSION 0x000006c4
398 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_X 0x000006e8
399 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Y 0x000006ec
400 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Z 0x000006f0
401 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_W 0x000006f4
402 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_A 0x000006f8
403 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_B 0x000006fc
404 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_C 0x00000700
405 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_D 0x00000704
406 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_E 0x00000708
407 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_F 0x0000070c
408 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_G 0x00000710
409 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_H 0x00000714
410 # define NV10_TCL_PRIMITIVE_3D_LIGHT_AMBIENT(d) (0x00000800 + d * 0x0080)
411 # define NV10_TCL_PRIMITIVE_3D_LIGHT_DIFFUSE(d) (0x0000080c + d * 0x0080)
412 # define NV10_TCL_PRIMITIVE_3D_LIGHT_SPECULAR(d) (0x00000818 + d * 0x0080)
413 # define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR(d) (0x00000828 + d * 0x0080)
414 # define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION0(d) (0x00000834 + d * 0x0080)
415 # define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_LIGHT(d) (0x00000840 + d * 0x0080)
416 # define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION1(d) (0x0000085c + d * 0x0080)
417 # define NV10_TCL_PRIMITIVE_3D_LIGHT_NORMAL(d) (0x00000868 + d * 0x0080)
418 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X 0x00000c00
419 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y 0x00000c04
420 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z 0x00000c08
421 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X 0x00000c18
422 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y 0x00000c1c
423 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z 0x00000c20
424 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W 0x00000c24
425 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X 0x00000c30
426 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y 0x00000c34
427 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z 0x00000c38
428 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00000c40 /* Parameters: y x */
429 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00000c44 /* Parameters: z */
430 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R 0x00000c50
431 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G 0x00000c54
432 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B 0x00000c58
433 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A 0x00000c5c
434 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R 0x00000c60
435 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G 0x00000c64
436 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B 0x00000c68
437 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x00000c6c /* Parameters: a b g r */
438 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R 0x00000c80
439 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G 0x00000c84
440 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B 0x00000c88
441 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I 0x00000c8c /* Parameters: a b g r */
442 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x00000c90
443 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x00000c94
444 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00000c98 /* Parameters: t s */
445 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S 0x00000ca0
446 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T 0x00000ca4
447 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R 0x00000ca8
448 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q 0x00000cac
449 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x00000cb0 /* Parameters: t s */
450 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x00000cb4 /* Parameters: q r */
451 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x00000cb8
452 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x00000cbc
453 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x00000cc0 /* Parameters: t s */
454 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S 0x00000cc8
455 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T 0x00000ccc
456 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R 0x00000cd0
457 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q 0x00000cd4
458 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x00000cd8 /* Parameters: t s */
459 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x00000cdc /* Parameters: q r */
460 # define NV10_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00000ce0
461 # define NV10_TCL_PRIMITIVE_3D_VERTEX_WGH_1F 0x00000ce4
462 # define NV10_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE 0x00000cec
463 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_VALIDATE 0x00000cf0
464 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_POS 0x00000d00
465 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS 0x00000d04 /* Parameters: stride fields type */
466 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL 0x00000d08
467 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL 0x00000d0c /* Parameters: stride fields type */
468 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL2 0x00000d10
469 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2 0x00000d14 /* Parameters: stride fields type */
470 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX0 0x00000d18
471 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0 0x00000d1c /* Parameters: stride fields type */
472 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX1 0x00000d20
473 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1 0x00000d24 /* Parameters: stride fields type */
474 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_NOR 0x00000d28
475 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR 0x00000d2c /* Parameters: stride fields type */
476 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_WGH 0x00000d30
477 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH 0x00000d34 /* Parameters: stride fields type */
478 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_FOG 0x00000d38
479 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG 0x00000d3c /* Parameters: stride fields type */
480 # define NV10_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x00000d40
481 # define NV10_TCL_PRIMITIVE_3D_LOGIC_OP 0x00000d44
482 # define NV10_TCL_PRIMITIVE_3D_BEGIN_END 0x00000dfc
483 # define NV10_TCL_PRIMITIVE_3D_INDEX_DATA 0x00000e00 /* Parameters: index1 index0 */
484 # define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END 0x000013fc
485 # define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS 0x00001400 /* Parameters: count-1 first */
486 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_X 0x00001638
487 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Y 0x0000163c
488 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Z 0x00001640
489 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_W 0x00001644
490 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA 0x00001800
491
492 /******************************************
493 Object NV15_TCL_PRIMITIVE_3D used on: NV15
494 */
495 #define NV15_TCL_PRIMITIVE_3D 0x00000096
496 # define NV10_TCL_PRIMITIVE_3D_NOP 0x00000100
497 # define NV10_TCL_PRIMITIVE_3D_NOTIFY 0x00000104
498 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_NOTIFY 0x00000180
499 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY0 0x00000184
500 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY1 0x00000188
501 # define NV10_TCL_PRIMITIVE_3D_SET_DISPLAY_LIST 0x0000018c
502 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY2 0x00000194
503 # define NV10_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY3 0x00000198
504 # define NV17_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY4 0x000001ac
505 # define NV17_TCL_PRIMITIVE_3D_SET_DMA_IN_MEMORY5 0x000001b0
506 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200 /* Parameters: width x */
507 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204 /* Parameters: height y */
508 # define NV10_TCL_PRIMITIVE_3D_BUFFER_FORMAT 0x00000208 /* Parameters: type color */
509 # define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH 0x0000020c /* Parameters: depth/stencil buffer pitch color buffer pitch */
510 # define NV10_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
511 # define NV10_TCL_PRIMITIVE_3D_DEPTH_OFFSET 0x00000214
512 # define NV10_TCL_PRIMITIVE_3D_TX_OFFSET(d) (0x00000218 + d * 0x0004)
513 # define NV10_TCL_PRIMITIVE_3D_TX_FORMAT(d) (0x00000220 + d * 0x0004) /* Parameters: wrap_t wrap_s log2(height) log2(width) lod npot format cube_map */
514 # define NV10_TCL_PRIMITIVE_3D_TX_ENABLE(d) (0x00000228 + d * 0x0004) /* Parameters: enable anisotropy */
515 # define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(d) (0x00000230 + d * 0x0004) /* Parameters: pitch */
516 # define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(d) (0x00000240 + d * 0x0004) /* Parameters: width height */
517 # define NV10_TCL_PRIMITIVE_3D_TX_FILTER(d) (0x00000248 + d * 0x0004) /* Parameters: mag_filter min_filter */
518 # define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA(d) (0x00000260 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
519 # define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB(d) (0x00000268 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
520 # define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(d) (0x00000278 + d * 0x0004) /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
521 # define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB(d) (0x00000280 + d * 0x0004) /* Parameters: rc1_tx_units_enabled rc1_rc_enabled scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
522 # define NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(d) (0x000003e0 + d * 0x0004)
523 # define NV10_TCL_PRIMITIVE_3D_TX_MATRIX(x,y) (0x00000540 + y * 0x0010 + x * 0x0004)
524 # define NV10_TCL_PRIMITIVE_3D_RC_COLOR0 0x00000270 /* Parameters: a r g b */
525 # define NV10_TCL_PRIMITIVE_3D_RC_COLOR1 0x00000274 /* Parameters: a r g b */
526 # define NV10_TCL_PRIMITIVE_3D_RC_FINAL0 0x00000288 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
527 # define NV10_TCL_PRIMITIVE_3D_RC_FINAL1 0x0000028c /* Parameters: vare_mapping vare_component_usage vare_input varf_mapping varf_component_usage varf_input varg_mapping varg_component_usage varg_input color_sum_clamp */
528 # define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL 0x00000294 /* Parameters: local_viewer color_control */
529 # define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL 0x00000298 /* Parameters: specular diffuse ambient emission */
530 # define NV10_TCL_PRIMITIVE_3D_FOG_MODE 0x0000029c
531 # define NV10_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000002a0
532 # define NV10_TCL_PRIMITIVE_3D_FOG_ENABLE 0x000002a4
533 # define NV10_TCL_PRIMITIVE_3D_FOG_COLOR 0x000002a8 /* Parameters: a b g r */
534 # define NV17_TCL_PRIMITIVE_3D_COLOR_MASK_ENABLE 0x000002bc
535 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(d) (0x000002c0 + d * 0x0004) /* Parameters: x2 x1 */
536 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(d) (0x000002e0 + d * 0x0004) /* Parameters: y2 y1 */
537 # define NV10_TCL_PRIMITIVE_3D_ALPHA_TEST_ENABLE 0x00000300
538 # define NV10_TCL_PRIMITIVE_3D_BLEND_ENABLE 0x00000304
539 # define NV10_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x00000308
540 # define NV10_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x0000030c
541 # define NV10_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000310
542 # define NV10_TCL_PRIMITIVE_3D_LIGHTING_ENABLE 0x00000314
543 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00000318
544 # define NV10_TCL_PRIMITIVE_3D_POINT_SMOOTH_ENABLE 0x0000031c
545 # define NV10_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x00000320
546 # define NV10_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
547 # define NV10_TCL_PRIMITIVE_3D_VERTEX_WEIGHT_ENABLE 0x00000328
548 # define NV10_TCL_PRIMITIVE_3D_STENCIL_TEST_ENABLE 0x0000032c
549 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000330
550 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000334
551 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000338
552 # define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC 0x0000033c
553 # define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x00000340
554 # define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000344
555 # define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000348
556 # define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000034c /* Parameters: a r g b */
557 # define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000350
558 # define NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000354
559 # define NV10_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000358 /* Parameters: r g b */
560 # define NV10_TCL_PRIMITIVE_3D_DEPTH_MASK 0x0000035c
561 # define NV10_TCL_PRIMITIVE_3D_STENCIL_MASK 0x00000360
562 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC 0x00000364
563 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF 0x00000368
564 # define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK 0x0000036c
565 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL 0x00000370
566 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL 0x00000374
567 # define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS 0x00000378
568 # define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL 0x0000037c
569 # define NV10_TCL_PRIMITIVE_3D_LINE_WIDTH 0x00000380
570 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
571 # define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000388
572 # define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x0000038c
573 # define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x00000390
574 # define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
575 # define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
576 # define NV10_TCL_PRIMITIVE_3D_CULL_FACE 0x0000039c
577 # define NV10_TCL_PRIMITIVE_3D_FRONT_FACE 0x000003a0
578 # define NV10_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x000003a4
579 # define NV10_TCL_PRIMITIVE_3D_MATERIAL_DIFFUSE_ALPHA 0x000003b4
580 # define NV10_TCL_PRIMITIVE_3D_COLOR_CONTROL 0x000003b8 /* Parameters: color_control */
581 # define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x000003bc /* Parameters: light 7 light 6 light 5 light 4 light 3 light 2 light 1 light 0 */
582 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE( d) (0x000003c0 + d * 0x0004)
583 # define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE 0x000003e8 /* Parameters: projection modelview0 modelview1 */
584 # define NV10_TCL_PRIMITIVE_3D_POINT_SIZE 0x000003ec
585 # define NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX( d) (0x00000400 + d * 0x0004)
586 # define NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX( d) (0x00000440 + d * 0x0004)
587 # define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX( d) (0x00000480 + d * 0x0004)
588 # define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX( d) (0x000004c0 + d * 0x0004)
589 # define NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX( d) (0x00000500 + d * 0x0004)
590 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A(d) (0x00000600 + d * 0x0010)
591 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B(d) (0x00000604 + d * 0x0010)
592 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C(d) (0x00000608 + d * 0x0010)
593 # define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D(d) (0x0000060c + d * 0x0010)
594 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x00000680
595 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x00000684
596 # define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x00000688
597 # define NV10_TCL_PRIMITIVE_3D_SHININESS_A 0x000006a0
598 # define NV10_TCL_PRIMITIVE_3D_SHININESS_B 0x000006a4
599 # define NV10_TCL_PRIMITIVE_3D_SHININESS_C 0x000006a8
600 # define NV10_TCL_PRIMITIVE_3D_SHININESS_D 0x000006ac
601 # define NV10_TCL_PRIMITIVE_3D_SHININESS_E 0x000006b0
602 # define NV10_TCL_PRIMITIVE_3D_SHININESS_F 0x000006b4
603 # define NV10_TCL_PRIMITIVE_3D_MATERIAL_AMBIENT_EMISSION 0x000006c4
604 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_X 0x000006e8
605 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Y 0x000006ec
606 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Z 0x000006f0
607 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_W 0x000006f4
608 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_A 0x000006f8
609 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_B 0x000006fc
610 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_C 0x00000700
611 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_D 0x00000704
612 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_E 0x00000708
613 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_F 0x0000070c
614 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_G 0x00000710
615 # define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER_H 0x00000714
616 # define NV10_TCL_PRIMITIVE_3D_LIGHT_AMBIENT(d) (0x00000800 + d * 0x0080)
617 # define NV10_TCL_PRIMITIVE_3D_LIGHT_DIFFUSE(d) (0x0000080c + d * 0x0080)
618 # define NV10_TCL_PRIMITIVE_3D_LIGHT_SPECULAR(d) (0x00000818 + d * 0x0080)
619 # define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR(d) (0x00000828 + d * 0x0080)
620 # define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION0(d) (0x00000834 + d * 0x0080)
621 # define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_LIGHT(d) (0x00000840 + d * 0x0080)
622 # define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION1(d) (0x0000085c + d * 0x0080)
623 # define NV10_TCL_PRIMITIVE_3D_LIGHT_NORMAL(d) (0x00000868 + d * 0x0080)
624 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X 0x00000c00
625 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y 0x00000c04
626 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z 0x00000c08
627 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X 0x00000c18
628 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y 0x00000c1c
629 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z 0x00000c20
630 # define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W 0x00000c24
631 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X 0x00000c30
632 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y 0x00000c34
633 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z 0x00000c38
634 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00000c40 /* Parameters: y x */
635 # define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00000c44 /* Parameters: z */
636 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R 0x00000c50
637 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G 0x00000c54
638 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B 0x00000c58
639 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A 0x00000c5c
640 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R 0x00000c60
641 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G 0x00000c64
642 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B 0x00000c68
643 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x00000c6c /* Parameters: a b g r */
644 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R 0x00000c80
645 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G 0x00000c84
646 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B 0x00000c88
647 # define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I 0x00000c8c /* Parameters: a b g r */
648 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x00000c90
649 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x00000c94
650 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00000c98 /* Parameters: t s */
651 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S 0x00000ca0
652 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T 0x00000ca4
653 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R 0x00000ca8
654 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q 0x00000cac
655 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x00000cb0 /* Parameters: t s */
656 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x00000cb4 /* Parameters: q r */
657 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x00000cb8
658 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x00000cbc
659 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x00000cc0 /* Parameters: t s */
660 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S 0x00000cc8
661 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T 0x00000ccc
662 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R 0x00000cd0
663 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q 0x00000cd4
664 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x00000cd8 /* Parameters: t s */
665 # define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x00000cdc /* Parameters: q r */
666 # define NV10_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00000ce0
667 # define NV10_TCL_PRIMITIVE_3D_VERTEX_WGH_1F 0x00000ce4
668 # define NV10_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE 0x00000cec
669 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ATTR( d) (0x00000d04 + d * 0x0008)
670 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_VALIDATE 0x00000cf0
671 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_POS 0x00000d00
672 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS 0x00000d04 /* Parameters: stride fields type */
673 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL 0x00000d08
674 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL 0x00000d0c /* Parameters: stride fields type */
675 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL2 0x00000d10
676 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2 0x00000d14 /* Parameters: stride fields type */
677 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX0 0x00000d18
678 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0 0x00000d1c /* Parameters: stride fields type */
679 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX1 0x00000d20
680 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1 0x00000d24 /* Parameters: stride fields type */
681 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_NOR 0x00000d28
682 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR 0x00000d2c /* Parameters: stride fields type */
683 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_WGH 0x00000d30
684 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH 0x00000d34 /* Parameters: stride fields type */
685 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_FOG 0x00000d38
686 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG 0x00000d3c /* Parameters: stride fields type */
687 # define NV10_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x00000d40
688 # define NV10_TCL_PRIMITIVE_3D_LOGIC_OP 0x00000d44
689 # define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH 0x00000d5c /* Parameters: pitch */
690 # define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET 0x00000d60
691 # define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_FILL_VALUE 0x00000d68
692 # define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_CLEAR_ENABLE 0x00000d6c
693 # define NV10_TCL_PRIMITIVE_3D_BEGIN_END 0x00000dfc
694 # define NV10_TCL_PRIMITIVE_3D_INDEX_DATA 0x00000e00 /* Parameters: index1 index0 */
695 # define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END 0x000013fc
696 # define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS 0x00001400 /* Parameters: count-1 first */
697 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_X 0x00001638
698 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Y 0x0000163c
699 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_Z 0x00001640
700 # define NV10_TCL_PRIMITIVE_3D_VIEWPORT_ORIGIN_W 0x00001644
701 # define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_ENABLE 0x00001658
702 # define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA 0x00001800
703
704 /******************************************
705 Object NV10_IMAGE_FROM_CPU used on: NV10 NV15 NV20 NV30 NV40 G70
706 */
707 #define NV10_IMAGE_FROM_CPU 0x0000008a
708 # define NV10_IMAGE_FROM_CPU_SET_DMA_NOTIFY 0x00000180
709 # define NV10_IMAGE_FROM_CPU_SET_CONTEXT_CLIP_RECTANGLE 0x00000188
710 # define NV10_IMAGE_FROM_CPU_SET_IMAGE_PATTERN 0x0000018c
711 # define NV10_IMAGE_FROM_CPU_SET_RASTER_OP 0x00000190
712 # define NV10_IMAGE_FROM_CPU_SET_CONTEXT_SURFACES_2D 0x0000019c
713 # define NV10_IMAGE_FROM_CPU_OPERATION 0x000002fc
714 # define NV10_IMAGE_FROM_CPU_FORMAT 0x00000300
715 # define NV10_IMAGE_FROM_CPU_POINT 0x00000304 /* Parameters: x y */
716 # define NV10_IMAGE_FROM_CPU_SIZE_OUT 0x00000308 /* Parameters: width height */
717 # define NV10_IMAGE_FROM_CPU_SIZE_IN 0x0000030c /* Parameters: width height */
718 # define NV10_IMAGE_FROM_CPU_HLINE 0x00000400
719
720 /******************************************
721 Object NV10_PRIMITIVE_2D used on: NV10 NV15 NV20 NV30 NV40 G70
722 */
723 #define NV10_PRIMITIVE_2D 0x0000007b
724 # define NV10_PRIMITIVE_2D_SET_DMA_NOTIFY 0x00000180
725 # define NV10_PRIMITIVE_2D_SET_SURFACE 0x00000184
726 # define NV10_PRIMITIVE_2D_SET_FORMAT 0x00000300
727 # define NV10_PRIMITIVE_2D_SET_POINT 0x00000304 /* Parameters: x y */
728 # define NV10_PRIMITIVE_2D_SET_SIZE 0x00000308 /* Parameters: width height */
729 # define NV10_PRIMITIVE_2D_SET_CLIP_HORIZ 0x0000030c /* Parameters: width x */
730 # define NV10_PRIMITIVE_2D_SET_CLIP_VERT 0x00000310 /* Parameters: height y */
731 # define NV10_PRIMITIVE_2D_SET_DATA( d) (0x00000400 + d * 0x0004)
732
733 /******************************************
734 Object NV10_IMAGE_BLIT used on: NV10 NV15 NV20 NV30 NV40 G70
735 */
736 #define NV10_IMAGE_BLIT 0x0000009f
737 # define NV10_IMAGE_BLIT_NOP 0x00000100
738 # define NV10_IMAGE_BLIT_NOTIFY 0x00000104
739 # define NV10_IMAGE_BLIT_SET_DMA_NOTIFY 0x00000180
740 # define NV10_IMAGE_BLIT_SET_CONTEXT_CLIP_RECTANGLE 0x00000188
741 # define NV10_IMAGE_BLIT_SET_IMAGE_PATTERN 0x0000018c
742 # define NV10_IMAGE_BLIT_SET_RASTER_OP 0x00000190
743 # define NV10_IMAGE_BLIT_SET_CONTEXT_SURFACES_2D 0x0000019c
744 # define NV10_IMAGE_BLIT_SET_OPERATION 0x000002fc
745 # define NV10_IMAGE_BLIT_SET_POINT 0x00000300 /* Parameters: x y */
746 # define NV10_IMAGE_BLIT_SET_PITCH 0x00000304 /* Parameters: skip */
747 # define NV10_IMAGE_BLIT_SET_SIZE 0x00000308 /* Parameters: width height */
748
749 /******************************************
750 Object NV10_VIDEO_DISPLAY used on: NV10 NV15 NV20 NV30 NV40 G70
751 */
752 #define NV10_VIDEO_DISPLAY 0x0000007c
753 # define NV10_VIDEO_DISPLAY_COUNTER 0x00000050
754 # define NV10_VIDEO_DISPLAY_SET_DMA_FROM_MEMORY 0x00000180
755 # define NV10_VIDEO_DISPLAY_SET_DMA_IN_MEMORY0 0x00000184
756 # define NV10_VIDEO_DISPLAY_SET_DMA_IN_MEMORY1 0x00000188
757 # define NV10_VIDEO_DISPLAY_SET_OBJECT3 0x0000019c
758 # define NV10_VIDEO_DISPLAY_SIZE 0x000002f8 /* Parameters: height width */
759 # define NV10_VIDEO_DISPLAY_OFFSET 0x00000300
760
761 /******************************************
762 Object NV10_UNK0072 used on: NV10 NV15 NV20 NV40 G70
763 */
764 #define NV10_UNK0072 0x00000072
765 # define NV10_UNK0072_COUNTER 0x00000050
766 # define NV10_UNK0072_SET_DMA_NOTIFY 0x00000180
767
768 /******************************************
769 Object NV10_SCALED_IMAGE_FROM_MEMORY used on: NV10 NV15 NV20 NV30 NV40 G70
770 */
771 #define NV10_SCALED_IMAGE_FROM_MEMORY 0x00000089
772 # define NV10_SCALED_IMAGE_FROM_MEMORY_COUNTER 0x00000050
773 # define NV10_SCALED_IMAGE_FROM_MEMORY_SET_DMA_IN_MEMORY 0x00000184
774 # define NV10_SCALED_IMAGE_FROM_MEMORY_SET_RASTER_OP 0x0000018c
775 # define NV10_SCALED_IMAGE_FROM_MEMORY_SET_IMAGE_PATTERN 0x00000188
776 # define NV10_SCALED_IMAGE_FROM_MEMORY_SET_SURFACE 0x00000198
777 # define NV10_SCALED_IMAGE_FROM_MEMORY_OPERATION 0x00000304
778 # define NV10_SCALED_IMAGE_FROM_MEMORY_CLIP_POS 0x00000308 /* Parameters: x y */
779 # define NV10_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE 0x0000030c /* Parameters: width height */
780 # define NV10_SCALED_IMAGE_FROM_MEMORY_OUT_POS 0x00000310 /* Parameters: x y */
781 # define NV10_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE 0x00000314 /* Parameters: width height */
782 # define NV10_SCALED_IMAGE_FROM_MEMORY_SIZE 0x00000400 /* Parameters: width height */
783 # define NV10_SCALED_IMAGE_FROM_MEMORY_FORMAT 0x00000404 /* Parameters: pitch */
784 # define NV10_SCALED_IMAGE_FROM_MEMORY_OFFSET 0x00000408
785 # define NV10_SCALED_IMAGE_FROM_MEMORY_POINT 0x0000040c /* Parameters: u_int u_frac*0x10 v_int v_frac*0x10 */
786
787 /******************************************
788 Object NV10_CONTEXT_SURFACES_2D used on: NV10 NV15 NV20 NV30 NV40 G70
789 */
790 #define NV10_CONTEXT_SURFACES_2D 0x00000062
791 # define NV10_CONTEXT_SURFACES_2D_SET_DMA_NOTIFY 0x00000180
792 # define NV10_CONTEXT_SURFACES_2D_SET_DMA_IN_MEMORY0 0x00000184
793 # define NV10_CONTEXT_SURFACES_2D_SET_DMA_IN_MEMORY1 0x00000188
794 # define NV10_CONTEXT_SURFACES_2D_FORMAT 0x00000300 /* Parameters: color type width height */
795 # define NV10_CONTEXT_SURFACES_2D_PITCH 0x00000304 /* Parameters: src dst */
796 # define NV10_CONTEXT_SURFACES_2D_OFFSET_SRC 0x00000308
797 # define NV10_CONTEXT_SURFACES_2D_OFFSET_DST 0x0000030c
798
799 /******************************************
800 Object NV04_SURFACE used on: NV04 NV10 NV15
801 */
802 #define NV04_SURFACE 0x00000042
803 # define NV04_SURFACE_NOTIFY 0x00000104
804 # define NV04_SURFACE_DMA_NOTIFY 0x00000180
805 # define NV04_SURFACE_DMA_IMAGE_SOURCE 0x00000184
806 # define NV04_SURFACE_DMA_IMAGE_DESTIN 0x00000188
807 # define NV04_SURFACE_FORMAT 0x00000300
808 # define NV04_SURFACE_PITCH 0x00000304 /* Parameters: source destin */
809 # define NV04_SURFACE_OFFSET_SOURCE 0x00000308
810 # define NV04_SURFACE_OFFSET_DESTIN 0x0000030c
811
812 /******************************************
813 Object NV04_IMAGE_PATTERN used on: NV04 NV10 NV15 NV20 NV30 NV40 G70
814 */
815 #define NV04_IMAGE_PATTERN 0x00000044
816 # define NV04_IMAGE_PATTERN_COLOR_FORMAT 0x00000300
817 # define NV04_IMAGE_PATTERN_MONO_FORMAT 0x00000304
818 # define NV04_IMAGE_PATTERN_SELECT 0x0000030c
819 # define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE 0x00000308
820 # define NV04_IMAGE_PATTERN_MONOCHROME_COLOR0 0x00000310
821 # define NV04_IMAGE_PATTERN_MONOCHROME_COLOR1 0x00000314
822 # define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN0 0x00000318
823 # define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN1 0x0000031c
824
825 /******************************************
826 Object NV20_SWIZZLED_SURFACE used on: NV20 NV30 NV40 G70
827 */
828 #define NV20_SWIZZLED_SURFACE 0x0000009e
829 # define NV20_SWIZZLED_SURFACE_SET_OBJECT0 0x00000180
830 # define NV20_SWIZZLED_SURFACE_SET_OBJECT1 0x00000184
831 # define NV20_SWIZZLED_SURFACE_FORMAT 0x00000300 /* Parameters: log2(height) log2(width) color */
832 # define NV20_SWIZZLED_SURFACE_OFFSET 0x00000304
833
834 /******************************************
835 Object NV20_TCL_PRIMITIVE_3D used on: NV20
836 */
837 #define NV20_TCL_PRIMITIVE_3D 0x00000097
838 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT0 0x00000180
839 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT1 0x00000184
840 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT2 0x00000188
841 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT3 0x00000194
842 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT4 0x00000198
843 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT5 0x0000019c
844 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT6 0x000001a0
845 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT7 0x000001a4
846 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT8 0x000001a8
847 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT9 0x000001ac
848 # define NV20_TCL_PRIMITIVE_3D_SET_OBJECT10 0x000001b0
849 # define NV20_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200 /* Parameters: width x */
850 # define NV20_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204 /* Parameters: height y */
851 # define NV20_TCL_PRIMITIVE_3D_BUFFER_FORMAT 0x00000208 /* Parameters: type color */
852 # define NV20_TCL_PRIMITIVE_3D_BUFFER_PITCH 0x0000020c /* Parameters: depth/stencil buffer pitch color buffer pitch */
853 # define NV20_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
854 # define NV20_TCL_PRIMITIVE_3D_DEPTH_OFFSET 0x00000214
855 # define NV20_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH 0x0000022c /* Parameters: pitch */
856 # define NV20_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET 0x00000230
857 # define NV20_TCL_PRIMITIVE_3D_LIGHT_CONTROL 0x00000294
858 # define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_CONTROL 0x00000298 /* Parameters: back_specular back_ambient back_diffuse back_emission front_specular front_ambient front_diffuse front_emission */
859 # define NV20_TCL_PRIMITIVE_3D_FOG_MODE 0x0000029c
860 # define NV20_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000002a0
861 # define NV20_TCL_PRIMITIVE_3D_ALPHA_TEST_ENABLE 0x00000300
862 # define NV20_TCL_PRIMITIVE_3D_BLEND_ENABLE 0x00000304
863 # define NV20_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x00000308
864 # define NV20_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x0000030c
865 # define NV20_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000310
866 # define NV20_TCL_PRIMITIVE_3D_LIGHTING_ENABLE 0x00000314
867 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00000318
868 # define NV20_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x00000320
869 # define NV20_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
870 # define NV20_TCL_PRIMITIVE_3D_STENCIL_TEST_ENABLE 0x0000032c
871 # define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000330
872 # define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000334
873 # define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000338
874 # define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC 0x0000033c
875 # define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x00000340
876 # define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000344
877 # define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000348
878 # define NV20_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000034c /* Parameters: a r g b */
879 # define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000350
880 # define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000354
881 # define NV20_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000358 /* Parameters: a r g b */
882 # define NV20_TCL_PRIMITIVE_3D_DEPTH_MASK 0x0000035c
883 # define NV20_TCL_PRIMITIVE_3D_STENCIL_MASK 0x00000360
884 # define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC 0x00000364
885 # define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF 0x00000368
886 # define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK 0x0000036c
887 # define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL 0x00000370
888 # define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL 0x00000374
889 # define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS 0x00000378
890 # define NV20_TCL_PRIMITIVE_3D_SHADE_MODEL 0x0000037c
891 # define NV20_TCL_PRIMITIVE_3D_LINE_WIDTH 0x00000380
892 # define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
893 # define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000388
894 # define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x0000038c
895 # define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x00000390
896 # define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
897 # define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
898 # define NV20_TCL_PRIMITIVE_3D_CULL_FACE 0x0000039c
899 # define NV20_TCL_PRIMITIVE_3D_FRONT_FACE 0x000003a0
900 # define NV20_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x000003a4
901 # define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT 0x000003a8
902 # define NV20_TCL_PRIMITIVE_3D_SEPARATE_SPECULAR_ENABLE 0x000003b8
903 # define NV20_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x000003bc /* Parameters: light 7 light 6 light 5 light 4 light 3 light 2 light 1 light 0 */
904 # define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(d) (0x000003c0 + d * 0x0004)
905 # define NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(d) (0x00000420 + d * 0x0004)
906 # define NV20_TCL_PRIMITIVE_3D_POINT_SIZE 0x0000043c
907 # define NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX( d) (0x00000480 + d * 0x0004)
908 # define NV20_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW_MATRIX( d) (0x00000580 + d * 0x0004)
909 # define NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX( d) (0x00000680 + d * 0x0004)
910 # define NV20_TCL_PRIMITIVE_3D_TX_MATRIX(x,y) (0x000006c0 + y * 0x0010 + x * 0x0004)
911 # define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_A(d) (0x00000840 + d * 0x0010)
912 # define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_B(d) (0x00000844 + d * 0x0010)
913 # define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_C(d) (0x00000848 + d * 0x0010)
914 # define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_D(d) (0x0000084c + d * 0x0010)
915 # define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x000009c0
916 # define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x000009c4
917 # define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x000009c8
918 # define NV20_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS 0x000009e0
919 # define NV20_TCL_PRIMITIVE_3D_POINT_SPRITE 0x00000a1c /* Parameters: coord_replace r_mode enable */
920 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_A 0x00000a30
921 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_B 0x00000a34
922 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_C 0x00000a38
923 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_D 0x00000a3c
924 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_E 0x00000a40
925 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_F 0x00000a44
926 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_G 0x00000a48
927 # define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER_H 0x00000a4c
928 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST0 0x00000b00
929 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST1 0x00000b04
930 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST2 0x00000b08
931 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST3 0x00000b0c
932 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_X 0x00000b80
933 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_Y 0x00000b84
934 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_Z 0x00000b88
935 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_W 0x00000b8c
936 # define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID 0x00001ea4
937 # define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION 0x00000a10
938 # define NV20_TCL_PRIMITIVE_3D_TX_OFFSET(d) (0x00001b00 + d * 0x0040)
939 # define NV20_TCL_PRIMITIVE_3D_TX_FORMAT(d) (0x00001b04 + d * 0x0040) /* Parameters: log2(height) log2(width) lod format cube_map */
940 # define NV20_TCL_PRIMITIVE_3D_TX_ENABLE(d) (0x00001b0c + d * 0x0040) /* Parameters: enable anisotropy */
941 # define NV20_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(d) (0x00001b10 + d * 0x0040) /* Parameters: pitch */
942 # define NV20_TCL_PRIMITIVE_3D_TX_FILTER(d) (0x00001b14 + d * 0x0040) /* Parameters: mag_filter min_filter */
943 # define NV20_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(d) (0x00001b1c + d * 0x0040) /* Parameters: width height */
944 # define NV20_TCL_PRIMITIVE_3D_TX_SHADER_OP 0x00001e70 /* Parameters: op0 op1 op2 op3 */
945 # define NV20_TCL_PRIMITIVE_3D_TX_SHADER_CULL_MODE 0x000017f8 /* Parameters: cull0 cull1 cull2 cull3 */
946 # define NV20_TCL_PRIMITIVE_3D_TX_SHADER_PREVIOUS 0x00001e78 /* Parameters: prev2 prev3 */
947 # define NV20_TCL_PRIMITIVE_3D_RC_COLOR0 0x00001e20 /* Parameters: a r g b */
948 # define NV20_TCL_PRIMITIVE_3D_RC_COLOR1 0x00001e24 /* Parameters: a r g b */
949 # define NV20_TCL_PRIMITIVE_3D_RC_FINAL0 0x00000288 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
950 # define NV20_TCL_PRIMITIVE_3D_RC_FINAL1 0x0000028c /* Parameters: vare_mapping vare_component_usage vare_input varf_mapping varf_component_usage varf_input varg_mapping varg_component_usage varg_input color_sum_clamp */
951 # define NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA(d) (0x00000260 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
952 # define NV20_TCL_PRIMITIVE_3D_RC_IN_RGB(d) (0x00000ac0 + d * 0x0004) /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
953 # define NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(d) (0x00000aa0 + d * 0x0004) /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
954 # define NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB(d) (0x00001e40 + d * 0x0004) /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
955 # define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(d) (0x0000105c + d * 0x0080)
956 # define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(d) (0x00001060 + d * 0x0080)
957 # define NV20_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(d) (0x00001064 + d * 0x0080)
958 # define NV20_TCL_PRIMITIVE_3D_LIGHT_HVEC_AND_DIR(d) (0x00001028 + d * 0x0080)
959 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_A(d) (0x00001000 + d * 0x0080)
960 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(d) (0x00001004 + d * 0x0080)
961 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_C(d) (0x00001008 + d * 0x0080)
962 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_A(d) (0x0000100c + d * 0x0080)
963 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(d) (0x00001010 + d * 0x0080)
964 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_C(d) (0x00001014 + d * 0x0080)
965 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_A(d) (0x00001018 + d * 0x0080)
966 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(d) (0x0000101c + d * 0x0080)
967 # define NV20_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_C(d) (0x00001020 + d * 0x0080)
968 # define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_AMBIENT(d) (0x00000c00 + d * 0x0040)
969 # define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_DIFFUSE(d) (0x00000c0c + d * 0x0040)
970 # define NV20_TCL_PRIMITIVE_3D_LIGHT_BACK_SIDE_PRODUCT_SPECULAR(d) (0x00000c18 + d * 0x0040)
971 # define NV20_TCL_PRIMITIVE_3D_LIGHT_CONSTANT_ATTENUATION(d) (0x00001068 + d * 0x0080)
972 # define NV20_TCL_PRIMITIVE_3D_LIGHT_LINEAR_ATTENUATION(d) (0x0000106c + d * 0x0080)
973 # define NV20_TCL_PRIMITIVE_3D_LIGHT_QUADRATIC_ATTENUATION(d) (0x00001070 + d * 0x0080)
974 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(d) (0x00001040 + d * 0x0080)
975 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_EXPONENT(d) (0x00001044 + d * 0x0080)
976 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(d) (0x00001048 + d * 0x0080)
977 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(d) (0x0000104c + d * 0x0080)
978 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(d) (0x00001050 + d * 0x0080)
979 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(d) (0x00001054 + d * 0x0080)
980 # define NV20_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(d) (0x00001058 + d * 0x0080)
981 # define NV20_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS 0x00001e28
982 # define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE 0x0000147c
983 # define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(d) (0x00001480 + d * 0x0004)
984 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X 0x00001500
985 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y 0x00001504
986 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z 0x00001508
987 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X 0x00001518
988 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y 0x0000151c
989 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z 0x00001520
990 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W 0x00001524
991 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY 0x00001528 /* Parameters: y x */
992 # define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW 0x0000152c /* Parameters: w z */
993 # define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X 0x00001530
994 # define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y 0x00001534
995 # define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z 0x00001538
996 # define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00001540 /* Parameters: y x */
997 # define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00001544 /* Parameters: z */
998 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R 0x00001550
999 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G 0x00001554
1000 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B 0x00001558
1001 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A 0x0000155c
1002 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R 0x00001560
1003 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G 0x00001564
1004 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B 0x00001568
1005 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x0000156c /* Parameters: a b g r */
1006 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R 0x00001580
1007 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G 0x00001584
1008 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B 0x00001588
1009 # define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3I 0x0000158c /* Parameters: a b g r */
1010 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x00001590
1011 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x00001594
1012 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00001598 /* Parameters: t s */
1013 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S 0x000015a0
1014 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T 0x000015a4
1015 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R 0x000015a8
1016 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q 0x000015ac
1017 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x000015b0 /* Parameters: t s */
1018 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x000015b4 /* Parameters: q r */
1019 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x000015b8
1020 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x000015bc
1021 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x000015c0 /* Parameters: t s */
1022 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S 0x000015c8
1023 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T 0x000015cc
1024 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R 0x000015d0
1025 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q 0x000015d4
1026 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x000015d8 /* Parameters: t s */
1027 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x000015dc /* Parameters: q r */
1028 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S 0x000015e0
1029 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T 0x000015e4
1030 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I 0x000015e8 /* Parameters: t s */
1031 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_S 0x000015f0
1032 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_T 0x000015f4
1033 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_R 0x000015f8
1034 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_Q 0x000015fc
1035 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST 0x00001600 /* Parameters: t s */
1036 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ 0x00001604 /* Parameters: q r */
1037 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S 0x00001608
1038 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T 0x0000160c
1039 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I 0x00001610 /* Parameters: t s */
1040 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_S 0x00001620
1041 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_T 0x00001624
1042 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_R 0x00001628
1043 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_Q 0x0000162c
1044 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST 0x00001630 /* Parameters: t s */
1045 # define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ 0x00001634 /* Parameters: q r */
1046 # define NV20_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00001698
1047 # define NV20_TCL_PRIMITIVE_3D_EDGE_FLAG 0x000016bc
1048 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR0_POS 0x00001720 /* Parameters: enabled? offset */
1049 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR1_WGH 0x00001724 /* Parameters: enabled? offset */
1050 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR2_NOR 0x00001728 /* Parameters: enabled? offset */
1051 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR3_COL 0x0000172c /* Parameters: enabled? offset */
1052 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR4_COL2 0x00001730 /* Parameters: enabled? offset */
1053 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR5_FOG 0x00001734 /* Parameters: enabled? offset */
1054 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR6 0x00001738 /* Parameters: enabled? offset */
1055 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR7 0x0000173c /* Parameters: enabled? offset */
1056 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR8_TX0 0x00001740 /* Parameters: enabled? offset */
1057 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR9_TX1 0x00001744 /* Parameters: enabled? offset */
1058 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR10_TX2 0x00001748 /* Parameters: enabled? offset */
1059 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR11_TX3 0x0000174c /* Parameters: enabled? offset */
1060 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR12_TX4 0x00001750 /* Parameters: enabled? offset */
1061 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR13_TX5 0x00001754 /* Parameters: enabled? offset */
1062 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR14_TX6 0x00001758 /* Parameters: enabled? offset */
1063 # define NV20_TCL_PRIMITIVE_3D_VB_POINTER_ATTR15_TX7 0x0000175c /* Parameters: enabled? offset */
1064 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR( d) (0x00001760 + d * 0x0004)
1065 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR0_POS 0x00001760 /* Parameters: stride fields type */
1066 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR1_WGH 0x00001764 /* Parameters: stride fields type */
1067 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR2_NOR 0x00001768 /* Parameters: stride fields type */
1068 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR3_COL 0x0000176c /* Parameters: stride fields type */
1069 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR4_COL2 0x00001770 /* Parameters: stride fields type */
1070 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR5_FOG 0x00001774 /* Parameters: stride fields type */
1071 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR6 0x00001778 /* Parameters: stride fields type */
1072 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR7 0x0000177c /* Parameters: stride fields type */
1073 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR8_TX0 0x00001780 /* Parameters: stride fields type */
1074 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR9_TX1 0x00001784 /* Parameters: stride fields type */
1075 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR10_TX2 0x00001788 /* Parameters: stride fields type */
1076 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR11_TX3 0x0000178c /* Parameters: stride fields type */
1077 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR12_TX4 0x00001790 /* Parameters: stride fields type */
1078 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR13_TX5 0x00001794 /* Parameters: stride fields type */
1079 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR14_TX6 0x00001798 /* Parameters: stride fields type */
1080 # define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR15_TX7 0x0000179c /* Parameters: stride fields type */
1081 # define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION 0x000017a0
1082 # define NV20_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK 0x000017b0
1083 # define NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x000017bc
1084 # define NV20_TCL_PRIMITIVE_3D_LOGIC_OP 0x000017c0
1085 # define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_TWO_SIDE_ENABLE 0x000017c4
1086 # define NV20_TCL_PRIMITIVE_3D_BEGIN_END 0x000017fc
1087 # define NV20_TCL_PRIMITIVE_3D_CLEAR_COLOR 0x00001d90
1088 # define NV20_TCL_PRIMITIVE_3D_CLEAR_MASK 0x00001d94 /* Parameters: clear color a clear color b clear color g clear color r clear depth clear stencil */
1089 # define NV20_TCL_PRIMITIVE_3D_INDEX_DATA 0x00001800 /* Parameters: index1 index0 */
1090 # define NV20_TCL_PRIMITIVE_3D_VB_VERTEX_BATCH 0x00001810 /* Parameters: count_vertices offset_vertices */
1091 # define NV20_TCL_PRIMITIVE_3D_VERTEX_DATA 0x00001818
1092
1093 /******************************************
1094 Object NV30_TCL_PRIMITIVE_3D used on: NV30 NV40 G70
1095 */
1096 #define NV30_TCL_PRIMITIVE_3D 0x00000097
1097 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT0 0x00000180
1098 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT1 0x00000184
1099 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT2 0x00000188
1100 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT3 0x0000018c
1101 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT4 0x00000194
1102 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT5 0x00000198
1103 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT6 0x000001a4
1104 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT7 0x000001a8
1105 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT8 0x000001ac
1106 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT9 0x000001b4
1107 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT10 0x000001b8
1108 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT11 0x0000019c
1109 # define NV30_TCL_PRIMITIVE_3D_SET_OBJECT12 0x000001a0
1110 # define NV30_TCL_PRIMITIVE_3D_BUFFER0_PITCH 0x0000020c /* Parameters: depth/stencil buffer pitch color0 buffer pitch */
1111 # define NV30_TCL_PRIMITIVE_3D_COLOR0_OFFSET 0x00000210
1112 # define NV30_TCL_PRIMITIVE_3D_DEPTH_OFFSET 0x00000214
1113 # define NV30_TCL_PRIMITIVE_3D_COLOR1_OFFSET 0x00000218
1114 # define NV30_TCL_PRIMITIVE_3D_BUFFER1_PITCH 0x0000021c /* Parameters: color1 buffer pitch */
1115 # define NV30_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH 0x0000022c /* Parameters: pitch */
1116 # define NV30_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET 0x00000230
1117 # define NV30_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(d) (0x00000240 + d * 0x0004)
1118 # define NV30_TCL_PRIMITIVE_3D_BUFFER2_PITCH 0x00000280
1119 # define NV30_TCL_PRIMITIVE_3D_BUFFER3_PITCH 0x00000284
1120 # define NV30_TCL_PRIMITIVE_3D_BUFFER2_OFFSET 0x00000288
1121 # define NV30_TCL_PRIMITIVE_3D_BUFFER3_OFFSET 0x0000028c
1122 # define NV30_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000300
1123 # define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE 0x00000304
1124 # define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC 0x00000308
1125 # define NV30_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x0000030c
1126 # define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE 0x00000310
1127 # define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000314
1128 # define NV30_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000318
1129 # define NV30_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000031c /* Parameters: a r g b */
1130 # define NV30_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000320
1131 # define NV30_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000324 /* Parameters: a r g b */
1132 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_ENABLE 0x00000328
1133 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_MASK 0x0000032c
1134 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC 0x00000330
1135 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_REF 0x00000334
1136 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_MASK 0x00000338
1137 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL 0x0000033c
1138 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL 0x00000340
1139 # define NV30_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS 0x00000344
1140 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_ENABLE 0x00000348
1141 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_MASK 0x0000034c
1142 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC 0x00000350
1143 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_REF 0x00000354
1144 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_MASK 0x00000358
1145 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL 0x0000035c
1146 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL 0x00000360
1147 # define NV30_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS 0x00000364
1148 # define NV30_TCL_PRIMITIVE_3D_SHADE_MODEL 0x00000368
1149 # define NV30_TCL_PRIMITIVE_3D_FOG_ENABLE 0x0000036c
1150 # define NV40_TCL_PRIMITIVE_3D_COLOR_MASK_BUFFER123 0x00000370 /* Parameters: buffer3 b buffer3 g buffer3 r buffer3 a buffer2 b buffer2 g buffer2 r buffer2 a buffer1 b buffer1 g buffer1 r buffer1 a */
1151 # define NV30_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x0000037c
1152 # define NV30_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
1153 # define NV30_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
1154 # define NV30_TCL_PRIMITIVE_3D_LINE_WIDTH_SMOOTH 0x000003b8
1155 # define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(d) (0x00000400 + d * 0x0004)
1156 # define NV30_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX( d) (0x00000480 + d * 0x0004)
1157 # define NV30_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW_MATRIX( d) (0x00000580 + d * 0x0004)
1158 # define NV30_TCL_PRIMITIVE_3D_PROJECTION_MATRIX( d) (0x00000680 + d * 0x0004)
1159 # define NV30_TCL_PRIMITIVE_3D_TX_MATRIX(x,y) (0x000006c0 + y * 0x0010 + x * 0x0004)
1160 # define NV30_TCL_PRIMITIVE_3D_FP_ACTIVE_PROGRAM 0x000008e4
1161 # define NV30_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000008c8
1162 # define NV30_TCL_PRIMITIVE_3D_FOG_MODE 0x000008cc
1163 # define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x000008d0
1164 # define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x000008d4
1165 # define NV30_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x000008d8
1166 # define NV30_TCL_PRIMITIVE_3D_RC_FINAL0 0x000008f4 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
1167 # define NV30_TCL_PRIMITIVE_3D_RC_FINAL1 0x000008f8 /* Parameters: vare_mapping vare_component_usage vare_input varf_mapping varf_component_usage varf_input varg_mapping varg_component_usage varg_input color_sum_clamp */
1168 # define NV30_TCL_PRIMITIVE_3D_RC_IN_ALPHA 0x00000900 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
1169 # define NV30_TCL_PRIMITIVE_3D_RC_IN_RGB 0x00000904 /* Parameters: vara_mapping vara_component_usage vara_input varb_mapping varb_component_usage varb_input varc_mapping varc_component_usage varc_input vard_mapping vard_component_usage vard_input */
1170 # define NV30_TCL_PRIMITIVE_3D_RC_OUT_ALPHA 0x00000910 /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
1171 # define NV30_TCL_PRIMITIVE_3D_RC_OUT_RGB 0x00000914 /* Parameters: scale bias mux_sum ab_dot_product cd_dot_product sum_output ab_output cd_output */
1172 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_COLOR_BUFFER_DIM0 0x00000200 /* Parameters: width x_offset */
1173 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_COLOR_BUFFER_DIM1 0x00000204 /* Parameters: height y_offset */
1174 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_COLOR_BUFFER_OFS0 0x000002c0 /* Parameters: width x_offset */
1175 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_COLOR_BUFFER_OFS1 0x000002c4 /* Parameters: height y_offset */
1176 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_0 0x00000a00 /* Parameters: width x_offset */
1177 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_DIMS_1 0x00000a04 /* Parameters: height y_offset */
1178 # define NV30_TCL_PRIMITIVE_3D_SCISSOR_WIDTH_XPOS 0x000008c0 /* Parameters: width x_offset */
1179 # define NV30_TCL_PRIMITIVE_3D_SCISSOR_HEIGHT_YPOS 0x000008c4 /* Parameters: height y_offset */
1180 # define NV30_TCL_PRIMITIVE_3D_POINT_SPRITE 0x00001ee8 /* Parameters: coord_replace r_mode enable */
1181 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_A 0x00001ec0
1182 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_B 0x00001ec4
1183 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_C 0x00001ec8
1184 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_D 0x00001ecc
1185 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_E 0x00001ed0
1186 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_F 0x00001ed4
1187 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_G 0x00001ed8
1188 # define NV30_TCL_PRIMITIVE_3D_POINT_PARAMETER_H 0x00001edc
1189 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_OX 0x00000a20
1190 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_OY 0x00000a24
1191 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_NPF_DIV2 0x00000a28
1192 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_UNK0_0x0 0x00000a2c
1193 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_PX_DIV2 0x00000a30
1194 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_PY_DIV2 0x00000a34
1195 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_FMN_DIV2 0x00000a38
1196 # define NV30_TCL_PRIMITIVE_3D_VIEWPORT_XFRM_UNK1_0x0 0x00000a3c
1197 # define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000a60
1198 # define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000a64
1199 # define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000a68
1200 # define NV30_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000a6c
1201 # define NV30_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE 0x00000a70
1202 # define NV30_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x00000a74
1203 # define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000a78
1204 # define NV30_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000a7c
1205 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST0 0x00000b80
1206 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST1 0x00000b84
1207 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST2 0x00000b88
1208 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_INST3 0x00000b8c
1209 # define NV30_TCL_PRIMITIVE_3D_OCC_QUERY_OR_COLOR_BUFF_ENABLE 0x000017c8
1210 # define NV30_TCL_PRIMITIVE_3D_STORE_RESULT 0x00001800
1211 # define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_A(d) (0x00000e00 + d * 0x0010)
1212 # define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_B(d) (0x00000e04 + d * 0x0010)
1213 # define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_C(d) (0x00000e08 + d * 0x0010)
1214 # define NV30_TCL_PRIMITIVE_3D_CLIP_PLANE_D(d) (0x00000e0c + d * 0x0010)
1215 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_A(d) (0x00001000 + d * 0x0040)
1216 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(d) (0x00001004 + d * 0x0040)
1217 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_C(d) (0x00001008 + d * 0x0040)
1218 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_A(d) (0x0000100c + d * 0x0040)
1219 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(d) (0x00001010 + d * 0x0040)
1220 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_C(d) (0x00001014 + d * 0x0040)
1221 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_A(d) (0x00001018 + d * 0x0040)
1222 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(d) (0x0000101c + d * 0x0040)
1223 # define NV30_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_C(d) (0x00001020 + d * 0x0040)
1224 # define NV30_TCL_PRIMITIVE_3D_LIGHT_CONSTANT_ATTENUATION(d) (0x00001228 + d * 0x0040)
1225 # define NV30_TCL_PRIMITIVE_3D_LIGHT_LINEAR_ATTENUATION(d) (0x0000122c + d * 0x0040)
1226 # define NV30_TCL_PRIMITIVE_3D_LIGHT_QUADRATIC_ATTENUATION(d) (0x00001230 + d * 0x0040)
1227 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(d) (0x00001200 + d * 0x0040)
1228 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_EXPONENT(d) (0x00001204 + d * 0x0040)
1229 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(d) (0x00001208 + d * 0x0040)
1230 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(d) (0x0000120c + d * 0x0040)
1231 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(d) (0x00001210 + d * 0x0040)
1232 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(d) (0x00001214 + d * 0x0040)
1233 # define NV30_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(d) (0x00001218 + d * 0x0040)
1234 # define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(d) (0x0000121c + d * 0x0040)
1235 # define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(d) (0x00001220 + d * 0x0040)
1236 # define NV30_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(d) (0x00001224 + d * 0x0040)
1237 # define NV30_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x00001420 /* Parameters: light 7 light 6 light 5 light 4 light 3 light 2 light 1 light 0 */
1238 # define NV30_TCL_PRIMITIVE_3D_LINE_STIPPLE 0x00001db4
1239 # define NV30_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN 0x00001db8 /* Parameters: factor pattern */
1240 # define NV30_TCL_PRIMITIVE_3D_BEGIN_END 0x00001808
1241 # define NV30_TCL_PRIMITIVE_3D_CULL_FACE 0x00001830
1242 # define NV30_TCL_PRIMITIVE_3D_FRONT_FACE 0x00001834
1243 # define NV30_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00001838
1244 # define NV30_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x0000183c
1245 # define NV30_TCL_PRIMITIVE_3D_CLEAR_VALUE_DEPTH 0x00001d8c
1246 # define NV30_TCL_PRIMITIVE_3D_CLEAR_VALUE_ARGB 0x00001d90 /* Parameters: a r g b */
1247 # define NV30_TCL_PRIMITIVE_3D_CLEAR_WHICH_BUFFERS 0x00001d94
1248 # define NV30_TCL_PRIMITIVE_3D_DO_VERTICES 0x00001dac
1249 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_FROM_ID 0x00001e9c
1250 # define NV30_TCL_PRIMITIVE_3D_VP_PROGRAM_START_ID 0x00001ea0
1251 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID 0x00001efc
1252 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_X 0x00001f00
1253 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_Y 0x00001f04
1254 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_Z 0x00001f08
1255 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P0_W 0x00001f0c
1256 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_X 0x00001f10
1257 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_Y 0x00001f14
1258 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_Z 0x00001f18
1259 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P1_W 0x00001f1c
1260 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_X 0x00001f20
1261 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_Y 0x00001f24
1262 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_Z 0x00001f28
1263 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P2_W 0x00001f2c
1264 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_X 0x00001f30
1265 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_Y 0x00001f34
1266 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_Z 0x00001f38
1267 # define NV30_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_P3_W 0x00001f3c
1268 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3X(d) (0x00001500 + d * 0x0010)
1269 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3Y(d) (0x00001504 + d * 0x0010)
1270 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3Z(d) (0x00001508 + d * 0x0010)
1271 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_3W(d) (0x0000150c + d * 0x0010)
1272 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4X(d) (0x00001c00 + d * 0x0010)
1273 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4Y(d) (0x00001c04 + d * 0x0010)
1274 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4Z(d) (0x00001c08 + d * 0x0010)
1275 # define NV30_TCL_PRIMITIVE_3D_VTX_ATTR_4W(d) (0x00001c0c + d * 0x0010)
1276 # define NV30_TCL_PRIMITIVE_3D_VB_POINTER_ATTR(d) (0x00001680 + d * 0x0004) /* Parameters: enabled? offset */
1277 # define NV30_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00000a90 /* Parameters: y x */
1278 # define NV30_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00000a94 /* Parameters: z */
1279 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x000018c0
1280 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x000018c4
1281 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x000018c8
1282 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x000018cc
1283 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S 0x000018d0
1284 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T 0x000018d4
1285 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S 0x000018d8
1286 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T 0x000018dc
1287 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00001920 /* Parameters: t s */
1288 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x00001924 /* Parameters: t s */
1289 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_2I 0x00001928 /* Parameters: t s */
1290 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_2I 0x0000192c /* Parameters: t s */
1291 # define NV30_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x0000194c /* Parameters: a b g r */
1292 # define NV30_TCL_PRIMITIVE_3D_VERTEX_COL2_3I 0x00001950 /* Parameters: a b g r */
1293 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x000019c0 /* Parameters: t s */
1294 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x000019c4 /* Parameters: q r */
1295 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x000019c8 /* Parameters: t s */
1296 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x000019cc /* Parameters: q r */
1297 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST 0x000019d0 /* Parameters: t s */
1298 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ 0x000019d4 /* Parameters: q r */
1299 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST 0x000019d8 /* Parameters: t s */
1300 # define NV30_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ 0x000019dc /* Parameters: q r */
1301 # define NV30_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00001e54
1302 # define NV30_TCL_PRIMITIVE_3D_VERTEX_UNK_0 0x00001718
1303 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR( d) (0x00001740 + d * 0x0004)
1304 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR0_POS 0x00001740 /* Parameters: stride fields type */
1305 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR1_WGH 0x00001744 /* Parameters: stride fields type */
1306 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR2_NOR 0x00001748 /* Parameters: stride fields type */
1307 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR3_COL 0x0000174c /* Parameters: stride fields type */
1308 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR4_COL2 0x00001750 /* Parameters: stride fields type */
1309 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR5_FOG 0x00001754 /* Parameters: stride fields type */
1310 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR6 0x00001758 /* Parameters: stride fields type */
1311 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR7 0x0000175c /* Parameters: stride fields type */
1312 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR8_TX0 0x00001760 /* Parameters: stride fields type */
1313 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR9_TX1 0x00001764 /* Parameters: stride fields type */
1314 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR10_TX2 0x00001768 /* Parameters: stride fields type */
1315 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR11_TX3 0x0000176c /* Parameters: stride fields type */
1316 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR12_TX4 0x00001770 /* Parameters: stride fields type */
1317 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR13_TX5 0x00001774 /* Parameters: stride fields type */
1318 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR14_TX6 0x00001778 /* Parameters: stride fields type */
1319 # define NV30_TCL_PRIMITIVE_3D_VERTEX_ATTR15_TX7 0x0000177c /* Parameters: stride fields type */
1320 # define NV30_TCL_PRIMITIVE_3D_FP_ACTIVE_PROGRAM 0x000008e4
1321 # define NV30_TCL_PRIMITIVE_3D_TX_ADDRESS_UNIT(d) (0x00001a00 + d * 0x0020)
1322 # define NV30_TCL_PRIMITIVE_3D_TX_FORMAT_UNIT(d) (0x00001a04 + d * 0x0020) /* Parameters: mipmap type format ncomp cubic */
1323 # define NV30_TCL_PRIMITIVE_3D_TX_WRAP_UNIT(d) (0x00001a08 + d * 0x0020) /* Parameters: wrap_s wrap_t wrap_r */
1324 # define NV30_TCL_PRIMITIVE_3D_TX_ENABLE_UNIT(d) (0x00001a0c + d * 0x0020) /* Parameters: nv40_enable nv30_enable anisotropy */
1325 # define NV30_TCL_PRIMITIVE_3D_TX_SWIZZLE_UNIT(d) (0x00001a10 + d * 0x0020)
1326 # define NV30_TCL_PRIMITIVE_3D_TX_FILTER_UNIT(d) (0x00001a14 + d * 0x0020) /* Parameters: filter_min filter_mag */
1327 # define NV30_TCL_PRIMITIVE_3D_TX_XY_DIM_UNIT(d) (0x00001a18 + d * 0x0020) /* Parameters: width height */
1328 # define NV30_TCL_PRIMITIVE_3D_TX_UNK07_UNIT(d) (0x00001a1c + d * 0x0020)
1329 # define NV30_TCL_PRIMITIVE_3D_TX_DEPTH_UNIT(d) (0x00001840 + d * 0x0004) /* Parameters: depth NPOT pitch */
1330 # define NV30_TCL_PRIMITIVE_3D_VB_VERTEX_BATCH 0x00001814 /* Parameters: count_vertices offset_vertices */
1331 # define NV30_TCL_PRIMITIVE_3D_VERTEX_DATA 0x00001818
1332 # define NV30_TCL_PRIMITIVE_3D_LOGIC_OP_ENABLE 0x00000374
1333 # define NV30_TCL_PRIMITIVE_3D_LOGIC_OP_OP 0x00000378
1334 # define NV30_TCL_PRIMITIVE_3D_SET_DISPLAY_LIST_MEM_OFFSET 0x0000181c
1335 # define NV30_TCL_PRIMITIVE_3D_EXECUTE_DISPLAY_LIST 0x00001824 /* Parameters: length start offset */
1336 # define NV30_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x00001828
1337 # define NV30_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x0000182c
1338 # define NV30_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE 0x0000147c
1339 # define NV30_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN( d) (0x00001480 + d * 0x0004)
1340 # define NV30_TCL_PRIMITIVE_3D_SET_CLIPPING_PLANES 0x00001478
1341 # define NV30_TCL_PRIMITIVE_3D_VP_IN_REG 0x00001ff0 /* Parameters: vertex pos weight normal primary color secondary color fogcoord texture coords 0 texture ccords 1 texture coords 2 texture coords 3 texture coords 4 texture coords 5 texture coords 6 texture coords 7 */
1342 # define NV30_TCL_PRIMITIVE_3D_VP_OUT_REG 0x00001ff4 /* Parameters: primary color secondary color backface primary color backface secondary color fogcoord pointsize clip plane 0 clip plane 1 clip plane 2 clip plane 3 clip plane 4 clip plane 5 texture coords 0 texture coords 1 texture coords 2 texture coords 3 texture coords 4 texture coords 5 texture coords 6 texture coords 7 */
1343
1344 /******************************************
1345 Object NV30_CLEAR_BUFFER used on: NV30 NV40 G70
1346 */
1347 #define NV30_CLEAR_BUFFER 0x00000066
1348 # define NV30_CLEAR_BUFFER_SET_DMA_NOTIFY 0x00000180
1349 # define NV30_CLEAR_BUFFER_SET_IMAGE_PATTERN 0x00000188
1350 # define NV30_CLEAR_BUFFER_SET_RASTER_OP 0x0000018c
1351 # define NV30_CLEAR_BUFFER_SET_CONTEXT_SURFACE_2D 0x00000198
1352 # define NV30_CLEAR_BUFFER_UNK002fc 0x000002fc
1353
1354 /******************************************
1355 Object NV_DMA_FROM_MEMORY used on: NV03 NV04 NV10 NV15 NV20 NV30 NV40 G70
1356 */
1357 #define NV_DMA_FROM_MEMORY 0x00000002
1358
1359 /******************************************
1360 Object NV_DMA_TO_MEMORY used on: NV03 NV04 NV10 NV15 NV20 NV30 NV40 G70
1361 */
1362 #define NV_DMA_TO_MEMORY 0x00000003
1363
1364 /******************************************
1365 Object NV_DMA_IN_MEMORY used on: NV03 NV04 NV10 NV15 NV20 NV30 NV40 G70
1366 */
1367 #define NV_DMA_IN_MEMORY 0x0000003d
1368
1369 /******************************************
1370 Object NvType0046 used on: NV04
1371 */
1372 #define NvType0046 0x00000046
1373 # define NvType0046_DMA_NOTIFY 0x00000180
1374 # define NvType0046_DMA_MEM_1 0x00000184
1375 # define NvType0046_DMA_MEM_2 0x00000188
1376 # define NvType0046_DMA_3 0x0000018c
1377 # define NvType0046_DMA_4 0x00000190
1378 # define NvType0046_OBJ_5 0x00000194
1379 # define NvType0046_OBJ_6 0x00000198
1380 # define NvType0046_PITCH1 0x00000304
1381 # define NvType0046_PITCH2 0x0000030c
1382 # define NvType0046_SIZE 0x00000340 /* Parameters: width height */
1383 # define NvType0046_WIDTH 0x00000344 /* Parameters: visible_width blank_width */
1384 # define NvType0046_HSYNC 0x00000348 /* Parameters: hsync_start hsync_len */
1385 # define NvType0046_HEIGHT 0x0000034c /* Parameters: visible_height blank_height */
1386 # define NvType0046_VSYNC 0x00000350 /* Parameters: vsync_start vsync_len */
1387 # define NvType0046_FULL_SIZE 0x00000354 /* Parameters: full_width full_height */
1388 # define NvType0046_PIXEL_CLK 0x00000358
1389 # define NvType0046_FLAGS 0x0000035c /* Parameters: doublescan -hsync -vsync depth */
1390
1391 /******************************************
1392 Object NvType0047 used on: NV04
1393 */
1394 #define NvType0047 0x00000047
1395 # define NvType0047_DMA_NOTIFY 0x00000180
1396 # define NvType0047_UNK19C 0x0000019c
1397 # define NvType0047_UNK1A0 0x000001a0
1398
1399 /******************************************
1400 Object NvType0049 used on: NV04
1401 */
1402 #define NvType0049 0x00000049
1403 # define NvType0049_DMA_NOTIFY 0x00000180
1404 # define NvType0049_DMA_MEM_1 0x00000184
1405 # define NvType0049_DMA_MEM_2 0x00000188
1406
1407 /******************************************
1408 Object NvType004D used on: NV04
1409 */
1410 #define NvType004D 0x0000004d
1411 # define NvType004D_DMA_NOTIFY 0x00000180
1412 # define NvType004D_DMA_MEM_1 0x00000184
1413 # define NvType004D_DMA_MEM_2 0x00000188
1414 # define NvType004D_DMA_MEM_3 0x0000018c
1415 # define NvType004D_DMA_MEM_4 0x00000190
1416
1417 #endif /* _NOUVEAU_REG_H */