2 #define NOUVEAU_REG_H 1
5 #define NV01_ROOT 0x00000001
9 #define NV01_CONTEXT_DMA 0x00000002
13 #define NV01_DEVICE 0x00000003
17 #define NV01_TIMER 0x00000004
19 #define NV01_TIMER_SYNCHRONIZE 0x00000100
20 #define NV01_TIMER_STOP_ALARM 0x00000104
21 #define NV01_TIMER_DMA_NOTIFY 0x00000180
22 #define NV01_TIMER_TIME(x) (0x00000300+((x)*4))
23 #define NV01_TIMER_TIME__SIZE 0x00000002
24 #define NV01_TIMER_ALARM_NOTIFY 0x00000308
27 #define NV_IMAGE_STENCIL 0x00000010
29 #define NV_IMAGE_STENCIL_NOTIFY 0x00000104
30 #define NV_IMAGE_STENCIL_DMA_NOTIFY 0x00000180
31 #define NV_IMAGE_STENCIL_IMAGE_OUTPUT 0x00000200
32 #define NV_IMAGE_STENCIL_IMAGE_INPUT(x) (0x00000204+((x)*4))
33 #define NV_IMAGE_STENCIL_IMAGE_INPUT__SIZE 0x00000002
36 #define NV_IMAGE_BLEND_AND 0x00000011
38 #define NV_IMAGE_BLEND_AND_NOP 0x00000100
39 #define NV_IMAGE_BLEND_AND_NOTIFY 0x00000104
40 #define NV_IMAGE_BLEND_AND_DMA_NOTIFY 0x00000180
41 #define NV_IMAGE_BLEND_AND_IMAGE_OUTPUT 0x00000200
42 #define NV_IMAGE_BLEND_AND_BETA_INPUT 0x00000204
43 #define NV_IMAGE_BLEND_AND_IMAGE_INPUT 0x00000208
46 #define NV01_CONTEXT_BETA1 0x00000012
48 #define NV01_CONTEXT_BETA1_NOP 0x00000100
49 #define NV01_CONTEXT_BETA1_NOTIFY 0x00000104
50 #define NV01_CONTEXT_BETA1_DMA_NOTIFY 0x00000180
51 #define NV01_CONTEXT_BETA1_BETA_1D31 0x00000300
54 #define NV_IMAGE_ROP_AND 0x00000013
56 #define NV_IMAGE_ROP_AND_NOTIFY 0x00000104
57 #define NV_IMAGE_ROP_AND_DMA_NOTIFY 0x00000180
58 #define NV_IMAGE_ROP_AND_IMAGE_OUTPUT 0x00000200
59 #define NV_IMAGE_ROP_AND_ROP_INPUT 0x00000204
60 #define NV_IMAGE_ROP_AND_IMAGE_INPUT(x) (0x00000208+((x)*4))
61 #define NV_IMAGE_ROP_AND_IMAGE_INPUT__SIZE 0x00000002
64 #define NV_IMAGE_COLOR_KEY 0x00000015
68 #define NV01_CONTEXT_COLOR_KEY 0x00000017
70 #define NV01_CONTEXT_COLOR_KEY_NOP 0x00000100
71 #define NV01_CONTEXT_COLOR_KEY_NOTIFY 0x00000104
72 #define NV01_CONTEXT_COLOR_KEY_DMA_NOTIFY 0x00000180
73 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT 0x00000300
74 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16A8Y8 0x00000001
75 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X24Y8 0x00000002
76 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16A1R5G5B5 0x00000003
77 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X17R5G5B5 0x00000004
78 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_A8R8G8B8 0x00000005
79 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X8R8G8B8 0x00000006
80 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_A16Y16 0x00000007
81 #define NV01_CONTEXT_COLOR_KEY_COLOR_FORMAT_X16Y16 0x00000008
82 #define NV01_CONTEXT_COLOR_KEY_COLOR 0x00000304
85 #define NV01_CONTEXT_PATTERN 0x00000018
87 #define NV01_CONTEXT_PATTERN_NOP 0x00000100
88 #define NV01_CONTEXT_PATTERN_NOTIFY 0x00000104
89 #define NV01_CONTEXT_PATTERN_DMA_NOTIFY 0x00000180
90 #define NV01_CONTEXT_PATTERN_COLOR_FORMAT 0x00000300
91 #define NV01_CONTEXT_PATTERN_MONOCHROME_FORMAT 0x00000304
92 #define NV01_CONTEXT_PATTERN_SHAPE 0x00000308
93 #define NV01_CONTEXT_PATTERN_COLOR(x) (0x00000310+((x)*4))
94 #define NV01_CONTEXT_PATTERN_COLOR__SIZE 0x00000002
95 #define NV01_CONTEXT_PATTERN_PATTERN(x) (0x00000318+((x)*4))
96 #define NV01_CONTEXT_PATTERN_PATTERN__SIZE 0x00000002
99 #define NV01_CONTEXT_CLIP_RECTANGLE 0x00000019
101 #define NV01_CONTEXT_CLIP_RECTANGLE_NOP 0x00000100
102 #define NV01_CONTEXT_CLIP_RECTANGLE_NOTIFY 0x00000104
103 #define NV01_CONTEXT_CLIP_RECTANGLE_DMA_NOTIFY 0x00000180
104 #define NV01_CONTEXT_CLIP_RECTANGLE_POINT 0x00000300
105 #define NV01_CONTEXT_CLIP_RECTANGLE_POINT_X_SHIFT 0
106 #define NV01_CONTEXT_CLIP_RECTANGLE_POINT_X_MASK 0x0000ffff
107 #define NV01_CONTEXT_CLIP_RECTANGLE_POINT_Y_SHIFT 16
108 #define NV01_CONTEXT_CLIP_RECTANGLE_POINT_Y_MASK 0xffff0000
109 #define NV01_CONTEXT_CLIP_RECTANGLE_SIZE 0x00000304
110 #define NV01_CONTEXT_CLIP_RECTANGLE_SIZE_W_SHIFT 0
111 #define NV01_CONTEXT_CLIP_RECTANGLE_SIZE_W_MASK 0x0000ffff
112 #define NV01_CONTEXT_CLIP_RECTANGLE_SIZE_H_SHIFT 16
113 #define NV01_CONTEXT_CLIP_RECTANGLE_SIZE_H_MASK 0xffff0000
116 #define NV01_RENDER_SOLID_LINE 0x0000001c
118 #define NV01_RENDER_SOLID_LINE_NOP 0x00000100
119 #define NV01_RENDER_SOLID_LINE_NOTIFY 0x00000104
120 #define NV01_RENDER_SOLID_LINE_PATCH 0x0000010c
121 #define NV01_RENDER_SOLID_LINE_DMA_NOTIFY 0x00000180
122 #define NV01_RENDER_SOLID_LINE_CLIP_RECTANGLE 0x00000184
123 #define NV01_RENDER_SOLID_LINE_PATTERN 0x00000188
124 #define NV01_RENDER_SOLID_LINE_ROP 0x0000018c
125 #define NV01_RENDER_SOLID_LINE_BETA1 0x00000190
126 #define NV01_RENDER_SOLID_LINE_SURFACE 0x00000194
127 #define NV01_RENDER_SOLID_LINE_OPERATION 0x000002fc
128 #define NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY_AND 0x00000000
129 #define NV01_RENDER_SOLID_LINE_OPERATION_ROP_AND 0x00000001
130 #define NV01_RENDER_SOLID_LINE_OPERATION_BLEND_AND 0x00000002
131 #define NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY 0x00000003
132 #define NV01_RENDER_SOLID_LINE_OPERATION_SRCCOPY_PREMULT 0x00000004
133 #define NV01_RENDER_SOLID_LINE_OPERATION_BLEND_PREMULT 0x00000005
134 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT 0x00000300
135 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16A8Y8 0x00000001
136 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X24Y8 0x00000002
137 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16A1R5G5B5 0x00000003
138 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X17R5G5B5 0x00000004
139 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_A8R8G8B8 0x00000005
140 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X8R8G8B8 0x00000006
141 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_A16Y16 0x00000007
142 #define NV01_RENDER_SOLID_LINE_COLOR_FORMAT_X16Y16 0x00000008
143 #define NV01_RENDER_SOLID_LINE_COLOR 0x00000304
144 #define NV01_RENDER_SOLID_LINE_LINE_POINT0(x) (0x00000400+((x)*8))
145 #define NV01_RENDER_SOLID_LINE_LINE_POINT0__SIZE 0x00000010
146 #define NV01_RENDER_SOLID_LINE_LINE_POINT0_X_SHIFT 0
147 #define NV01_RENDER_SOLID_LINE_LINE_POINT0_X_MASK 0x0000ffff
148 #define NV01_RENDER_SOLID_LINE_LINE_POINT0_Y_SHIFT 16
149 #define NV01_RENDER_SOLID_LINE_LINE_POINT0_Y_MASK 0xffff0000
150 #define NV01_RENDER_SOLID_LINE_LINE_POINT1(x) (0x00000404+((x)*8))
151 #define NV01_RENDER_SOLID_LINE_LINE_POINT1__SIZE 0x00000010
152 #define NV01_RENDER_SOLID_LINE_LINE_POINT1_X_SHIFT 0
153 #define NV01_RENDER_SOLID_LINE_LINE_POINT1_X_MASK 0x0000ffff
154 #define NV01_RENDER_SOLID_LINE_LINE_POINT1_Y_SHIFT 16
155 #define NV01_RENDER_SOLID_LINE_LINE_POINT1_Y_MASK 0xffff0000
156 #define NV01_RENDER_SOLID_LINE_LINE32_POINT0_X(x) (0x00000480+((x)*16))
157 #define NV01_RENDER_SOLID_LINE_LINE32_POINT0_X__SIZE 0x00000010
158 #define NV01_RENDER_SOLID_LINE_LINE32_POINT0_Y(x) (0x00000484+((x)*16))
159 #define NV01_RENDER_SOLID_LINE_LINE32_POINT0_Y__SIZE 0x00000010
160 #define NV01_RENDER_SOLID_LINE_LINE32_POINT1_X(x) (0x00000488+((x)*16))
161 #define NV01_RENDER_SOLID_LINE_LINE32_POINT1_X__SIZE 0x00000010
162 #define NV01_RENDER_SOLID_LINE_LINE32_POINT1_Y(x) (0x0000048c+((x)*16))
163 #define NV01_RENDER_SOLID_LINE_LINE32_POINT1_Y__SIZE 0x00000010
164 #define NV01_RENDER_SOLID_LINE_POLYLINE(x) (0x00000500+((x)*4))
165 #define NV01_RENDER_SOLID_LINE_POLYLINE__SIZE 0x00000020
166 #define NV01_RENDER_SOLID_LINE_POLYLINE_X_SHIFT 0
167 #define NV01_RENDER_SOLID_LINE_POLYLINE_X_MASK 0x0000ffff
168 #define NV01_RENDER_SOLID_LINE_POLYLINE_Y_SHIFT 16
169 #define NV01_RENDER_SOLID_LINE_POLYLINE_Y_MASK 0xffff0000
170 #define NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_X(x) (0x00000580+((x)*8))
171 #define NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_X__SIZE 0x00000010
172 #define NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_Y(x) (0x00000584+((x)*8))
173 #define NV01_RENDER_SOLID_LINE_POLYLINE32_POINT_Y__SIZE 0x00000010
174 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_COLOR(x) (0x00000600+((x)*8))
175 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_COLOR__SIZE 0x00000010
176 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT(x) (0x00000604+((x)*8))
177 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT__SIZE 0x00000010
178 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_X_SHIFT 0
179 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_X_MASK 0x0000ffff
180 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_Y_SHIFT 16
181 #define NV01_RENDER_SOLID_LINE_CPOLYLINE_POINT_Y_MASK 0xffff0000
184 #define NV01_RENDER_SOLID_TRIANGLE 0x0000001d
186 #define NV01_RENDER_SOLID_TRIANGLE_NOP 0x00000100
187 #define NV01_RENDER_SOLID_TRIANGLE_NOTIFY 0x00000104
188 #define NV01_RENDER_SOLID_TRIANGLE_PATCH 0x0000010c
189 #define NV01_RENDER_SOLID_TRIANGLE_DMA_NOTIFY 0x00000180
190 #define NV01_RENDER_SOLID_TRIANGLE_CLIP_RECTANGLE 0x00000184
191 #define NV01_RENDER_SOLID_TRIANGLE_PATTERN 0x00000188
192 #define NV01_RENDER_SOLID_TRIANGLE_ROP 0x0000018c
193 #define NV01_RENDER_SOLID_TRIANGLE_BETA1 0x00000190
194 #define NV01_RENDER_SOLID_TRIANGLE_SURFACE 0x00000194
195 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION 0x000002fc
196 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY_AND 0x00000000
197 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_ROP_AND 0x00000001
198 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_BLEND_AND 0x00000002
199 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY 0x00000003
200 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_SRCCOPY_PREMULT 0x00000004
201 #define NV01_RENDER_SOLID_TRIANGLE_OPERATION_BLEND_PREMULT 0x00000005
202 #define NV01_RENDER_SOLID_TRIANGLE_COLOR_FORMAT 0x00000300
203 #define NV01_RENDER_SOLID_TRIANGLE_COLOR 0x00000304
204 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0 0x00000310
205 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_X_SHIFT 0
206 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_X_MASK 0x0000ffff
207 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_Y_SHIFT 16
208 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT0_Y_MASK 0xffff0000
209 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1 0x00000314
210 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_X_SHIFT 0
211 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_X_MASK 0x0000ffff
212 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_Y_SHIFT 16
213 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT1_Y_MASK 0xffff0000
214 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2 0x00000318
215 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_X_SHIFT 0
216 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_X_MASK 0x0000ffff
217 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_Y_SHIFT 16
218 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE_POINT2_Y_MASK 0xffff0000
219 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT0_X 0x00000320
220 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT0_Y 0x00000324
221 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT1_X 0x00000328
222 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT1_Y 0x0000032c
223 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT2_X 0x00000330
224 #define NV01_RENDER_SOLID_TRIANGLE_TRIANGLE32_POINT2_Y 0x00000334
225 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH(x) (0x00000400+((x)*4))
226 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH__SIZE 0x00000020
227 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH_X_SHIFT 0
228 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH_X_MASK 0x0000ffff
229 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH_Y_SHIFT 16
230 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH_Y_MASK 0xffff0000
231 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_X(x) (0x00000480+((x)*8))
232 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_X__SIZE 0x00000010
233 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_Y(x) (0x00000484+((x)*8))
234 #define NV01_RENDER_SOLID_TRIANGLE_TRIMESH32_POINT_Y__SIZE 0x00000010
235 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_COLOR(x) (0x00000500+((x)*16))
236 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_COLOR__SIZE 0x00000008
237 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0(x) (0x00000504+((x)*16))
238 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0__SIZE 0x00000008
239 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_X_SHIFT 0
240 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_X_MASK 0x0000ffff
241 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_Y_SHIFT 16
242 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT0_Y_MASK 0xffff0000
243 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1(x) (0x00000508+((x)*16))
244 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1__SIZE 0x00000008
245 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_X_SHIFT 0
246 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_X_MASK 0x0000ffff
247 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_Y_SHIFT 16
248 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT1_Y_MASK 0xffff0000
249 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2(x) (0x0000050c+((x)*16))
250 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2__SIZE 0x00000008
251 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_X_SHIFT 0
252 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_X_MASK 0x0000ffff
253 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_Y_SHIFT 16
254 #define NV01_RENDER_SOLID_TRIANGLE_CTRIANGLE_POINT2_Y_MASK 0xffff0000
255 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_COLOR(x) (0x00000580+((x)*8))
256 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_COLOR__SIZE 0x00000010
257 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT(x) (0x00000584+((x)*8))
258 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT__SIZE 0x00000010
259 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_X_SHIFT 0
260 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_X_MASK 0x0000ffff
261 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_Y_SHIFT 16
262 #define NV01_RENDER_SOLID_TRIANGLE_CTRIMESH_POINT_Y_MASK 0xffff0000
265 #define NV01_RENDER_SOLID_RECTANGLE 0x0000001e
267 #define NV01_RENDER_SOLID_RECTANGLE_NOP 0x00000100
268 #define NV01_RENDER_SOLID_RECTANGLE_NOTIFY 0x00000104
269 #define NV01_RENDER_SOLID_RECTANGLE_PATCH 0x0000010c
270 #define NV01_RENDER_SOLID_RECTANGLE_DMA_NOTIFY 0x00000180
271 #define NV01_RENDER_SOLID_RECTANGLE_CLIP_RECTANGLE 0x00000184
272 #define NV01_RENDER_SOLID_RECTANGLE_PATTERN 0x00000188
273 #define NV01_RENDER_SOLID_RECTANGLE_ROP 0x0000018c
274 #define NV01_RENDER_SOLID_RECTANGLE_BETA1 0x00000190
275 #define NV01_RENDER_SOLID_RECTANGLE_SURFACE 0x00000194
276 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION 0x000002fc
277 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY_AND 0x00000000
278 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_ROP_AND 0x00000001
279 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_BLEND_AND 0x00000002
280 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY 0x00000003
281 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_SRCCOPY_PREMULT 0x00000004
282 #define NV01_RENDER_SOLID_RECTANGLE_OPERATION_BLEND_PREMULT 0x00000005
283 #define NV01_RENDER_SOLID_RECTANGLE_COLOR_FORMAT 0x00000300
284 #define NV01_RENDER_SOLID_RECTANGLE_COLOR 0x00000304
285 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT(x) (0x00000400+((x)*8))
286 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT__SIZE 0x00000010
287 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_X_SHIFT 0
288 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_X_MASK 0x0000ffff
289 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_Y_SHIFT 16
290 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_POINT_Y_MASK 0xffff0000
291 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE(x) (0x00000404+((x)*8))
292 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE__SIZE 0x00000010
293 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_W_SHIFT 0
294 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_W_MASK 0x0000ffff
295 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_H_SHIFT 16
296 #define NV01_RENDER_SOLID_RECTANGLE_RECTANGLE_SIZE_H_MASK 0xffff0000
299 #define NV01_IMAGE_BLIT 0x0000001f
301 #define NV01_IMAGE_BLIT_NOP 0x00000100
302 #define NV01_IMAGE_BLIT_NOTIFY 0x00000104
303 #define NV01_IMAGE_BLIT_PATCH 0x0000010c
304 #define NV01_IMAGE_BLIT_DMA_NOTIFY 0x00000180
305 #define NV01_IMAGE_BLIT_COLOR_KEY 0x00000184
306 #define NV01_IMAGE_BLIT_CLIP_RECTANGLE 0x00000188
307 #define NV01_IMAGE_BLIT_PATTERN 0x0000018c
308 #define NV01_IMAGE_BLIT_ROP 0x00000190
309 #define NV01_IMAGE_BLIT_BETA1 0x00000194
310 #define NV01_IMAGE_BLIT_SURFACE 0x0000019c
311 #define NV01_IMAGE_BLIT_OPERATION 0x000002fc
312 #define NV01_IMAGE_BLIT_IMAGE_INPUT 0x00000204
313 #define NV01_IMAGE_BLIT_POINT_IN 0x00000300
314 #define NV01_IMAGE_BLIT_POINT_IN_X_SHIFT 0
315 #define NV01_IMAGE_BLIT_POINT_IN_X_MASK 0x0000ffff
316 #define NV01_IMAGE_BLIT_POINT_IN_Y_SHIFT 16
317 #define NV01_IMAGE_BLIT_POINT_IN_Y_MASK 0xffff0000
318 #define NV01_IMAGE_BLIT_POINT_OUT 0x00000304
319 #define NV01_IMAGE_BLIT_POINT_OUT_X_SHIFT 0
320 #define NV01_IMAGE_BLIT_POINT_OUT_X_MASK 0x0000ffff
321 #define NV01_IMAGE_BLIT_POINT_OUT_Y_SHIFT 16
322 #define NV01_IMAGE_BLIT_POINT_OUT_Y_MASK 0xffff0000
323 #define NV01_IMAGE_BLIT_SIZE 0x00000308
324 #define NV01_IMAGE_BLIT_SIZE_W_SHIFT 0
325 #define NV01_IMAGE_BLIT_SIZE_W_MASK 0x0000ffff
326 #define NV01_IMAGE_BLIT_SIZE_H_SHIFT 16
327 #define NV01_IMAGE_BLIT_SIZE_H_MASK 0xffff0000
330 #define NV01_IMAGE_FROM_CPU 0x00000021
332 #define NV01_IMAGE_FROM_CPU_NOP 0x00000100
333 #define NV01_IMAGE_FROM_CPU_NOTIFY 0x00000104
334 #define NV01_IMAGE_FROM_CPU_PATCH 0x0000010c
335 #define NV01_IMAGE_FROM_CPU_DMA_NOTIFY 0x00000180
336 #define NV01_IMAGE_FROM_CPU_COLOR_KEY 0x00000184
337 #define NV01_IMAGE_FROM_CPU_CLIP_RECTANGLE 0x00000188
338 #define NV01_IMAGE_FROM_CPU_PATTERN 0x0000018c
339 #define NV01_IMAGE_FROM_CPU_ROP 0x00000190
340 #define NV01_IMAGE_FROM_CPU_BETA1 0x00000194
341 #define NV01_IMAGE_FROM_CPU_SURFACE 0x00000198
342 #define NV01_IMAGE_FROM_CPU_OPERATION 0x000002fc
343 #define NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY_AND 0x00000000
344 #define NV01_IMAGE_FROM_CPU_OPERATION_ROP_AND 0x00000001
345 #define NV01_IMAGE_FROM_CPU_OPERATION_BLEND_AND 0x00000002
346 #define NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY 0x00000003
347 #define NV01_IMAGE_FROM_CPU_OPERATION_SRCCOPY_PREMULT 0x00000004
348 #define NV01_IMAGE_FROM_CPU_OPERATION_BLEND_PREMULT 0x00000005
349 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT 0x00000300
350 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT_Y8 0x00000001
351 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT_A1R5G5B5 0x00000002
352 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT_X1R5G5B5 0x00000003
353 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT_A8R8G8B8 0x00000004
354 #define NV01_IMAGE_FROM_CPU_COLOR_FORMAT_X8R8G8B8 0x00000005
355 #define NV01_IMAGE_FROM_CPU_POINT 0x00000304
356 #define NV01_IMAGE_FROM_CPU_POINT_X_SHIFT 0
357 #define NV01_IMAGE_FROM_CPU_POINT_X_MASK 0x0000ffff
358 #define NV01_IMAGE_FROM_CPU_POINT_Y_SHIFT 16
359 #define NV01_IMAGE_FROM_CPU_POINT_Y_MASK 0xffff0000
360 #define NV01_IMAGE_FROM_CPU_SIZE_OUT 0x00000308
361 #define NV01_IMAGE_FROM_CPU_SIZE_OUT_W_SHIFT 0
362 #define NV01_IMAGE_FROM_CPU_SIZE_OUT_W_MASK 0x0000ffff
363 #define NV01_IMAGE_FROM_CPU_SIZE_OUT_H_SHIFT 16
364 #define NV01_IMAGE_FROM_CPU_SIZE_OUT_H_MASK 0xffff0000
365 #define NV01_IMAGE_FROM_CPU_SIZE_IN 0x0000030c
366 #define NV01_IMAGE_FROM_CPU_SIZE_IN_W_SHIFT 0
367 #define NV01_IMAGE_FROM_CPU_SIZE_IN_W_MASK 0x0000ffff
368 #define NV01_IMAGE_FROM_CPU_SIZE_IN_H_SHIFT 16
369 #define NV01_IMAGE_FROM_CPU_SIZE_IN_H_MASK 0xffff0000
370 #define NV01_IMAGE_FROM_CPU_COLOR(x) (0x00000400+((x)*4))
371 #define NV01_IMAGE_FROM_CPU_COLOR__SIZE 0x00000020
374 #define NV01_NULL 0x00000030
378 #define NV03_STRETCHED_IMAGE_FROM_CPU 0x00000036
380 #define NV03_STRETCHED_IMAGE_FROM_CPU_NOP 0x00000100
381 #define NV03_STRETCHED_IMAGE_FROM_CPU_NOTIFY 0x00000104
382 #define NV03_STRETCHED_IMAGE_FROM_CPU_PATCH 0x0000010c
383 #define NV03_STRETCHED_IMAGE_FROM_CPU_DMA_NOTIFY 0x00000180
384 #define NV03_STRETCHED_IMAGE_FROM_CPU_COLOR_KEY 0x00000184
385 #define NV03_STRETCHED_IMAGE_FROM_CPU_PATTERN 0x00000188
386 #define NV03_STRETCHED_IMAGE_FROM_CPU_ROP 0x0000018c
387 #define NV03_STRETCHED_IMAGE_FROM_CPU_BETA1 0x00000190
388 #define NV03_STRETCHED_IMAGE_FROM_CPU_SURFACE 0x00000194
389 #define NV03_STRETCHED_IMAGE_FROM_CPU_OPERATION 0x000002fc
390 #define NV03_STRETCHED_IMAGE_FROM_CPU_COLOR_FORMAT 0x00000300
391 #define NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN 0x00000304
392 #define NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_W_SHIFT 0
393 #define NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_W_MASK 0x0000ffff
394 #define NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_H_SHIFT 16
395 #define NV03_STRETCHED_IMAGE_FROM_CPU_SIZE_IN_H_MASK 0xffff0000
396 #define NV03_STRETCHED_IMAGE_FROM_CPU_DX_DU 0x00000308
397 #define NV03_STRETCHED_IMAGE_FROM_CPU_DY_DV 0x0000030c
398 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT 0x00000310
399 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_X_SHIFT 0
400 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_X_MASK 0x0000ffff
401 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_Y_SHIFT 16
402 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_POINT_Y_MASK 0xffff0000
403 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE 0x00000314
404 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_W_SHIFT 0
405 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_W_MASK 0x0000ffff
406 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_H_SHIFT 16
407 #define NV03_STRETCHED_IMAGE_FROM_CPU_CLIP_SIZE_H_MASK 0xffff0000
408 #define NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4 0x00000318
409 #define NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_X_SHIFT 0
410 #define NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_X_MASK 0x0000ffff
411 #define NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_Y_SHIFT 16
412 #define NV03_STRETCHED_IMAGE_FROM_CPU_POINT12D4_Y_MASK 0xffff0000
413 #define NV03_STRETCHED_IMAGE_FROM_CPU_COLOR(x) (0x00000400+((x)*4))
414 #define NV03_STRETCHED_IMAGE_FROM_CPU_COLOR__SIZE 0x00000020
417 #define NV03_SCALED_IMAGE_FROM_MEMORY 0x00000037
419 #define NV03_SCALED_IMAGE_FROM_MEMORY_NOP 0x00000100
420 #define NV03_SCALED_IMAGE_FROM_MEMORY_NOTIFY 0x00000104
421 #define NV03_SCALED_IMAGE_FROM_MEMORY_DMA_NOTIFY 0x00000180
422 #define NV03_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE 0x00000184
423 #define NV03_SCALED_IMAGE_FROM_MEMORY_PATTERN 0x00000188
424 #define NV03_SCALED_IMAGE_FROM_MEMORY_ROP 0x0000018c
425 #define NV03_SCALED_IMAGE_FROM_MEMORY_BETA1 0x00000190
426 #define NV03_SCALED_IMAGE_FROM_MEMORY_SURFACE 0x00000194
427 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT 0x00000300
428 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A1R5G5B5 0x00000001
429 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X1R5G5B5 0x00000002
430 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A8R8G8B8 0x00000003
431 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X8R8G8B8 0x00000004
432 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_V8YB8U8YA8 0x00000005
433 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_YB8V8YA8U8 0x00000006
434 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_R5G6B5 0x00000007
435 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_Y8 0x00000008
436 #define NV03_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_AY8 0x00000009
437 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION 0x00000304
438 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_AND 0x00000000
439 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_ROP_AND 0x00000001
440 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_AND 0x00000002
441 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY 0x00000003
442 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_PREMULT 0x00000004
443 #define NV03_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_PREMULT 0x00000005
444 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT 0x00000308
445 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_SHIFT 0
446 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_MASK 0x0000ffff
447 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_SHIFT 16
448 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_MASK 0xffff0000
449 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE 0x0000030c
450 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_SHIFT 0
451 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_MASK 0x0000ffff
452 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_SHIFT 16
453 #define NV03_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_MASK 0xffff0000
454 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_POINT 0x00000310
455 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_POINT_X_SHIFT 0
456 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_POINT_X_MASK 0x0000ffff
457 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_POINT_Y_SHIFT 16
458 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_POINT_Y_MASK 0xffff0000
459 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_SIZE 0x00000314
460 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_SIZE_W_SHIFT 0
461 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_SIZE_W_MASK 0x0000ffff
462 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_SIZE_H_SHIFT 16
463 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_OUT_SIZE_H_MASK 0xffff0000
464 #define NV03_SCALED_IMAGE_FROM_MEMORY_DELTA_DU_DX 0x00000318
465 #define NV03_SCALED_IMAGE_FROM_MEMORY_DELTA_DV_DY 0x0000031c
466 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE 0x00000400
467 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE_W_SHIFT 0
468 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE_W_MASK 0x0000ffff
469 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE_H_SHIFT 16
470 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE_H_MASK 0xffff0000
471 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT 0x00000404
472 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_PITCH_SHIFT 0
473 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_PITCH_MASK 0x0000ffff
474 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_ORIGIN_SHIFT 16
475 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_ORIGIN_MASK 0x00ff0000
476 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_ORIGIN_CENTER 0x00010000
477 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_ORIGIN_CORNER 0x00020000
478 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_INTERPOLATOR_SHIFT 24
479 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_FORMAT_INTERPOLATOR_MASK 0xff000000
480 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_OFFSET 0x00000408
481 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_POINT 0x0000040c
482 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_POINT_U_SHIFT 0
483 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_POINT_U_MASK 0x0000ffff
484 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_POINT_V_SHIFT 16
485 #define NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_POINT_V_MASK 0xffff0000
488 #define NV04_DVD_SUBPICTURE 0x00000038
490 #define NV04_DVD_SUBPICTURE_NOP 0x00000100
491 #define NV04_DVD_SUBPICTURE_NOTIFY 0x00000104
492 #define NV04_DVD_SUBPICTURE_WAIT_FOR_IDLE 0x00000108
493 #define NV04_DVD_SUBPICTURE_DMA_NOTIFY 0x00000180
494 #define NV04_DVD_SUBPICTURE_DMA_OVERLAY 0x00000184
495 #define NV04_DVD_SUBPICTURE_DMA_IMAGEIN 0x00000188
496 #define NV04_DVD_SUBPICTURE_DMA_IMAGEOUT 0x0000018c
497 #define NV04_DVD_SUBPICTURE_IMAGEOUT_POINT 0x00000300
498 #define NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_X_SHIFT 0
499 #define NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_X_MASK 0x0000ffff
500 #define NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_Y_SHIFT 16
501 #define NV04_DVD_SUBPICTURE_IMAGEOUT_POINT_Y_MASK 0xffff0000
502 #define NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE 0x00000304
503 #define NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_W_SHIFT 0
504 #define NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_W_MASK 0x0000ffff
505 #define NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_H_SHIFT 16
506 #define NV04_DVD_SUBPICTURE_IMAGEOUT_SIZE_H_MASK 0xffff0000
507 #define NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT 0x00000308
508 #define NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_PITCH_SHIFT 0
509 #define NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_PITCH_MASK 0x0000ffff
510 #define NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_COLOR_SHIFT 16
511 #define NV04_DVD_SUBPICTURE_IMAGEOUT_FORMAT_COLOR_MASK 0xffff0000
512 #define NV04_DVD_SUBPICTURE_IMAGEOUT_OFFSET 0x0000030c
513 #define NV04_DVD_SUBPICTURE_IMAGEIN_DELTA_DU_DX 0x00000310
514 #define NV04_DVD_SUBPICTURE_IMAGEIN_DELTA_DV_DY 0x00000314
515 #define NV04_DVD_SUBPICTURE_IMAGEIN_SIZE 0x00000318
516 #define NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_W_SHIFT 0
517 #define NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_W_MASK 0x0000ffff
518 #define NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_H_SHIFT 16
519 #define NV04_DVD_SUBPICTURE_IMAGEIN_SIZE_H_MASK 0xffff0000
520 #define NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT 0x0000031c
521 #define NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_PITCH_SHIFT 0
522 #define NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_PITCH_MASK 0x0000ffff
523 #define NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_COLOR_SHIFT 16
524 #define NV04_DVD_SUBPICTURE_IMAGEIN_FORMAT_COLOR_MASK 0xffff0000
525 #define NV04_DVD_SUBPICTURE_IMAGEIN_OFFSET 0x00000320
526 #define NV04_DVD_SUBPICTURE_IMAGEIN_POINT 0x00000324
527 #define NV04_DVD_SUBPICTURE_IMAGEIN_POINT_U_SHIFT 0
528 #define NV04_DVD_SUBPICTURE_IMAGEIN_POINT_U_MASK 0x0000ffff
529 #define NV04_DVD_SUBPICTURE_IMAGEIN_POINT_V_SHIFT 16
530 #define NV04_DVD_SUBPICTURE_IMAGEIN_POINT_V_MASK 0xffff0000
531 #define NV04_DVD_SUBPICTURE_OVERLAY_DELTA_DU_DX 0x00000328
532 #define NV04_DVD_SUBPICTURE_OVERLAY_DELTA_DV_DY 0x0000032c
533 #define NV04_DVD_SUBPICTURE_OVERLAY_SIZE 0x00000330
534 #define NV04_DVD_SUBPICTURE_OVERLAY_SIZE_W_SHIFT 0
535 #define NV04_DVD_SUBPICTURE_OVERLAY_SIZE_W_MASK 0x0000ffff
536 #define NV04_DVD_SUBPICTURE_OVERLAY_SIZE_H_SHIFT 16
537 #define NV04_DVD_SUBPICTURE_OVERLAY_SIZE_H_MASK 0xffff0000
538 #define NV04_DVD_SUBPICTURE_OVERLAY_FORMAT 0x00000334
539 #define NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_PITCH_SHIFT 0
540 #define NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_PITCH_MASK 0x0000ffff
541 #define NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_COLOR_SHIFT 16
542 #define NV04_DVD_SUBPICTURE_OVERLAY_FORMAT_COLOR_MASK 0xffff0000
543 #define NV04_DVD_SUBPICTURE_OVERLAY_OFFSET 0x00000338
544 #define NV04_DVD_SUBPICTURE_OVERLAY_POINT 0x0000033c
545 #define NV04_DVD_SUBPICTURE_OVERLAY_POINT_U_SHIFT 0
546 #define NV04_DVD_SUBPICTURE_OVERLAY_POINT_U_MASK 0x0000ffff
547 #define NV04_DVD_SUBPICTURE_OVERLAY_POINT_V_SHIFT 16
548 #define NV04_DVD_SUBPICTURE_OVERLAY_POINT_V_MASK 0xffff0000
551 #define NV_MEMORY_TO_MEMORY_FORMAT 0x00000039
553 #define NV_MEMORY_TO_MEMORY_FORMAT_NOP 0x00000100
554 #define NV_MEMORY_TO_MEMORY_FORMAT_NOTIFY 0x00000104
555 #define NV_MEMORY_TO_MEMORY_FORMAT_DMA_NOTIFY 0x00000180
556 #define NV_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_IN 0x00000184
557 #define NV_MEMORY_TO_MEMORY_FORMAT_DMA_BUFFER_OUT 0x00000188
558 #define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_IN 0x0000030c
559 #define NV_MEMORY_TO_MEMORY_FORMAT_OFFSET_OUT 0x00000310
560 #define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_IN 0x00000314
561 #define NV_MEMORY_TO_MEMORY_FORMAT_PITCH_OUT 0x00000318
562 #define NV_MEMORY_TO_MEMORY_FORMAT_LINE_LENGTH_IN 0x0000031c
563 #define NV_MEMORY_TO_MEMORY_FORMAT_LINE_COUNT 0x00000320
564 #define NV_MEMORY_TO_MEMORY_FORMAT_FORMAT 0x00000324
565 #define NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_SHIFT 0
566 #define NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_INPUT_INC_MASK 0x0000000f
567 #define NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_SHIFT 8
568 #define NV_MEMORY_TO_MEMORY_FORMAT_FORMAT_OUTPUT_INC_MASK 0x00000f00
569 #define NV_MEMORY_TO_MEMORY_FORMAT_BUF_NOTIFY 0x00000328
572 #define NV01_MEMORY_LOCAL_BANKED 0x0000003d
576 #define NV01_MAPPING_SYSTEM 0x0000003e
580 #define NV03_MEMORY_LOCAL_CURSOR 0x0000003f
584 #define NV01_MEMORY_LOCAL_LINEAR 0x00000040
588 #define NV01_MAPPING_LOCAL 0x00000041
592 #define NV04_CONTEXT_SURFACES_2D 0x00000042
594 #define NV04_CONTEXT_SURFACES_2D_NOP 0x00000100
595 #define NV04_CONTEXT_SURFACES_2D_NOTIFY 0x00000104
596 #define NV04_CONTEXT_SURFACES_2D_PM_TRIGGER 0x00000140
597 #define NV04_CONTEXT_SURFACES_2D_DMA_NOTIFY 0x00000180
598 #define NV04_CONTEXT_SURFACES_2D_DMA_IMAGE_SOURCE 0x00000184
599 #define NV04_CONTEXT_SURFACES_2D_DMA_IMAGE_DESTIN 0x00000188
600 #define NV04_CONTEXT_SURFACES_2D_FORMAT 0x00000300
601 #define NV04_CONTEXT_SURFACES_2D_FORMAT_Y8 0x00000001
602 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X1R5G5B5_Z1R5G5B5 0x00000002
603 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X1R5G5B5_X1R5G5B5 0x00000003
604 #define NV04_CONTEXT_SURFACES_2D_FORMAT_R5G6B5 0x00000004
605 #define NV04_CONTEXT_SURFACES_2D_FORMAT_Y16 0x00000005
606 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X8R8G8B8_Z8R8G8B8 0x00000006
607 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X8R8G8B8_X8R8G8B8 0x00000007
608 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X1A7R8G8B8_Z1A7R8G8B8 0x00000008
609 #define NV04_CONTEXT_SURFACES_2D_FORMAT_X1A7R8G8B8_X1A7R8G8B8 0x00000009
610 #define NV04_CONTEXT_SURFACES_2D_FORMAT_A8R8G8B8 0x0000000a
611 #define NV04_CONTEXT_SURFACES_2D_FORMAT_Y32 0x0000000b
612 #define NV04_CONTEXT_SURFACES_2D_PITCH 0x00000304
613 #define NV04_CONTEXT_SURFACES_2D_PITCH_SOURCE_SHIFT 0
614 #define NV04_CONTEXT_SURFACES_2D_PITCH_SOURCE_MASK 0x0000ffff
615 #define NV04_CONTEXT_SURFACES_2D_PITCH_DESTIN_SHIFT 16
616 #define NV04_CONTEXT_SURFACES_2D_PITCH_DESTIN_MASK 0xffff0000
617 #define NV04_CONTEXT_SURFACES_2D_OFFSET_SOURCE 0x00000308
618 #define NV04_CONTEXT_SURFACES_2D_OFFSET_DESTIN 0x0000030c
621 #define NV03_CONTEXT_ROP 0x00000043
623 #define NV03_CONTEXT_ROP_NOP 0x00000100
624 #define NV03_CONTEXT_ROP_NOTIFY 0x00000104
625 #define NV03_CONTEXT_ROP_DMA_NOTIFY 0x00000180
626 #define NV03_CONTEXT_ROP_ROP 0x00000300
627 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_SHIFT 0
628 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_MASK 0x0000000f
629 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_CLEAR 0x00000000
630 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_NOR 0x00000001
631 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_AND_INVERTED 0x00000002
632 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_COPY_INVERTED 0x00000003
633 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_AND_REVERSE 0x00000004
634 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_INVERT 0x00000005
635 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_XOR 0x00000006
636 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_NAND 0x00000007
637 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_AND 0x00000008
638 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_EQUI 0x00000009
639 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_NOOP 0x0000000a
640 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_OR_INVERTED 0x0000000b
641 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_COPY 0x0000000c
642 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_OR_REVERSE 0x0000000d
643 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_OR 0x0000000e
644 #define NV03_CONTEXT_ROP_ROP_DST_LOGIC_OP_SET 0x0000000f
645 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_SHIFT 4
646 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_MASK 0x000000f0
647 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_CLEAR 0x00000000
648 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_NOR 0x00000010
649 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_AND_INVERTED 0x00000020
650 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_COPY_INVERTED 0x00000030
651 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_AND_REVERSE 0x00000040
652 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_INVERT 0x00000050
653 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_XOR 0x00000060
654 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_NAND 0x00000070
655 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_AND 0x00000080
656 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_EQUI 0x00000090
657 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_NOOP 0x000000a0
658 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_OR_INVERTED 0x000000b0
659 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_COPY 0x000000c0
660 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_OR_REVERSE 0x000000d0
661 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_OR 0x000000e0
662 #define NV03_CONTEXT_ROP_ROP_SRC_LOGIC_OP_SET 0x000000f0
665 #define NV04_IMAGE_PATTERN 0x00000044
667 #define NV04_IMAGE_PATTERN_NOP 0x00000100
668 #define NV04_IMAGE_PATTERN_NOTIFY 0x00000104
669 #define NV04_IMAGE_PATTERN_DMA_NOTIFY 0x00000180
670 #define NV04_IMAGE_PATTERN_COLOR_FORMAT 0x00000300
671 #define NV04_IMAGE_PATTERN_COLOR_FORMAT_A16R5G6B5 0x00000001
672 #define NV04_IMAGE_PATTERN_COLOR_FORMAT_X16A1R5G5B5 0x00000002
673 #define NV04_IMAGE_PATTERN_COLOR_FORMAT_A8R8G8B8 0x00000003
674 #define NV04_IMAGE_PATTERN_MONOCHROME_FORMAT 0x00000304
675 #define NV04_IMAGE_PATTERN_MONOCHROME_FORMAT_CGA6 0x00000001
676 #define NV04_IMAGE_PATTERN_MONOCHROME_FORMAT_LE 0x00000002
677 #define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE 0x00000308
678 #define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE_8X8 0x00000000
679 #define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE_64X1 0x00000001
680 #define NV04_IMAGE_PATTERN_MONOCHROME_SHAPE_1X64 0x00000002
681 #define NV04_IMAGE_PATTERN_PATTERN_SELECT 0x0000030c
682 #define NV04_IMAGE_PATTERN_PATTERN_SELECT_MONO 0x00000001
683 #define NV04_IMAGE_PATTERN_PATTERN_SELECT_COLOR 0x00000002
684 #define NV04_IMAGE_PATTERN_MONOCHROME_COLOR0 0x00000310
685 #define NV04_IMAGE_PATTERN_MONOCHROME_COLOR1 0x00000314
686 #define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN0 0x00000318
687 #define NV04_IMAGE_PATTERN_MONOCHROME_PATTERN1 0x0000031c
688 #define NV04_IMAGE_PATTERN_PATTERN_Y8(x) (0x00000400+((x)*4))
689 #define NV04_IMAGE_PATTERN_PATTERN_Y8__SIZE 0x00000010
690 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y0_SHIFT 0
691 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y0_MASK 0x000000ff
692 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y1_SHIFT 8
693 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y1_MASK 0x0000ff00
694 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y2_SHIFT 16
695 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y2_MASK 0x00ff0000
696 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y3_SHIFT 24
697 #define NV04_IMAGE_PATTERN_PATTERN_Y8_Y3_MASK 0xff000000
698 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5(x) (0x00000500+((x)*4))
699 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5__SIZE 0x00000020
700 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_B0_SHIFT 0
701 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_B0_MASK 0x0000001f
702 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_G0_SHIFT 5
703 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_G0_MASK 0x000007e0
704 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_R0_SHIFT 11
705 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_R0_MASK 0x0000f800
706 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_B1_SHIFT 16
707 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_B1_MASK 0x001f0000
708 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_G1_SHIFT 21
709 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_G1_MASK 0x07e00000
710 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_R1_SHIFT 27
711 #define NV04_IMAGE_PATTERN_PATTERN_R5G6B5_R1_MASK 0xf8000000
712 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5(x) (0x00000600+((x)*4))
713 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5__SIZE 0x00000020
714 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_B0_SHIFT 0
715 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_B0_MASK 0x0000001f
716 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_G0_SHIFT 5
717 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_G0_MASK 0x000003e0
718 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_R0_SHIFT 10
719 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_R0_MASK 0x00007c00
720 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_B1_SHIFT 16
721 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_B1_MASK 0x001f0000
722 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_G1_SHIFT 21
723 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_G1_MASK 0x03e00000
724 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_R1_SHIFT 26
725 #define NV04_IMAGE_PATTERN_PATTERN_X1R5G5B5_R1_MASK 0x7c000000
726 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8(x) (0x00000700+((x)*4))
727 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8__SIZE 0x00000040
728 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_B_SHIFT 0
729 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_B_MASK 0x000000ff
730 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_G_SHIFT 8
731 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_G_MASK 0x0000ff00
732 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_R_SHIFT 16
733 #define NV04_IMAGE_PATTERN_PATTERN_X8R8G8B8_R_MASK 0x00ff0000
736 #define NV03_VIDEO_LUT_CURSOR_DAC 0x00000046
738 #define NV03_VIDEO_LUT_CURSOR_DAC_SYNCHRONIZE 0x00000100
739 #define NV03_VIDEO_LUT_CURSOR_DAC_STOP_IMAGE 0x00000104
740 #define NV03_VIDEO_LUT_CURSOR_DAC_STOP_CURSOR 0x00000108
741 #define NV03_VIDEO_LUT_CURSOR_DAC_STOP_DAC 0x0000010c
742 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_NOTIFY 0x00000180
743 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_IMAGE(x) (0x00000184+((x)*4))
744 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_IMAGE__SIZE 0x00000002
745 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_LUT(x) (0x0000018c+((x)*4))
746 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_LUT__SIZE 0x00000002
747 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_CURSOR(x) (0x00000194+((x)*4))
748 #define NV03_VIDEO_LUT_CURSOR_DAC_DMA_CURSOR__SIZE 0x00000002
749 #define NV03_VIDEO_LUT_CURSOR_DAC_GET 0x000002fc
750 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_OFFSET(x) (0x00000300+((x)*8))
751 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_OFFSET__SIZE 0x00000002
752 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT(x) (0x00000304+((x)*8))
753 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT__SIZE 0x00000002
754 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_PITCH_SHIFT 0
755 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_PITCH_MASK 0x0000ffff
756 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_COLOR_SHIFT 16
757 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_COLOR_MASK 0x0fff0000
758 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_NOTIFY_SHIFT 28
759 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_IMAGE_FORMAT_NOTIFY_MASK 0xf0000000
760 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_OFFSET(x) (0x00000340+((x)*12))
761 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_OFFSET__SIZE 0x00000002
762 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT(x) (0x00000344+((x)*12))
763 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT__SIZE 0x00000002
764 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_X_SHIFT 0
765 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_X_MASK 0x0000ffff
766 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_Y_SHIFT 16
767 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_Y_MASK 0xffff0000
768 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_FORMAT(x) (0x00000348+((x)*12))
769 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_FORMAT__SIZE 0x00000002
770 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_A 0x00000358
771 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_A_X_SHIFT 0
772 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_A_X_MASK 0x0000ffff
773 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_A_Y_SHIFT 16
774 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_CURSOR_POINT_OUT_A_Y_MASK 0xffff0000
775 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE(x) (0x00000380+((x)*16))
776 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE__SIZE 0x00000002
777 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE_W_SHIFT 0
778 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE_W_MASK 0x0000ffff
779 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE_H_SHIFT 16
780 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_IMAGE_SIZE_H_MASK 0xffff0000
781 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC(x) (0x00000384+((x)*16))
782 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC__SIZE 0x00000002
783 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_START_SHIFT 0
784 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_START_MASK 0x0000ffff
785 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_WIDTH_SHIFT 16
786 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_WIDTH_MASK 0x0fff0000
787 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_POLARITY_SHIFT 28
788 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_HSYNC_POLARITY_MASK 0xf0000000
789 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC(x) (0x00000388+((x)*16))
790 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC__SIZE 0x00000002
791 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_START_SHIFT 0
792 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_START_MASK 0x0000ffff
793 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_WIDTH_SHIFT 16
794 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_WIDTH_MASK 0x0fff0000
795 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_POLARITY_SHIFT 28
796 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_VSYNC_POLARITY_MASK 0xf0000000
797 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE(x) (0x0000038c+((x)*16))
798 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE__SIZE 0x00000002
799 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_WIDTH_SHIFT 0
800 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_WIDTH_MASK 0x0000ffff
801 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_HEIGHT_SHIFT 16
802 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_HEIGHT_MASK 0x0fff0000
803 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_NOTIFY_SHIFT 28
804 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_DAC_TOTAL_SIZE_NOTIFY_MASK 0xf0000000
805 #define NV03_VIDEO_LUT_CURSOR_DAC_SET_PIXEL_CLOCK 0x000003a0
808 #define NV03_DX3_TEXTURED_TRIANGLE 0x00000048
810 #define NV03_DX3_TEXTURED_TRIANGLE_NOP 0x00000100
811 #define NV03_DX3_TEXTURED_TRIANGLE_NOTIFY 0x00000104
812 #define NV03_DX3_TEXTURED_TRIANGLE_PATCH 0x0000010c
813 #define NV03_DX3_TEXTURED_TRIANGLE_DMA_NOTIFY 0x00000180
814 #define NV03_DX3_TEXTURED_TRIANGLE_DMA_TEXTURE 0x00000184
815 #define NV03_DX3_TEXTURED_TRIANGLE_CLIP_RECTANGLE 0x00000188
816 #define NV03_DX3_TEXTURED_TRIANGLE_SURFACE 0x0000018c
817 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_OFFSET 0x00000304
818 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT 0x00000308
819 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_KEY_MASK_SHIFT 0
820 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_KEY_MASK_MASK 0x0000ffff
821 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_KEY_ENABLE_SHIFT 16
822 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_KEY_ENABLE_MASK 0x000f0000
823 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_SHIFT 20
824 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_COLOR_MASK 0x00f00000
825 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_MIN_SHIFT 24
826 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_MIN_MASK 0x0f000000
827 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_MAX_SHIFT 28
828 #define NV03_DX3_TEXTURED_TRIANGLE_TEXTURE_FORMAT_SIZE_MAX_MASK 0xf0000000
829 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER 0x0000030c
830 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SPREAD_X_SHIFT 0
831 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SPREAD_X_MASK 0x0000001f
832 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SPREAD_Y_SHIFT 8
833 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SPREAD_Y_MASK 0x00001f00
834 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SIZE_ADJUST_SHIFT 16
835 #define NV03_DX3_TEXTURED_TRIANGLE_FILTER_SIZE_ADJUST_MASK 0x00ff0000
836 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR 0x00000310
837 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_B_SHIFT 0
838 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_B_MASK 0x000000ff
839 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_G_SHIFT 8
840 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_G_MASK 0x0000ff00
841 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_R_SHIFT 16
842 #define NV03_DX3_TEXTURED_TRIANGLE_FOG_COLOR_R_MASK 0x00ff0000
843 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT 0x00000314
844 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_INTERPOLATOR_SHIFT 0
845 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_INTERPOLATOR_MASK 0x0000000f
846 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_WRAP_U_SHIFT 4
847 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_WRAP_U_MASK 0x00000030
848 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_WRAP_V_SHIFT 6
849 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_WRAP_V_MASK 0x000000c0
850 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_SOURCE_COLOR_SHIFT 8
851 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_SOURCE_COLOR_MASK 0x00000f00
852 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_CULLING_SHIFT 12
853 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_CULLING_MASK 0x00007000
854 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_Z_PERSPECTIVE_ENABLE (1 << 15)
855 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_Z_FUNC_SHIFT 16
856 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_Z_FUNC_MASK 0x000f0000
857 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_Z_WRITE_ENABLE_SHIFT 20
858 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_Z_WRITE_ENABLE_MASK 0x00f00000
859 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_COLOR_WRITE_ENABLE_SHIFT 24
860 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_COLOR_WRITE_ENABLE_MASK 0x07000000
861 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_ROP_SHIFT 27
862 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_ROP_MASK 0x18000000
863 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_BETA (1 << 29)
864 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_DST_BLEND (1 << 30)
865 #define NV03_DX3_TEXTURED_TRIANGLE_CONTROL_OUT_SRC_BLEND (1 << 31)
866 #define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL 0x00000318
867 #define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_REF_SHIFT 0
868 #define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_REF_MASK 0x000000ff
869 #define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_SHIFT 8
870 #define NV03_DX3_TEXTURED_TRIANGLE_ALPHA_CONTROL_ALPHA_FUNC_MASK 0xffffff00
871 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR(x) (0x00001000+((x)*32))
872 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR__SIZE 0x00000040
873 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I0_SHIFT 0
874 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I0_MASK 0x0000000f
875 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I1_SHIFT 4
876 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I1_MASK 0x000000f0
877 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I2_SHIFT 8
878 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I2_MASK 0x00000f00
879 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I3_SHIFT 12
880 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I3_MASK 0x0000f000
881 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I4_SHIFT 16
882 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I4_MASK 0x000f0000
883 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I5_SHIFT 20
884 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_I5_MASK 0x00f00000
885 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_FOG_SHIFT 24
886 #define NV03_DX3_TEXTURED_TRIANGLE_SPECULAR_FOG_MASK 0xff000000
887 #define NV03_DX3_TEXTURED_TRIANGLE_COLOR(x) (0x00001004+((x)*32))
888 #define NV03_DX3_TEXTURED_TRIANGLE_COLOR__SIZE 0x00000040
889 #define NV03_DX3_TEXTURED_TRIANGLE_X(x) (0x00001008+((x)*32))
890 #define NV03_DX3_TEXTURED_TRIANGLE_X__SIZE 0x00000040
891 #define NV03_DX3_TEXTURED_TRIANGLE_Y(x) (0x0000100c+((x)*32))
892 #define NV03_DX3_TEXTURED_TRIANGLE_Y__SIZE 0x00000040
893 #define NV03_DX3_TEXTURED_TRIANGLE_Z(x) (0x00001010+((x)*32))
894 #define NV03_DX3_TEXTURED_TRIANGLE_Z__SIZE 0x00000040
895 #define NV03_DX3_TEXTURED_TRIANGLE_M(x) (0x00001014+((x)*32))
896 #define NV03_DX3_TEXTURED_TRIANGLE_M__SIZE 0x00000040
897 #define NV03_DX3_TEXTURED_TRIANGLE_U(x) (0x00001018+((x)*32))
898 #define NV03_DX3_TEXTURED_TRIANGLE_U__SIZE 0x00000040
899 #define NV03_DX3_TEXTURED_TRIANGLE_V(x) (0x0000101c+((x)*32))
900 #define NV03_DX3_TEXTURED_TRIANGLE_V__SIZE 0x00000040
903 #define NV04_GDI_RECTANGLE_TEXT 0x0000004a
905 #define NV04_GDI_RECTANGLE_TEXT_NOP 0x00000100
906 #define NV04_GDI_RECTANGLE_TEXT_NOTIFY 0x00000104
907 #define NV04_GDI_RECTANGLE_TEXT_PATCH 0x0000010c
908 #define NV04_GDI_RECTANGLE_TEXT_PM_TRIGGER 0x00000140
909 #define NV04_GDI_RECTANGLE_TEXT_DMA_NOTIFY 0x00000180
910 #define NV04_GDI_RECTANGLE_TEXT_DMA_FONTS 0x00000184
911 #define NV04_GDI_RECTANGLE_TEXT_PATTERN 0x00000188
912 #define NV04_GDI_RECTANGLE_TEXT_ROP 0x0000018c
913 #define NV04_GDI_RECTANGLE_TEXT_BETA1 0x00000190
914 #define NV04_GDI_RECTANGLE_TEXT_BETA4 0x00000194
915 #define NV04_GDI_RECTANGLE_TEXT_SURFACE 0x00000198
916 #define NV04_GDI_RECTANGLE_TEXT_OPERATION 0x000002fc
917 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_SRCCOPY_AND 0x00000000
918 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_ROP_AND 0x00000001
919 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_BLEND_AND 0x00000002
920 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_SRCCOPY 0x00000003
921 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_SRCCOPY_PREMULT 0x00000004
922 #define NV04_GDI_RECTANGLE_TEXT_OPERATION_BLEND_PREMULT 0x00000005
923 #define NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT 0x00000300
924 #define NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT_A16R5G6B5 0x00000001
925 #define NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT_X16A1R5G5B5 0x00000002
926 #define NV04_GDI_RECTANGLE_TEXT_COLOR_FORMAT_A8R8G8B8 0x00000003
927 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_FORMAT 0x00000304
928 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_FORMAT_CGA6 0x00000001
929 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_FORMAT_LE 0x00000002
930 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_A 0x000003fc
931 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT(x) (0x00000400+((x)*8))
932 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT__SIZE 0x00000020
933 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_Y_SHIFT 0
934 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_Y_MASK 0x0000ffff
935 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_X_SHIFT 16
936 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_X_MASK 0xffff0000
937 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE(x) (0x00000404+((x)*8))
938 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE__SIZE 0x00000020
939 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_H_SHIFT 0
940 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_H_MASK 0x0000ffff
941 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_W_SHIFT 16
942 #define NV04_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_W_MASK 0xffff0000
943 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT0 0x000005f4
944 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT0_L_SHIFT 0
945 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT0_L_MASK 0x0000ffff
946 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT0_T_SHIFT 16
947 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT0_T_MASK 0xffff0000
948 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT1 0x000005f8
949 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT1_R_SHIFT 0
950 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT1_R_MASK 0x0000ffff
951 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT1_B_SHIFT 16
952 #define NV04_GDI_RECTANGLE_TEXT_CLIP_B_POINT1_B_MASK 0xffff0000
953 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_B 0x000005fc
954 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0(x) (0x00000600+((x)*8))
955 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0__SIZE 0x00000020
956 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_L_SHIFT 0
957 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_L_MASK 0x0000ffff
958 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_T_SHIFT 16
959 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_T_MASK 0xffff0000
960 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1(x) (0x00000604+((x)*8))
961 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1__SIZE 0x00000020
962 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_R_SHIFT 0
963 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_R_MASK 0x0000ffff
964 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_B_SHIFT 16
965 #define NV04_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_B_MASK 0xffff0000
966 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT0 0x000007ec
967 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_L_SHIFT 0
968 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_L_MASK 0x0000ffff
969 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_T_SHIFT 16
970 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_T_MASK 0xffff0000
971 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT1 0x000007f0
972 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_R_SHIFT 0
973 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_R_MASK 0x0000ffff
974 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_B_SHIFT 16
975 #define NV04_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_B_MASK 0xffff0000
976 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_C 0x000007f4
977 #define NV04_GDI_RECTANGLE_TEXT_SIZE_C 0x000007f8
978 #define NV04_GDI_RECTANGLE_TEXT_SIZE_C_W_SHIFT 0
979 #define NV04_GDI_RECTANGLE_TEXT_SIZE_C_W_MASK 0x0000ffff
980 #define NV04_GDI_RECTANGLE_TEXT_SIZE_C_H_SHIFT 16
981 #define NV04_GDI_RECTANGLE_TEXT_SIZE_C_H_MASK 0xffff0000
982 #define NV04_GDI_RECTANGLE_TEXT_POINT_C 0x000007fc
983 #define NV04_GDI_RECTANGLE_TEXT_POINT_C_X_SHIFT 0
984 #define NV04_GDI_RECTANGLE_TEXT_POINT_C_X_MASK 0x0000ffff
985 #define NV04_GDI_RECTANGLE_TEXT_POINT_C_Y_SHIFT 16
986 #define NV04_GDI_RECTANGLE_TEXT_POINT_C_Y_MASK 0xffff0000
987 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_C(x) (0x00000800+((x)*4))
988 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_C__SIZE 0x00000080
989 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT0 0x00000be4
990 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_L_SHIFT 0
991 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_L_MASK 0x0000ffff
992 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_T_SHIFT 16
993 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_T_MASK 0xffff0000
994 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT1 0x00000be8
995 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_R_SHIFT 0
996 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_R_MASK 0x0000ffff
997 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_B_SHIFT 16
998 #define NV04_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_B_MASK 0xffff0000
999 #define NV04_GDI_RECTANGLE_TEXT_COLOR0_E 0x00000bec
1000 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_E 0x00000bf0
1001 #define NV04_GDI_RECTANGLE_TEXT_SIZE_IN_E 0x00000bf4
1002 #define NV04_GDI_RECTANGLE_TEXT_SIZE_IN_E_W_SHIFT 0
1003 #define NV04_GDI_RECTANGLE_TEXT_SIZE_IN_E_W_MASK 0x0000ffff
1004 #define NV04_GDI_RECTANGLE_TEXT_SIZE_IN_E_H_SHIFT 16
1005 #define NV04_GDI_RECTANGLE_TEXT_SIZE_IN_E_H_MASK 0xffff0000
1006 #define NV04_GDI_RECTANGLE_TEXT_SIZE_OUT_E 0x00000bf8
1007 #define NV04_GDI_RECTANGLE_TEXT_SIZE_OUT_E_W_SHIFT 0
1008 #define NV04_GDI_RECTANGLE_TEXT_SIZE_OUT_E_W_MASK 0x0000ffff
1009 #define NV04_GDI_RECTANGLE_TEXT_SIZE_OUT_E_H_SHIFT 16
1010 #define NV04_GDI_RECTANGLE_TEXT_SIZE_OUT_E_H_MASK 0xffff0000
1011 #define NV04_GDI_RECTANGLE_TEXT_POINT_E 0x00000bfc
1012 #define NV04_GDI_RECTANGLE_TEXT_POINT_E_X_SHIFT 0
1013 #define NV04_GDI_RECTANGLE_TEXT_POINT_E_X_MASK 0x0000ffff
1014 #define NV04_GDI_RECTANGLE_TEXT_POINT_E_Y_SHIFT 16
1015 #define NV04_GDI_RECTANGLE_TEXT_POINT_E_Y_MASK 0xffff0000
1016 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR01_E(x) (0x00000c00+((x)*4))
1017 #define NV04_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR01_E__SIZE 0x00000080
1018 #define NV04_GDI_RECTANGLE_TEXT_FONT_F 0x00000ff0
1019 #define NV04_GDI_RECTANGLE_TEXT_FONT_F_OFFSET_SHIFT 0
1020 #define NV04_GDI_RECTANGLE_TEXT_FONT_F_OFFSET_MASK 0x0fffffff
1021 #define NV04_GDI_RECTANGLE_TEXT_FONT_F_PITCH_SHIFT 28
1022 #define NV04_GDI_RECTANGLE_TEXT_FONT_F_PITCH_MASK 0xf0000000
1023 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT0 0x00000ff4
1024 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT0_L_SHIFT 0
1025 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT0_L_MASK 0x0000ffff
1026 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT0_T_SHIFT 16
1027 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT0_T_MASK 0xffff0000
1028 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT1 0x00000ff8
1029 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT1_R_SHIFT 0
1030 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT1_R_MASK 0x0000ffff
1031 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT1_B_SHIFT 16
1032 #define NV04_GDI_RECTANGLE_TEXT_CLIP_F_POINT1_B_MASK 0xffff0000
1033 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_F 0x00000ffc
1034 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F(x) (0x00001000+((x)*4))
1035 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F__SIZE 0x00000100
1036 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_INDEX_SHIFT 0
1037 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_INDEX_MASK 0x000000ff
1038 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_X_SHIFT 8
1039 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_X_MASK 0x000fff00
1040 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_Y_SHIFT 20
1041 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_F_Y_MASK 0xfff00000
1042 #define NV04_GDI_RECTANGLE_TEXT_FONT_G 0x000017f0
1043 #define NV04_GDI_RECTANGLE_TEXT_FONT_G_OFFSET_SHIFT 0
1044 #define NV04_GDI_RECTANGLE_TEXT_FONT_G_OFFSET_MASK 0x0fffffff
1045 #define NV04_GDI_RECTANGLE_TEXT_FONT_G_PITCH_SHIFT 28
1046 #define NV04_GDI_RECTANGLE_TEXT_FONT_G_PITCH_MASK 0xf0000000
1047 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT0 0x000017f4
1048 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT0_L_SHIFT 0
1049 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT0_L_MASK 0x0000ffff
1050 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT0_T_SHIFT 16
1051 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT0_T_MASK 0xffff0000
1052 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT1 0x000017f8
1053 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT1_R_SHIFT 0
1054 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT1_R_MASK 0x0000ffff
1055 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT1_B_SHIFT 16
1056 #define NV04_GDI_RECTANGLE_TEXT_CLIP_G_POINT1_B_MASK 0xffff0000
1057 #define NV04_GDI_RECTANGLE_TEXT_COLOR1_G 0x000017fc
1058 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT(x) (0x00001800+((x)*8))
1059 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT__SIZE 0x00000100
1060 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT_X_SHIFT 0
1061 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT_X_MASK 0x0000ffff
1062 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT_Y_SHIFT 16
1063 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_POINT_Y_MASK 0xffff0000
1064 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_INDEX(x) (0x00001804+((x)*8))
1065 #define NV04_GDI_RECTANGLE_TEXT_CHARACTER_COLOR1_G_INDEX__SIZE 0x00000100
1068 #define NV03_GDI_RECTANGLE_TEXT 0x0000004b
1070 #define NV03_GDI_RECTANGLE_TEXT_NOP 0x00000100
1071 #define NV03_GDI_RECTANGLE_TEXT_NOTIFY 0x00000104
1072 #define NV03_GDI_RECTANGLE_TEXT_DMA_NOTIFY 0x00000180
1073 #define NV03_GDI_RECTANGLE_TEXT_PATTERN 0x00000184
1074 #define NV03_GDI_RECTANGLE_TEXT_ROP 0x00000188
1075 #define NV03_GDI_RECTANGLE_TEXT_BETA1 0x0000018c
1076 #define NV03_GDI_RECTANGLE_TEXT_SURFACE 0x00000190
1077 #define NV03_GDI_RECTANGLE_TEXT_OPERATION 0x000002fc
1078 #define NV03_GDI_RECTANGLE_TEXT_COLOR_FORMAT 0x00000300
1079 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_FORMAT 0x00000304
1080 #define NV03_GDI_RECTANGLE_TEXT_COLOR1_A 0x000003fc
1081 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT 0x00000400
1082 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_Y_SHIFT 0
1083 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_Y_MASK 0x0000ffff
1084 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_X_SHIFT 16
1085 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_POINT_X_MASK 0xffff0000
1086 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE 0x00000404
1087 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_H_SHIFT 0
1088 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_H_MASK 0x0000ffff
1089 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_W_SHIFT 16
1090 #define NV03_GDI_RECTANGLE_TEXT_UNCLIPPED_RECTANGLE_SIZE_W_MASK 0xffff0000
1091 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT0_B 0x000007f4
1092 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT0_B_L_SHIFT 0
1093 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT0_B_L_MASK 0x0000ffff
1094 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT0_B_T_SHIFT 16
1095 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT0_B_T_MASK 0xffff0000
1096 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT1_B 0x000007f8
1097 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT1_B_R_SHIFT 0
1098 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT1_B_R_MASK 0x0000ffff
1099 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT1_B_B_SHIFT 16
1100 #define NV03_GDI_RECTANGLE_TEXT_CLIP_POINT1_B_B_MASK 0xffff0000
1101 #define NV03_GDI_RECTANGLE_TEXT_COLOR1_B 0x000007fc
1102 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0 0x00000800
1103 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_L_SHIFT 0
1104 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_L_MASK 0x0000ffff
1105 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_T_SHIFT 16
1106 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_0_T_MASK 0xffff0000
1107 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1 0x00000804
1108 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_R_SHIFT 0
1109 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_R_MASK 0x0000ffff
1110 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_B_SHIFT 16
1111 #define NV03_GDI_RECTANGLE_TEXT_CLIPPED_RECTANGLE_POINT_1_B_MASK 0xffff0000
1112 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT0 0x00000bec
1113 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_L_SHIFT 0
1114 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_L_MASK 0x0000ffff
1115 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_T_SHIFT 16
1116 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT0_T_MASK 0xffff0000
1117 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT1 0x00000bf0
1118 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_R_SHIFT 0
1119 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_R_MASK 0x0000ffff
1120 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_B_SHIFT 16
1121 #define NV03_GDI_RECTANGLE_TEXT_CLIP_C_POINT1_B_MASK 0xffff0000
1122 #define NV03_GDI_RECTANGLE_TEXT_COLOR1_C 0x00000bf4
1123 #define NV03_GDI_RECTANGLE_TEXT_SIZE_C 0x00000bf8
1124 #define NV03_GDI_RECTANGLE_TEXT_SIZE_C_W_SHIFT 0
1125 #define NV03_GDI_RECTANGLE_TEXT_SIZE_C_W_MASK 0x0000ffff
1126 #define NV03_GDI_RECTANGLE_TEXT_SIZE_C_H_SHIFT 16
1127 #define NV03_GDI_RECTANGLE_TEXT_SIZE_C_H_MASK 0xffff0000
1128 #define NV03_GDI_RECTANGLE_TEXT_POINT_C 0x00000bfc
1129 #define NV03_GDI_RECTANGLE_TEXT_POINT_C_X_SHIFT 0
1130 #define NV03_GDI_RECTANGLE_TEXT_POINT_C_X_MASK 0x0000ffff
1131 #define NV03_GDI_RECTANGLE_TEXT_POINT_C_Y_SHIFT 16
1132 #define NV03_GDI_RECTANGLE_TEXT_POINT_C_Y_MASK 0xffff0000
1133 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_C(x) (0x00000c00+((x)*4))
1134 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_C__SIZE 0x00000020
1135 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT0 0x00000fe8
1136 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT0_L_SHIFT 0
1137 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT0_L_MASK 0x0000ffff
1138 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT0_T_SHIFT 16
1139 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT0_T_MASK 0xffff0000
1140 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT1 0x00000fec
1141 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT1_R_SHIFT 0
1142 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT1_R_MASK 0x0000ffff
1143 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT1_B_SHIFT 16
1144 #define NV03_GDI_RECTANGLE_TEXT_CLIP_D_POINT1_B_MASK 0xffff0000
1145 #define NV03_GDI_RECTANGLE_TEXT_COLOR1_D 0x00000ff0
1146 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_D 0x00000ff4
1147 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_D_W_SHIFT 0
1148 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_D_W_MASK 0x0000ffff
1149 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_D_H_SHIFT 16
1150 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_D_H_MASK 0xffff0000
1151 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_D 0x00000ff8
1152 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_D_W_SHIFT 0
1153 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_D_W_MASK 0x0000ffff
1154 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_D_H_SHIFT 16
1155 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_D_H_MASK 0xffff0000
1156 #define NV03_GDI_RECTANGLE_TEXT_POINT_D 0x00000ffc
1157 #define NV03_GDI_RECTANGLE_TEXT_POINT_D_X_SHIFT 0
1158 #define NV03_GDI_RECTANGLE_TEXT_POINT_D_X_MASK 0x0000ffff
1159 #define NV03_GDI_RECTANGLE_TEXT_POINT_D_Y_SHIFT 16
1160 #define NV03_GDI_RECTANGLE_TEXT_POINT_D_Y_MASK 0xffff0000
1161 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_D(x) (0x00001000+((x)*4))
1162 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR1_D__SIZE 0x00000020
1163 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT0 0x000013e4
1164 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_L_SHIFT 0
1165 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_L_MASK 0x0000ffff
1166 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_T_SHIFT 16
1167 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT0_T_MASK 0xffff0000
1168 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT1 0x000013e8
1169 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_R_SHIFT 0
1170 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_R_MASK 0x0000ffff
1171 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_B_SHIFT 16
1172 #define NV03_GDI_RECTANGLE_TEXT_CLIP_E_POINT1_B_MASK 0xffff0000
1173 #define NV03_GDI_RECTANGLE_TEXT_COLOR0_E 0x000013ec
1174 #define NV03_GDI_RECTANGLE_TEXT_COLOR1_E 0x000013f0
1175 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_E 0x000013f4
1176 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_E_W_SHIFT 0
1177 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_E_W_MASK 0x0000ffff
1178 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_E_H_SHIFT 16
1179 #define NV03_GDI_RECTANGLE_TEXT_SIZE_IN_E_H_MASK 0xffff0000
1180 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_E 0x000013f8
1181 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_E_W_SHIFT 0
1182 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_E_W_MASK 0x0000ffff
1183 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_E_H_SHIFT 16
1184 #define NV03_GDI_RECTANGLE_TEXT_SIZE_OUT_E_H_MASK 0xffff0000
1185 #define NV03_GDI_RECTANGLE_TEXT_POINT_E 0x000013fc
1186 #define NV03_GDI_RECTANGLE_TEXT_POINT_E_X_SHIFT 0
1187 #define NV03_GDI_RECTANGLE_TEXT_POINT_E_X_MASK 0x0000ffff
1188 #define NV03_GDI_RECTANGLE_TEXT_POINT_E_Y_SHIFT 16
1189 #define NV03_GDI_RECTANGLE_TEXT_POINT_E_Y_MASK 0xffff0000
1190 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR01_E(x) (0x00001400+((x)*4))
1191 #define NV03_GDI_RECTANGLE_TEXT_MONOCHROME_COLOR01_E__SIZE 0x00000020
1194 #define NV04_SWIZZLED_SURFACE 0x00000052
1196 #define NV04_SWIZZLED_SURFACE_NOP 0x00000100
1197 #define NV04_SWIZZLED_SURFACE_NOTIFY 0x00000104
1198 #define NV04_SWIZZLED_SURFACE_DMA_NOTIFY 0x00000180
1199 #define NV04_SWIZZLED_SURFACE_DMA_IMAGE 0x00000184
1200 #define NV04_SWIZZLED_SURFACE_FORMAT 0x00000300
1201 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_SHIFT 0
1202 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_MASK 0x000000ff
1203 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_Y8 0x00000001
1204 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X1R5G5B5_Z1R5G5B5 0x00000002
1205 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X1R5G5B5_X1R5G5B5 0x00000003
1206 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_R5G6B5 0x00000004
1207 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_Y16 0x00000005
1208 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X8R8G8B8_Z8R8G8B8 0x00000006
1209 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X8R8G8B8_X8R8G8B8 0x00000007
1210 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X1A7R8G8B8_Z1A7R8G8B8 0x00000008
1211 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_X1A7R8G8B8_X1A7R8G8B8 0x00000009
1212 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_A8R8G8B8 0x0000000a
1213 #define NV04_SWIZZLED_SURFACE_FORMAT_COLOR_Y32 0x0000000b
1214 #define NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_U_SHIFT 16
1215 #define NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_U_MASK 0x00ff0000
1216 #define NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_V_SHIFT 24
1217 #define NV04_SWIZZLED_SURFACE_FORMAT_BASE_SIZE_V_MASK 0xff000000
1218 #define NV04_SWIZZLED_SURFACE_OFFSET 0x00000304
1221 #define NV04_CONTEXT_SURFACES_3D 0x00000053
1223 #define NV04_CONTEXT_SURFACES_3D_NOP 0x00000100
1224 #define NV04_CONTEXT_SURFACES_3D_NOTIFY 0x00000104
1225 #define NV04_CONTEXT_SURFACES_3D_DMA_NOTIFY 0x00000180
1226 #define NV04_CONTEXT_SURFACES_3D_DMA_COLOR 0x00000184
1227 #define NV04_CONTEXT_SURFACES_3D_DMA_ZETA 0x00000188
1228 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL 0x000002f8
1229 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_X_SHIFT 0
1230 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_X_MASK 0x0000ffff
1231 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_W_SHIFT 16
1232 #define NV04_CONTEXT_SURFACES_3D_CLIP_HORIZONTAL_W_MASK 0xffff0000
1233 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL 0x000002fc
1234 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_Y_SHIFT 0
1235 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_Y_MASK 0x0000ffff
1236 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_H_SHIFT 16
1237 #define NV04_CONTEXT_SURFACES_3D_CLIP_VERTICAL_H_MASK 0xffff0000
1238 #define NV04_CONTEXT_SURFACES_3D_FORMAT 0x00000300
1239 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_SHIFT 0
1240 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_MASK 0x000000ff
1241 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X1R5G5B5_Z1R5G5B5 0x00000001
1242 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X1R5G5B5_X1R5G5B5 0x00000002
1243 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_R5G6B5 0x00000003
1244 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X8R8G8B8_Z8R8G8B8 0x00000004
1245 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X8R8G8B8_X8R8G8B8 0x00000005
1246 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X1A7R8G8B8_Z1A7R8G8B8 0x00000006
1247 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_X1A7R8G8B8_X1A7R8G8B8 0x00000007
1248 #define NV04_CONTEXT_SURFACES_3D_FORMAT_COLOR_A8R8G8B8 0x00000008
1249 #define NV04_CONTEXT_SURFACES_3D_FORMAT_TYPE_SHIFT 8
1250 #define NV04_CONTEXT_SURFACES_3D_FORMAT_TYPE_MASK 0x0000ff00
1251 #define NV04_CONTEXT_SURFACES_3D_FORMAT_TYPE_PITCH 0x00000100
1252 #define NV04_CONTEXT_SURFACES_3D_FORMAT_TYPE_SWIZZLE 0x00000200
1253 #define NV04_CONTEXT_SURFACES_3D_FORMAT_BASE_SIZE_U_SHIFT 16
1254 #define NV04_CONTEXT_SURFACES_3D_FORMAT_BASE_SIZE_U_MASK 0x00ff0000
1255 #define NV04_CONTEXT_SURFACES_3D_FORMAT_BASE_SIZE_V_SHIFT 24
1256 #define NV04_CONTEXT_SURFACES_3D_FORMAT_BASE_SIZE_V_MASK 0xff000000
1257 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE 0x00000304
1258 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_W_SHIFT 0
1259 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_W_MASK 0x0000ffff
1260 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_H_SHIFT 16
1261 #define NV04_CONTEXT_SURFACES_3D_CLIP_SIZE_H_MASK 0xffff0000
1262 #define NV04_CONTEXT_SURFACES_3D_PITCH 0x00000308
1263 #define NV04_CONTEXT_SURFACES_3D_PITCH_COLOR_SHIFT 0
1264 #define NV04_CONTEXT_SURFACES_3D_PITCH_COLOR_MASK 0x0000ffff
1265 #define NV04_CONTEXT_SURFACES_3D_PITCH_ZETA_SHIFT 16
1266 #define NV04_CONTEXT_SURFACES_3D_PITCH_ZETA_MASK 0xffff0000
1267 #define NV04_CONTEXT_SURFACES_3D_OFFSET_COLOR 0x0000030c
1268 #define NV04_CONTEXT_SURFACES_3D_OFFSET_ZETA 0x00000310
1271 #define NV04_DX5_TEXTURED_TRIANGLE 0x00000054
1273 #define NV04_DX5_TEXTURED_TRIANGLE_NOP 0x00000100
1274 #define NV04_DX5_TEXTURED_TRIANGLE_NOTIFY 0x00000104
1275 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_NOTIFY 0x00000180
1276 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_A 0x00000184
1277 #define NV04_DX5_TEXTURED_TRIANGLE_DMA_B 0x00000188
1278 #define NV04_DX5_TEXTURED_TRIANGLE_SURFACE 0x0000018c
1279 #define NV04_DX5_TEXTURED_TRIANGLE_COLORKEY 0x00000300
1280 #define NV04_DX5_TEXTURED_TRIANGLE_OFFSET 0x00000304
1281 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT 0x00000308
1282 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_DMA_SHIFT 0
1283 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_DMA_MASK 0x00000003
1284 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_KEY_MATCH_SHIFT 2
1285 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_KEY_MATCH_MASK 0x0000000c
1286 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_ZOH_SHIFT 4
1287 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_ZOH_MASK 0x00000030
1288 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_ZOH_CENTER 0x00000010
1289 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_ZOH_CORNER 0x00000020
1290 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_FOH_SHIFT 6
1291 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_FOH_MASK 0x000000c0
1292 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_FOH_CENTER 0x00000040
1293 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ORIGIN_FOH_CORNER 0x00000080
1294 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_SHIFT 8
1295 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_MASK 0x00000f00
1296 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_Y8 0x00000100
1297 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_A1R5G5B5 0x00000200
1298 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_X1R5G5B5 0x00000300
1299 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_A4R4G4B4 0x00000400
1300 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_R5G6B5 0x00000500
1301 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_A8R8G8B8 0x00000600
1302 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_COLOR_X8R8G8B8 0x00000700
1303 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_MIPMAP_LEVELS_SHIFT 12
1304 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_MIPMAP_LEVELS_MASK 0x0000f000
1305 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_BASE_SIZE_U_SHIFT 16
1306 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_BASE_SIZE_U_MASK 0x000f0000
1307 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_BASE_SIZE_V_SHIFT 20
1308 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_BASE_SIZE_V_MASK 0x00f00000
1309 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_SHIFT 24
1310 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_MASK 0x07000000
1311 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_REPEAT 0x01000000
1312 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_MIRRORED_REPEAT 0x02000000
1313 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_CLAMP_TO_EDGE 0x03000000
1314 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_CLAMP_TO_BORDER 0x04000000
1315 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSU_CLAMP 0x05000000
1316 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_WRAPU (1 << 27)
1317 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_SHIFT 28
1318 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_MASK 0x70000000
1319 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_REPEAT 0x10000000
1320 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_MIRRORED_REPEAT 0x20000000
1321 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_CLAMP_TO_EDGE 0x30000000
1322 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_CLAMP_TO_BORDER 0x40000000
1323 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_ADDRESSV_CLAMP 0x50000000
1324 #define NV04_DX5_TEXTURED_TRIANGLE_FORMAT_WRAPV (1 << 31)
1325 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER 0x0000030c
1326 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_KERNEL_SIZE_X_SHIFT 0
1327 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_KERNEL_SIZE_X_MASK 0x000000ff
1328 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_KERNEL_SIZE_Y_SHIFT 8
1329 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_KERNEL_SIZE_Y_MASK 0x00007f00
1330 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MIPMAP_DITHER_ENABLE (1 << 15)
1331 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MIPMAP_LODBIAS_SHIFT 16
1332 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MIPMAP_LODBIAS_MASK 0x00ff0000
1333 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_SHIFT 24
1334 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_MASK 0x07000000
1335 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_NEAREST 0x01000000
1336 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_LINEAR 0x02000000
1337 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST 0x03000000
1338 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST 0x04000000
1339 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR 0x05000000
1340 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR 0x06000000
1341 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_ANISOTROPIC_MINIFY_ENABLE (1 << 27)
1342 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_SHIFT 28
1343 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_MASK 0x70000000
1344 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_NEAREST 0x10000000
1345 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_LINEAR 0x20000000
1346 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST 0x30000000
1347 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST 0x40000000
1348 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR 0x50000000
1349 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR 0x60000000
1350 #define NV04_DX5_TEXTURED_TRIANGLE_FILTER_ANISOTROPIC_MAGNIFY_ENABLE (1 << 31)
1351 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND 0x00000310
1352 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTURE_MAP_SHIFT 0
1353 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTURE_MAP_MASK 0x0000000f
1354 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_MASK_BIT_SHIFT 4
1355 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_MASK_BIT_MASK 0x00000030
1356 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADE_MODE_SHIFT 6
1357 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADE_MODE_MASK 0x000000c0
1358 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADE_MODE_FLAT 0x00000040
1359 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADE_MODE_GOURAUD 0x00000080
1360 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SHADE_MODE_PHONG 0x000000c0
1361 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTURE_PERSPECTIVE_ENABLE_SHIFT 8
1362 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_TEXTURE_PERSPECTIVE_ENABLE_MASK 0x00000f00
1363 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SPECULAR_ENABLE_SHIFT 12
1364 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SPECULAR_ENABLE_MASK 0x0000f000
1365 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_FOG_ENABLE_SHIFT 16
1366 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_FOG_ENABLE_MASK 0x000f0000
1367 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_ALPHA_ENABLE_SHIFT 20
1368 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_ALPHA_ENABLE_MASK 0x00f00000
1369 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SRC_SHIFT 24
1370 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_SRC_MASK 0x0f000000
1371 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_DST_SHIFT 28
1372 #define NV04_DX5_TEXTURED_TRIANGLE_BLEND_DST_MASK 0xf0000000
1373 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL 0x00000314
1374 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHA_REF_SHIFT 0
1375 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHA_REF_MASK 0x000000ff
1376 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHA_FUNC_SHIFT 8
1377 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHA_FUNC_MASK 0x00000f00
1378 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ALPHA_TEST_ENABLE (1 << 12)
1379 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_ORIGIN (1 << 13)
1380 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_ENABLE_SHIFT 14
1381 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_ENABLE_MASK 0x0000c000
1382 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_FUNC_SHIFT 16
1383 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_FUNC_MASK 0x000f0000
1384 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_CULL_MODE_SHIFT 20
1385 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_CULL_MODE_MASK 0x00300000
1386 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_DITHER_ENABLE (1 << 22)
1387 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_PERSPECTIVE_ENABLE (1 << 23)
1388 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_WRITE_ENABLE_SHIFT 24
1389 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_WRITE_ENABLE_MASK 0x3f000000
1390 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_FORMAT_SHIFT 30
1391 #define NV04_DX5_TEXTURED_TRIANGLE_CONTROL_Z_FORMAT_MASK 0xc0000000
1392 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR 0x00000318
1393 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_B_SHIFT 0
1394 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_B_MASK 0x000000ff
1395 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_G_SHIFT 8
1396 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_G_MASK 0x0000ff00
1397 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_R_SHIFT 16
1398 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_R_MASK 0x00ff0000
1399 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_A_SHIFT 24
1400 #define NV04_DX5_TEXTURED_TRIANGLE_FOGCOLOR_A_MASK 0xff000000
1401 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SX(x) (0x00000400+((x)*32))
1402 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SX__SIZE 0x00000010
1403 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SY(x) (0x00000404+((x)*32))
1404 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SY__SIZE 0x00000010
1405 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SZ(x) (0x00000408+((x)*32))
1406 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SZ__SIZE 0x00000010
1407 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_RHW(x) (0x0000040c+((x)*32))
1408 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_RHW__SIZE 0x00000010
1409 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR(x) (0x00000410+((x)*32))
1410 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR__SIZE 0x00000010
1411 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_B_SHIFT 0
1412 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_B_MASK 0x000000ff
1413 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_G_SHIFT 8
1414 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_G_MASK 0x0000ff00
1415 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_R_SHIFT 16
1416 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_R_MASK 0x00ff0000
1417 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_A_SHIFT 24
1418 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_COLOR_A_MASK 0xff000000
1419 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR(x) (0x00000414+((x)*32))
1420 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR__SIZE 0x00000010
1421 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_B_SHIFT 0
1422 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_B_MASK 0x000000ff
1423 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_G_SHIFT 8
1424 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_G_MASK 0x0000ff00
1425 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_R_SHIFT 16
1426 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_R_MASK 0x00ff0000
1427 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_FOG_SHIFT 24
1428 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_SPECULAR_FOG_MASK 0xff000000
1429 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_TU(x) (0x00000418+((x)*32))
1430 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_TU__SIZE 0x00000010
1431 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_TV(x) (0x0000041c+((x)*32))
1432 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_TV__SIZE 0x00000010
1433 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE(x) (0x00000600+((x)*4))
1434 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE__SIZE 0x00000040
1435 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I0_SHIFT 0
1436 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I0_MASK 0x0000000f
1437 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I1_SHIFT 4
1438 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I1_MASK 0x000000f0
1439 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I2_SHIFT 8
1440 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I2_MASK 0x00000f00
1441 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I3_SHIFT 12
1442 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I3_MASK 0x0000f000
1443 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I4_SHIFT 16
1444 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I4_MASK 0x000f0000
1445 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I5_SHIFT 20
1446 #define NV04_DX5_TEXTURED_TRIANGLE_TLVERTEX_DRAWPRIMITIVE_I5_MASK 0x00f00000
1449 #define NV04_DX6_MULTITEX_TRIANGLE 0x00000055
1451 #define NV04_DX6_MULTITEX_TRIANGLE_NOP 0x00000100
1452 #define NV04_DX6_MULTITEX_TRIANGLE_NOTIFY 0x00000104
1453 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_NOTIFY 0x00000180
1454 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_A 0x00000184
1455 #define NV04_DX6_MULTITEX_TRIANGLE_DMA_B 0x00000188
1456 #define NV04_DX6_MULTITEX_TRIANGLE_SURFACE 0x0000018c
1457 #define NV04_DX6_MULTITEX_TRIANGLE_OFFSET(x) (0x00000308+((x)*4))
1458 #define NV04_DX6_MULTITEX_TRIANGLE_OFFSET__SIZE 0x00000002
1459 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT(x) (0x00000310+((x)*4))
1460 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT__SIZE 0x00000002
1461 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_DMA_SHIFT 0
1462 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_DMA_MASK 0x0000000f
1463 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ORIGIN_ZOH_SHIFT 4
1464 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ORIGIN_ZOH_MASK 0x00000030
1465 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ORIGIN_FOH_SHIFT 6
1466 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ORIGIN_FOH_MASK 0x000000c0
1467 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_COLOR_SHIFT 8
1468 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_COLOR_MASK 0x00000f00
1469 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_MIPMAP_LEVELS_SHIFT 12
1470 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_MIPMAP_LEVELS_MASK 0x0000f000
1471 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_BASE_SIZE_U_SHIFT 16
1472 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_BASE_SIZE_U_MASK 0x000f0000
1473 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_BASE_SIZE_V_SHIFT 20
1474 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_BASE_SIZE_V_MASK 0x00f00000
1475 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ADDRESSU_SHIFT 24
1476 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ADDRESSU_MASK 0x07000000
1477 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_WRAPU (1 << 27)
1478 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ADDRESSV_SHIFT 28
1479 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_ADDRESSV_MASK 0x70000000
1480 #define NV04_DX6_MULTITEX_TRIANGLE_FORMAT_WRAPV (1 << 31)
1481 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER(x) (0x00000318+((x)*4))
1482 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER__SIZE 0x00000002
1483 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_KERNEL_SIZE_X_SHIFT 0
1484 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_KERNEL_SIZE_X_MASK 0x000000ff
1485 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_KERNEL_SIZE_Y_SHIFT 8
1486 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_KERNEL_SIZE_Y_MASK 0x00007f00
1487 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MIPMAP_DITHER_ENABLE (1 << 15)
1488 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MIPMAP_LODBIAS_SHIFT 16
1489 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MIPMAP_LODBIAS_MASK 0x00ff0000
1490 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MINIFY_SHIFT 24
1491 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MINIFY_MASK 0x07000000
1492 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_ANISOTROPIC_MINIFY_ENABLE (1 << 27)
1493 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MAGNIFY_SHIFT 28
1494 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_MAGNIFY_MASK 0x70000000
1495 #define NV04_DX6_MULTITEX_TRIANGLE_FILTER_ANISOTROPIC_MAGNIFY_ENABLE (1 << 31)
1496 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA 0x00000320
1497 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_INVERSE0 (1 << 0)
1498 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ALPHA0 (1 << 1)
1499 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT0_SHIFT 2
1500 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT0_MASK 0x000000fc
1501 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_INVERSE1 (1 << 8)
1502 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ALPHA1 (1 << 9)
1503 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT1_SHIFT 10
1504 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT1_MASK 0x0000fc00
1505 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_INVERSE2 (1 << 16)
1506 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ALPHA2 (1 << 17)
1507 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT2_SHIFT 18
1508 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT2_MASK 0x00fc0000
1509 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_INVERSE3 (1 << 24)
1510 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ALPHA3 (1 << 25)
1511 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT3_SHIFT 26
1512 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_ARGUMENT3_MASK 0x1c000000
1513 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_OPERATION_SHIFT 29
1514 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_ALPHA_OPERATION_MASK 0xe0000000
1515 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR 0x00000324
1516 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_INVERSE0 (1 << 0)
1517 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ALPHA0 (1 << 1)
1518 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT0_SHIFT 2
1519 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT0_MASK 0x000000fc
1520 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_INVERSE1 (1 << 8)
1521 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ALPHA1 (1 << 9)
1522 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT1_SHIFT 10
1523 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT1_MASK 0x0000fc00
1524 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_INVERSE2 (1 << 16)
1525 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ALPHA2 (1 << 17)
1526 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT2_SHIFT 18
1527 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT2_MASK 0x00fc0000
1528 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_INVERSE3 (1 << 24)
1529 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ALPHA3 (1 << 25)
1530 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT3_SHIFT 26
1531 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_ARGUMENT3_MASK 0x1c000000
1532 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_OPERATION_SHIFT 29
1533 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_0_COLOR_OPERATION_MASK 0xe0000000
1534 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA 0x0000032c
1535 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_INVERSE0 (1 << 0)
1536 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ALPHA0 (1 << 1)
1537 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT0_SHIFT 2
1538 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT0_MASK 0x000000fc
1539 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_INVERSE1 (1 << 8)
1540 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ALPHA1 (1 << 9)
1541 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT1_SHIFT 10
1542 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT1_MASK 0x0000fc00
1543 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_INVERSE2 (1 << 16)
1544 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ALPHA2 (1 << 17)
1545 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT2_SHIFT 18
1546 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT2_MASK 0x00fc0000
1547 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_INVERSE3 (1 << 24)
1548 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ALPHA3 (1 << 25)
1549 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT3_SHIFT 26
1550 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_ARGUMENT3_MASK 0x1c000000
1551 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_OPERATION_SHIFT 29
1552 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_ALPHA_OPERATION_MASK 0xe0000000
1553 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR 0x00000330
1554 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_INVERSE0 (1 << 0)
1555 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ALPHA0 (1 << 1)
1556 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT0_SHIFT 2
1557 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT0_MASK 0x000000fc
1558 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_INVERSE1 (1 << 8)
1559 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ALPHA1 (1 << 9)
1560 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT1_SHIFT 10
1561 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT1_MASK 0x0000fc00
1562 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_INVERSE2 (1 << 16)
1563 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ALPHA2 (1 << 17)
1564 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT2_SHIFT 18
1565 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT2_MASK 0x00fc0000
1566 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_INVERSE3 (1 << 24)
1567 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ALPHA3 (1 << 25)
1568 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT3_SHIFT 26
1569 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_ARGUMENT3_MASK 0x1c000000
1570 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_OPERATION_SHIFT 29
1571 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_1_COLOR_OPERATION_MASK 0xe0000000
1572 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR 0x00000334
1573 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_B_SHIFT 0
1574 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_B_MASK 0x000000ff
1575 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_G_SHIFT 8
1576 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_G_MASK 0x0000ff00
1577 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_R_SHIFT 16
1578 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_R_MASK 0x00ff0000
1579 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_A_SHIFT 24
1580 #define NV04_DX6_MULTITEX_TRIANGLE_COMBINE_FACTOR_A_MASK 0xff000000
1581 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND 0x00000338
1582 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_MASK_BIT_SHIFT 4
1583 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_MASK_BIT_MASK 0x00000030
1584 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SHADE_MODE_SHIFT 6
1585 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SHADE_MODE_MASK 0x000000c0
1586 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_TEXTURE_PERSPECTIVE_ENABLE_SHIFT 8
1587 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_TEXTURE_PERSPECTIVE_ENABLE_MASK 0x00000f00
1588 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SPECULAR_ENABLE_SHIFT 12
1589 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SPECULAR_ENABLE_MASK 0x0000f000
1590 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_FOG_ENABLE_SHIFT 16
1591 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_FOG_ENABLE_MASK 0x000f0000
1592 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_ALPHA_ENABLE_SHIFT 20
1593 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_ALPHA_ENABLE_MASK 0x00f00000
1594 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SRC_SHIFT 24
1595 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_SRC_MASK 0x0f000000
1596 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_DST_SHIFT 28
1597 #define NV04_DX6_MULTITEX_TRIANGLE_BLEND_DST_MASK 0xf0000000
1598 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0 0x0000033c
1599 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_REF_SHIFT 0
1600 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_REF_MASK 0x000000ff
1601 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_FUNC_SHIFT 8
1602 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_FUNC_MASK 0x00000f00
1603 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_TEST_ENABLE (1 << 12)
1604 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ORIGIN (1 << 13)
1605 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_ENABLE_SHIFT 14
1606 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_ENABLE_MASK 0x0000c000
1607 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_FUNC_SHIFT 16
1608 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_FUNC_MASK 0x000f0000
1609 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_CULL_MODE_SHIFT 20
1610 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_CULL_MODE_MASK 0x00300000
1611 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_DITHER_ENABLE (1 << 22)
1612 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_PERSPECTIVE_ENABLE (1 << 23)
1613 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_WRITE_ENABLE (1 << 24)
1614 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_STENCIL_WRITE_ENABLE (1 << 25)
1615 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_ALPHA_WRITE_ENABLE (1 << 26)
1616 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_RED_WRITE_ENABLE (1 << 27)
1617 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_GREEN_WRITE_ENABLE (1 << 28)
1618 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_BLUE_WRITE_ENABLE (1 << 29)
1619 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_FORMAT_SHIFT 30
1620 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL0_Z_FORMAT_MASK 0xc0000000
1621 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1 0x00000340
1622 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_TEST_ENABLE_SHIFT 0
1623 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_TEST_ENABLE_MASK 0x0000000f
1624 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_FUNC_SHIFT 4
1625 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_FUNC_MASK 0x000000f0
1626 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_REF_SHIFT 8
1627 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_REF_MASK 0x0000ff00
1628 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_READ_SHIFT 16
1629 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_READ_MASK 0x00ff0000
1630 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_WRITE_SHIFT 24
1631 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL1_STENCIL_MASK_WRITE_MASK 0xff000000
1632 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2 0x00000344
1633 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_FAIL_SHIFT 0
1634 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_FAIL_MASK 0x0000000f
1635 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_ZFAIL_SHIFT 4
1636 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_ZFAIL_MASK 0x000000f0
1637 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_ZPASS_SHIFT 8
1638 #define NV04_DX6_MULTITEX_TRIANGLE_CONTROL2_STENCIL_OP_ZPASS_MASK 0x00000f00
1639 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR 0x00000348
1640 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_B_SHIFT 0
1641 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_B_MASK 0x000000ff
1642 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_G_SHIFT 8
1643 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_G_MASK 0x0000ff00
1644 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_R_SHIFT 16
1645 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_R_MASK 0x00ff0000
1646 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_A_SHIFT 24
1647 #define NV04_DX6_MULTITEX_TRIANGLE_FOGCOLOR_A_MASK 0xff000000
1648 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SX(x) (0x00000400+((x)*40))
1649 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SX__SIZE 0x00000008
1650 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SY(x) (0x00000404+((x)*40))
1651 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SY__SIZE 0x00000008
1652 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SZ(x) (0x00000408+((x)*40))
1653 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SZ__SIZE 0x00000008
1654 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_RHW(x) (0x0000040c+((x)*40))
1655 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_RHW__SIZE 0x00000008
1656 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR(x) (0x00000410+((x)*40))
1657 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR__SIZE 0x00000008
1658 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_B_SHIFT 0
1659 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_B_MASK 0x000000ff
1660 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_G_SHIFT 8
1661 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_G_MASK 0x0000ff00
1662 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_R_SHIFT 16
1663 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_R_MASK 0x00ff0000
1664 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_A_SHIFT 24
1665 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_COLOR_A_MASK 0xff000000
1666 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR(x) (0x00000414+((x)*40))
1667 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR__SIZE 0x00000008
1668 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_B_SHIFT 0
1669 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_B_MASK 0x000000ff
1670 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_G_SHIFT 8
1671 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_G_MASK 0x0000ff00
1672 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_R_SHIFT 16
1673 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_R_MASK 0x00ff0000
1674 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_FOG_SHIFT 24
1675 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_SPECULAR_FOG_MASK 0xff000000
1676 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TU0(x) (0x00000418+((x)*40))
1677 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TU0__SIZE 0x00000008
1678 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TV0(x) (0x0000041c+((x)*40))
1679 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TV0__SIZE 0x00000008
1680 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TU1(x) (0x00000420+((x)*40))
1681 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TU1__SIZE 0x00000008
1682 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TV1(x) (0x00000424+((x)*40))
1683 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_TV1__SIZE 0x00000008
1684 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE(x) (0x00000540+((x)*4))
1685 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE__SIZE 0x00000030
1686 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I0_SHIFT 0
1687 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I0_MASK 0x0000000f
1688 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I1_SHIFT 4
1689 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I1_MASK 0x000000f0
1690 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I2_SHIFT 8
1691 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I2_MASK 0x00000f00
1692 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I3_SHIFT 12
1693 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I3_MASK 0x0000f000
1694 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I4_SHIFT 16
1695 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I4_MASK 0x000f0000
1696 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I5_SHIFT 20
1697 #define NV04_DX6_MULTITEX_TRIANGLE_TLMTVERTEX_DRAWPRIMITIVE_I5_MASK 0x00f00000
1700 #define NV10_TCL_PRIMITIVE_3D 0x00000056
1702 #define NV10_TCL_PRIMITIVE_3D_NOP 0x00000100
1703 #define NV10_TCL_PRIMITIVE_3D_NOTIFY 0x00000104
1704 #define NV10_TCL_PRIMITIVE_3D_DMA_NOTIFY 0x00000180
1705 #define NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0 0x00000184
1706 #define NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1 0x00000188
1707 #define NV10_TCL_PRIMITIVE_3D_DISPLAY_LIST 0x0000018c
1708 #define NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2 0x00000194
1709 #define NV10_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3 0x00000198
1710 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200
1711 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_X_SHIFT 0
1712 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_X_MASK 0x0000ffff
1713 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_W_SHIFT 16
1714 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ_W_MASK 0xffff0000
1715 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204
1716 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_Y_SHIFT 0
1717 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_Y_MASK 0x0000ffff
1718 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_H_SHIFT 16
1719 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_VERT_H_MASK 0xffff0000
1720 #define NV10_TCL_PRIMITIVE_3D_BUFFER_FORMAT 0x00000208
1721 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH 0x0000020c
1722 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_COLOR_PITCH_SHIFT 0
1723 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_COLOR_PITCH_MASK 0x0000ffff
1724 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_ZETA_PITCH_SHIFT 16
1725 #define NV10_TCL_PRIMITIVE_3D_BUFFER_PITCH_ZETA_PITCH_MASK 0xffff0000
1726 #define NV10_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
1727 #define NV10_TCL_PRIMITIVE_3D_ZETA_OFFSET 0x00000214
1728 #define NV10_TCL_PRIMITIVE_3D_TX_OFFSET(x) (0x00000218+((x)*4))
1729 #define NV10_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE 0x00000002
1730 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT(x) (0x00000220+((x)*4))
1731 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE 0x00000002
1732 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_CUBE_MAP (1 << 2)
1733 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_SHIFT 7
1734 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_MASK 0x00000780
1735 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_NPOT (1 << 11)
1736 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_SHIFT 12
1737 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_MASK 0x0000f000
1738 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_SHIFT 16
1739 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_MASK 0x000f0000
1740 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_SHIFT 20
1741 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_MASK 0x00f00000
1742 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_SHIFT 24
1743 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_MASK 0x0f000000
1744 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_REPEAT 0x01000000
1745 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_MIRRORED_REPEAT 0x02000000
1746 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP_TO_EDGE 0x03000000
1747 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP_TO_BORDER 0x04000000
1748 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_S_CLAMP 0x05000000
1749 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_SHIFT 28
1750 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_MASK 0xf0000000
1751 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_REPEAT 0x10000000
1752 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_MIRRORED_REPEAT 0x20000000
1753 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP_TO_EDGE 0x30000000
1754 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP_TO_BORDER 0x40000000
1755 #define NV10_TCL_PRIMITIVE_3D_TX_FORMAT_WRAP_T_CLAMP 0x50000000
1756 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE(x) (0x00000228+((x)*4))
1757 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE 0x00000002
1758 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ANISOTROPY_SHIFT 4
1759 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ANISOTROPY_MASK 0x00000030
1760 #define NV10_TCL_PRIMITIVE_3D_TX_ENABLE_ENABLE (1 << 30)
1761 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH(x) (0x00000230+((x)*4))
1762 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH__SIZE 0x00000002
1763 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH_PITCH_SHIFT 16
1764 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_PITCH_PITCH_MASK 0xffff0000
1765 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(x) (0x00000240+((x)*4))
1766 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE__SIZE 0x00000002
1767 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_SHIFT 0
1768 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_MASK 0x0000ffff
1769 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_SHIFT 16
1770 #define NV10_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_MASK 0xffff0000
1771 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER(x) (0x00000248+((x)*4))
1772 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER__SIZE 0x00000002
1773 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_SHIFT 24
1774 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_MASK 0x0f000000
1775 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST 0x01000000
1776 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR 0x02000000
1777 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST 0x03000000
1778 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST 0x04000000
1779 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR 0x05000000
1780 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR 0x06000000
1781 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_SHIFT 28
1782 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_MASK 0xf0000000
1783 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST 0x10000000
1784 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR 0x20000000
1785 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST 0x30000000
1786 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST 0x40000000
1787 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR 0x50000000
1788 #define NV10_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR 0x60000000
1789 #define NV10_TCL_PRIMITIVE_3D_TX_PALETTE_OFFSET(x) (0x00000250+((x)*4))
1790 #define NV10_TCL_PRIMITIVE_3D_TX_PALETTE_OFFSET__SIZE 0x00000002
1791 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x) (0x00000260+((x)*4))
1792 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE 0x00000002
1793 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SHIFT 0
1794 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_MASK 0x0000000f
1795 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_ZERO 0x00000000
1796 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR0_NV 0x00000001
1797 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_CONSTANT_COLOR1_NV 0x00000002
1798 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_FOG 0x00000003
1799 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_PRIMARY_COLOR_NV 0x00000004
1800 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SECONDARY_COLOR_NV 0x00000005
1801 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_TEXTURE1_ARB 0x00000008
1802 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_TEXTURE0_ARB 0x00000009
1803 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE0_NV 0x0000000c
1804 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE1_NV 0x0000000d
1805 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0000000e
1806 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_INPUT_E_TIMES_F_NV 0x0000000f
1807 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE (1 << 4)
1808 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_BLUE 0x00000000
1809 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_COMPONENT_USAGE_ALPHA 0x00000010
1810 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SHIFT 5
1811 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_MASK 0x000000e0
1812 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1813 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_UNSIGNED_INVERT_NV 0x00000020
1814 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NORMAL_NV 0x00000040
1815 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_EXPAND_NEGATE_NV 0x00000060
1816 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NORMAL_NV 0x00000080
1817 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_HALF_BIAS_NEGATE_NV 0x000000a0
1818 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_IDENTITY_NV 0x000000c0
1819 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_D_MAPPING_SIGNED_NEGATE_NV 0x000000e0
1820 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SHIFT 8
1821 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_MASK 0x00000f00
1822 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_ZERO 0x00000000
1823 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR0_NV 0x00000100
1824 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_CONSTANT_COLOR1_NV 0x00000200
1825 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_FOG 0x00000300
1826 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_PRIMARY_COLOR_NV 0x00000400
1827 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SECONDARY_COLOR_NV 0x00000500
1828 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_TEXTURE1_ARB 0x00000800
1829 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_TEXTURE0_ARB 0x00000900
1830 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE0_NV 0x00000c00
1831 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE1_NV 0x00000d00
1832 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
1833 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_INPUT_E_TIMES_F_NV 0x00000f00
1834 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE (1 << 12)
1835 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_BLUE 0x00000000
1836 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_COMPONENT_USAGE_ALPHA 0x00001000
1837 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SHIFT 13
1838 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_MASK 0x0000e000
1839 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1840 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_UNSIGNED_INVERT_NV 0x00002000
1841 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NORMAL_NV 0x00004000
1842 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_EXPAND_NEGATE_NV 0x00006000
1843 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NORMAL_NV 0x00008000
1844 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_HALF_BIAS_NEGATE_NV 0x0000a000
1845 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_IDENTITY_NV 0x0000c000
1846 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_C_MAPPING_SIGNED_NEGATE_NV 0x0000e000
1847 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SHIFT 16
1848 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_MASK 0x000f0000
1849 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_ZERO 0x00000000
1850 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR0_NV 0x00010000
1851 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_CONSTANT_COLOR1_NV 0x00020000
1852 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_FOG 0x00030000
1853 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_PRIMARY_COLOR_NV 0x00040000
1854 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SECONDARY_COLOR_NV 0x00050000
1855 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_TEXTURE1_ARB 0x00080000
1856 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_TEXTURE0_ARB 0x00090000
1857 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE0_NV 0x000c0000
1858 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE1_NV 0x000d0000
1859 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000e0000
1860 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_INPUT_E_TIMES_F_NV 0x000f0000
1861 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE (1 << 20)
1862 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_BLUE 0x00000000
1863 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_COMPONENT_USAGE_ALPHA 0x00100000
1864 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SHIFT 21
1865 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_MASK 0x00e00000
1866 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1867 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_UNSIGNED_INVERT_NV 0x00200000
1868 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NORMAL_NV 0x00400000
1869 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_EXPAND_NEGATE_NV 0x00600000
1870 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NORMAL_NV 0x00800000
1871 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_HALF_BIAS_NEGATE_NV 0x00a00000
1872 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_IDENTITY_NV 0x00c00000
1873 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_B_MAPPING_SIGNED_NEGATE_NV 0x00e00000
1874 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SHIFT 24
1875 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_MASK 0x0f000000
1876 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_ZERO 0x00000000
1877 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR0_NV 0x01000000
1878 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_CONSTANT_COLOR1_NV 0x02000000
1879 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_FOG 0x03000000
1880 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_PRIMARY_COLOR_NV 0x04000000
1881 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SECONDARY_COLOR_NV 0x05000000
1882 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_TEXTURE1_ARB 0x08000000
1883 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_TEXTURE0_ARB 0x09000000
1884 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE0_NV 0x0c000000
1885 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE1_NV 0x0d000000
1886 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0e000000
1887 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_INPUT_E_TIMES_F_NV 0x0f000000
1888 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE (1 << 28)
1889 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_BLUE 0x00000000
1890 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_COMPONENT_USAGE_ALPHA 0x10000000
1891 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SHIFT 29
1892 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_MASK 0xe0000000
1893 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1894 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_UNSIGNED_INVERT_NV 0x20000000
1895 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NORMAL_NV 0x40000000
1896 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_EXPAND_NEGATE_NV 0x60000000
1897 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NORMAL_NV 0x80000000
1898 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_HALF_BIAS_NEGATE_NV 0xa0000000
1899 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_IDENTITY_NV 0xc0000000
1900 #define NV10_TCL_PRIMITIVE_3D_RC_IN_ALPHA_A_MAPPING_SIGNED_NEGATE_NV 0xe0000000
1901 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB(x) (0x00000268+((x)*4))
1902 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE 0x00000002
1903 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SHIFT 0
1904 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_MASK 0x0000000f
1905 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_ZERO 0x00000000
1906 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR0_NV 0x00000001
1907 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_CONSTANT_COLOR1_NV 0x00000002
1908 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_FOG 0x00000003
1909 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_PRIMARY_COLOR_NV 0x00000004
1910 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SECONDARY_COLOR_NV 0x00000005
1911 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_TEXTURE1_ARB 0x00000008
1912 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_TEXTURE0_ARB 0x00000009
1913 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE0_NV 0x0000000c
1914 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE1_NV 0x0000000d
1915 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0000000e
1916 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_INPUT_E_TIMES_F_NV 0x0000000f
1917 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE (1 << 4)
1918 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE_RGB 0x00000000
1919 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_COMPONENT_USAGE_ALPHA 0x00000010
1920 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SHIFT 5
1921 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_MASK 0x000000e0
1922 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1923 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_UNSIGNED_INVERT_NV 0x00000020
1924 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_EXPAND_NORMAL_NV 0x00000040
1925 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_EXPAND_NEGATE_NV 0x00000060
1926 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NORMAL_NV 0x00000080
1927 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_HALF_BIAS_NEGATE_NV 0x000000a0
1928 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SIGNED_IDENTITY_NV 0x000000c0
1929 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_D_MAPPING_SIGNED_NEGATE_NV 0x000000e0
1930 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SHIFT 8
1931 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_MASK 0x00000f00
1932 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_ZERO 0x00000000
1933 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR0_NV 0x00000100
1934 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_CONSTANT_COLOR1_NV 0x00000200
1935 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_FOG 0x00000300
1936 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_PRIMARY_COLOR_NV 0x00000400
1937 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SECONDARY_COLOR_NV 0x00000500
1938 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_TEXTURE1_ARB 0x00000800
1939 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_TEXTURE0_ARB 0x00000900
1940 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE0_NV 0x00000c00
1941 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE1_NV 0x00000d00
1942 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
1943 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_INPUT_E_TIMES_F_NV 0x00000f00
1944 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE (1 << 12)
1945 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE_RGB 0x00000000
1946 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_COMPONENT_USAGE_ALPHA 0x00001000
1947 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SHIFT 13
1948 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_MASK 0x0000e000
1949 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1950 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_UNSIGNED_INVERT_NV 0x00002000
1951 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_EXPAND_NORMAL_NV 0x00004000
1952 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_EXPAND_NEGATE_NV 0x00006000
1953 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NORMAL_NV 0x00008000
1954 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_HALF_BIAS_NEGATE_NV 0x0000a000
1955 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SIGNED_IDENTITY_NV 0x0000c000
1956 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_C_MAPPING_SIGNED_NEGATE_NV 0x0000e000
1957 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SHIFT 16
1958 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_MASK 0x000f0000
1959 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_ZERO 0x00000000
1960 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR0_NV 0x00010000
1961 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_CONSTANT_COLOR1_NV 0x00020000
1962 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_FOG 0x00030000
1963 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_PRIMARY_COLOR_NV 0x00040000
1964 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SECONDARY_COLOR_NV 0x00050000
1965 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_TEXTURE1_ARB 0x00080000
1966 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_TEXTURE0_ARB 0x00090000
1967 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE0_NV 0x000c0000
1968 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE1_NV 0x000d0000
1969 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000e0000
1970 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_INPUT_E_TIMES_F_NV 0x000f0000
1971 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE (1 << 20)
1972 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE_RGB 0x00000000
1973 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_COMPONENT_USAGE_ALPHA 0x00100000
1974 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SHIFT 21
1975 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_MASK 0x00e00000
1976 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
1977 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_UNSIGNED_INVERT_NV 0x00200000
1978 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_EXPAND_NORMAL_NV 0x00400000
1979 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_EXPAND_NEGATE_NV 0x00600000
1980 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NORMAL_NV 0x00800000
1981 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_HALF_BIAS_NEGATE_NV 0x00a00000
1982 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SIGNED_IDENTITY_NV 0x00c00000
1983 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_B_MAPPING_SIGNED_NEGATE_NV 0x00e00000
1984 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SHIFT 24
1985 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_MASK 0x0f000000
1986 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_ZERO 0x00000000
1987 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR0_NV 0x01000000
1988 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_CONSTANT_COLOR1_NV 0x02000000
1989 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_FOG 0x03000000
1990 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_PRIMARY_COLOR_NV 0x04000000
1991 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SECONDARY_COLOR_NV 0x05000000
1992 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_TEXTURE1_ARB 0x08000000
1993 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_TEXTURE0_ARB 0x09000000
1994 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE0_NV 0x0c000000
1995 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE1_NV 0x0d000000
1996 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0e000000
1997 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_INPUT_E_TIMES_F_NV 0x0f000000
1998 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE (1 << 28)
1999 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE_RGB 0x00000000
2000 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_COMPONENT_USAGE_ALPHA 0x10000000
2001 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SHIFT 29
2002 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_MASK 0xe0000000
2003 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2004 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_UNSIGNED_INVERT_NV 0x20000000
2005 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_EXPAND_NORMAL_NV 0x40000000
2006 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_EXPAND_NEGATE_NV 0x60000000
2007 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NORMAL_NV 0x80000000
2008 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_HALF_BIAS_NEGATE_NV 0xa0000000
2009 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SIGNED_IDENTITY_NV 0xc0000000
2010 #define NV10_TCL_PRIMITIVE_3D_RC_IN_RGB_A_MAPPING_SIGNED_NEGATE_NV 0xe0000000
2011 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR(x) (0x00000270+((x)*4))
2012 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR__SIZE 0x00000002
2013 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_B_SHIFT 0
2014 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_B_MASK 0x000000ff
2015 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_G_SHIFT 8
2016 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_G_MASK 0x0000ff00
2017 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_R_SHIFT 16
2018 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_R_MASK 0x00ff0000
2019 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_A_SHIFT 24
2020 #define NV10_TCL_PRIMITIVE_3D_RC_COLOR_A_MASK 0xff000000
2021 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x) (0x00000278+((x)*4))
2022 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE 0x00000002
2023 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SHIFT 0
2024 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_MASK 0x0000000f
2025 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_ZERO 0x00000000
2026 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR0_NV 0x00000001
2027 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_CONSTANT_COLOR1_NV 0x00000002
2028 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_FOG 0x00000003
2029 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_PRIMARY_COLOR_NV 0x00000004
2030 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SECONDARY_COLOR_NV 0x00000005
2031 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE1_ARB 0x00000008
2032 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_TEXTURE0_ARB 0x00000009
2033 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_NV 0x0000000c
2034 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE1_NV 0x0000000d
2035 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0000000e
2036 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_OUTPUT_E_TIMES_F_NV 0x0000000f
2037 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SHIFT 4
2038 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_MASK 0x000000f0
2039 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_ZERO 0x00000000
2040 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR0_NV 0x00000010
2041 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_CONSTANT_COLOR1_NV 0x00000020
2042 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_FOG 0x00000030
2043 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_PRIMARY_COLOR_NV 0x00000040
2044 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SECONDARY_COLOR_NV 0x00000050
2045 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE1_ARB 0x00000080
2046 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_TEXTURE0_ARB 0x00000090
2047 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_NV 0x000000c0
2048 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE1_NV 0x000000d0
2049 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000000e0
2050 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_OUTPUT_E_TIMES_F_NV 0x000000f0
2051 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SHIFT 8
2052 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_MASK 0x00000f00
2053 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_ZERO 0x00000000
2054 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR0_NV 0x00000100
2055 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_CONSTANT_COLOR1_NV 0x00000200
2056 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_FOG 0x00000300
2057 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_PRIMARY_COLOR_NV 0x00000400
2058 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SECONDARY_COLOR_NV 0x00000500
2059 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE1_ARB 0x00000800
2060 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_TEXTURE0_ARB 0x00000900
2061 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_NV 0x00000c00
2062 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE1_NV 0x00000d00
2063 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
2064 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SUM_OUTPUT_E_TIMES_F_NV 0x00000f00
2065 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_CD_DOT_PRODUCT (1 << 12)
2066 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_AB_DOT_PRODUCT (1 << 13)
2067 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_MUX_SUM (1 << 14)
2068 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS (1 << 15)
2069 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS_NONE 0x00000000
2070 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x00008000
2071 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SHIFT 17
2072 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_MASK 0x00000000
2073 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_NONE 0x00000000
2074 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_TWO_NV 0x00020000
2075 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_FOUR_NV 0x00040000
2076 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_ALPHA_SCALE_SCALE_BY_ONE_HALF_NV 0x00060000
2077 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB(x) (0x00000280+((x)*4))
2078 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE 0x00000002
2079 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SHIFT 0
2080 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_MASK 0x0000000f
2081 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_ZERO 0x00000000
2082 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR0_NV 0x00000001
2083 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_CONSTANT_COLOR1_NV 0x00000002
2084 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_FOG 0x00000003
2085 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_PRIMARY_COLOR_NV 0x00000004
2086 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SECONDARY_COLOR_NV 0x00000005
2087 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE1_ARB 0x00000008
2088 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_TEXTURE0_ARB 0x00000009
2089 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0_NV 0x0000000c
2090 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE1_NV 0x0000000d
2091 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0000000e
2092 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_OUTPUT_E_TIMES_F_NV 0x0000000f
2093 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SHIFT 4
2094 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_MASK 0x000000f0
2095 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_ZERO 0x00000000
2096 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR0_NV 0x00000010
2097 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_CONSTANT_COLOR1_NV 0x00000020
2098 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_FOG 0x00000030
2099 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_PRIMARY_COLOR_NV 0x00000040
2100 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SECONDARY_COLOR_NV 0x00000050
2101 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE1_ARB 0x00000080
2102 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_TEXTURE0_ARB 0x00000090
2103 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0_NV 0x000000c0
2104 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE1_NV 0x000000d0
2105 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000000e0
2106 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_OUTPUT_E_TIMES_F_NV 0x000000f0
2107 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SHIFT 8
2108 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_MASK 0x00000f00
2109 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_ZERO 0x00000000
2110 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR0_NV 0x00000100
2111 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_CONSTANT_COLOR1_NV 0x00000200
2112 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_FOG 0x00000300
2113 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_PRIMARY_COLOR_NV 0x00000400
2114 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SECONDARY_COLOR_NV 0x00000500
2115 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE1_ARB 0x00000800
2116 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_TEXTURE0_ARB 0x00000900
2117 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0_NV 0x00000c00
2118 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE1_NV 0x00000d00
2119 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
2120 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SUM_OUTPUT_E_TIMES_F_NV 0x00000f00
2121 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_CD_DOT_PRODUCT (1 << 12)
2122 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_AB_DOT_PRODUCT (1 << 13)
2123 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_MUX_SUM (1 << 14)
2124 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS (1 << 15)
2125 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS_NONE 0x00000000
2126 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_BIAS_BIAS_BY_NEGATIVE_ONE_HALF_NV 0x00008000
2127 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SHIFT 17
2128 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_MASK 0x00000000
2129 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_NONE 0x00000000
2130 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_TWO_NV 0x00020000
2131 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_FOUR_NV 0x00040000
2132 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_SCALE_SCALE_BY_ONE_HALF_NV 0x00060000
2133 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_OPERATION_SHIFT 27
2134 #define NV10_TCL_PRIMITIVE_3D_RC_OUT_RGB_OPERATION_MASK 0x38000000
2135 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0 0x00000288
2136 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SHIFT 0
2137 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_MASK 0x0000000f
2138 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_ZERO 0x00000000
2139 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR0_NV 0x00000001
2140 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_CONSTANT_COLOR1_NV 0x00000002
2141 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_FOG 0x00000003
2142 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_PRIMARY_COLOR_NV 0x00000004
2143 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SECONDARY_COLOR_NV 0x00000005
2144 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_TEXTURE1_ARB 0x00000008
2145 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_TEXTURE0_ARB 0x00000009
2146 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE0_NV 0x0000000c
2147 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE1_NV 0x0000000d
2148 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0000000e
2149 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_INPUT_E_TIMES_F_NV 0x0000000f
2150 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE (1 << 4)
2151 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE_RGB 0x00000000
2152 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_COMPONENT_USAGE_ALPHA 0x00000010
2153 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SHIFT 5
2154 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_MASK 0x000000e0
2155 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2156 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_UNSIGNED_INVERT_NV 0x00000020
2157 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_EXPAND_NORMAL_NV 0x00000040
2158 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_EXPAND_NEGATE_NV 0x00000060
2159 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NORMAL_NV 0x00000080
2160 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_HALF_BIAS_NEGATE_NV 0x000000a0
2161 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SIGNED_IDENTITY_NV 0x000000c0
2162 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_D_MAPPING_SIGNED_NEGATE_NV 0x000000e0
2163 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SHIFT 8
2164 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_MASK 0x00000f00
2165 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_ZERO 0x00000000
2166 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR0_NV 0x00000100
2167 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_CONSTANT_COLOR1_NV 0x00000200
2168 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_FOG 0x00000300
2169 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_PRIMARY_COLOR_NV 0x00000400
2170 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SECONDARY_COLOR_NV 0x00000500
2171 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_TEXTURE1_ARB 0x00000800
2172 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_TEXTURE0_ARB 0x00000900
2173 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE0_NV 0x00000c00
2174 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE1_NV 0x00000d00
2175 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
2176 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_INPUT_E_TIMES_F_NV 0x00000f00
2177 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE (1 << 12)
2178 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE_RGB 0x00000000
2179 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_COMPONENT_USAGE_ALPHA 0x00001000
2180 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SHIFT 13
2181 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_MASK 0x0000e000
2182 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2183 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_UNSIGNED_INVERT_NV 0x00002000
2184 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_EXPAND_NORMAL_NV 0x00004000
2185 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_EXPAND_NEGATE_NV 0x00006000
2186 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NORMAL_NV 0x00008000
2187 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_HALF_BIAS_NEGATE_NV 0x0000a000
2188 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SIGNED_IDENTITY_NV 0x0000c000
2189 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_C_MAPPING_SIGNED_NEGATE_NV 0x0000e000
2190 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SHIFT 16
2191 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_MASK 0x000f0000
2192 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_ZERO 0x00000000
2193 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR0_NV 0x00010000
2194 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_CONSTANT_COLOR1_NV 0x00020000
2195 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_FOG 0x00030000
2196 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_PRIMARY_COLOR_NV 0x00040000
2197 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SECONDARY_COLOR_NV 0x00050000
2198 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_TEXTURE1_ARB 0x00080000
2199 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_TEXTURE0_ARB 0x00090000
2200 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE0_NV 0x000c0000
2201 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE1_NV 0x000d0000
2202 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000e0000
2203 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_INPUT_E_TIMES_F_NV 0x000f0000
2204 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE (1 << 20)
2205 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE_RGB 0x00000000
2206 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_COMPONENT_USAGE_ALPHA 0x00100000
2207 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SHIFT 21
2208 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_MASK 0x00e00000
2209 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2210 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_UNSIGNED_INVERT_NV 0x00200000
2211 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_EXPAND_NORMAL_NV 0x00400000
2212 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_EXPAND_NEGATE_NV 0x00600000
2213 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NORMAL_NV 0x00800000
2214 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_HALF_BIAS_NEGATE_NV 0x00a00000
2215 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SIGNED_IDENTITY_NV 0x00c00000
2216 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_B_MAPPING_SIGNED_NEGATE_NV 0x00e00000
2217 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SHIFT 24
2218 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_MASK 0x0f000000
2219 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_ZERO 0x00000000
2220 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR0_NV 0x01000000
2221 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_CONSTANT_COLOR1_NV 0x02000000
2222 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_FOG 0x03000000
2223 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_PRIMARY_COLOR_NV 0x04000000
2224 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SECONDARY_COLOR_NV 0x05000000
2225 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_TEXTURE1_ARB 0x08000000
2226 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_TEXTURE0_ARB 0x09000000
2227 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE0_NV 0x0c000000
2228 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE1_NV 0x0d000000
2229 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0e000000
2230 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_INPUT_E_TIMES_F_NV 0x0f000000
2231 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE (1 << 28)
2232 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE_RGB 0x00000000
2233 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_COMPONENT_USAGE_ALPHA 0x10000000
2234 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SHIFT 29
2235 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_MASK 0xe0000000
2236 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2237 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_UNSIGNED_INVERT_NV 0x20000000
2238 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_EXPAND_NORMAL_NV 0x40000000
2239 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_EXPAND_NEGATE_NV 0x60000000
2240 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NORMAL_NV 0x80000000
2241 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_HALF_BIAS_NEGATE_NV 0xa0000000
2242 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SIGNED_IDENTITY_NV 0xc0000000
2243 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL0_A_MAPPING_SIGNED_NEGATE_NV 0xe0000000
2244 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1 0x0000028c
2245 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_COLOR_SUM_CLAMP (1 << 7)
2246 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SHIFT 8
2247 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_MASK 0x00000f00
2248 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_ZERO 0x00000000
2249 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR0_NV 0x00000100
2250 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_CONSTANT_COLOR1_NV 0x00000200
2251 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_FOG 0x00000300
2252 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_PRIMARY_COLOR_NV 0x00000400
2253 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SECONDARY_COLOR_NV 0x00000500
2254 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_TEXTURE1_ARB 0x00000800
2255 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_TEXTURE0_ARB 0x00000900
2256 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE0_NV 0x00000c00
2257 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE1_NV 0x00000d00
2258 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x00000e00
2259 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_INPUT_E_TIMES_F_NV 0x00000f00
2260 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE (1 << 12)
2261 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE_RGB 0x00000000
2262 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_COMPONENT_USAGE_ALPHA 0x00001000
2263 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SHIFT 13
2264 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_MASK 0x0000e000
2265 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2266 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_UNSIGNED_INVERT_NV 0x00002000
2267 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_EXPAND_NORMAL_NV 0x00004000
2268 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_EXPAND_NEGATE_NV 0x00006000
2269 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NORMAL_NV 0x00008000
2270 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_HALF_BIAS_NEGATE_NV 0x0000a000
2271 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SIGNED_IDENTITY_NV 0x0000c000
2272 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_G_MAPPING_SIGNED_NEGATE_NV 0x0000e000
2273 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SHIFT 16
2274 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_MASK 0x000f0000
2275 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_ZERO 0x00000000
2276 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR0_NV 0x00010000
2277 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_CONSTANT_COLOR1_NV 0x00020000
2278 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_FOG 0x00030000
2279 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_PRIMARY_COLOR_NV 0x00040000
2280 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SECONDARY_COLOR_NV 0x00050000
2281 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_TEXTURE1_ARB 0x00080000
2282 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_TEXTURE0_ARB 0x00090000
2283 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE0_NV 0x000c0000
2284 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE1_NV 0x000d0000
2285 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x000e0000
2286 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_INPUT_E_TIMES_F_NV 0x000f0000
2287 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE (1 << 20)
2288 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE_RGB 0x00000000
2289 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_COMPONENT_USAGE_ALPHA 0x00100000
2290 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SHIFT 21
2291 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_MASK 0x00e00000
2292 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2293 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_UNSIGNED_INVERT_NV 0x00200000
2294 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_EXPAND_NORMAL_NV 0x00400000
2295 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_EXPAND_NEGATE_NV 0x00600000
2296 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NORMAL_NV 0x00800000
2297 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_HALF_BIAS_NEGATE_NV 0x00a00000
2298 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SIGNED_IDENTITY_NV 0x00c00000
2299 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_F_MAPPING_SIGNED_NEGATE_NV 0x00e00000
2300 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SHIFT 24
2301 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_MASK 0x0f000000
2302 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_ZERO 0x00000000
2303 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR0_NV 0x01000000
2304 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_CONSTANT_COLOR1_NV 0x02000000
2305 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_FOG 0x03000000
2306 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_PRIMARY_COLOR_NV 0x04000000
2307 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SECONDARY_COLOR_NV 0x05000000
2308 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_TEXTURE1_ARB 0x08000000
2309 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_TEXTURE0_ARB 0x09000000
2310 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE0_NV 0x0c000000
2311 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE1_NV 0x0d000000
2312 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_SPARE0_PLUS_SECONDARY_COLOR_NV0x0e000000
2313 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_INPUT_E_TIMES_F_NV 0x0f000000
2314 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE (1 << 28)
2315 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE_RGB 0x00000000
2316 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_COMPONENT_USAGE_ALPHA 0x10000000
2317 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SHIFT 29
2318 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_MASK 0xe0000000
2319 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_UNSIGNED_IDENTITY_NV 0x00000000
2320 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_UNSIGNED_INVERT_NV 0x20000000
2321 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_EXPAND_NORMAL_NV 0x40000000
2322 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_EXPAND_NEGATE_NV 0x60000000
2323 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NORMAL_NV 0x80000000
2324 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_HALF_BIAS_NEGATE_NV 0xa0000000
2325 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SIGNED_IDENTITY_NV 0xc0000000
2326 #define NV10_TCL_PRIMITIVE_3D_RC_FINAL1_E_MAPPING_SIGNED_NEGATE_NV 0xe0000000
2327 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL 0x00000294
2328 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_COLOR_CONTROL (1 << 1)
2329 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_LOCAL_VIEWER (1 << 16)
2330 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE 0x00000298
2331 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_SPECULAR (1 << 0)
2332 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_DIFFUSE (1 << 1)
2333 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_AMBIENT (1 << 2)
2334 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_ENABLE_EMISSION (1 << 3)
2335 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE 0x0000029c
2336 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP 0x00000800
2337 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP_2 0x00000802
2338 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE_EXP2 0x00000803
2339 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE_LINEAR 0x00000804
2340 #define NV10_TCL_PRIMITIVE_3D_FOG_MODE_LINEAR_2 0x00002601
2341 #define NV10_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000002a0
2342 #define NV10_TCL_PRIMITIVE_3D_FOG_ENABLE 0x000002a4
2343 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR 0x000002a8
2344 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_R_SHIFT 0
2345 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_R_MASK 0x000000ff
2346 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_G_SHIFT 8
2347 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_G_MASK 0x0000ff00
2348 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_B_SHIFT 16
2349 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_B_MASK 0x00ff0000
2350 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_A_SHIFT 24
2351 #define NV10_TCL_PRIMITIVE_3D_FOG_COLOR_A_MASK 0xff000000
2352 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_MODE 0x000002b4
2353 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x) (0x000002c0+((x)*4))
2354 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
2355 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_L_SHIFT 0
2356 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_L_MASK 0x000007ff
2357 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_LEFT_ENABLE (1 << 11)
2358 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_R_SHIFT 16
2359 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_R_MASK 0x07ff0000
2360 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ_CLIP_RIGHT_ENABLE (1 << 27)
2361 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x) (0x000002e0+((x)*4))
2362 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE 0x00000008
2363 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_T_SHIFT 0
2364 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_T_MASK 0x000007ff
2365 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_TOP_ENABLE (1 << 11)
2366 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_B_SHIFT 16
2367 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_B_MASK 0x07ff0000
2368 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT_CLIP_BOTTOM_ENABLE (1 << 27)
2369 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE 0x00000300
2370 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE 0x00000304
2371 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x00000308
2372 #define NV10_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x0000030c
2373 #define NV10_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000310
2374 #define NV10_TCL_PRIMITIVE_3D_LIGHTING_ENABLE 0x00000314
2375 #define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00000318
2376 #define NV10_TCL_PRIMITIVE_3D_POINT_SMOOTH_ENABLE 0x0000031c
2377 #define NV10_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x00000320
2378 #define NV10_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
2379 #define NV10_TCL_PRIMITIVE_3D_VERTEX_WEIGHT_ENABLE 0x00000328
2380 #define NV10_TCL_PRIMITIVE_3D_STENCIL_ENABLE 0x0000032c
2381 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000330
2382 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000334
2383 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000338
2384 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC 0x0000033c
2385 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER 0x00000200
2386 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS 0x00000201
2387 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL 0x00000202
2388 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
2389 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
2390 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
2391 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
2392 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
2393 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
2394 #define NV10_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x00000340
2395 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000344
2396 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ZERO 0x00000000
2397 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE 0x00000001
2398 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_COLOR 0x00000300
2399 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR 0x00000301
2400 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA 0x00000302
2401 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA 0x00000303
2402 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_ALPHA 0x00000304
2403 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA 0x00000305
2404 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_COLOR 0x00000306
2405 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR 0x00000307
2406 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE 0x00000308
2407 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_COLOR 0x00008001
2408 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR 0x00008002
2409 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_ALPHA 0x00008003
2410 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA 0x00008004
2411 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000348
2412 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ZERO 0x00000000
2413 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE 0x00000001
2414 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_COLOR 0x00000300
2415 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR 0x00000301
2416 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA 0x00000302
2417 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA 0x00000303
2418 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_ALPHA 0x00000304
2419 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA 0x00000305
2420 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_COLOR 0x00000306
2421 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR 0x00000307
2422 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA_SATURATE 0x00000308
2423 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_COLOR 0x00008001
2424 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR 0x00008002
2425 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_ALPHA 0x00008003
2426 #define NV10_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA 0x00008004
2427 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000034c
2428 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_B_SHIFT 0
2429 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_B_MASK 0x000000ff
2430 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_G_SHIFT 8
2431 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_G_MASK 0x0000ff00
2432 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_R_SHIFT 16
2433 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_R_MASK 0x00ff0000
2434 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_A_SHIFT 24
2435 #define NV10_TCL_PRIMITIVE_3D_BLEND_COLOR_A_MASK 0xff000000
2436 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000350
2437 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_ADD 0x00008006
2438 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_MIN 0x00008007
2439 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_MAX 0x00008008
2440 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_SUBTRACT 0x0000800a
2441 #define NV10_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT 0x0000800b
2442 #define NV10_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000354
2443 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000358
2444 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK_B (1 << 0)
2445 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK_G (1 << 8)
2446 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK_R (1 << 16)
2447 #define NV10_TCL_PRIMITIVE_3D_COLOR_MASK_A (1 << 24)
2448 #define NV10_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE 0x0000035c
2449 #define NV10_TCL_PRIMITIVE_3D_STENCIL_MASK 0x00000360
2450 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC 0x00000364
2451 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NEVER 0x00000200
2452 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LESS 0x00000201
2453 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_EQUAL 0x00000202
2454 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LEQUAL 0x00000203
2455 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER 0x00000204
2456 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER 0x00000204
2457 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205
2458 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GEQUAL 0x00000206
2459 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_ALWAYS 0x00000207
2460 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF 0x00000368
2461 #define NV10_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK 0x0000036c
2462 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL 0x00000370
2463 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_ZERO 0x00000000
2464 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INVERT 0x0000150a
2465 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_KEEP 0x00001e00
2466 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_REPLACE 0x00001e01
2467 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR 0x00001e02
2468 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR 0x00001e03
2469 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR_WRAP 0x00008507
2470 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR_WRAP 0x00008508
2471 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL 0x00000374
2472 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_ZERO 0x00000000
2473 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INVERT 0x0000150a
2474 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_KEEP 0x00001e00
2475 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_REPLACE 0x00001e01
2476 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR 0x00001e02
2477 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR 0x00001e03
2478 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR_WRAP 0x00008507
2479 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR_WRAP 0x00008508
2480 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS 0x00000378
2481 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_ZERO 0x00000000
2482 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INVERT 0x0000150a
2483 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_KEEP 0x00001e00
2484 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_REPLACE 0x00001e01
2485 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR 0x00001e02
2486 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR 0x00001e03
2487 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR_WRAP 0x00008507
2488 #define NV10_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR_WRAP 0x00008508
2489 #define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL 0x0000037c
2490 #define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT 0x00001d00
2491 #define NV10_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH 0x00001d01
2492 #define NV10_TCL_PRIMITIVE_3D_LINE_WIDTH 0x00000380
2493 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
2494 #define NV10_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000388
2495 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x0000038c
2496 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT 0x00001b00
2497 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE 0x00001b01
2498 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL 0x00001b02
2499 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x00000390
2500 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT 0x00001b00
2501 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE 0x00001b01
2502 #define NV10_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL 0x00001b02
2503 #define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
2504 #define NV10_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
2505 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE 0x0000039c
2506 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE_FRONT 0x00000404
2507 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE_BACK 0x00000405
2508 #define NV10_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK 0x00000408
2509 #define NV10_TCL_PRIMITIVE_3D_FRONT_FACE 0x000003a0
2510 #define NV10_TCL_PRIMITIVE_3D_FRONT_FACE_CW 0x00000900
2511 #define NV10_TCL_PRIMITIVE_3D_FRONT_FACE_CCW 0x00000901
2512 #define NV10_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x000003a4
2513 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_R 0x000003a8
2514 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_G 0x000003ac
2515 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_B 0x000003b0
2516 #define NV10_TCL_PRIMITIVE_3D_COLOR_MATERIAL_A 0x000003b4
2517 #define NV10_TCL_PRIMITIVE_3D_COLOR_CONTROL 0x000003b8
2518 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x000003bc
2519 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT0 (1 << 0)
2520 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT1 (1 << 2)
2521 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT2 (1 << 4)
2522 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT3 (1 << 6)
2523 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT4 (1 << 8)
2524 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT5 (1 << 10)
2525 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT6 (1 << 12)
2526 #define NV10_TCL_PRIMITIVE_3D_ENABLED_LIGHTS_LIGHT7 (1 << 14)
2527 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x) (0x000003c0+((x)*4))
2528 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE 0x00000008
2529 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_FALSE 0x00000000
2530 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_EYE_LINEAR 0x00002400
2531 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE_OBJECT_LINEAR 0x00002401
2532 #define NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x) (0x000003e0+((x)*4))
2533 #define NV10_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE 0x00000002
2534 #define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE 0x000003e8
2535 #define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_MODELVIEW1 (1 << 0)
2536 #define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_MODELVIEW0 (1 << 1)
2537 #define NV10_TCL_PRIMITIVE_3D_VIEW_MATRIX_ENABLE_PROJECTION (1 << 2)
2538 #define NV10_TCL_PRIMITIVE_3D_POINT_SIZE 0x000003ec
2539 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX(x) (0x00000400+((x)*4))
2540 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW0_MATRIX__SIZE 0x00000010
2541 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX(x) (0x00000440+((x)*4))
2542 #define NV10_TCL_PRIMITIVE_3D_MODELVIEW1_MATRIX__SIZE 0x00000010
2543 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX(x) (0x00000480+((x)*4))
2544 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW0_MATRIX__SIZE 0x00000010
2545 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX(x) (0x000004c0+((x)*4))
2546 #define NV10_TCL_PRIMITIVE_3D_INVERSE_MODELVIEW1_MATRIX__SIZE 0x00000010
2547 #define NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x) (0x00000500+((x)*4))
2548 #define NV10_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE 0x00000010
2549 #define NV10_TCL_PRIMITIVE_3D_TX0_MATRIX(x) (0x00000540+((x)*4))
2550 #define NV10_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE 0x00000010
2551 #define NV10_TCL_PRIMITIVE_3D_TX1_MATRIX(x) (0x00000580+((x)*4))
2552 #define NV10_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE 0x00000010
2553 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A(x) (0x00000600+((x)*16))
2554 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_A__SIZE 0x00000008
2555 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B(x) (0x00000604+((x)*16))
2556 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_B__SIZE 0x00000008
2557 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C(x) (0x00000608+((x)*16))
2558 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_C__SIZE 0x00000008
2559 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D(x) (0x0000060c+((x)*16))
2560 #define NV10_TCL_PRIMITIVE_3D_CLIP_PLANE_D__SIZE 0x00000008
2561 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x00000680
2562 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x00000684
2563 #define NV10_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x00000688
2564 #define NV10_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS(x) (0x000006a0+((x)*4))
2565 #define NV10_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS__SIZE 0x00000006
2566 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R0x000006c4
2567 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G0x000006c8
2568 #define NV10_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B0x000006cc
2569 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_X 0x000006e8
2570 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Y 0x000006ec
2571 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_Z 0x000006f0
2572 #define NV10_TCL_PRIMITIVE_3D_VIEWPORT_SCALE_W 0x000006f4
2573 #define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER(x) (0x000006f8+((x)*4))
2574 #define NV10_TCL_PRIMITIVE_3D_POINT_PARAMETER__SIZE 0x00000008
2575 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x) (0x00000800+((x)*128))
2576 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE 0x00000008
2577 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x) (0x00000804+((x)*128))
2578 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE 0x00000008
2579 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x) (0x00000808+((x)*128))
2580 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE 0x00000008
2581 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x) (0x0000080c+((x)*128))
2582 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE 0x00000008
2583 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x) (0x00000810+((x)*128))
2584 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE 0x00000008
2585 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x) (0x00000814+((x)*128))
2586 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE 0x00000008
2587 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x) (0x00000818+((x)*128))
2588 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE 0x00000008
2589 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x) (0x0000081c+((x)*128))
2590 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE 0x00000008
2591 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x) (0x00000820+((x)*128))
2592 #define NV10_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE 0x00000008
2593 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X(x) (0x00000828+((x)*128))
2594 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X__SIZE 0x00000008
2595 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y(x) (0x0000082c+((x)*128))
2596 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y__SIZE 0x00000008
2597 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z(x) (0x00000830+((x)*128))
2598 #define NV10_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z__SIZE 0x00000008
2599 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X(x) (0x00000834+((x)*128))
2600 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X__SIZE 0x00000008
2601 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y(x) (0x00000838+((x)*128))
2602 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y__SIZE 0x00000008
2603 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z(x) (0x0000083c+((x)*128))
2604 #define NV10_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z__SIZE 0x00000008
2605 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(x) (0x00000840+((x)*128))
2606 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A__SIZE 0x00000008
2607 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(x) (0x00000844+((x)*128))
2608 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B__SIZE 0x00000008
2609 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(x) (0x00000848+((x)*128))
2610 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C__SIZE 0x00000008
2611 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(x) (0x0000084c+((x)*128))
2612 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X__SIZE 0x00000008
2613 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(x) (0x00000850+((x)*128))
2614 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y__SIZE 0x00000008
2615 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(x) (0x00000854+((x)*128))
2616 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z__SIZE 0x00000008
2617 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D(x) (0x00000858+((x)*128))
2618 #define NV10_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D__SIZE 0x00000008
2619 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(x) (0x0000085c+((x)*128))
2620 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_X__SIZE 0x00000008
2621 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(x) (0x00000860+((x)*128))
2622 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y__SIZE 0x00000008
2623 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(x) (0x00000864+((x)*128))
2624 #define NV10_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z__SIZE 0x00000008
2625 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT(x) (0x00000868+((x)*128))
2626 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT__SIZE 0x00000008
2627 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR(x) (0x0000086c+((x)*128))
2628 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR__SIZE 0x00000008
2629 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC(x) (0x00000870+((x)*128))
2630 #define NV10_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC__SIZE 0x00000008
2631 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X 0x00000c00
2632 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y 0x00000c04
2633 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z 0x00000c08
2634 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X 0x00000c18
2635 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y 0x00000c1c
2636 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z 0x00000c20
2637 #define NV10_TCL_PRIMITIVE_3D_VERTEX_POS_4F_W 0x00000c24
2638 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X 0x00000c30
2639 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y 0x00000c34
2640 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z 0x00000c38
2641 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00000c40
2642 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT 0
2643 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK 0x0000ffff
2644 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT 16
2645 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK 0xffff0000
2646 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00000c44
2647 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT 0
2648 #define NV10_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK 0x0000ffff
2649 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_R 0x00000c50
2650 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_G 0x00000c54
2651 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_B 0x00000c58
2652 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4F_A 0x00000c5c
2653 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_R 0x00000c60
2654 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_G 0x00000c64
2655 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_3F_B 0x00000c68
2656 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x00000c6c
2657 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT 0
2658 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK 0x000000ff
2659 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT 8
2660 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK 0x0000ff00
2661 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT 16
2662 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK 0x00ff0000
2663 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT 24
2664 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK 0xff000000
2665 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_R 0x00000c80
2666 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_G 0x00000c84
2667 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_B 0x00000c88
2668 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I 0x00000c8c
2669 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_R_SHIFT 0
2670 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_R_MASK 0x000000ff
2671 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_G_SHIFT 8
2672 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_G_MASK 0x0000ff00
2673 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_B_SHIFT 16
2674 #define NV10_TCL_PRIMITIVE_3D_VERTEX_COL2_3I_B_MASK 0x00ff0000
2675 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x00000c90
2676 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x00000c94
2677 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00000c98
2678 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_SHIFT 0
2679 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_MASK 0x0000ffff
2680 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_SHIFT 16
2681 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_MASK 0xffff0000
2682 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S 0x00000ca0
2683 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T 0x00000ca4
2684 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R 0x00000ca8
2685 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q 0x00000cac
2686 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x00000cb0
2687 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_SHIFT 0
2688 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_MASK 0x0000ffff
2689 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_SHIFT 16
2690 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_MASK 0xffff0000
2691 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x00000cb4
2692 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_SHIFT 0
2693 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_MASK 0x0000ffff
2694 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_SHIFT 16
2695 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_MASK 0xffff0000
2696 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x00000cb8
2697 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x00000cbc
2698 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x00000cc0
2699 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_SHIFT 0
2700 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_MASK 0x0000ffff
2701 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_SHIFT 16
2702 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_MASK 0xffff0000
2703 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S 0x00000cc8
2704 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T 0x00000ccc
2705 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R 0x00000cd0
2706 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q 0x00000cd4
2707 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x00000cd8
2708 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_SHIFT 0
2709 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_MASK 0x0000ffff
2710 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_SHIFT 16
2711 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_MASK 0xffff0000
2712 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x00000cdc
2713 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_SHIFT 0
2714 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_MASK 0x0000ffff
2715 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_SHIFT 16
2716 #define NV10_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_MASK 0xffff0000
2717 #define NV10_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00000ce0
2718 #define NV10_TCL_PRIMITIVE_3D_VERTEX_WGH_1F 0x00000ce4
2719 #define NV10_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE 0x00000cec
2720 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_VALIDATE 0x00000cf0
2721 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_POS 0x00000d00
2722 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS 0x00000d04
2723 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_TYPE_SHIFT 0
2724 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_TYPE_MASK 0x0000000f
2725 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_FIELDS_SHIFT 4
2726 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_FIELDS_MASK 0x000000f0
2727 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_STRIDE_SHIFT 8
2728 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_POS_STRIDE_MASK 0x0000ff00
2729 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL 0x00000d08
2730 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL 0x00000d0c
2731 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_TYPE_SHIFT 0
2732 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_TYPE_MASK 0x0000000f
2733 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_FIELDS_SHIFT 4
2734 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_FIELDS_MASK 0x000000f0
2735 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_STRIDE_SHIFT 8
2736 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL_STRIDE_MASK 0x0000ff00
2737 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_COL2 0x00000d10
2738 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2 0x00000d14
2739 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_TYPE_SHIFT 0
2740 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_TYPE_MASK 0x0000000f
2741 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_FIELDS_SHIFT 4
2742 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_FIELDS_MASK 0x000000f0
2743 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_STRIDE_SHIFT 8
2744 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_COL2_STRIDE_MASK 0x0000ff00
2745 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX0 0x00000d18
2746 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0 0x00000d1c
2747 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_TYPE_SHIFT 0
2748 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_TYPE_MASK 0x0000000f
2749 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_FIELDS_SHIFT 4
2750 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_FIELDS_MASK 0x000000f0
2751 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_STRIDE_SHIFT 8
2752 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX0_STRIDE_MASK 0x0000ff00
2753 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_TX1 0x00000d20
2754 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1 0x00000d24
2755 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_TYPE_SHIFT 0
2756 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_TYPE_MASK 0x0000000f
2757 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_FIELDS_SHIFT 4
2758 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_FIELDS_MASK 0x000000f0
2759 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_STRIDE_SHIFT 8
2760 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TX1_STRIDE_MASK 0x0000ff00
2761 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_NOR 0x00000d28
2762 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR 0x00000d2c
2763 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_TYPE_SHIFT 0
2764 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_TYPE_MASK 0x0000000f
2765 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_FIELDS_SHIFT 4
2766 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_FIELDS_MASK 0x000000f0
2767 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_STRIDE_SHIFT 8
2768 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_NOR_STRIDE_MASK 0x0000ff00
2769 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_WGH 0x00000d30
2770 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH 0x00000d34
2771 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_TYPE_SHIFT 0
2772 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_TYPE_MASK 0x0000000f
2773 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_FIELDS_SHIFT 4
2774 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_FIELDS_MASK 0x000000f0
2775 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_STRIDE_SHIFT 8
2776 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_WGH_STRIDE_MASK 0x0000ff00
2777 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_OFFSET_FOG 0x00000d38
2778 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG 0x00000d3c
2779 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_TYPE_SHIFT 0
2780 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_TYPE_MASK 0x0000000f
2781 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_FIELDS_SHIFT 4
2782 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_FIELDS_MASK 0x000000f0
2783 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_STRIDE_SHIFT 8
2784 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FOG_STRIDE_MASK 0x0000ff00
2785 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END 0x00000dfc
2786 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_STOP 0x00000000
2787 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POINTS 0x00000001
2788 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINES 0x00000002
2789 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_LOOP 0x00000003
2790 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_STRIP 0x00000004
2791 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLES 0x00000005
2792 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_STRIP 0x00000006
2793 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_FAN 0x00000007
2794 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUADS 0x00000008
2795 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUAD_STRIP 0x00000009
2796 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POLYGON 0x0000000a
2797 #define NV10_TCL_PRIMITIVE_3D_DRAW_INDEX 0x00000e00
2798 #define NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I0_SHIFT 0
2799 #define NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I0_MASK 0x0000ffff
2800 #define NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I1_SHIFT 24
2801 #define NV10_TCL_PRIMITIVE_3D_DRAW_INDEX_I1_MASK 0xff000000
2802 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END 0x000013fc
2803 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_STOP 0x00000000
2804 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_POINTS 0x00000001
2805 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINES 0x00000002
2806 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINE_LOOP 0x00000003
2807 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_LINE_STRIP 0x00000004
2808 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLES 0x00000005
2809 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLE_STRIP 0x00000006
2810 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_TRIANGLE_FAN 0x00000007
2811 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_QUADS 0x00000008
2812 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_QUAD_STRIP 0x00000009
2813 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_BEGIN_END_POLYGON 0x0000000a
2814 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS 0x00001400
2815 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_SHIFT 0
2816 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_FIRST_MASK 0x0000ffff
2817 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_LAST_SHIFT 24
2818 #define NV10_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS_LAST_MASK 0xff000000
2819 #define NV10_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA 0x00001800
2822 #define NV04_CONTEXT_COLOR_KEY 0x00000057
2826 #define NV03_CONTEXT_SURFACES_2D 0x00000058
2828 #define NV03_CONTEXT_SURFACES_2D_SYNCHRONIZE 0x00000100
2829 #define NV03_CONTEXT_SURFACES_2D_DMA_NOTIFY 0x00000180
2830 #define NV03_CONTEXT_SURFACES_2D_DMA_SOURCE 0x00000184
2831 #define NV03_CONTEXT_SURFACES_2D_DMA_DESTIN 0x00000188
2832 #define NV03_CONTEXT_SURFACES_2D_COLOR_FORMAT 0x00000300
2833 #define NV03_CONTEXT_SURFACES_2D_PITCH 0x00000304
2834 #define NV03_CONTEXT_SURFACES_2D_PITCH_SOURCE_SHIFT 0
2835 #define NV03_CONTEXT_SURFACES_2D_PITCH_SOURCE_MASK 0x0000ffff
2836 #define NV03_CONTEXT_SURFACES_2D_PITCH_DESTIN_SHIFT 16
2837 #define NV03_CONTEXT_SURFACES_2D_PITCH_DESTIN_MASK 0xffff0000
2838 #define NV03_CONTEXT_SURFACES_2D_OFFSET_SOURCE 0x00000308
2839 #define NV03_CONTEXT_SURFACES_2D_OFFSET_DESTIN 0x0000030c
2842 #define NV03_CONTEXT_SURFACES_3D 0x0000005a
2844 #define NV03_CONTEXT_SURFACES_3D_SYNCHRONIZE 0x00000100
2845 #define NV03_CONTEXT_SURFACES_3D_DMA_NOTIFY 0x00000180
2846 #define NV03_CONTEXT_SURFACES_3D_DMA_SURFACE 0x00000184
2847 #define NV03_CONTEXT_SURFACES_3D_PITCH 0x00000300
2848 #define NV03_CONTEXT_SURFACES_3D_OFFSET_COLOR 0x00000304
2849 #define NV03_CONTEXT_SURFACES_3D_OFFSET_ZETA 0x00000308
2852 #define NV04_RENDER_SOLID_LINE 0x0000005c
2854 #define NV04_RENDER_SOLID_LINE_SURFACE 0x00000198
2857 #define NV04_RENDER_SOLID_TRIANGLE 0x0000005d
2861 #define NV04_RENDER_SOLID_RECTANGLE 0x0000005e
2863 #define NV04_RENDER_SOLID_RECTANGLE_SURFACE 0x00000198
2866 #define NV_IMAGE_BLIT 0x0000005f
2868 #define NV_IMAGE_BLIT_NOP 0x00000100
2869 #define NV_IMAGE_BLIT_NOTIFY 0x00000104
2870 #define NV_IMAGE_BLIT_DMA_NOTIFY 0x00000180
2871 #define NV_IMAGE_BLIT_COLOR_KEY 0x00000184
2872 #define NV_IMAGE_BLIT_CLIP_RECTANGLE 0x00000188
2873 #define NV_IMAGE_BLIT_PATTERN 0x0000018c
2874 #define NV_IMAGE_BLIT_ROP 0x00000190
2875 #define NV_IMAGE_BLIT_BETA4 0x00000198
2876 #define NV_IMAGE_BLIT_SURFACE 0x0000019c
2877 #define NV_IMAGE_BLIT_OPERATION 0x000002fc
2878 #define NV_IMAGE_BLIT_OPERATION_SRCCOPY_AND 0x00000000
2879 #define NV_IMAGE_BLIT_OPERATION_ROP_AND 0x00000001
2880 #define NV_IMAGE_BLIT_OPERATION_BLEND_AND 0x00000002
2881 #define NV_IMAGE_BLIT_OPERATION_SRCCOPY 0x00000003
2882 #define NV_IMAGE_BLIT_OPERATION_SRCCOPY_PREMULT 0x00000004
2883 #define NV_IMAGE_BLIT_OPERATION_BLEND_PREMULT 0x00000005
2884 #define NV_IMAGE_BLIT_POINT_IN 0x00000300
2885 #define NV_IMAGE_BLIT_POINT_IN_X_SHIFT 0
2886 #define NV_IMAGE_BLIT_POINT_IN_X_MASK 0x0000ffff
2887 #define NV_IMAGE_BLIT_POINT_IN_Y_SHIFT 16
2888 #define NV_IMAGE_BLIT_POINT_IN_Y_MASK 0xffff0000
2889 #define NV_IMAGE_BLIT_POINT_OUT 0x00000300
2890 #define NV_IMAGE_BLIT_POINT_OUT_X_SHIFT 0
2891 #define NV_IMAGE_BLIT_POINT_OUT_X_MASK 0x0000ffff
2892 #define NV_IMAGE_BLIT_POINT_OUT_Y_SHIFT 16
2893 #define NV_IMAGE_BLIT_POINT_OUT_Y_MASK 0xffff0000
2894 #define NV_IMAGE_BLIT_SIZE 0x00000300
2895 #define NV_IMAGE_BLIT_SIZE_W_SHIFT 0
2896 #define NV_IMAGE_BLIT_SIZE_W_MASK 0x0000ffff
2897 #define NV_IMAGE_BLIT_SIZE_H_SHIFT 16
2898 #define NV_IMAGE_BLIT_SIZE_H_MASK 0xffff0000
2901 #define NV04_INDEXED_IMAGE_FROM_CPU 0x00000060
2903 #define NV04_INDEXED_IMAGE_FROM_CPU_NOP 0x00000100
2904 #define NV04_INDEXED_IMAGE_FROM_CPU_NOTIFY 0x00000104
2905 #define NV04_INDEXED_IMAGE_FROM_CPU_PATCH 0x0000010c
2906 #define NV04_INDEXED_IMAGE_FROM_CPU_DMA_NOTIFY 0x00000180
2907 #define NV04_INDEXED_IMAGE_FROM_CPU_DMA_LUT 0x00000184
2908 #define NV04_INDEXED_IMAGE_FROM_CPU_COLOR_FORMAT 0x000003e8
2909 #define NV04_INDEXED_IMAGE_FROM_CPU_INDEX_FORMAT 0x000003ec
2910 #define NV04_INDEXED_IMAGE_FROM_CPU_LUT_OFFSET 0x000003f0
2911 #define NV04_INDEXED_IMAGE_FROM_CPU_POINT 0x000003f4
2912 #define NV04_INDEXED_IMAGE_FROM_CPU_SIZE_OUT 0x000003f8
2913 #define NV04_INDEXED_IMAGE_FROM_CPU_SIZE_IN 0x000003fc
2914 #define NV04_INDEXED_IMAGE_FROM_CPU_COLOR 0x00000400
2917 #define NV_IMAGE_FROM_CPU 0x00000061
2919 #define NV_IMAGE_FROM_CPU_BETA4 0x00000198
2920 #define NV_IMAGE_FROM_CPU_SURFACE 0x0000019c
2923 #define NV10_CONTEXT_SURFACES_2D 0x00000062
2927 #define NV05_SCALED_IMAGE_FROM_MEMORY 0x00000063
2929 #define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION 0x000002fc
2930 #define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_DITHER 0x00000000
2931 #define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_TRUNCATE 0x00000001
2932 #define NV05_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_SUBTR_TRUNCATE 0x00000002
2935 #define NV01_IMAGE_SRCCOPY_AND 0x00000064
2937 #define NV01_IMAGE_SRCCOPY_AND_NOTIFY 0x00000104
2938 #define NV01_IMAGE_SRCCOPY_AND_DMA_NOTIFY 0x00000180
2939 #define NV01_IMAGE_SRCCOPY_AND_IMAGE_OUTPUT 0x00000200
2940 #define NV01_IMAGE_SRCCOPY_AND_IMAGE_INPUT 0x00000204
2943 #define NV05_INDEXED_IMAGE_FROM_CPU 0x00000064
2945 #define NV05_INDEXED_IMAGE_FROM_CPU_COLOR_KEY 0x00000188
2946 #define NV05_INDEXED_IMAGE_FROM_CPU_CLIP_RECTANGLE 0x0000018c
2947 #define NV05_INDEXED_IMAGE_FROM_CPU_PATTERN 0x00000190
2948 #define NV05_INDEXED_IMAGE_FROM_CPU_ROP 0x00000194
2949 #define NV05_INDEXED_IMAGE_FROM_CPU_BETA1 0x00000198
2950 #define NV05_INDEXED_IMAGE_FROM_CPU_BETA4 0x0000019c
2951 #define NV05_INDEXED_IMAGE_FROM_CPU_SURFACE 0x000001a0
2952 #define NV05_INDEXED_IMAGE_FROM_CPU_COLOR_CONVERSION 0x000003e0
2953 #define NV05_INDEXED_IMAGE_FROM_CPU_OPERATION 0x000003e4
2954 #define NV05_INDEXED_IMAGE_FROM_CPU_INDICES 0x00000400
2957 #define NV05_IMAGE_FROM_CPU 0x00000065
2959 #define NV05_IMAGE_FROM_CPU_BETA4 0x00000198
2960 #define NV05_IMAGE_FROM_CPU_SURFACE 0x0000019c
2963 #define NV05_STRETCHED_IMAGE_FROM_CPU 0x00000066
2965 #define NV05_STRETCHED_IMAGE_FROM_CPU_BETA4 0x00000194
2966 #define NV05_STRETCHED_IMAGE_FROM_CPU_SURFACE 0x00000198
2967 #define NV05_STRETCHED_IMAGE_FROM_CPU_COLOR_CONVERSION 0x000002f8
2970 #define NV04_IMAGE_BLEND_PREMULT 0x00000067
2972 #define NV04_IMAGE_BLEND_PREMULT_NOP 0x00000100
2973 #define NV04_IMAGE_BLEND_PREMULT_NOTIFY 0x00000104
2974 #define NV04_IMAGE_BLEND_PREMULT_DMA_NOTIFY 0x00000180
2975 #define NV04_IMAGE_BLEND_PREMULT_IMAGE_OUTPUT 0x00000200
2976 #define NV04_IMAGE_BLEND_PREMULT_BETA_INPUT 0x00000204
2977 #define NV04_IMAGE_BLEND_PREMULT_IMAGE_INPUT 0x00000208
2980 #define NV03_CHANNEL_PIO 0x0000006a
2984 #define NV03_CHANNEL_DMA 0x0000006b
2988 #define NV04_BETA_SOLID 0x00000072
2990 #define NV04_BETA_SOLID_NOP 0x00000100
2991 #define NV04_BETA_SOLID_NOTIFY 0x00000104
2992 #define NV04_BETA_SOLID_DMA_NOTIFY 0x00000180
2993 #define NV04_BETA_SOLID_BETA_OUTPUT 0x00000200
2994 #define NV04_BETA_SOLID_BETA_FACTOR 0x00000300
2997 #define NV04_STRETCHED_IMAGE_FROM_CPU 0x00000076
3001 #define NV04_SCALED_IMAGE_FROM_MEMORY 0x00000077
3003 #define NV04_SCALED_IMAGE_FROM_MEMORY_NOP 0x00000100
3004 #define NV04_SCALED_IMAGE_FROM_MEMORY_NOTIFY 0x00000104
3005 #define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_NOTIFY 0x00000180
3006 #define NV04_SCALED_IMAGE_FROM_MEMORY_DMA_IMAGE 0x00000184
3007 #define NV04_SCALED_IMAGE_FROM_MEMORY_PATTERN 0x00000188
3008 #define NV04_SCALED_IMAGE_FROM_MEMORY_ROP 0x0000018c
3009 #define NV04_SCALED_IMAGE_FROM_MEMORY_BETA1 0x00000190
3010 #define NV04_SCALED_IMAGE_FROM_MEMORY_BETA4 0x00000194
3011 #define NV04_SCALED_IMAGE_FROM_MEMORY_SURFACE 0x00000198
3012 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION 0x000002fc
3013 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_DITHER 0x00000000
3014 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_TRUNCATE 0x00000001
3015 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_CONVERSION_SUBTR_TRUNCATE 0x00000002
3016 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT 0x00000300
3017 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A1R5G5B5 0x00000001
3018 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X1R5G5B5 0x00000002
3019 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_A8R8G8B8 0x00000003
3020 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_X8R8G8B8 0x00000004
3021 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_V8YB8U8YA8 0x00000005
3022 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_YB8V8YA8U8 0x00000006
3023 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_R5G6B5 0x00000007
3024 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_Y8 0x00000008
3025 #define NV04_SCALED_IMAGE_FROM_MEMORY_COLOR_FORMAT_AY8 0x00000009
3026 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION 0x00000304
3027 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_AND 0x00000000
3028 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_ROP_AND 0x00000001
3029 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_AND 0x00000002
3030 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY 0x00000003
3031 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_SRCCOPY_PREMULT 0x00000004
3032 #define NV04_SCALED_IMAGE_FROM_MEMORY_OPERATION_BLEND_PREMULT 0x00000005
3033 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT 0x00000308
3034 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_SHIFT 0
3035 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_X_MASK 0x0000ffff
3036 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_SHIFT 16
3037 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_POINT_Y_MASK 0xffff0000
3038 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE 0x0000030c
3039 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_SHIFT 0
3040 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_W_MASK 0x0000ffff
3041 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_SHIFT 16
3042 #define NV04_SCALED_IMAGE_FROM_MEMORY_CLIP_SIZE_H_MASK 0xffff0000
3043 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POINT 0x00000310
3044 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_X_SHIFT 0
3045 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_X_MASK 0x0000ffff
3046 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_Y_SHIFT 16
3047 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_POINT_Y_MASK 0xffff0000
3048 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE 0x00000314
3049 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_W_SHIFT 0
3050 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_W_MASK 0x0000ffff
3051 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_H_SHIFT 16
3052 #define NV04_SCALED_IMAGE_FROM_MEMORY_OUT_SIZE_H_MASK 0xffff0000
3053 #define NV04_SCALED_IMAGE_FROM_MEMORY_DU_DX 0x00000318
3054 #define NV04_SCALED_IMAGE_FROM_MEMORY_DV_DY 0x0000031c
3055 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE 0x00000400
3056 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE_W_SHIFT 0
3057 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE_W_MASK 0x0000ffff
3058 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE_H_SHIFT 16
3059 #define NV04_SCALED_IMAGE_FROM_MEMORY_SIZE_H_MASK 0xffff0000
3060 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT 0x00000404
3061 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_PITCH_SHIFT 0
3062 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_PITCH_MASK 0x0000ffff
3063 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_SHIFT 16
3064 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_MASK 0x00ff0000
3065 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_CENTER 0x00010000
3066 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_CORNER 0x00020000
3067 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_SHIFT 24
3068 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_MASK 0xff000000
3069 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_POINT_SAMPLE 0x00000000
3070 #define NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_BILINEAR 0x01000000
3071 #define NV04_SCALED_IMAGE_FROM_MEMORY_ADDRESS 0x00000408
3072 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT 0x0000040c
3073 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT_X_SHIFT 0
3074 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT_X_MASK 0x0000ffff
3075 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT_Y_SHIFT 16
3076 #define NV04_SCALED_IMAGE_FROM_MEMORY_POINT_Y_MASK 0xffff0000
3079 #define NV10_TEXTURE_FROM_CPU 0x0000007b
3081 #define NV10_TEXTURE_FROM_CPU_NOP 0x00000100
3082 #define NV10_TEXTURE_FROM_CPU_NOTIFY 0x00000104
3083 #define NV10_TEXTURE_FROM_CPU_WAIT_FOR_IDLE 0x00000108
3084 #define NV10_TEXTURE_FROM_CPU_PM_TRIGGER 0x00000140
3085 #define NV10_TEXTURE_FROM_CPU_DMA_NOTIFY 0x00000180
3086 #define NV10_TEXTURE_FROM_CPU_SURFACE 0x00000184
3087 #define NV10_TEXTURE_FROM_CPU_COLOR_FORMAT 0x00000300
3088 #define NV10_TEXTURE_FROM_CPU_POINT 0x00000304
3089 #define NV10_TEXTURE_FROM_CPU_POINT_X_SHIFT 0
3090 #define NV10_TEXTURE_FROM_CPU_POINT_X_MASK 0x0000ffff
3091 #define NV10_TEXTURE_FROM_CPU_POINT_Y_SHIFT 16
3092 #define NV10_TEXTURE_FROM_CPU_POINT_Y_MASK 0xffff0000
3093 #define NV10_TEXTURE_FROM_CPU_SIZE 0x00000308
3094 #define NV10_TEXTURE_FROM_CPU_SIZE_W_SHIFT 0
3095 #define NV10_TEXTURE_FROM_CPU_SIZE_W_MASK 0x0000ffff
3096 #define NV10_TEXTURE_FROM_CPU_SIZE_H_SHIFT 16
3097 #define NV10_TEXTURE_FROM_CPU_SIZE_H_MASK 0xffff0000
3098 #define NV10_TEXTURE_FROM_CPU_CLIP_HORIZONTAL 0x0000030c
3099 #define NV10_TEXTURE_FROM_CPU_CLIP_HORIZONTAL_X_SHIFT 0
3100 #define NV10_TEXTURE_FROM_CPU_CLIP_HORIZONTAL_X_MASK 0x0000ffff
3101 #define NV10_TEXTURE_FROM_CPU_CLIP_HORIZONTAL_W_SHIFT 16
3102 #define NV10_TEXTURE_FROM_CPU_CLIP_HORIZONTAL_W_MASK 0xffff0000
3103 #define NV10_TEXTURE_FROM_CPU_CLIP_VERTICAL 0x00000310
3104 #define NV10_TEXTURE_FROM_CPU_CLIP_VERTICAL_Y_SHIFT 0
3105 #define NV10_TEXTURE_FROM_CPU_CLIP_VERTICAL_Y_MASK 0x0000ffff
3106 #define NV10_TEXTURE_FROM_CPU_CLIP_VERTICAL_H_SHIFT 16
3107 #define NV10_TEXTURE_FROM_CPU_CLIP_VERTICAL_H_MASK 0xffff0000
3108 #define NV10_TEXTURE_FROM_CPU_COLOR(x) (0x00000400+((x)*4))
3109 #define NV10_TEXTURE_FROM_CPU_COLOR__SIZE 0x00000700
3112 #define NV10_VIDEO_DISPLAY 0x0000007c
3116 #define NV10_DVD_SUBPICTURE 0x00000088
3120 #define NV10_SCALED_IMAGE_FROM_MEMORY 0x00000089
3122 #define NV10_SCALED_IMAGE_FROM_MEMORY_WAIT_FOR_IDLE 0x00000108
3125 #define NV10_IMAGE_FROM_CPU 0x0000008a
3127 #define NV10_IMAGE_FROM_CPU_COLOR_CONVERSION 0x000002f8
3130 #define NV10_CONTEXT_SURFACES_3D 0x00000093
3134 #define NV10_DX5_TEXTURE_TRIANGLE 0x00000094
3138 #define NV10_DX6_MULTI_TEXTURE_TRIANGLE 0x00000095
3142 #define NV11_TCL_PRIMITIVE_3D 0x00000096
3144 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x00000d40
3145 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP 0x00000d44
3146 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_CLEAR 0x00001500
3147 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND 0x00001501
3148 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_REVERSE 0x00001502
3149 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY 0x00001503
3150 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_INVERTED 0x00001504
3151 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOOP 0x00001505
3152 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_XOR 0x00001506
3153 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR 0x00001507
3154 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOR 0x00001508
3155 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_EQUIV 0x00001509
3156 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_INVERT 0x0000150a
3157 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_REVERSE 0x0000150b
3158 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY_INVERTED 0x0000150c
3159 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_INVERTED 0x0000150d
3160 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NAND 0x0000150e
3161 #define NV11_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_SET 0x0000150f
3164 #define NV20_TCL_PRIMITIVE_3D 0x00000097
3166 #define NV20_TCL_PRIMITIVE_3D_NOP 0x00000100
3167 #define NV20_TCL_PRIMITIVE_3D_NOTIFY 0x00000104
3168 #define NV20_TCL_PRIMITIVE_3D_DMA_NOTIFY 0x00000180
3169 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0 0x00000184
3170 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1 0x00000188
3171 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2 0x00000194
3172 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3 0x00000198
3173 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY6 0x000001a4
3174 #define NV20_TCL_PRIMITIVE_3D_DMA_IN_MEMORY7 0x000001a8
3175 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200
3176 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204
3177 #define NV20_TCL_PRIMITIVE_3D_BUFFER_FORMAT 0x00000208
3178 #define NV20_TCL_PRIMITIVE_3D_BUFFER_PITCH 0x0000020c
3179 #define NV20_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
3180 #define NV20_TCL_PRIMITIVE_3D_ZETA_OFFSET 0x00000214
3181 #define NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x) (0x00000260+((x)*4))
3182 #define NV20_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE 0x00000008
3183 #define NV20_TCL_PRIMITIVE_3D_RC_FINAL0 0x00000288
3184 #define NV20_TCL_PRIMITIVE_3D_RC_FINAL1 0x0000028c
3185 #define NV20_TCL_PRIMITIVE_3D_LIGHT_CONTROL 0x00000294
3186 #define NV20_TCL_PRIMITIVE_3D_FOG_MODE 0x0000029c
3187 #define NV20_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000002a0
3188 #define NV20_TCL_PRIMITIVE_3D_FOG_ENABLE 0x000002a4
3189 #define NV20_TCL_PRIMITIVE_3D_FOG_COLOR 0x000002a8
3190 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_MODE 0x000002b4
3191 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x) (0x000002c0+((x)*4))
3192 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
3193 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x) (0x000002e0+((x)*4))
3194 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE 0x00000008
3195 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE 0x00000300
3196 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE 0x00000304
3197 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x00000308
3198 #define NV20_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x0000030c
3199 #define NV20_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000310
3200 #define NV20_TCL_PRIMITIVE_3D_LIGHTING_ENABLE 0x00000314
3201 #define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00000318
3202 #define NV20_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x00000320
3203 #define NV20_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00000324
3204 #define NV20_TCL_PRIMITIVE_3D_STENCIL_ENABLE 0x0000032c
3205 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000330
3206 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000334
3207 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000338
3208 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC 0x0000033c
3209 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER 0x00000200
3210 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS 0x00000201
3211 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL 0x00000202
3212 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
3213 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
3214 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
3215 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
3216 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
3217 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
3218 #define NV20_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x00000340
3219 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000344
3220 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ZERO 0x00000000
3221 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE 0x00000001
3222 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_COLOR 0x00000300
3223 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_COLOR 0x00000301
3224 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA 0x00000302
3225 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_SRC_ALPHA 0x00000303
3226 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_ALPHA 0x00000304
3227 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_ALPHA 0x00000305
3228 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_DST_COLOR 0x00000306
3229 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_DST_COLOR 0x00000307
3230 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_SRC_ALPHA_SATURATE 0x00000308
3231 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_COLOR 0x00008001
3232 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_COLOR 0x00008002
3233 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_CONSTANT_ALPHA 0x00008003
3234 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ONE_MINUS_CONSTANT_ALPHA 0x00008004
3235 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000348
3236 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ZERO 0x00000000
3237 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE 0x00000001
3238 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_COLOR 0x00000300
3239 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_COLOR 0x00000301
3240 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA 0x00000302
3241 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_SRC_ALPHA 0x00000303
3242 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_ALPHA 0x00000304
3243 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_ALPHA 0x00000305
3244 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_DST_COLOR 0x00000306
3245 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_DST_COLOR 0x00000307
3246 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_SRC_ALPHA_SATURATE 0x00000308
3247 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_COLOR 0x00008001
3248 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_COLOR 0x00008002
3249 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_CONSTANT_ALPHA 0x00008003
3250 #define NV20_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ONE_MINUS_CONSTANT_ALPHA 0x00008004
3251 #define NV20_TCL_PRIMITIVE_3D_BLEND_COLOR 0x0000034c
3252 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION 0x00000350
3253 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_ADD 0x00008006
3254 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_MIN 0x00008007
3255 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_MAX 0x00008008
3256 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_SUBTRACT 0x0000800a
3257 #define NV20_TCL_PRIMITIVE_3D_BLEND_EQUATION_FUNC_REVERSE_SUBTRACT 0x0000800b
3258 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000354
3259 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_NEVER 0x00000200
3260 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_LESS 0x00000201
3261 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_EQUAL 0x00000202
3262 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_LEQUAL 0x00000203
3263 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER 0x00000204
3264 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER 0x00000204
3265 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_NOTEQUAL 0x00000205
3266 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_GEQUAL 0x00000206
3267 #define NV20_TCL_PRIMITIVE_3D_DEPTH_FUNC_ALWAYS 0x00000207
3268 #define NV20_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000358
3269 #define NV20_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE 0x0000035c
3270 #define NV20_TCL_PRIMITIVE_3D_STENCIL_MASK 0x00000360
3271 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC 0x00000364
3272 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NEVER 0x00000200
3273 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LESS 0x00000201
3274 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_EQUAL 0x00000202
3275 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_LEQUAL 0x00000203
3276 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER 0x00000204
3277 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GREATER 0x00000204
3278 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_NOTEQUAL 0x00000205
3279 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_GEQUAL 0x00000206
3280 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_FUNC_ALWAYS 0x00000207
3281 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_REF 0x00000368
3282 #define NV20_TCL_PRIMITIVE_3D_STENCIL_FUNC_MASK 0x0000036c
3283 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL 0x00000370
3284 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_ZERO 0x00000000
3285 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INVERT 0x0000150a
3286 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_KEEP 0x00001e00
3287 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_REPLACE 0x00001e01
3288 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR 0x00001e02
3289 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR 0x00001e03
3290 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_INCR_WRAP 0x00008507
3291 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_FAIL_DECR_WRAP 0x00008508
3292 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL 0x00000374
3293 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_ZERO 0x00000000
3294 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INVERT 0x0000150a
3295 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_KEEP 0x00001e00
3296 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_REPLACE 0x00001e01
3297 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR 0x00001e02
3298 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR 0x00001e03
3299 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_INCR_WRAP 0x00008507
3300 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZFAIL_DECR_WRAP 0x00008508
3301 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS 0x00000378
3302 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_ZERO 0x00000000
3303 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INVERT 0x0000150a
3304 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_KEEP 0x00001e00
3305 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_REPLACE 0x00001e01
3306 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR 0x00001e02
3307 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR 0x00001e03
3308 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_INCR_WRAP 0x00008507
3309 #define NV20_TCL_PRIMITIVE_3D_STENCIL_OP_ZPASS_DECR_WRAP 0x00008508
3310 #define NV20_TCL_PRIMITIVE_3D_SHADE_MODEL 0x0000037c
3311 #define NV20_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT 0x00001d00
3312 #define NV20_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH 0x00001d01
3313 #define NV20_TCL_PRIMITIVE_3D_LINE_WIDTH 0x00000380
3314 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000384
3315 #define NV20_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000388
3316 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x0000038c
3317 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT 0x00001b00
3318 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE 0x00001b01
3319 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL 0x00001b02
3320 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x00000390
3321 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT 0x00001b00
3322 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE 0x00001b01
3323 #define NV20_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL 0x00001b02
3324 #define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
3325 #define NV20_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
3326 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE 0x0000039c
3327 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE_FRONT 0x00000404
3328 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE_BACK 0x00000405
3329 #define NV20_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK 0x00000408
3330 #define NV20_TCL_PRIMITIVE_3D_FRONT_FACE 0x000003a0
3331 #define NV20_TCL_PRIMITIVE_3D_FRONT_FACE_CW 0x00000900
3332 #define NV20_TCL_PRIMITIVE_3D_FRONT_FACE_CCW 0x00000901
3333 #define NV20_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x000003a4
3334 #define NV20_TCL_PRIMITIVE_3D_SEPARATE_SPECULAR_ENABLE 0x000003b8
3335 #define NV20_TCL_PRIMITIVE_3D_ENABLED_LIGHTS 0x000003bc
3336 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x) (0x000003c0+((x)*4))
3337 #define NV20_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE 0x00000010
3338 #define NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x) (0x00000420+((x)*4))
3339 #define NV20_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE 0x00000004
3340 #define NV20_TCL_PRIMITIVE_3D_POINT_SIZE 0x0000043c
3341 #define NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX(x) (0x00000480+((x)*4))
3342 #define NV20_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX__SIZE 0x00000010
3343 #define NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x) (0x00000680+((x)*4))
3344 #define NV20_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE 0x00000010
3345 #define NV20_TCL_PRIMITIVE_3D_TX0_MATRIX(x) (0x000006c0+((x)*4))
3346 #define NV20_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE 0x00000010
3347 #define NV20_TCL_PRIMITIVE_3D_TX1_MATRIX(x) (0x00000700+((x)*4))
3348 #define NV20_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE 0x00000010
3349 #define NV20_TCL_PRIMITIVE_3D_TX2_MATRIX(x) (0x00000740+((x)*4))
3350 #define NV20_TCL_PRIMITIVE_3D_TX2_MATRIX__SIZE 0x00000010
3351 #define NV20_TCL_PRIMITIVE_3D_TX3_MATRIX(x) (0x00000780+((x)*4))
3352 #define NV20_TCL_PRIMITIVE_3D_TX3_MATRIX__SIZE 0x00000010
3353 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x000009c0
3354 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x000009c4
3355 #define NV20_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x000009c8
3356 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_X 0x00000a20
3357 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Y 0x00000a24
3358 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Z 0x00000a28
3359 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_W 0x00000a2c
3360 #define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER(x) (0x00000a30+((x)*4))
3361 #define NV20_TCL_PRIMITIVE_3D_POINT_PARAMETER__SIZE 0x00000007
3362 #define NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0(x) (0x00000a60+((x)*4))
3363 #define NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0__SIZE 0x00000008
3364 #define NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1(x) (0x00000a80+((x)*4))
3365 #define NV20_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1__SIZE 0x00000008
3366 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x) (0x00000aa0+((x)*4))
3367 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE 0x00000008
3368 #define NV20_TCL_PRIMITIVE_3D_RC_IN_RGB(x) (0x00000ac0+((x)*4))
3369 #define NV20_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE 0x00000008
3370 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_X 0x00000af0
3371 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Y 0x00000af4
3372 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Z 0x00000af8
3373 #define NV20_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_W 0x00000afc
3374 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST(x) (0x00000b00+((x)*4))
3375 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_INST__SIZE 0x00000004
3376 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST(x) (0x00000b80+((x)*4))
3377 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST__SIZE 0x00000004
3378 #define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE 0x0000147c
3379 #define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(x) (0x00001480+((x)*4))
3380 #define NV20_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN__SIZE 0x00000020
3381 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_X 0x00001500
3382 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Y 0x00001504
3383 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3F_Z 0x00001508
3384 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_X 0x00001518
3385 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Y 0x0000151c
3386 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_4F_Z 0x00001520
3387 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY 0x00001528
3388 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_X_SHIFT 0
3389 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_X_MASK 0x0000ffff
3390 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_Y_SHIFT 16
3391 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_XY_Y_MASK 0xffff0000
3392 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z 0x0000152c
3393 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z_Z_SHIFT 0
3394 #define NV20_TCL_PRIMITIVE_3D_VERTEX_POS_3I_Z_Z_MASK 0x0000ffff
3395 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_X 0x00001530
3396 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Y 0x00001534
3397 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3F_Z 0x00001538
3398 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00001540
3399 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT 0
3400 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK 0x0000ffff
3401 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT 16
3402 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK 0xffff0000
3403 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00001544
3404 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT 0
3405 #define NV20_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK 0x0000ffff
3406 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_X 0x00001550
3407 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_Y 0x00001554
3408 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_Z 0x00001558
3409 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4F_W 0x0000155c
3410 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_X 0x00001560
3411 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_Y 0x00001564
3412 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_3F_Z 0x00001568
3413 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I 0x0000156c
3414 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT 0
3415 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK 0x000000ff
3416 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT 8
3417 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK 0x0000ff00
3418 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT 16
3419 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK 0x00ff0000
3420 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT 24
3421 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK 0xff000000
3422 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_X 0x00001580
3423 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_Y 0x00001584
3424 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_3F_Z 0x00001588
3425 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I 0x0000158c
3426 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_R_SHIFT 0
3427 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_R_MASK 0x000000ff
3428 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_G_SHIFT 8
3429 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_G_MASK 0x0000ff00
3430 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_B_SHIFT 16
3431 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_B_MASK 0x00ff0000
3432 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_A_SHIFT 24
3433 #define NV20_TCL_PRIMITIVE_3D_VERTEX_COL2_4I_A_MASK 0xff000000
3434 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_S 0x00001590
3435 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2F_T 0x00001594
3436 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I 0x00001598
3437 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_SHIFT 0
3438 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_S_MASK 0x0000ffff
3439 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_SHIFT 16
3440 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_2I_T_MASK 0xffff0000
3441 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_S 0x000015a0
3442 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_T 0x000015a4
3443 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_R 0x000015a8
3444 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4F_Q 0x000015ac
3445 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST 0x000015b0
3446 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_SHIFT 0
3447 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_S_MASK 0x0000ffff
3448 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_SHIFT 16
3449 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_ST_T_MASK 0xffff0000
3450 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ 0x000015b4
3451 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_SHIFT 0
3452 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_R_MASK 0x0000ffff
3453 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_SHIFT 16
3454 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX0_4I_RQ_Q_MASK 0xffff0000
3455 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_S 0x000015b8
3456 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2F_T 0x000015bc
3457 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I 0x000015c0
3458 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_SHIFT 0
3459 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_S_MASK 0x0000ffff
3460 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_SHIFT 16
3461 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_2I_T_MASK 0xffff0000
3462 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_S 0x000015c8
3463 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_T 0x000015cc
3464 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_R 0x000015d0
3465 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4F_Q 0x000015d4
3466 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST 0x000015d8
3467 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_SHIFT 0
3468 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_S_MASK 0x0000ffff
3469 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_SHIFT 16
3470 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_ST_T_MASK 0xffff0000
3471 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ 0x000015dc
3472 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_SHIFT 0
3473 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_R_MASK 0x0000ffff
3474 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_SHIFT 16
3475 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX1_4I_RQ_Q_MASK 0xffff0000
3476 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_S 0x000015e0
3477 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2F_T 0x000015e4
3478 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I 0x000015e8
3479 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_S_SHIFT 0
3480 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_S_MASK 0x0000ffff
3481 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_T_SHIFT 16
3482 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_2I_T_MASK 0xffff0000
3483 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_S 0x000015f0
3484 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_T 0x000015f4
3485 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_R 0x000015f8
3486 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4F_Q 0x000015fc
3487 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST 0x00001600
3488 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_S_SHIFT 0
3489 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_S_MASK 0x0000ffff
3490 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_T_SHIFT 16
3491 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_ST_T_MASK 0xffff0000
3492 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ 0x00001604
3493 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_R_SHIFT 0
3494 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_R_MASK 0x0000ffff
3495 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_Q_SHIFT 16
3496 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX2_4I_RQ_Q_MASK 0xffff0000
3497 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_S 0x00001608
3498 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2F_T 0x0000160c
3499 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I 0x00001610
3500 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_S_SHIFT 0
3501 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_S_MASK 0x0000ffff
3502 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_T_SHIFT 16
3503 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_2I_T_MASK 0xffff0000
3504 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_S 0x00001620
3505 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_T 0x00001624
3506 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_R 0x00001628
3507 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4F_Q 0x0000162c
3508 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST 0x00001630
3509 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_S_SHIFT 0
3510 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_S_MASK 0x0000ffff
3511 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_T_SHIFT 16
3512 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_ST_T_MASK 0xffff0000
3513 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ 0x00001634
3514 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_R_SHIFT 0
3515 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_R_MASK 0x0000ffff
3516 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_Q_SHIFT 16
3517 #define NV20_TCL_PRIMITIVE_3D_VERTEX_TX3_4I_RQ_Q_MASK 0xffff0000
3518 #define NV20_TCL_PRIMITIVE_3D_EDGEFLAG_ENABLE 0x000016bc
3519 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR_OFFSET(x) (0x00001720+((x)*4))
3520 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ATTR_OFFSET__SIZE 0x00000010
3521 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT(x) (0x00001760+((x)*4))
3522 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT__SIZE 0x00000010
3523 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_SHIFT 0
3524 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_MASK 0x0000000f
3525 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_SHIFT 4
3526 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_MASK 0x000000f0
3527 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT 8
3528 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_MASK 0x0000ff00
3529 #define NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x000017bc
3530 #define NV20_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP 0x000017c0
3531 #define NV20_TCL_PRIMITIVE_3D_LIGHT_MODEL_TWO_SIDE_ENABLE 0x000017c4
3532 #define NV20_TCL_PRIMITIVE_3D_TX_SHADER_CULL_MODE 0x000017f8
3533 #define NV20_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END 0x000017fc
3534 #define NV20_TCL_PRIMITIVE_3D_VERTEX_BUFFER_DRAW_ARRAYS 0x00001810
3535 #define NV20_TCL_PRIMITIVE_3D_VERTEX_ARRAY_DATA 0x00001818
3536 #define NV20_TCL_PRIMITIVE_3D_TX_OFFSET(x) (0x00001b00+((x)*64))
3537 #define NV20_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE 0x00000004
3538 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT(x) (0x00001b04+((x)*64))
3539 #define NV20_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE 0x00000004
3540 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP(x) (0x00001b08+((x)*64))
3541 #define NV20_TCL_PRIMITIVE_3D_TX_WRAP__SIZE 0x00000004
3542 #define NV20_TCL_PRIMITIVE_3D_TX_ENABLE(x) (0x00001b0c+((x)*64))
3543 #define NV20_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE 0x00000004
3544 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER(x) (0x00001b14+((x)*64))
3545 #define NV20_TCL_PRIMITIVE_3D_TX_FILTER__SIZE 0x00000004
3546 #define NV20_TCL_PRIMITIVE_3D_TX_BORDER_COLOR(x) (0x00001b24+((x)*64))
3547 #define NV20_TCL_PRIMITIVE_3D_TX_BORDER_COLOR__SIZE 0x00000004
3548 #define NV20_TCL_PRIMITIVE_3D_SCISSOR_HORIZ 0x00001c30
3549 #define NV20_TCL_PRIMITIVE_3D_SCISSOR_VERT 0x00001c50
3550 #define NV20_TCL_PRIMITIVE_3D_CLEAR_VALUE 0x00001d90
3551 #define NV20_TCL_PRIMITIVE_3D_CLEAR_BUFFERS 0x00001d94
3552 #define NV20_TCL_PRIMITIVE_3D_RC_COLOR0 0x00001e20
3553 #define NV20_TCL_PRIMITIVE_3D_RC_COLOR1 0x00001e24
3554 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB(x) (0x00001e40+((x)*4))
3555 #define NV20_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE 0x00000008
3556 #define NV20_TCL_PRIMITIVE_3D_RC_ENABLE 0x00001e60
3557 #define NV20_TCL_PRIMITIVE_3D_TX_SHADER_OP 0x00001e70
3558 #define NV20_TCL_PRIMITIVE_3D_VP_UPLOAD_CONST_ID 0x00001ea4
3561 #define NV17_TCL_PRIMITIVE_3D 0x00000099
3563 #define NV17_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4 0x000001ac
3564 #define NV17_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5 0x000001b0
3565 #define NV17_TCL_PRIMITIVE_3D_COLOR_MASK_ENABLE 0x000002bc
3566 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_PITCH 0x00000d5c
3567 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_OFFSET 0x00000d60
3568 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_FILL_VALUE 0x00000d68
3569 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_BUFFER_CLEAR 0x00000d6c
3570 #define NV17_TCL_PRIMITIVE_3D_LMA_DEPTH_ENABLE 0x00001658
3573 #define NV20_SWIZZLED_SURFACE 0x0000009e
3577 #define NV12_IMAGE_BLIT 0x0000009f
3581 #define NV30_CONTEXT_SURFACES_2D 0x00000362
3585 #define NV30_STRETCHED_IMAGE_FROM_CPU 0x00000366
3589 #define NV30_TEXTURE_FROM_CPU 0x0000037b
3593 #define NV30_SCALED_IMAGE_FROM_MEMORY 0x00000389
3597 #define NV30_IMAGE_FROM_CPU 0x0000038a
3601 #define NV30_TCL_PRIMITIVE_3D 0x00000397
3605 #define NV30_SWIZZLED_SURFACE 0x0000039e
3609 #define NV36_TCL_PRIMITIVE_3D 0x00000497
3613 #define NV25_TCL_PRIMITIVE_3D 0x00000597
3615 #define NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4 0x0000019c
3616 #define NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5 0x000001a0
3617 #define NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY8 0x000001ac
3618 #define NV25_TCL_PRIMITIVE_3D_DMA_IN_MEMORY9 0x000001b0
3621 #define NV34_TCL_PRIMITIVE_3D 0x00000697
3623 #define NV34_TCL_PRIMITIVE_3D_NOP 0x00000100
3624 #define NV34_TCL_PRIMITIVE_3D_NOTIFY 0x00000104
3625 #define NV34_TCL_PRIMITIVE_3D_DMA_NOTIFY 0x00000180
3626 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY0 0x00000184
3627 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY1 0x00000188
3628 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY2 0x0000018c
3629 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY3 0x00000194
3630 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY4 0x00000198
3631 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY5 0x000001a4
3632 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY6 0x000001a8
3633 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY7 0x000001ac
3634 #define NV34_TCL_PRIMITIVE_3D_DMA_IN_MEMORY8 0x000001b0
3635 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_HORIZ 0x00000200
3636 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_VERT 0x00000204
3637 #define NV34_TCL_PRIMITIVE_3D_FORMAT 0x00000208
3638 #define NV34_TCL_PRIMITIVE_3D_PITCH 0x0000020c
3639 #define NV34_TCL_PRIMITIVE_3D_PITCH_COLOR_SHIFT 0
3640 #define NV34_TCL_PRIMITIVE_3D_PITCH_COLOR_MASK 0x0000ffff
3641 #define NV34_TCL_PRIMITIVE_3D_PITCH_ZETA_SHIFT 16
3642 #define NV34_TCL_PRIMITIVE_3D_PITCH_ZETA_MASK 0xffff0000
3643 #define NV34_TCL_PRIMITIVE_3D_COLOR_OFFSET 0x00000210
3644 #define NV34_TCL_PRIMITIVE_3D_ZETA_OFFSET 0x00000214
3645 #define NV34_TCL_PRIMITIVE_3D_COLOR1_OFFSET 0x00000218
3646 #define NV34_TCL_PRIMITIVE_3D_COLOR1_PITCH 0x0000021c
3647 #define NV34_TCL_PRIMITIVE_3D_LMA_DEPTH_PITCH 0x0000022c
3648 #define NV34_TCL_PRIMITIVE_3D_LMA_DEPTH_OFFSET 0x00000230
3649 #define NV34_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE(x) (0x00000240+((x)*4))
3650 #define NV34_TCL_PRIMITIVE_3D_TX_MATRIX_ENABLE__SIZE 0x00000004
3651 #define NV34_TCL_PRIMITIVE_3D_UNK0250(x) (0x00000250+((x)*4))
3652 #define NV34_TCL_PRIMITIVE_3D_UNK0250__SIZE 0x00000004
3653 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ(x) (0x000002c0+((x)*8))
3654 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
3655 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT(x) (0x000002c4+((x)*8))
3656 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_CLIP_VERT__SIZE 0x00000008
3657 #define NV34_TCL_PRIMITIVE_3D_DITHER_ENABLE 0x00000300
3658 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_ENABLE 0x00000304
3659 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC 0x00000308
3660 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NEVER 0x00000200
3661 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LESS 0x00000201
3662 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_EQUAL 0x00000202
3663 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_LEQUAL 0x00000203
3664 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
3665 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GREATER 0x00000204
3666 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_NOTEQUAL 0x00000205
3667 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_GEQUAL 0x00000206
3668 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_FUNC_ALWAYS 0x00000207
3669 #define NV34_TCL_PRIMITIVE_3D_ALPHA_FUNC_REF 0x0000030c
3670 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_ENABLE 0x00000310
3671 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC 0x00000314
3672 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SHIFT 0
3673 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_MASK 0x0000ffff
3674 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ZERO 0x00000000
3675 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE 0x00000001
3676 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_COLOR 0x00000300
3677 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR 0x00000301
3678 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA 0x00000302
3679 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
3680 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_DST_ALPHA 0x00000304
3681 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA 0x00000305
3682 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_DST_COLOR 0x00000306
3683 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR 0x00000307
3684 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE 0x00000308
3685 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR 0x00008001
3686 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
3687 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA 0x00008003
3688 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
3689 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SHIFT 16
3690 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_MASK 0xffff0000
3691 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ZERO 0x00000000
3692 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE 0x00010000
3693 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_COLOR 0x03000000
3694 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000
3695 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA 0x03020000
3696 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000
3697 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_DST_ALPHA 0x03040000
3698 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000
3699 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_DST_COLOR 0x03060000
3700 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR 0x03070000
3701 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE 0x03080000
3702 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR 0x80010000
3703 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000
3704 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA 0x80030000
3705 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000
3706 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST 0x00000318
3707 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SHIFT 0
3708 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_MASK 0x0000ffff
3709 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ZERO 0x00000000
3710 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE 0x00000001
3711 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_COLOR 0x00000300
3712 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR 0x00000301
3713 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA 0x00000302
3714 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
3715 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_DST_ALPHA 0x00000304
3716 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA 0x00000305
3717 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_DST_COLOR 0x00000306
3718 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR 0x00000307
3719 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE 0x00000308
3720 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_CONSTANT_COLOR 0x00008001
3721 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
3722 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA 0x00008003
3723 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
3724 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SHIFT 16
3725 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_MASK 0xffff0000
3726 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ZERO 0x00000000
3727 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE 0x00010000
3728 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_COLOR 0x03000000
3729 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000
3730 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA 0x03020000
3731 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000
3732 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_DST_ALPHA 0x03040000
3733 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000
3734 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_DST_COLOR 0x03060000
3735 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR 0x03070000
3736 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE 0x03080000
3737 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR 0x80010000
3738 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000
3739 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA 0x80030000
3740 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000
3741 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_COLOR 0x0000031c
3742 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION 0x00000320
3743 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_ADD 0x00008006
3744 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_MIN 0x00008007
3745 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_MAX 0x00008008
3746 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_SUBTRACT 0x0000800a
3747 #define NV34_TCL_PRIMITIVE_3D_BLEND_FUNC_EQUATION_FUNC_REVERSE_SUBTRACT 0x0000800b
3748 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK 0x00000324
3749 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_B_SHIFT 0
3750 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_B_MASK 0x000000ff
3751 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_G_SHIFT 8
3752 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_G_MASK 0x0000ff00
3753 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_R_SHIFT 16
3754 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_R_MASK 0x00ff0000
3755 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_A_SHIFT 24
3756 #define NV34_TCL_PRIMITIVE_3D_COLOR_MASK_A_MASK 0xff000000
3757 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_ENABLE 0x00000328
3758 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_MASK 0x0000032c
3759 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC 0x00000330
3760 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200
3761 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201
3762 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
3763 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
3764 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
3765 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
3766 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
3767 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
3768 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
3769 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_REF 0x00000334
3770 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_FUNC_MASK 0x00000338
3771 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL 0x0000033c
3772 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_ZERO 0x00000000
3773 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a
3774 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00
3775 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01
3776 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INCR 0x00001e02
3777 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_DECR 0x00001e03
3778 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507
3779 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508
3780 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL 0x00000340
3781 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000
3782 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a
3783 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00
3784 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01
3785 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02
3786 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03
3787 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507
3788 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508
3789 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS 0x00000344
3790 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000
3791 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a
3792 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00
3793 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01
3794 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02
3795 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03
3796 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507
3797 #define NV34_TCL_PRIMITIVE_3D_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508
3798 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_ENABLE 0x00000348
3799 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_MASK 0x0000034c
3800 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC 0x00000350
3801 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200
3802 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201
3803 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
3804 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
3805 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
3806 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
3807 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
3808 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
3809 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
3810 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_REF 0x00000354
3811 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_FUNC_MASK 0x00000358
3812 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL 0x0000035c
3813 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000
3814 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a
3815 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00
3816 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_REPLACE 0x00001e01
3817 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INCR 0x00001e02
3818 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03
3819 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507
3820 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508
3821 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL 0x00000360
3822 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000
3823 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a
3824 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00
3825 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_REPLACE 0x00001e01
3826 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INCR 0x00001e02
3827 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03
3828 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507
3829 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508
3830 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS 0x00000364
3831 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000
3832 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a
3833 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00
3834 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_REPLACE 0x00001e01
3835 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INCR 0x00001e02
3836 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03
3837 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507
3838 #define NV34_TCL_PRIMITIVE_3D_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508
3839 #define NV34_TCL_PRIMITIVE_3D_SHADE_MODEL 0x00000368
3840 #define NV34_TCL_PRIMITIVE_3D_SHADE_MODEL_FLAT 0x00001d00
3841 #define NV34_TCL_PRIMITIVE_3D_SHADE_MODEL_SMOOTH 0x00001d01
3842 #define NV34_TCL_PRIMITIVE_3D_FOG_ENABLE 0x0000036c
3843 #define NV34_TCL_PRIMITIVE_3D_FOG_COLOR 0x00000370
3844 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_ENABLE 0x00000374
3845 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP 0x00000378
3846 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_CLEAR 0x00001500
3847 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND 0x00001501
3848 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_REVERSE 0x00001502
3849 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY 0x00001503
3850 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_AND_INVERTED 0x00001504
3851 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOOP 0x00001505
3852 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_XOR 0x00001506
3853 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR 0x00001507
3854 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NOR 0x00001508
3855 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_EQUIV 0x00001509
3856 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_INVERT 0x0000150a
3857 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_REVERSE 0x0000150b
3858 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_COPY_INVERTED 0x0000150c
3859 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_OR_INVERTED 0x0000150d
3860 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_NAND 0x0000150e
3861 #define NV34_TCL_PRIMITIVE_3D_COLOR_LOGIC_OP_OP_SET 0x0000150f
3862 #define NV34_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE 0x0000037c
3863 #define NV34_TCL_PRIMITIVE_3D_DEPTH_RANGE_NEAR 0x00000394
3864 #define NV34_TCL_PRIMITIVE_3D_DEPTH_RANGE_FAR 0x00000398
3865 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_R 0x000003a0
3866 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_G 0x000003a4
3867 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_B 0x000003a8
3868 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_FRONT_A 0x000003b4
3869 #define NV34_TCL_PRIMITIVE_3D_LINE_WIDTH 0x000003b8
3870 #define NV34_TCL_PRIMITIVE_3D_LINE_SMOOTH_ENABLE 0x000003bc
3871 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE(x) (0x00000400+((x)*4))
3872 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_ENABLE__SIZE 0x00000020
3873 #define NV34_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX(x) (0x00000480+((x)*4))
3874 #define NV34_TCL_PRIMITIVE_3D_MODELVIEW_MATRIX__SIZE 0x00000010
3875 #define NV34_TCL_PRIMITIVE_3D_PROJECTION_MATRIX(x) (0x00000680+((x)*4))
3876 #define NV34_TCL_PRIMITIVE_3D_PROJECTION_MATRIX__SIZE 0x00000010
3877 #define NV34_TCL_PRIMITIVE_3D_TX0_MATRIX(x) (0x000006c0+((x)*4))
3878 #define NV34_TCL_PRIMITIVE_3D_TX0_MATRIX__SIZE 0x00000010
3879 #define NV34_TCL_PRIMITIVE_3D_TX1_MATRIX(x) (0x00000700+((x)*4))
3880 #define NV34_TCL_PRIMITIVE_3D_TX1_MATRIX__SIZE 0x00000010
3881 #define NV34_TCL_PRIMITIVE_3D_TX2_MATRIX(x) (0x00000740+((x)*4))
3882 #define NV34_TCL_PRIMITIVE_3D_TX2_MATRIX__SIZE 0x00000010
3883 #define NV34_TCL_PRIMITIVE_3D_TX3_MATRIX(x) (0x00000780+((x)*4))
3884 #define NV34_TCL_PRIMITIVE_3D_TX3_MATRIX__SIZE 0x00000010
3885 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ 0x000008c0
3886 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_X_SHIFT 0
3887 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_X_MASK 0x0000ffff
3888 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_W_SHIFT 16
3889 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_HORIZ_W_MASK 0xffff0000
3890 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT 0x000008c4
3891 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_Y_SHIFT 0
3892 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_Y_MASK 0x0000ffff
3893 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_H_SHIFT 16
3894 #define NV34_TCL_PRIMITIVE_3D_SCISSOR_VERT_H_MASK 0xffff0000
3895 #define NV34_TCL_PRIMITIVE_3D_FOG_COORD_DIST 0x000008c8
3896 #define NV34_TCL_PRIMITIVE_3D_FOG_MODE 0x000008cc
3897 #define NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_CONSTANT 0x000008d0
3898 #define NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_LINEAR 0x000008d4
3899 #define NV34_TCL_PRIMITIVE_3D_FOG_EQUATION_QUADRATIC 0x000008d8
3900 #define NV34_TCL_PRIMITIVE_3D_FP_ACTIVE_PROGRAM 0x000008e4
3901 #define NV34_TCL_PRIMITIVE_3D_RC_COLOR0 0x000008ec
3902 #define NV34_TCL_PRIMITIVE_3D_RC_COLOR1 0x000008f0
3903 #define NV34_TCL_PRIMITIVE_3D_RC_FINAL0 0x000008f4
3904 #define NV34_TCL_PRIMITIVE_3D_RC_FINAL1 0x000008f8
3905 #define NV34_TCL_PRIMITIVE_3D_RC_ENABLE 0x000008fc
3906 #define NV34_TCL_PRIMITIVE_3D_RC_IN_ALPHA(x) (0x00000900+((x)*32))
3907 #define NV34_TCL_PRIMITIVE_3D_RC_IN_ALPHA__SIZE 0x00000008
3908 #define NV34_TCL_PRIMITIVE_3D_RC_IN_RGB(x) (0x00000904+((x)*32))
3909 #define NV34_TCL_PRIMITIVE_3D_RC_IN_RGB__SIZE 0x00000008
3910 #define NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0(x) (0x00000908+((x)*32))
3911 #define NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR0__SIZE 0x00000008
3912 #define NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1(x) (0x0000090c+((x)*32))
3913 #define NV34_TCL_PRIMITIVE_3D_RC_CONSTANT_COLOR1__SIZE 0x00000008
3914 #define NV34_TCL_PRIMITIVE_3D_RC_OUT_ALPHA(x) (0x00000910+((x)*32))
3915 #define NV34_TCL_PRIMITIVE_3D_RC_OUT_ALPHA__SIZE 0x00000008
3916 #define NV34_TCL_PRIMITIVE_3D_RC_OUT_RGB(x) (0x00000914+((x)*32))
3917 #define NV34_TCL_PRIMITIVE_3D_RC_OUT_RGB__SIZE 0x00000008
3918 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R0x00000a10
3919 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G0x00000a14
3920 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_FRONT_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B0x00000a18
3921 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_X 0x00000a20
3922 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Y 0x00000a24
3923 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_Z 0x00000a28
3924 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE0_W 0x00000a2c
3925 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_X 0x00000a30
3926 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Y 0x00000a34
3927 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_Z 0x00000a38
3928 #define NV34_TCL_PRIMITIVE_3D_VIEWPORT_SCALE1_W 0x00000a3c
3929 #define NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FILL_ENABLE 0x00000a60
3930 #define NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_LINE_ENABLE 0x00000a64
3931 #define NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_POINT_ENABLE 0x00000a68
3932 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC 0x00000a6c
3933 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_NEVER 0x00000200
3934 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_LESS 0x00000201
3935 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_EQUAL 0x00000202
3936 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_LEQUAL 0x00000203
3937 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER 0x00000204
3938 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GREATER 0x00000204
3939 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_NOTEQUAL 0x00000205
3940 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_GEQUAL 0x00000206
3941 #define NV34_TCL_PRIMITIVE_3D_DEPTH_FUNC_ALWAYS 0x00000207
3942 #define NV34_TCL_PRIMITIVE_3D_DEPTH_WRITE_ENABLE 0x00000a70
3943 #define NV34_TCL_PRIMITIVE_3D_DEPTH_TEST_ENABLE 0x00000a74
3944 #define NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_FACTOR 0x00000a78
3945 #define NV34_TCL_PRIMITIVE_3D_POLYGON_OFFSET_UNITS 0x00000a7c
3946 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY 0x00000a90
3947 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_SHIFT 0
3948 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_X_MASK 0x0000ffff
3949 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_SHIFT 16
3950 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_XY_Y_MASK 0xffff0000
3951 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z 0x00000a94
3952 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_SHIFT 0
3953 #define NV34_TCL_PRIMITIVE_3D_VERTEX_NOR_3I_Z_Z_MASK 0x0000ffff
3954 #define NV34_TCL_PRIMITIVE_3D_VP_UPLOAD_INST(x) (0x00000b80+((x)*4))
3955 #define NV34_TCL_PRIMITIVE_3D_VP_UPLOAD_INST__SIZE 0x00000004
3956 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_A(x) (0x00000e00+((x)*16))
3957 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_A__SIZE 0x00000020
3958 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_B(x) (0x00000e04+((x)*16))
3959 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_B__SIZE 0x00000020
3960 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_C(x) (0x00000e08+((x)*16))
3961 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_C__SIZE 0x00000020
3962 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_D(x) (0x00000e0c+((x)*16))
3963 #define NV34_TCL_PRIMITIVE_3D_CLIP_PLANE_D__SIZE 0x00000020
3964 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R(x) (0x00001000+((x)*64))
3965 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_R__SIZE 0x00000008
3966 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G(x) (0x00001004+((x)*64))
3967 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_G__SIZE 0x00000008
3968 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B(x) (0x00001008+((x)*64))
3969 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_AMBIENT_B__SIZE 0x00000008
3970 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R(x) (0x0000100c+((x)*64))
3971 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_R__SIZE 0x00000008
3972 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G(x) (0x00001010+((x)*64))
3973 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_G__SIZE 0x00000008
3974 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B(x) (0x00001014+((x)*64))
3975 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_DIFFUSE_B__SIZE 0x00000008
3976 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R(x) (0x00001018+((x)*64))
3977 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_R__SIZE 0x00000008
3978 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G(x) (0x0000101c+((x)*64))
3979 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_G__SIZE 0x00000008
3980 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B(x) (0x00001020+((x)*64))
3981 #define NV34_TCL_PRIMITIVE_3D_LIGHT_FRONT_SIDE_PRODUCT_SPECULAR_B__SIZE 0x00000008
3982 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X(x) (0x00001028+((x)*64))
3983 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_X__SIZE 0x00000008
3984 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y(x) (0x0000102c+((x)*64))
3985 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Y__SIZE 0x00000008
3986 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z(x) (0x00001030+((x)*64))
3987 #define NV34_TCL_PRIMITIVE_3D_LIGHT_HALF_VECTOR_Z__SIZE 0x00000008
3988 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X(x) (0x00001034+((x)*64))
3989 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_X__SIZE 0x00000008
3990 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y(x) (0x00001038+((x)*64))
3991 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Y__SIZE 0x00000008
3992 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z(x) (0x0000103c+((x)*64))
3993 #define NV34_TCL_PRIMITIVE_3D_LIGHT_DIRECTION_Z__SIZE 0x00000008
3994 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A(x) (0x00001200+((x)*64))
3995 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_A__SIZE 0x00000008
3996 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B(x) (0x00001204+((x)*64))
3997 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_B__SIZE 0x00000008
3998 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C(x) (0x00001208+((x)*64))
3999 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_C__SIZE 0x00000008
4000 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X(x) (0x0000120c+((x)*64))
4001 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_X__SIZE 0x00000008
4002 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y(x) (0x00001210+((x)*64))
4003 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Y__SIZE 0x00000008
4004 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z(x) (0x00001214+((x)*64))
4005 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_DIR_Z__SIZE 0x00000008
4006 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D(x) (0x00001218+((x)*64))
4007 #define NV34_TCL_PRIMITIVE_3D_LIGHT_SPOT_CUTOFF_D__SIZE 0x00000008
4008 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_X(x) (0x0000121c+((x)*64))
4009 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_X__SIZE 0x00000008
4010 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y(x) (0x00001220+((x)*64))
4011 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Y__SIZE 0x00000008
4012 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z(x) (0x00001224+((x)*64))
4013 #define NV34_TCL_PRIMITIVE_3D_LIGHT_POSITION_Z__SIZE 0x00000008
4014 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT(x) (0x00001228+((x)*64))
4015 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_CONSTANT__SIZE 0x00000008
4016 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR(x) (0x0000122c+((x)*64))
4017 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_LINEAR__SIZE 0x00000008
4018 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC(x) (0x00001230+((x)*64))
4019 #define NV34_TCL_PRIMITIVE_3D_LIGHT_ATTENUATION_QUADRATIC__SIZE 0x00000008
4020 #define NV34_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS(x) (0x00001400+((x)*4))
4021 #define NV34_TCL_PRIMITIVE_3D_FRONT_MATERIAL_SHININESS__SIZE 0x00000006
4022 #define NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_ENABLE 0x0000147c
4023 #define NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN(x) (0x00001480+((x)*4))
4024 #define NV34_TCL_PRIMITIVE_3D_POLYGON_STIPPLE_PATTERN__SIZE 0x00000020
4025 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_X(x) (0x00001500+((x)*16))
4026 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_X__SIZE 0x00000010
4027 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Y(x) (0x00001504+((x)*16))
4028 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Y__SIZE 0x00000010
4029 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Z(x) (0x00001508+((x)*16))
4030 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_3F_Z__SIZE 0x00000010
4031 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT(x) (0x00001740+((x)*4))
4032 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT__SIZE 0x0000000c
4033 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_SHIFT 0
4034 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_TYPE_MASK 0x0000000f
4035 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_SHIFT 4
4036 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_FIELDS_MASK 0x000000f0
4037 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_SHIFT 8
4038 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ARRAY_FORMAT_STRIDE_MASK 0x0000ff00
4039 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_R0x000017a0
4040 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_G0x000017a4
4041 #define NV34_TCL_PRIMITIVE_3D_LIGHT_MODEL_BACK_SIDE_PRODUCT_AMBIENT_PLUS_EMISSION_B0x000017a8
4042 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_R 0x000017b0
4043 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_G 0x000017b4
4044 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_B 0x000017b8
4045 #define NV34_TCL_PRIMITIVE_3D_COLOR_MATERIAL_BACK_A 0x000017c0
4046 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END 0x00001808
4047 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_STOP 0x00000000
4048 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POINTS 0x00000001
4049 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINES 0x00000002
4050 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_LOOP 0x00000003
4051 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_LINE_STRIP 0x00000004
4052 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLES 0x00000005
4053 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_STRIP 0x00000006
4054 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_TRIANGLE_FAN 0x00000007
4055 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUADS 0x00000008
4056 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_QUAD_STRIP 0x00000009
4057 #define NV34_TCL_PRIMITIVE_3D_VERTEX_BEGIN_END_POLYGON 0x0000000a
4058 #define NV34_TCL_PRIMITIVE_3D_VERTEX_DATA 0x00001818
4059 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT 0x00001828
4060 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_POINT 0x00001b00
4061 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_LINE 0x00001b01
4062 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_FRONT_FILL 0x00001b02
4063 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK 0x0000182c
4064 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_POINT 0x00001b00
4065 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_LINE 0x00001b01
4066 #define NV34_TCL_PRIMITIVE_3D_POLYGON_MODE_BACK_FILL 0x00001b02
4067 #define NV34_TCL_PRIMITIVE_3D_CULL_FACE 0x00001830
4068 #define NV34_TCL_PRIMITIVE_3D_CULL_FACE_FRONT 0x00000404
4069 #define NV34_TCL_PRIMITIVE_3D_CULL_FACE_BACK 0x00000405
4070 #define NV34_TCL_PRIMITIVE_3D_CULL_FACE_FRONT_AND_BACK 0x00000408
4071 #define NV34_TCL_PRIMITIVE_3D_FRONT_FACE 0x00001834
4072 #define NV34_TCL_PRIMITIVE_3D_FRONT_FACE_CW 0x00000900
4073 #define NV34_TCL_PRIMITIVE_3D_FRONT_FACE_CCW 0x00000901
4074 #define NV34_TCL_PRIMITIVE_3D_POLYGON_SMOOTH_ENABLE 0x00001838
4075 #define NV34_TCL_PRIMITIVE_3D_CULL_FACE_ENABLE 0x0000183c
4076 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_X(x) (0x00001880+((x)*8))
4077 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_X__SIZE 0x00000010
4078 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_Y(x) (0x00001884+((x)*8))
4079 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2F_Y__SIZE 0x00000010
4080 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I(x) (0x00001900+((x)*4))
4081 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I__SIZE 0x00000010
4082 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_Y_SHIFT 16
4083 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_Y_MASK 0xffff0000
4084 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_X_SHIFT 0
4085 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_2I_X_MASK 0x0000ffff
4086 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I(x) (0x0000194c+((x)*4))
4087 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I__SIZE 0x00000002
4088 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_SHIFT 0
4089 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_R_MASK 0x000000ff
4090 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_SHIFT 8
4091 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_G_MASK 0x0000ff00
4092 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_SHIFT 16
4093 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_B_MASK 0x00ff0000
4094 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_SHIFT 24
4095 #define NV34_TCL_PRIMITIVE_3D_VERTEX_COL_4I_A_MASK 0xff000000
4096 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY 0x00001980
4097 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_X_SHIFT 0
4098 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_X_MASK 0x0000ffff
4099 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_Y_SHIFT 16
4100 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_XY_Y_MASK 0xffff0000
4101 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW 0x00001984
4102 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_Z_SHIFT 0
4103 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_Z_MASK 0x0000ffff
4104 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_W_SHIFT 16
4105 #define NV34_TCL_PRIMITIVE_3D_VERTEX_POS_4I_ZW_W_MASK 0xffff0000
4106 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST(x) (0x000019c0+((x)*8))
4107 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST__SIZE 0x00000004
4108 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_S_SHIFT 0
4109 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_S_MASK 0x0000ffff
4110 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_T_SHIFT 16
4111 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_ST_T_MASK 0xffff0000
4112 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ(x) (0x000019c4+((x)*8))
4113 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ__SIZE 0x00000004
4114 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_R_SHIFT 0
4115 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_R_MASK 0x0000ffff
4116 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_Q_SHIFT 16
4117 #define NV34_TCL_PRIMITIVE_3D_VERTEX_TX_4I_RQ_Q_MASK 0xffff0000
4118 #define NV34_TCL_PRIMITIVE_3D_TX_OFFSET(x) (0x00001a00+((x)*32))
4119 #define NV34_TCL_PRIMITIVE_3D_TX_OFFSET__SIZE 0x00000004
4120 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT(x) (0x00001a04+((x)*32))
4121 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT__SIZE 0x00000004
4122 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_CUBE_MAP (1 << 2)
4123 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_COMPONENTS_SHIFT 4
4124 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_COMPONENTS_MASK 0x000000f0
4125 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_SHIFT 8
4126 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_MASK 0x0000ff00
4127 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8 0x00000000
4128 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8 0x00000100
4129 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1 0x00000200
4130 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT 0x00000300
4131 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4 0x00000400
4132 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8 0x00000600
4133 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_INDEX8 0x00000b00
4134 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT1 0x00000c00
4135 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT3 0x00000e00
4136 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_DXT5 0x00000f00
4137 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R5G5B5A1_RECT 0x00001000
4138 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8A8_RECT 0x00001200
4139 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8_RECT 0x00001300
4140 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8 0x00001a00
4141 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A8_RECT2 0x00001b00
4142 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R8G8B8_RECT 0x00001e00
4143 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_R4G4B4A4_RECT 0x00001d00
4144 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_L8A8_RECT 0x00002000
4145 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16 0x00003200
4146 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_A16_RECT 0x00003500
4147 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA16_NV 0x00004a00
4148 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_RGBA32_NV 0x00004b00
4149 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_FORMAT_FLOAT_R32_NV 0x00004c00
4150 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_NPOT (1 << 12)
4151 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_RECT (1 << 14)
4152 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_SHIFT 16
4153 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_MIPMAP_LEVELS_MASK 0x000f0000
4154 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_SHIFT 20
4155 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_U_MASK 0x00f00000
4156 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_SHIFT 24
4157 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_V_MASK 0x0f000000
4158 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_W_SHIFT 28
4159 #define NV34_TCL_PRIMITIVE_3D_TX_FORMAT_BASE_SIZE_W_MASK 0xf0000000
4160 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP(x) (0x00001a08+((x)*32))
4161 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP__SIZE 0x00000004
4162 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_SHIFT 0
4163 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_MASK 0x000000ff
4164 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_REPEAT 0x00000001
4165 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_MIRRORED_REPEAT 0x00000002
4166 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP_TO_EDGE 0x00000003
4167 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP_TO_BORDER 0x00000004
4168 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_S_CLAMP 0x00000005
4169 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_SHIFT 8
4170 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_MASK 0x0000ff00
4171 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_REPEAT 0x00000100
4172 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_MIRRORED_REPEAT 0x00000200
4173 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP_TO_EDGE 0x00000300
4174 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP_TO_BORDER 0x00000400
4175 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_T_CLAMP 0x00000500
4176 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_SHIFT 16
4177 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_MASK 0x00ff0000
4178 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_REPEAT 0x00010000
4179 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_MIRRORED_REPEAT 0x00020000
4180 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP_TO_EDGE 0x00030000
4181 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP_TO_BORDER 0x00040000
4182 #define NV34_TCL_PRIMITIVE_3D_TX_WRAP_R_CLAMP 0x00050000
4183 #define NV34_TCL_PRIMITIVE_3D_TX_ENABLE(x) (0x00001a0c+((x)*32))
4184 #define NV34_TCL_PRIMITIVE_3D_TX_ENABLE__SIZE 0x00000004
4185 #define NV34_TCL_PRIMITIVE_3D_TX_ENABLE_ENABLE (1 << 30)
4186 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE(x) (0x00001a10+((x)*32))
4187 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE__SIZE 0x00000004
4188 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_SWIZZLE_SHIFT 0
4189 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_SWIZZLE_MASK 0x0000ffff
4190 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_RECT_PITCH_SHIFT 16
4191 #define NV34_TCL_PRIMITIVE_3D_TX_SWIZZLE_RECT_PITCH_MASK 0xffff0000
4192 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER(x) (0x00001a14+((x)*32))
4193 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER__SIZE 0x00000004
4194 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_SHIFT 16
4195 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_MASK 0x000f0000
4196 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST 0x00010000
4197 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR 0x00020000
4198 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_NEAREST 0x00030000
4199 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_NEAREST 0x00040000
4200 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_NEAREST_MIPMAP_LINEAR 0x00050000
4201 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MINIFY_LINEAR_MIPMAP_LINEAR 0x00060000
4202 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_SHIFT 24
4203 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_MASK 0x0f000000
4204 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST 0x01000000
4205 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR 0x02000000
4206 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_NEAREST 0x03000000
4207 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_NEAREST 0x04000000
4208 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_NEAREST_MIPMAP_LINEAR 0x05000000
4209 #define NV34_TCL_PRIMITIVE_3D_TX_FILTER_MAGNIFY_LINEAR_MIPMAP_LINEAR 0x06000000
4210 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE(x) (0x00001a18+((x)*32))
4211 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE__SIZE 0x00000004
4212 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_SHIFT 0
4213 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_H_MASK 0x0000ffff
4214 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_SHIFT 16
4215 #define NV34_TCL_PRIMITIVE_3D_TX_NPOT_SIZE_W_MASK 0xffff0000
4216 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR(x) (0x00001a1c+((x)*32))
4217 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR__SIZE 0x00000004
4218 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_B_SHIFT 0
4219 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_B_MASK 0x000000ff
4220 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_G_SHIFT 8
4221 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_G_MASK 0x0000ff00
4222 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_R_SHIFT 16
4223 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_R_MASK 0x00ff0000
4224 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_A_SHIFT 24
4225 #define NV34_TCL_PRIMITIVE_3D_TX_BORDER_COLOR_A_MASK 0xff000000
4226 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_X(x) (0x00001c00+((x)*16))
4227 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_X__SIZE 0x00000010
4228 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Y(x) (0x00001c04+((x)*16))
4229 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Y__SIZE 0x00000010
4230 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Z(x) (0x00001c08+((x)*16))
4231 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_Z__SIZE 0x00000010
4232 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_W(x) (0x00001c0c+((x)*16))
4233 #define NV34_TCL_PRIMITIVE_3D_VERTEX_ATTR_4F_W__SIZE 0x00000010
4234 #define NV34_TCL_PRIMITIVE_3D_CLEAR_DEPTH_VALUE 0x00001d8c
4235 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_ENABLE 0x00001db4
4236 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN 0x00001db8
4237 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_FACTOR_SHIFT 0
4238 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_FACTOR_MASK 0x0000ffff
4239 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_PATTERN_SHIFT 16
4240 #define NV34_TCL_PRIMITIVE_3D_LINE_STIPPLE_PATTERN_PATTERN_MASK 0xffff0000
4241 #define NV34_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS(x) (0x00001e20+((x)*4))
4242 #define NV34_TCL_PRIMITIVE_3D_BACK_MATERIAL_SHININESS__SIZE 0x00000006
4243 #define NV34_TCL_PRIMITIVE_3D_VERTEX_FOG_1F 0x00001e54
4244 #define NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS(x) (0x00001ec0+((x)*4))
4245 #define NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS__SIZE 0x00000008
4246 #define NV34_TCL_PRIMITIVE_3D_POINT_SIZE 0x00001ee0
4247 #define NV34_TCL_PRIMITIVE_3D_POINT_PARAMETERS_ENABLE 0x00001ee4
4248 #define NV34_TCL_PRIMITIVE_3D_POINT_SPRITE 0x00001ee8
4249 #define NV34_TCL_PRIMITIVE_3D_UNK1f80(x) (0x00001f80+((x)*4))
4250 #define NV34_TCL_PRIMITIVE_3D_UNK1f80__SIZE 0x00000010
4253 #define NV40_CONTEXT_SURFACES_2D 0x00003062
4257 #define NV40_STRETCHED_IMAGE_FROM_CPU 0x00003066
4261 #define NV40_TEXTURE_FROM_CPU 0x0000307b
4265 #define NV40_SCALED_IMAGE_FROM_MEMORY 0x00003089
4269 #define NV40_IMAGE_FROM_CPU 0x0000308a
4273 #define NV40_SWIZZLED_SURFACE 0x0000309e
4277 #define NV40TCL 0x00004097
4279 #define NV40TCL_REF_CNT 0x00000050
4280 #define NV40TCL_NOP 0x00000100
4281 #define NV40TCL_NOTIFY 0x00000104
4282 #define NV40TCL_DMA_NOTIFY 0x00000180
4283 #define NV40TCL_DMA_TEXTURE0 0x00000184
4284 #define NV40TCL_DMA_TEXTURE1 0x00000188
4285 #define NV40TCL_DMA_COLOR1 0x0000018c
4286 #define NV40TCL_DMA_COLOR0 0x00000194
4287 #define NV40TCL_DMA_ZETA 0x00000198
4288 #define NV40TCL_DMA_VTXBUF0 0x0000019c
4289 #define NV40TCL_DMA_VTXBUF1 0x000001a0
4290 #define NV40TCL_DMA_FENCE 0x000001a4
4291 #define NV40TCL_DMA_QUERY 0x000001a8
4292 #define NV40TCL_DMA_UNK01AC 0x000001ac
4293 #define NV40TCL_DMA_UNK01B0 0x000001b0
4294 #define NV40TCL_DMA_COLOR2 0x000001b4
4295 #define NV40TCL_DMA_COLOR3 0x000001b8
4296 #define NV40TCL_RT_HORIZ 0x00000200
4297 #define NV40TCL_RT_HORIZ_W_SHIFT 16
4298 #define NV40TCL_RT_HORIZ_W_MASK 0xffff0000
4299 #define NV40TCL_RT_HORIZ_X_SHIFT 0
4300 #define NV40TCL_RT_HORIZ_X_MASK 0x0000ffff
4301 #define NV40TCL_RT_VERT 0x00000204
4302 #define NV40TCL_RT_VERT_H_SHIFT 16
4303 #define NV40TCL_RT_VERT_H_MASK 0xffff0000
4304 #define NV40TCL_RT_VERT_Y_SHIFT 0
4305 #define NV40TCL_RT_VERT_Y_MASK 0x0000ffff
4306 #define NV40TCL_RT_FORMAT 0x00000208
4307 #define NV40TCL_RT_FORMAT_LOG2_HEIGHT_SHIFT 24
4308 #define NV40TCL_RT_FORMAT_LOG2_HEIGHT_MASK 0xff000000
4309 #define NV40TCL_RT_FORMAT_LOG2_WIDTH_SHIFT 16
4310 #define NV40TCL_RT_FORMAT_LOG2_WIDTH_MASK 0x00ff0000
4311 #define NV40TCL_RT_FORMAT_TYPE_SHIFT 8
4312 #define NV40TCL_RT_FORMAT_TYPE_MASK 0x00000f00
4313 #define NV40TCL_RT_FORMAT_TYPE_LINEAR 0x00000100
4314 #define NV40TCL_RT_FORMAT_TYPE_SWIZZLED 0x00000200
4315 #define NV40TCL_RT_FORMAT_ZETA_SHIFT 5
4316 #define NV40TCL_RT_FORMAT_ZETA_MASK 0x000000e0
4317 #define NV40TCL_RT_FORMAT_ZETA_Z16 0x00000020
4318 #define NV40TCL_RT_FORMAT_ZETA_Z24S8 0x00000040
4319 #define NV40TCL_RT_FORMAT_COLOR_SHIFT 0
4320 #define NV40TCL_RT_FORMAT_COLOR_MASK 0x0000001f
4321 #define NV40TCL_RT_FORMAT_COLOR_R5G6B5 0x00000003
4322 #define NV40TCL_RT_FORMAT_COLOR_X8R8G8B8 0x00000005
4323 #define NV40TCL_RT_FORMAT_COLOR_A8R8G8B8 0x00000008
4324 #define NV40TCL_RT_FORMAT_COLOR_B8 0x00000009
4325 #define NV40TCL_COLOR0_PITCH 0x0000020c
4326 #define NV40TCL_COLOR0_OFFSET 0x00000210
4327 #define NV40TCL_ZETA_OFFSET 0x00000214
4328 #define NV40TCL_COLOR1_OFFSET 0x00000218
4329 #define NV40TCL_COLOR1_PITCH 0x0000021c
4330 #define NV40TCL_RT_ENABLE 0x00000220
4331 #define NV40TCL_RT_ENABLE_MRT (1 << 4)
4332 #define NV40TCL_RT_ENABLE_COLOR3 (1 << 3)
4333 #define NV40TCL_RT_ENABLE_COLOR2 (1 << 2)
4334 #define NV40TCL_RT_ENABLE_COLOR1 (1 << 1)
4335 #define NV40TCL_RT_ENABLE_COLOR0 (1 << 0)
4336 #define NV40TCL_ZETA_PITCH 0x0000022c
4337 #define NV40TCL_COLOR2_PITCH 0x00000280
4338 #define NV40TCL_COLOR3_PITCH 0x00000284
4339 #define NV40TCL_COLOR2_OFFSET 0x00000288
4340 #define NV40TCL_COLOR3_OFFSET 0x0000028c
4341 #define NV40TCL_VIEWPORT_CLIP_HORIZ(x) (0x000002c0+((x)*8))
4342 #define NV40TCL_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
4343 #define NV40TCL_VIEWPORT_CLIP_VERT(x) (0x000002c4+((x)*8))
4344 #define NV40TCL_VIEWPORT_CLIP_VERT__SIZE 0x00000008
4345 #define NV40TCL_DITHER_ENABLE 0x00000300
4346 #define NV40TCL_ALPHA_TEST_ENABLE 0x00000304
4347 #define NV40TCL_ALPHA_TEST_FUNC 0x00000308
4348 #define NV40TCL_ALPHA_TEST_FUNC_NEVER 0x00000200
4349 #define NV40TCL_ALPHA_TEST_FUNC_LESS 0x00000201
4350 #define NV40TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202
4351 #define NV40TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203
4352 #define NV40TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
4353 #define NV40TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
4354 #define NV40TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205
4355 #define NV40TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206
4356 #define NV40TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207
4357 #define NV40TCL_ALPHA_TEST_REF 0x0000030c
4358 #define NV40TCL_BLEND_ENABLE 0x00000310
4359 #define NV40TCL_BLEND_FUNC_SRC 0x00000314
4360 #define NV40TCL_BLEND_FUNC_SRC_RGB_SHIFT 0
4361 #define NV40TCL_BLEND_FUNC_SRC_RGB_MASK 0x0000ffff
4362 #define NV40TCL_BLEND_FUNC_SRC_RGB_ZERO 0x00000000
4363 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE 0x00000001
4364 #define NV40TCL_BLEND_FUNC_SRC_RGB_SRC_COLOR 0x00000300
4365 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR 0x00000301
4366 #define NV40TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA 0x00000302
4367 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
4368 #define NV40TCL_BLEND_FUNC_SRC_RGB_DST_ALPHA 0x00000304
4369 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA 0x00000305
4370 #define NV40TCL_BLEND_FUNC_SRC_RGB_DST_COLOR 0x00000306
4371 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR 0x00000307
4372 #define NV40TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE 0x00000308
4373 #define NV40TCL_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR 0x00008001
4374 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
4375 #define NV40TCL_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA 0x00008003
4376 #define NV40TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
4377 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_SHIFT 16
4378 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_MASK 0xffff0000
4379 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ZERO 0x00000000
4380 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE 0x00010000
4381 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_SRC_COLOR 0x03000000
4382 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000
4383 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA 0x03020000
4384 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000
4385 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_DST_ALPHA 0x03040000
4386 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000
4387 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_DST_COLOR 0x03060000
4388 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR 0x03070000
4389 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE 0x03080000
4390 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR 0x80010000
4391 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000
4392 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA 0x80030000
4393 #define NV40TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000
4394 #define NV40TCL_BLEND_FUNC_DST 0x00000318
4395 #define NV40TCL_BLEND_FUNC_DST_RGB_SHIFT 0
4396 #define NV40TCL_BLEND_FUNC_DST_RGB_MASK 0x0000ffff
4397 #define NV40TCL_BLEND_FUNC_DST_RGB_ZERO 0x00000000
4398 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE 0x00000001
4399 #define NV40TCL_BLEND_FUNC_DST_RGB_SRC_COLOR 0x00000300
4400 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR 0x00000301
4401 #define NV40TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA 0x00000302
4402 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
4403 #define NV40TCL_BLEND_FUNC_DST_RGB_DST_ALPHA 0x00000304
4404 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA 0x00000305
4405 #define NV40TCL_BLEND_FUNC_DST_RGB_DST_COLOR 0x00000306
4406 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR 0x00000307
4407 #define NV40TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE 0x00000308
4408 #define NV40TCL_BLEND_FUNC_DST_RGB_CONSTANT_COLOR 0x00008001
4409 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
4410 #define NV40TCL_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA 0x00008003
4411 #define NV40TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
4412 #define NV40TCL_BLEND_FUNC_DST_ALPHA_SHIFT 16
4413 #define NV40TCL_BLEND_FUNC_DST_ALPHA_MASK 0xffff0000
4414 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ZERO 0x00000000
4415 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE 0x00010000
4416 #define NV40TCL_BLEND_FUNC_DST_ALPHA_SRC_COLOR 0x03000000
4417 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR 0x03010000
4418 #define NV40TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA 0x03020000
4419 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA 0x03030000
4420 #define NV40TCL_BLEND_FUNC_DST_ALPHA_DST_ALPHA 0x03040000
4421 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA 0x03050000
4422 #define NV40TCL_BLEND_FUNC_DST_ALPHA_DST_COLOR 0x03060000
4423 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR 0x03070000
4424 #define NV40TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE 0x03080000
4425 #define NV40TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR 0x80010000
4426 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x80020000
4427 #define NV40TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA 0x80030000
4428 #define NV40TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x80040000
4429 #define NV40TCL_BLEND_COLOR 0x0000031c
4430 #define NV40TCL_BLEND_EQUATION 0x00000320
4431 #define NV40TCL_BLEND_EQUATION_RGB_SHIFT 0
4432 #define NV40TCL_BLEND_EQUATION_RGB_MASK 0x0000ffff
4433 #define NV40TCL_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006
4434 #define NV40TCL_BLEND_EQUATION_RGB_MIN 0x00008007
4435 #define NV40TCL_BLEND_EQUATION_RGB_MAX 0x00008008
4436 #define NV40TCL_BLEND_EQUATION_RGB_FUNC_SUBTRACT 0x0000800a
4437 #define NV40TCL_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT 0x0000800b
4438 #define NV40TCL_BLEND_EQUATION_ALPHA_SHIFT 16
4439 #define NV40TCL_BLEND_EQUATION_ALPHA_MASK 0xffff0000
4440 #define NV40TCL_BLEND_EQUATION_ALPHA_FUNC_ADD 0x80060000
4441 #define NV40TCL_BLEND_EQUATION_ALPHA_MIN 0x80070000
4442 #define NV40TCL_BLEND_EQUATION_ALPHA_MAX 0x80080000
4443 #define NV40TCL_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT 0x800a0000
4444 #define NV40TCL_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT 0x800b0000
4445 #define NV40TCL_COLOR_MASK 0x00000324
4446 #define NV40TCL_COLOR_MASK_BUFFER0_B_SHIFT 0
4447 #define NV40TCL_COLOR_MASK_BUFFER0_B_MASK 0x000000ff
4448 #define NV40TCL_COLOR_MASK_BUFFER0_G_SHIFT 8
4449 #define NV40TCL_COLOR_MASK_BUFFER0_G_MASK 0x0000ff00
4450 #define NV40TCL_COLOR_MASK_BUFFER0_R_SHIFT 16
4451 #define NV40TCL_COLOR_MASK_BUFFER0_R_MASK 0x00ff0000
4452 #define NV40TCL_COLOR_MASK_BUFFER0_A_SHIFT 24
4453 #define NV40TCL_COLOR_MASK_BUFFER0_A_MASK 0xff000000
4454 #define NV40TCL_STENCIL_BACK_ENABLE 0x00000328
4455 #define NV40TCL_STENCIL_BACK_MASK 0x0000032c
4456 #define NV40TCL_STENCIL_BACK_FUNC_FUNC 0x00000330
4457 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200
4458 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201
4459 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
4460 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
4461 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
4462 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
4463 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
4464 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
4465 #define NV40TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
4466 #define NV40TCL_STENCIL_BACK_FUNC_REF 0x00000334
4467 #define NV40TCL_STENCIL_BACK_FUNC_MASK 0x00000338
4468 #define NV40TCL_STENCIL_BACK_OP_FAIL 0x0000033c
4469 #define NV40TCL_STENCIL_BACK_OP_FAIL_ZERO 0x00000000
4470 #define NV40TCL_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a
4471 #define NV40TCL_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00
4472 #define NV40TCL_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01
4473 #define NV40TCL_STENCIL_BACK_OP_FAIL_INCR 0x00001e02
4474 #define NV40TCL_STENCIL_BACK_OP_FAIL_DECR 0x00001e03
4475 #define NV40TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507
4476 #define NV40TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508
4477 #define NV40TCL_STENCIL_BACK_OP_ZFAIL 0x00000340
4478 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000
4479 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a
4480 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00
4481 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01
4482 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02
4483 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03
4484 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507
4485 #define NV40TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508
4486 #define NV40TCL_STENCIL_BACK_OP_ZPASS 0x00000344
4487 #define NV40TCL_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000
4488 #define NV40TCL_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a
4489 #define NV40TCL_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00
4490 #define NV40TCL_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01
4491 #define NV40TCL_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02
4492 #define NV40TCL_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03
4493 #define NV40TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507
4494 #define NV40TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508
4495 #define NV40TCL_STENCIL_FRONT_ENABLE 0x00000348
4496 #define NV40TCL_STENCIL_FRONT_MASK 0x0000034c
4497 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC 0x00000350
4498 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200
4499 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201
4500 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
4501 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
4502 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
4503 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
4504 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
4505 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
4506 #define NV40TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
4507 #define NV40TCL_STENCIL_FRONT_FUNC_REF 0x00000354
4508 #define NV40TCL_STENCIL_FRONT_FUNC_MASK 0x00000358
4509 #define NV40TCL_STENCIL_FRONT_OP_FAIL 0x0000035c
4510 #define NV40TCL_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000
4511 #define NV40TCL_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a
4512 #define NV40TCL_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00
4513 #define NV40TCL_STENCIL_FRONT_OP_FAIL_REPLACE 0x00001e01
4514 #define NV40TCL_STENCIL_FRONT_OP_FAIL_INCR 0x00001e02
4515 #define NV40TCL_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03
4516 #define NV40TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507
4517 #define NV40TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508
4518 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL 0x00000360
4519 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000
4520 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a
4521 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00
4522 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_REPLACE 0x00001e01
4523 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_INCR 0x00001e02
4524 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03
4525 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507
4526 #define NV40TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508
4527 #define NV40TCL_STENCIL_FRONT_OP_ZPASS 0x00000364
4528 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000
4529 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a
4530 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00
4531 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_REPLACE 0x00001e01
4532 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_INCR 0x00001e02
4533 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03
4534 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507
4535 #define NV40TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508
4536 #define NV40TCL_SHADE_MODEL 0x00000368
4537 #define NV40TCL_SHADE_MODEL_FLAT 0x00001d00
4538 #define NV40TCL_SHADE_MODEL_SMOOTH 0x00001d01
4539 #define NV40TCL_MRT_COLOR_MASK 0x00000370
4540 #define NV40TCL_MRT_COLOR_MASK_BUFFER1_A (1 << 4)
4541 #define NV40TCL_MRT_COLOR_MASK_BUFFER1_R (1 << 5)
4542 #define NV40TCL_MRT_COLOR_MASK_BUFFER1_G (1 << 6)
4543 #define NV40TCL_MRT_COLOR_MASK_BUFFER1_B (1 << 7)
4544 #define NV40TCL_MRT_COLOR_MASK_BUFFER2_A (1 << 8)
4545 #define NV40TCL_MRT_COLOR_MASK_BUFFER2_R (1 << 9)
4546 #define NV40TCL_MRT_COLOR_MASK_BUFFER2_G (1 << 10)
4547 #define NV40TCL_MRT_COLOR_MASK_BUFFER2_B (1 << 11)
4548 #define NV40TCL_MRT_COLOR_MASK_BUFFER3_A (1 << 12)
4549 #define NV40TCL_MRT_COLOR_MASK_BUFFER3_R (1 << 13)
4550 #define NV40TCL_MRT_COLOR_MASK_BUFFER3_G (1 << 14)
4551 #define NV40TCL_MRT_COLOR_MASK_BUFFER3_B (1 << 15)
4552 #define NV40TCL_COLOR_LOGIC_OP_ENABLE 0x00000374
4553 #define NV40TCL_COLOR_LOGIC_OP 0x00000378
4554 #define NV40TCL_COLOR_LOGIC_OP_CLEAR 0x00001500
4555 #define NV40TCL_COLOR_LOGIC_OP_AND 0x00001501
4556 #define NV40TCL_COLOR_LOGIC_OP_AND_REVERSE 0x00001502
4557 #define NV40TCL_COLOR_LOGIC_OP_COPY 0x00001503
4558 #define NV40TCL_COLOR_LOGIC_OP_AND_INVERTED 0x00001504
4559 #define NV40TCL_COLOR_LOGIC_OP_NOOP 0x00001505
4560 #define NV40TCL_COLOR_LOGIC_OP_XOR 0x00001506
4561 #define NV40TCL_COLOR_LOGIC_OP_OR 0x00001507
4562 #define NV40TCL_COLOR_LOGIC_OP_NOR 0x00001508
4563 #define NV40TCL_COLOR_LOGIC_OP_EQUIV 0x00001509
4564 #define NV40TCL_COLOR_LOGIC_OP_INVERT 0x0000150a
4565 #define NV40TCL_COLOR_LOGIC_OP_OR_REVERSE 0x0000150b
4566 #define NV40TCL_COLOR_LOGIC_OP_COPY_INVERTED 0x0000150c
4567 #define NV40TCL_COLOR_LOGIC_OP_OR_INVERTED 0x0000150d
4568 #define NV40TCL_COLOR_LOGIC_OP_NAND 0x0000150e
4569 #define NV40TCL_COLOR_LOGIC_OP_SET 0x0000150f
4570 #define NV40TCL_DEPTH_RANGE_NEAR 0x00000394
4571 #define NV40TCL_DEPTH_RANGE_FAR 0x00000398
4572 #define NV40TCL_LINE_WIDTH 0x000003b8
4573 #define NV40TCL_LINE_SMOOTH_ENABLE 0x000003bc
4574 #define NV40TCL_UNK03C0(x) (0x000003c0+((x)*4))
4575 #define NV40TCL_UNK03C0__SIZE 0x00000010
4576 #define NV40TCL_UNK0400(x) (0x00000400+((x)*4))
4577 #define NV40TCL_UNK0400__SIZE 0x00000010
4578 #define NV40TCL_UNK0440(x) (0x00000440+((x)*4))
4579 #define NV40TCL_UNK0440__SIZE 0x00000020
4580 #define NV40TCL_SCISSOR_HORIZ 0x000008c0
4581 #define NV40TCL_SCISSOR_HORIZ_X_SHIFT 0
4582 #define NV40TCL_SCISSOR_HORIZ_X_MASK 0x0000ffff
4583 #define NV40TCL_SCISSOR_HORIZ_W_SHIFT 16
4584 #define NV40TCL_SCISSOR_HORIZ_W_MASK 0xffff0000
4585 #define NV40TCL_SCISSOR_VERT 0x000008c4
4586 #define NV40TCL_SCISSOR_VERT_Y_SHIFT 0
4587 #define NV40TCL_SCISSOR_VERT_Y_MASK 0x0000ffff
4588 #define NV40TCL_SCISSOR_VERT_H_SHIFT 16
4589 #define NV40TCL_SCISSOR_VERT_H_MASK 0xffff0000
4590 #define NV40TCL_FOG_MODE 0x000008cc
4591 #define NV40TCL_FOG_EQUATION_CONSTANT 0x000008d0
4592 #define NV40TCL_FOG_EQUATION_LINEAR 0x000008d4
4593 #define NV40TCL_FOG_EQUATION_QUADRATIC 0x000008d8
4594 #define NV40TCL_FP_ADDRESS 0x000008e4
4595 #define NV40TCL_FP_ADDRESS_OFFSET_SHIFT 8
4596 #define NV40TCL_FP_ADDRESS_OFFSET_MASK 0xffffff00
4597 #define NV40TCL_FP_ADDRESS_DMA1 (1 << 1)
4598 #define NV40TCL_FP_ADDRESS_DMA0 (1 << 0)
4599 #define NV40TCL_VIEWPORT_HORIZ 0x00000a00
4600 #define NV40TCL_VIEWPORT_HORIZ_W_SHIFT 16
4601 #define NV40TCL_VIEWPORT_HORIZ_W_MASK 0xffff0000
4602 #define NV40TCL_VIEWPORT_HORIZ_X_SHIFT 0
4603 #define NV40TCL_VIEWPORT_HORIZ_X_MASK 0x0000ffff
4604 #define NV40TCL_VIEWPORT_VERT 0x00000a04
4605 #define NV40TCL_VIEWPORT_VERT_H_SHIFT 16
4606 #define NV40TCL_VIEWPORT_VERT_H_MASK 0xffff0000
4607 #define NV40TCL_VIEWPORT_VERT_Y_SHIFT 0
4608 #define NV40TCL_VIEWPORT_VERT_Y_MASK 0x0000ffff
4609 #define NV40TCL_VIEWPORT_TRANSLATE_X 0x00000a20
4610 #define NV40TCL_VIEWPORT_TRANSLATE_Y 0x00000a24
4611 #define NV40TCL_VIEWPORT_TRANSLATE_Z 0x00000a28
4612 #define NV40TCL_VIEWPORT_TRANSLATE_W 0x00000a2c
4613 #define NV40TCL_VIEWPORT_SCALE_X 0x00000a30
4614 #define NV40TCL_VIEWPORT_SCALE_Y 0x00000a34
4615 #define NV40TCL_VIEWPORT_SCALE_Z 0x00000a38
4616 #define NV40TCL_VIEWPORT_SCALE_W 0x00000a3c
4617 #define NV40TCL_POLYGON_OFFSET_FILL_ENABLE 0x00000a60
4618 #define NV40TCL_POLYGON_OFFSET_LINE_ENABLE 0x00000a64
4619 #define NV40TCL_POLYGON_OFFSET_POINT_ENABLE 0x00000a68
4620 #define NV40TCL_DEPTH_FUNC 0x00000a6c
4621 #define NV40TCL_DEPTH_FUNC_NEVER 0x00000200
4622 #define NV40TCL_DEPTH_FUNC_LESS 0x00000201
4623 #define NV40TCL_DEPTH_FUNC_EQUAL 0x00000202
4624 #define NV40TCL_DEPTH_FUNC_LEQUAL 0x00000203
4625 #define NV40TCL_DEPTH_FUNC_GREATER 0x00000204
4626 #define NV40TCL_DEPTH_FUNC_GREATER 0x00000204
4627 #define NV40TCL_DEPTH_FUNC_NOTEQUAL 0x00000205
4628 #define NV40TCL_DEPTH_FUNC_GEQUAL 0x00000206
4629 #define NV40TCL_DEPTH_FUNC_ALWAYS 0x00000207
4630 #define NV40TCL_DEPTH_WRITE_ENABLE 0x00000a70
4631 #define NV40TCL_DEPTH_TEST_ENABLE 0x00000a74
4632 #define NV40TCL_POLYGON_OFFSET_FACTOR 0x00000a78
4633 #define NV40TCL_POLYGON_OFFSET_UNITS 0x00000a7c
4634 #define NV40TCL_UNK0B40(x) (0x00000b40+((x)*4))
4635 #define NV40TCL_UNK0B40__SIZE 0x00000008
4636 #define NV40TCL_VP_UPLOAD_INST(x) (0x00000b80+((x)*4))
4637 #define NV40TCL_VP_UPLOAD_INST__SIZE 0x00000004
4638 #define NV40TCL_CLIP_PLANE_ENABLE 0x00001478
4639 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE0 (1 << 2)
4640 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE1 (1 << 6)
4641 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE2 (1 << 10)
4642 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE3 (1 << 14)
4643 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE4 (1 << 18)
4644 #define NV40TCL_CLIP_PLANE_ENABLE_PLANE5 (1 << 22)
4645 #define NV40TCL_POLYGON_STIPPLE_ENABLE 0x0000147c
4646 #define NV40TCL_POLYGON_STIPPLE_PATTERN(x) (0x00001480+((x)*4))
4647 #define NV40TCL_POLYGON_STIPPLE_PATTERN__SIZE 0x00000020
4648 #define NV40TCL_VTX_ATTR_3F_X(x) (0x00001500+((x)*16))
4649 #define NV40TCL_VTX_ATTR_3F_X__SIZE 0x00000010
4650 #define NV40TCL_VTX_ATTR_3F_Y(x) (0x00001504+((x)*16))
4651 #define NV40TCL_VTX_ATTR_3F_Y__SIZE 0x00000010
4652 #define NV40TCL_VTX_ATTR_3F_Z(x) (0x00001508+((x)*16))
4653 #define NV40TCL_VTX_ATTR_3F_Z__SIZE 0x00000010
4654 #define NV40TCL_VTXBUF_ADDRESS(x) (0x00001680+((x)*4))
4655 #define NV40TCL_VTXBUF_ADDRESS__SIZE 0x00000010
4656 #define NV40TCL_VTXBUF_ADDRESS_DMA1 (1 << 31)
4657 #define NV40TCL_VTXBUF_ADDRESS_OFFSET_SHIFT 0
4658 #define NV40TCL_VTXBUF_ADDRESS_OFFSET_MASK 0x0fffffff
4659 #define NV40TCL_VTX_CACHE_INVALIDATE 0x00001714
4660 #define NV40TCL_VTXFMT(x) (0x00001740+((x)*4))
4661 #define NV40TCL_VTXFMT__SIZE 0x00000010
4662 #define NV40TCL_VTXFMT_TYPE_SHIFT 0
4663 #define NV40TCL_VTXFMT_TYPE_MASK 0x0000000f
4664 #define NV40TCL_VTXFMT_TYPE_FLOAT 0x00000002
4665 #define NV40TCL_VTXFMT_TYPE_UBYTE 0x00000004
4666 #define NV40TCL_VTXFMT_SIZE_SHIFT 4
4667 #define NV40TCL_VTXFMT_SIZE_MASK 0x000000f0
4668 #define NV40TCL_VTXFMT_STRIDE_SHIFT 8
4669 #define NV40TCL_VTXFMT_STRIDE_MASK 0x0000ff00
4670 #define NV40TCL_QUERY_RESET 0x000017c8
4671 #define NV40TCL_QUERY_UNK17CC 0x000017cc
4672 #define NV40TCL_QUERY_GET 0x00001800
4673 #define NV40TCL_QUERY_GET_UNK24_SHIFT 24
4674 #define NV40TCL_QUERY_GET_UNK24_MASK 0xff000000
4675 #define NV40TCL_QUERY_GET_OFFSET_SHIFT 0
4676 #define NV40TCL_QUERY_GET_OFFSET_MASK 0x00ffffff
4677 #define NV40TCL_BEGIN_END 0x00001808
4678 #define NV40TCL_BEGIN_END_STOP 0x00000000
4679 #define NV40TCL_BEGIN_END_POINTS 0x00000001
4680 #define NV40TCL_BEGIN_END_LINES 0x00000002
4681 #define NV40TCL_BEGIN_END_LINE_LOOP 0x00000003
4682 #define NV40TCL_BEGIN_END_LINE_STRIP 0x00000004
4683 #define NV40TCL_BEGIN_END_TRIANGLES 0x00000005
4684 #define NV40TCL_BEGIN_END_TRIANGLE_STRIP 0x00000006
4685 #define NV40TCL_BEGIN_END_TRIANGLE_FAN 0x00000007
4686 #define NV40TCL_BEGIN_END_QUADS 0x00000008
4687 #define NV40TCL_BEGIN_END_QUAD_STRIP 0x00000009
4688 #define NV40TCL_BEGIN_END_POLYGON 0x0000000a
4689 #define NV40TCL_VB_ELEMENT_U16 0x0000180c
4690 #define NV40TCL_VB_ELEMENT_U16_1_SHIFT 16
4691 #define NV40TCL_VB_ELEMENT_U16_1_MASK 0xffff0000
4692 #define NV40TCL_VB_ELEMENT_U16_0_SHIFT 0
4693 #define NV40TCL_VB_ELEMENT_U16_0_MASK 0x0000ffff
4694 #define NV40TCL_VB_ELEMENT_U32 0x00001810
4695 #define NV40TCL_VB_VERTEX_BATCH 0x00001814
4696 #define NV40TCL_VB_VERTEX_BATCH_COUNT_SHIFT 24
4697 #define NV40TCL_VB_VERTEX_BATCH_COUNT_MASK 0xff000000
4698 #define NV40TCL_VB_VERTEX_BATCH_START_SHIFT 0
4699 #define NV40TCL_VB_VERTEX_BATCH_START_MASK 0x00ffffff
4700 #define NV40TCL_VERTEX_DATA 0x00001818
4701 #define NV40TCL_POLYGON_MODE_FRONT 0x00001828
4702 #define NV40TCL_POLYGON_MODE_FRONT_POINT 0x00001b00
4703 #define NV40TCL_POLYGON_MODE_FRONT_LINE 0x00001b01
4704 #define NV40TCL_POLYGON_MODE_FRONT_FILL 0x00001b02
4705 #define NV40TCL_POLYGON_MODE_BACK 0x0000182c
4706 #define NV40TCL_POLYGON_MODE_BACK_POINT 0x00001b00
4707 #define NV40TCL_POLYGON_MODE_BACK_LINE 0x00001b01
4708 #define NV40TCL_POLYGON_MODE_BACK_FILL 0x00001b02
4709 #define NV40TCL_CULL_FACE 0x00001830
4710 #define NV40TCL_CULL_FACE_FRONT 0x00000404
4711 #define NV40TCL_CULL_FACE_BACK 0x00000405
4712 #define NV40TCL_CULL_FACE_FRONT_AND_BACK 0x00000408
4713 #define NV40TCL_FRONT_FACE 0x00001834
4714 #define NV40TCL_FRONT_FACE_CW 0x00000900
4715 #define NV40TCL_FRONT_FACE_CCW 0x00000901
4716 #define NV40TCL_POLYGON_SMOOTH_ENABLE 0x00001838
4717 #define NV40TCL_CULL_FACE_ENABLE 0x0000183c
4718 #define NV40TCL_TEX_SIZE1(x) (0x00001840+((x)*4))
4719 #define NV40TCL_TEX_SIZE1__SIZE 0x00000008
4720 #define NV40TCL_TEX_SIZE1_DEPTH_SHIFT 20
4721 #define NV40TCL_TEX_SIZE1_DEPTH_MASK 0xfff00000
4722 #define NV40TCL_TEX_SIZE1_PITCH_SHIFT 0
4723 #define NV40TCL_TEX_SIZE1_PITCH_MASK 0x0000ffff
4724 #define NV40TCL_VTX_ATTR_2F_X(x) (0x00001880+((x)*8))
4725 #define NV40TCL_VTX_ATTR_2F_X__SIZE 0x00000010
4726 #define NV40TCL_VTX_ATTR_2F_Y(x) (0x00001884+((x)*8))
4727 #define NV40TCL_VTX_ATTR_2F_Y__SIZE 0x00000010
4728 #define NV40TCL_VTX_ATTR_2I(x) (0x00001900+((x)*4))
4729 #define NV40TCL_VTX_ATTR_2I__SIZE 0x00000010
4730 #define NV40TCL_VTX_ATTR_2I_Y_SHIFT 16
4731 #define NV40TCL_VTX_ATTR_2I_Y_MASK 0xffff0000
4732 #define NV40TCL_VTX_ATTR_2I_X_SHIFT 0
4733 #define NV40TCL_VTX_ATTR_2I_X_MASK 0x0000ffff
4734 #define NV40TCL_VTX_ATTR_4I_0(x) (0x00001900+((x)*8))
4735 #define NV40TCL_VTX_ATTR_4I_0__SIZE 0x00000010
4736 #define NV40TCL_VTX_ATTR_4I_0_Y_SHIFT 16
4737 #define NV40TCL_VTX_ATTR_4I_0_Y_MASK 0xffff0000
4738 #define NV40TCL_VTX_ATTR_4I_0_X_SHIFT 0
4739 #define NV40TCL_VTX_ATTR_4I_0_X_MASK 0x0000ffff
4740 #define NV40TCL_VTX_ATTR_4I_1(x) (0x00001904+((x)*8))
4741 #define NV40TCL_VTX_ATTR_4I_1__SIZE 0x00000010
4742 #define NV40TCL_VTX_ATTR_4I_1_W_SHIFT 16
4743 #define NV40TCL_VTX_ATTR_4I_1_W_MASK 0xffff0000
4744 #define NV40TCL_VTX_ATTR_4I_1_Z_SHIFT 0
4745 #define NV40TCL_VTX_ATTR_4I_1_Z_MASK 0x0000ffff
4746 #define NV40TCL_TEX_OFFSET(x) (0x00001a00+((x)*32))
4747 #define NV40TCL_TEX_OFFSET__SIZE 0x00000010
4748 #define NV40TCL_TEX_FORMAT(x) (0x00001a04+((x)*32))
4749 #define NV40TCL_TEX_FORMAT__SIZE 0x00000010
4750 #define NV40TCL_TEX_FORMAT_MIPMAP_COUNT_SHIFT 16
4751 #define NV40TCL_TEX_FORMAT_MIPMAP_COUNT_MASK 0x000f0000
4752 #define NV40TCL_TEX_FORMAT_RECT (1 << 14)
4753 #define NV40TCL_TEX_FORMAT_LINEAR (1 << 13)
4754 #define NV40TCL_TEX_FORMAT_FORMAT_SHIFT 8
4755 #define NV40TCL_TEX_FORMAT_FORMAT_MASK 0x00001f00
4756 #define NV40TCL_TEX_FORMAT_FORMAT_L8 0x00000100
4757 #define NV40TCL_TEX_FORMAT_FORMAT_A1R5G5B5 0x00000200
4758 #define NV40TCL_TEX_FORMAT_FORMAT_A4R4G4B4 0x00000300
4759 #define NV40TCL_TEX_FORMAT_FORMAT_R5G6B5 0x00000400
4760 #define NV40TCL_TEX_FORMAT_FORMAT_A8R8G8B8 0x00000500
4761 #define NV40TCL_TEX_FORMAT_FORMAT_DXT1 0x00000600
4762 #define NV40TCL_TEX_FORMAT_FORMAT_DXT3 0x00000700
4763 #define NV40TCL_TEX_FORMAT_FORMAT_DXT5 0x00000800
4764 #define NV40TCL_TEX_FORMAT_FORMAT_A8L8 0x00001800
4765 #define NV40TCL_TEX_FORMAT_DIMS_SHIFT 4
4766 #define NV40TCL_TEX_FORMAT_DIMS_MASK 0x000000f0
4767 #define NV40TCL_TEX_FORMAT_DIMS_1D 0x00000010
4768 #define NV40TCL_TEX_FORMAT_DIMS_2D 0x00000020
4769 #define NV40TCL_TEX_FORMAT_DIMS_3D 0x00000030
4770 #define NV40TCL_TEX_FORMAT_NO_BORDER (1 << 3)
4771 #define NV40TCL_TEX_FORMAT_CUBIC (1 << 2)
4772 #define NV40TCL_TEX_FORMAT_DMA1 (1 << 1)
4773 #define NV40TCL_TEX_FORMAT_DMA0 (1 << 0)
4774 #define NV40TCL_TEX_WRAP(x) (0x00001a08+((x)*32))
4775 #define NV40TCL_TEX_WRAP__SIZE 0x00000010
4776 #define NV40TCL_TEX_WRAP_S_SHIFT 0
4777 #define NV40TCL_TEX_WRAP_S_MASK 0x000000ff
4778 #define NV40TCL_TEX_WRAP_S_REPEAT 0x00000001
4779 #define NV40TCL_TEX_WRAP_S_MIRRORED_REPEAT 0x00000002
4780 #define NV40TCL_TEX_WRAP_S_CLAMP_TO_EDGE 0x00000003
4781 #define NV40TCL_TEX_WRAP_S_CLAMP_TO_BORDER 0x00000004
4782 #define NV40TCL_TEX_WRAP_S_CLAMP 0x00000005
4783 #define NV40TCL_TEX_WRAP_S_MIRROR_CLAMP_TO_EDGE 0x00000006
4784 #define NV40TCL_TEX_WRAP_S_MIRROR_CLAMP_TO_BORDER 0x00000007
4785 #define NV40TCL_TEX_WRAP_S_MIRROR_CLAMP 0x00000008
4786 #define NV40TCL_TEX_WRAP_T_SHIFT 8
4787 #define NV40TCL_TEX_WRAP_T_MASK 0x0000ff00
4788 #define NV40TCL_TEX_WRAP_T_REPEAT 0x00000100
4789 #define NV40TCL_TEX_WRAP_T_MIRRORED_REPEAT 0x00000200
4790 #define NV40TCL_TEX_WRAP_T_CLAMP_TO_EDGE 0x00000300
4791 #define NV40TCL_TEX_WRAP_T_CLAMP_TO_BORDER 0x00000400
4792 #define NV40TCL_TEX_WRAP_T_CLAMP 0x00000500
4793 #define NV40TCL_TEX_WRAP_T_MIRROR_CLAMP_TO_EDGE 0x00000600
4794 #define NV40TCL_TEX_WRAP_T_MIRROR_CLAMP_TO_BORDER 0x00000700
4795 #define NV40TCL_TEX_WRAP_T_MIRROR_CLAMP 0x00000800
4796 #define NV40TCL_TEX_WRAP_R_SHIFT 16
4797 #define NV40TCL_TEX_WRAP_R_MASK 0x00ff0000
4798 #define NV40TCL_TEX_WRAP_R_REPEAT 0x00010000
4799 #define NV40TCL_TEX_WRAP_R_MIRRORED_REPEAT 0x00020000
4800 #define NV40TCL_TEX_WRAP_R_CLAMP_TO_EDGE 0x00030000
4801 #define NV40TCL_TEX_WRAP_R_CLAMP_TO_BORDER 0x00040000
4802 #define NV40TCL_TEX_WRAP_R_CLAMP 0x00050000
4803 #define NV40TCL_TEX_WRAP_R_MIRROR_CLAMP_TO_EDGE 0x00060000
4804 #define NV40TCL_TEX_WRAP_R_MIRROR_CLAMP_TO_BORDER 0x00070000
4805 #define NV40TCL_TEX_WRAP_R_MIRROR_CLAMP 0x00080000
4806 #define NV40TCL_TEX_ENABLE(x) (0x00001a0c+((x)*32))
4807 #define NV40TCL_TEX_ENABLE__SIZE 0x00000010
4808 #define NV40TCL_TEX_ENABLE_ENABLE (1 << 31)
4809 #define NV40TCL_TEX_SWIZZLE(x) (0x00001a10+((x)*32))
4810 #define NV40TCL_TEX_SWIZZLE__SIZE 0x00000010
4811 #define NV40TCL_TEX_SWIZZLE_S0_X_SHIFT 14
4812 #define NV40TCL_TEX_SWIZZLE_S0_X_MASK 0x0000c000
4813 #define NV40TCL_TEX_SWIZZLE_S0_X_ZERO 0x00000000
4814 #define NV40TCL_TEX_SWIZZLE_S0_X_ONE 0x00004000
4815 #define NV40TCL_TEX_SWIZZLE_S0_X_S1 0x00008000
4816 #define NV40TCL_TEX_SWIZZLE_S0_Y_SHIFT 12
4817 #define NV40TCL_TEX_SWIZZLE_S0_Y_MASK 0x00003000
4818 #define NV40TCL_TEX_SWIZZLE_S0_Y_ZERO 0x00000000
4819 #define NV40TCL_TEX_SWIZZLE_S0_Y_ONE 0x00001000
4820 #define NV40TCL_TEX_SWIZZLE_S0_Y_S1 0x00002000
4821 #define NV40TCL_TEX_SWIZZLE_S0_Z_SHIFT 10
4822 #define NV40TCL_TEX_SWIZZLE_S0_Z_MASK 0x00000c00
4823 #define NV40TCL_TEX_SWIZZLE_S0_Z_ZERO 0x00000000
4824 #define NV40TCL_TEX_SWIZZLE_S0_Z_ONE 0x00000400
4825 #define NV40TCL_TEX_SWIZZLE_S0_Z_S1 0x00000800
4826 #define NV40TCL_TEX_SWIZZLE_S0_W_SHIFT 8
4827 #define NV40TCL_TEX_SWIZZLE_S0_W_MASK 0x00000300
4828 #define NV40TCL_TEX_SWIZZLE_S0_W_ZERO 0x00000000
4829 #define NV40TCL_TEX_SWIZZLE_S0_W_ONE 0x00000100
4830 #define NV40TCL_TEX_SWIZZLE_S0_W_S1 0x00000200
4831 #define NV40TCL_TEX_SWIZZLE_S1_X_SHIFT 6
4832 #define NV40TCL_TEX_SWIZZLE_S1_X_MASK 0x000000c0
4833 #define NV40TCL_TEX_SWIZZLE_S1_X_W 0x00000000
4834 #define NV40TCL_TEX_SWIZZLE_S1_X_Z 0x00000040
4835 #define NV40TCL_TEX_SWIZZLE_S1_X_Y 0x00000080
4836 #define NV40TCL_TEX_SWIZZLE_S1_X_X 0x000000c0
4837 #define NV40TCL_TEX_SWIZZLE_S1_Y_SHIFT 4
4838 #define NV40TCL_TEX_SWIZZLE_S1_Y_MASK 0x00000030
4839 #define NV40TCL_TEX_SWIZZLE_S1_Y_W 0x00000000
4840 #define NV40TCL_TEX_SWIZZLE_S1_Y_Z 0x00000010
4841 #define NV40TCL_TEX_SWIZZLE_S1_Y_Y 0x00000020
4842 #define NV40TCL_TEX_SWIZZLE_S1_Y_X 0x00000030
4843 #define NV40TCL_TEX_SWIZZLE_S1_Z_SHIFT 2
4844 #define NV40TCL_TEX_SWIZZLE_S1_Z_MASK 0x0000000c
4845 #define NV40TCL_TEX_SWIZZLE_S1_Z_W 0x00000000
4846 #define NV40TCL_TEX_SWIZZLE_S1_Z_Z 0x00000004
4847 #define NV40TCL_TEX_SWIZZLE_S1_Z_Y 0x00000008
4848 #define NV40TCL_TEX_SWIZZLE_S1_Z_X 0x0000000c
4849 #define NV40TCL_TEX_SWIZZLE_S1_W_SHIFT 0
4850 #define NV40TCL_TEX_SWIZZLE_S1_W_MASK 0x00000003
4851 #define NV40TCL_TEX_SWIZZLE_S1_W_W 0x00000000
4852 #define NV40TCL_TEX_SWIZZLE_S1_W_Z 0x00000001
4853 #define NV40TCL_TEX_SWIZZLE_S1_W_Y 0x00000002
4854 #define NV40TCL_TEX_SWIZZLE_S1_W_X 0x00000003
4855 #define NV40TCL_TEX_FILTER(x) (0x00001a14+((x)*32))
4856 #define NV40TCL_TEX_FILTER__SIZE 0x00000010
4857 #define NV40TCL_TEX_FILTER_MIN_SHIFT 16
4858 #define NV40TCL_TEX_FILTER_MIN_MASK 0x000f0000
4859 #define NV40TCL_TEX_FILTER_MIN_NEAREST 0x00010000
4860 #define NV40TCL_TEX_FILTER_MIN_LINEAR 0x00020000
4861 #define NV40TCL_TEX_FILTER_MIN_NEAREST_MIPMAP_NEAREST 0x00030000
4862 #define NV40TCL_TEX_FILTER_MIN_LINEAR_MIPMAP_NEAREST 0x00040000
4863 #define NV40TCL_TEX_FILTER_MIN_NEAREST_MIPMAP_LINEAR 0x00050000
4864 #define NV40TCL_TEX_FILTER_MIN_LINEAR_MIPMAP_LINEAR 0x00060000
4865 #define NV40TCL_TEX_FILTER_MAG_SHIFT 24
4866 #define NV40TCL_TEX_FILTER_MAG_MASK 0x0f000000
4867 #define NV40TCL_TEX_FILTER_MAG_NEAREST 0x01000000
4868 #define NV40TCL_TEX_FILTER_MAG_LINEAR 0x02000000
4869 #define NV40TCL_TEX_FILTER_MAG_NEAREST_MIPMAP_NEAREST 0x03000000
4870 #define NV40TCL_TEX_FILTER_MAG_LINEAR_MIPMAP_NEAREST 0x04000000
4871 #define NV40TCL_TEX_FILTER_MAG_NEAREST_MIPMAP_LINEAR 0x05000000
4872 #define NV40TCL_TEX_FILTER_MAG_LINEAR_MIPMAP_LINEAR 0x06000000
4873 #define NV40TCL_TEX_SIZE0(x) (0x00001a18+((x)*32))
4874 #define NV40TCL_TEX_SIZE0__SIZE 0x00000010
4875 #define NV40TCL_TEX_SIZE0_H_SHIFT 0
4876 #define NV40TCL_TEX_SIZE0_H_MASK 0x0000ffff
4877 #define NV40TCL_TEX_SIZE0_W_SHIFT 16
4878 #define NV40TCL_TEX_SIZE0_W_MASK 0xffff0000
4879 #define NV40TCL_TEX_BORDER_COLOR(x) (0x00001a1c+((x)*32))
4880 #define NV40TCL_TEX_BORDER_COLOR__SIZE 0x00000010
4881 #define NV40TCL_TEX_BORDER_COLOR_B_SHIFT 0
4882 #define NV40TCL_TEX_BORDER_COLOR_B_MASK 0x000000ff
4883 #define NV40TCL_TEX_BORDER_COLOR_G_SHIFT 8
4884 #define NV40TCL_TEX_BORDER_COLOR_G_MASK 0x0000ff00
4885 #define NV40TCL_TEX_BORDER_COLOR_R_SHIFT 16
4886 #define NV40TCL_TEX_BORDER_COLOR_R_MASK 0x00ff0000
4887 #define NV40TCL_TEX_BORDER_COLOR_A_SHIFT 24
4888 #define NV40TCL_TEX_BORDER_COLOR_A_MASK 0xff000000
4889 #define NV40TCL_VTX_ATTR_4F_X(x) (0x00001c00+((x)*16))
4890 #define NV40TCL_VTX_ATTR_4F_X__SIZE 0x00000010
4891 #define NV40TCL_VTX_ATTR_4F_Y(x) (0x00001c04+((x)*16))
4892 #define NV40TCL_VTX_ATTR_4F_Y__SIZE 0x00000010
4893 #define NV40TCL_VTX_ATTR_4F_Z(x) (0x00001c08+((x)*16))
4894 #define NV40TCL_VTX_ATTR_4F_Z__SIZE 0x00000010
4895 #define NV40TCL_VTX_ATTR_4F_W(x) (0x00001c0c+((x)*16))
4896 #define NV40TCL_VTX_ATTR_4F_W__SIZE 0x00000010
4897 #define NV40TCL_FP_CONTROL 0x00001d60
4898 #define NV40TCL_FP_CONTROL_TEMP_COUNT_SHIFT 24
4899 #define NV40TCL_FP_CONTROL_TEMP_COUNT_MASK 0xff000000
4900 #define NV40TCL_FP_CONTROL_KIL (1 << 7)
4901 #define NV40TCL_CLEAR_VALUE_DEPTH 0x00001d8c
4902 #define NV40TCL_CLEAR_VALUE_COLOR 0x00001d90
4903 #define NV40TCL_CLEAR_BUFFERS 0x00001d94
4904 #define NV40TCL_CLEAR_BUFFERS_COLOR_A (1 << 7)
4905 #define NV40TCL_CLEAR_BUFFERS_COLOR_B (1 << 6)
4906 #define NV40TCL_CLEAR_BUFFERS_COLOR_G (1 << 5)
4907 #define NV40TCL_CLEAR_BUFFERS_COLOR_R (1 << 4)
4908 #define NV40TCL_CLEAR_BUFFERS_STENCIL (1 << 1)
4909 #define NV40TCL_CLEAR_BUFFERS_DEPTH (1 << 0)
4910 #define NV40TCL_LINE_STIPPLE_ENABLE 0x00001db4
4911 #define NV40TCL_LINE_STIPPLE_PATTERN 0x00001db8
4912 #define NV40TCL_LINE_STIPPLE_PATTERN_FACTOR_SHIFT 0
4913 #define NV40TCL_LINE_STIPPLE_PATTERN_FACTOR_MASK 0x0000ffff
4914 #define NV40TCL_LINE_STIPPLE_PATTERN_PATTERN_SHIFT 16
4915 #define NV40TCL_LINE_STIPPLE_PATTERN_PATTERN_MASK 0xffff0000
4916 #define NV40TCL_VP_UPLOAD_FROM_ID 0x00001e9c
4917 #define NV40TCL_VP_START_FROM_ID 0x00001ea0
4918 #define NV40TCL_POINT_SIZE 0x00001ee0
4919 #define NV40TCL_POINT_SPRITE 0x00001ee8
4920 #define NV40TCL_VP_UPLOAD_CONST_ID 0x00001efc
4921 #define NV40TCL_VP_UPLOAD_CONST_X(x) (0x00001f00+((x)*16))
4922 #define NV40TCL_VP_UPLOAD_CONST_X__SIZE 0x00000004
4923 #define NV40TCL_VP_UPLOAD_CONST_Y(x) (0x00001f04+((x)*16))
4924 #define NV40TCL_VP_UPLOAD_CONST_Y__SIZE 0x00000004
4925 #define NV40TCL_VP_UPLOAD_CONST_Z(x) (0x00001f08+((x)*16))
4926 #define NV40TCL_VP_UPLOAD_CONST_Z__SIZE 0x00000004
4927 #define NV40TCL_VP_UPLOAD_CONST_W(x) (0x00001f0c+((x)*16))
4928 #define NV40TCL_VP_UPLOAD_CONST_W__SIZE 0x00000004
4929 #define NV40TCL_TEX_CACHE_CTL 0x00001fd8
4930 #define NV40TCL_VP_ATTRIB_EN 0x00001ff0
4931 #define NV40TCL_VP_RESULT_EN 0x00001ff4
4934 #define NV44TCL 0x00004497
4938 #define NV50_2D 0x0000502d
4940 #define NV50_2D_NOP 0x00000100
4941 #define NV50_2D_NOTIFY 0x00000104
4942 #define NV50_2D_DMA_NOTIFY 0x00000180
4943 #define NV50_2D_DMA_IN_MEMORY0 0x00000184
4944 #define NV50_2D_DMA_IN_MEMORY1 0x00000188
4945 #define NV50_2D_DMA_IN_MEMORY2 0x0000018c
4946 #define NV50_2D_DST_FORMAT 0x00000200
4947 #define NV50_2D_DST_FORMAT_32BPP 0x000000cf
4948 #define NV50_2D_DST_FORMAT_24BPP 0x000000e6
4949 #define NV50_2D_DST_FORMAT_16BPP 0x000000e8
4950 #define NV50_2D_DST_FORMAT_8BPP 0x000000f3
4951 #define NV50_2D_DST_FORMAT_15BPP 0x000000f8
4952 #define NV50_2D_DST_PITCH 0x00000214
4953 #define NV50_2D_DST_WIDTH 0x00000218
4954 #define NV50_2D_DST_HEIGHT 0x0000021c
4955 #define NV50_2D_DST_ADDRESS_HIGH 0x00000220
4956 #define NV50_2D_DST_ADDRESS_LOW 0x00000224
4957 #define NV50_2D_SRC_FORMAT 0x00000230
4958 #define NV50_2D_SRC_FORMAT_32BPP 0x000000cf
4959 #define NV50_2D_SRC_FORMAT_24BPP 0x000000e6
4960 #define NV50_2D_SRC_FORMAT_16BPP 0x000000e8
4961 #define NV50_2D_SRC_FORMAT_8BPP 0x000000f3
4962 #define NV50_2D_SRC_FORMAT_15BPP 0x000000f8
4963 #define NV50_2D_SRC_PITCH 0x00000244
4964 #define NV50_2D_SRC_WIDTH 0x00000248
4965 #define NV50_2D_SRC_HEIGHT 0x0000024c
4966 #define NV50_2D_SRC_ADDRESS_HIGH 0x00000250
4967 #define NV50_2D_SRC_ADDRESS_LOW 0x00000254
4968 #define NV50_2D_CLIP_X 0x00000280
4969 #define NV50_2D_CLIP_Y 0x00000284
4970 #define NV50_2D_CLIP_Z 0x00000288
4971 #define NV50_2D_CLIP_W 0x0000028c
4972 #define NV50_2D_ROP 0x000002a0
4973 #define NV50_2D_OPERATION 0x000002ac
4974 #define NV50_2D_OPERATION_SRCCOPY_AND 0x00000000
4975 #define NV50_2D_OPERATION_ROP_AND 0x00000001
4976 #define NV50_2D_OPERATION_BLEND_AND 0x00000002
4977 #define NV50_2D_OPERATION_SRCCOPY 0x00000003
4978 #define NV50_2D_OPERATION_SRCCOPY_PREMULT 0x00000004
4979 #define NV50_2D_OPERATION_BLEND_PREMULT 0x00000005
4980 #define NV50_2D_PATTERN_FORMAT 0x000002e8
4981 #define NV50_2D_PATTERN_FORMAT_16BPP 0x00000000
4982 #define NV50_2D_PATTERN_FORMAT_15BPP 0x00000001
4983 #define NV50_2D_PATTERN_FORMAT_32BPP 0x00000002
4984 #define NV50_2D_PATTERN_FORMAT_8BPP 0x00000003
4985 #define NV50_2D_PATTERN_COLOR(x) (0x000002f0+((x)*4))
4986 #define NV50_2D_PATTERN_COLOR__SIZE 0x00000002
4987 #define NV50_2D_PATTERN_BITMAP(x) (0x000002f8+((x)*4))
4988 #define NV50_2D_PATTERN_BITMAP__SIZE 0x00000002
4989 #define NV50_2D_RECT_FORMAT 0x00000584
4990 #define NV50_2D_RECT_FORMAT_32BPP 0x000000cf
4991 #define NV50_2D_RECT_FORMAT_24BPP 0x000000e6
4992 #define NV50_2D_RECT_FORMAT_16BPP 0x000000e8
4993 #define NV50_2D_RECT_FORMAT_8BPP 0x000000f3
4994 #define NV50_2D_RECT_FORMAT_15BPP 0x000000f8
4995 #define NV50_2D_RECT_COLOR 0x00000588
4996 #define NV50_2D_RECT_X1 0x00000600
4997 #define NV50_2D_RECT_Y1 0x00000604
4998 #define NV50_2D_RECT_X2 0x00000608
4999 #define NV50_2D_RECT_Y2 0x0000060c
5000 #define NV50_2D_BLIT_DST_X 0x000008b0
5001 #define NV50_2D_BLIT_DST_Y 0x000008b4
5002 #define NV50_2D_BLIT_DST_W 0x000008b8
5003 #define NV50_2D_BLIT_DST_H 0x000008bc
5004 #define NV50_2D_BLIT_SRC_X 0x000008d4
5005 #define NV50_2D_BLIT_SRC_Y 0x000008dc
5008 #define NV50_MEMORY_TO_MEMORY_FORMAT 0x00005039
5012 #define NV50TCL 0x00005097
5014 #define NV50TCL_NOP 0x00000100
5015 #define NV50TCL_NOTIFY 0x00000104
5016 #define NV50TCL_DMA_NOTIFY 0x00000180
5017 #define NV50TCL_DMA_IN_MEMORY0(x) (0x00000184+((x)*4))
5018 #define NV50TCL_DMA_IN_MEMORY0__SIZE 0x0000000b
5019 #define NV50TCL_DMA_IN_MEMORY1(x) (0x000001c0+((x)*4))
5020 #define NV50TCL_DMA_IN_MEMORY1__SIZE 0x00000008
5021 #define NV50TCL_RT_ADDRESS_HIGH(x) (0x00000200+((x)*32))
5022 #define NV50TCL_RT_ADDRESS_HIGH__SIZE 0x00000008
5023 #define NV50TCL_RT_ADDRESS_LOW(x) (0x00000204+((x)*32))
5024 #define NV50TCL_RT_ADDRESS_LOW__SIZE 0x00000008
5025 #define NV50TCL_RT_FORMAT(x) (0x00000208+((x)*32))
5026 #define NV50TCL_RT_FORMAT__SIZE 0x00000008
5027 #define NV50TCL_RT_UNK3(x) (0x0000020c+((x)*32))
5028 #define NV50TCL_RT_UNK3__SIZE 0x00000008
5029 #define NV50TCL_RT_UNK4(x) (0x00000210+((x)*32))
5030 #define NV50TCL_RT_UNK4__SIZE 0x00000008
5031 #define NV50TCL_VTX_ATTR_1F(x) (0x00000300+((x)*4))
5032 #define NV50TCL_VTX_ATTR_1F__SIZE 0x00000010
5033 #define NV50TCL_VTX_ATTR_2F_X(x) (0x00000380+((x)*8))
5034 #define NV50TCL_VTX_ATTR_2F_X__SIZE 0x00000010
5035 #define NV50TCL_VTX_ATTR_2F_Y(x) (0x00000384+((x)*8))
5036 #define NV50TCL_VTX_ATTR_2F_Y__SIZE 0x00000010
5037 #define NV50TCL_VTX_ATTR_3F_X(x) (0x00000400+((x)*16))
5038 #define NV50TCL_VTX_ATTR_3F_X__SIZE 0x00000010
5039 #define NV50TCL_VTX_ATTR_3F_Y(x) (0x00000404+((x)*16))
5040 #define NV50TCL_VTX_ATTR_3F_Y__SIZE 0x00000010
5041 #define NV50TCL_VTX_ATTR_3F_Z(x) (0x00000408+((x)*16))
5042 #define NV50TCL_VTX_ATTR_3F_Z__SIZE 0x00000010
5043 #define NV50TCL_VTX_ATTR_3F_W(x) (0x0000040c+((x)*16))
5044 #define NV50TCL_VTX_ATTR_3F_W__SIZE 0x00000010
5045 #define NV50TCL_VTX_ATTR_4F_X(x) (0x00000500+((x)*16))
5046 #define NV50TCL_VTX_ATTR_4F_X__SIZE 0x00000010
5047 #define NV50TCL_VTX_ATTR_4F_Y(x) (0x00000504+((x)*16))
5048 #define NV50TCL_VTX_ATTR_4F_Y__SIZE 0x00000010
5049 #define NV50TCL_VTX_ATTR_4F_Z(x) (0x00000508+((x)*16))
5050 #define NV50TCL_VTX_ATTR_4F_Z__SIZE 0x00000010
5051 #define NV50TCL_VTX_ATTR_4F_W(x) (0x0000050c+((x)*16))
5052 #define NV50TCL_VTX_ATTR_4F_W__SIZE 0x00000010
5053 #define NV50TCL_VTX_ATTR_2I(x) (0x00000680+((x)*4))
5054 #define NV50TCL_VTX_ATTR_2I__SIZE 0x00000010
5055 #define NV50TCL_VTX_ATTR_2I_X_SHIFT 0
5056 #define NV50TCL_VTX_ATTR_2I_X_MASK 0x0000ffff
5057 #define NV50TCL_VTX_ATTR_2I_Y_SHIFT 16
5058 #define NV50TCL_VTX_ATTR_2I_Y_MASK 0xffff0000
5059 #define NV50TCL_VTX_ATTR_4I_0(x) (0x00000700+((x)*8))
5060 #define NV50TCL_VTX_ATTR_4I_0__SIZE 0x00000010
5061 #define NV50TCL_VTX_ATTR_4I_0_X_SHIFT 0
5062 #define NV50TCL_VTX_ATTR_4I_0_X_MASK 0x0000ffff
5063 #define NV50TCL_VTX_ATTR_4I_0_Y_SHIFT 16
5064 #define NV50TCL_VTX_ATTR_4I_0_Y_MASK 0xffff0000
5065 #define NV50TCL_VTX_ATTR_4I_1(x) (0x00000704+((x)*8))
5066 #define NV50TCL_VTX_ATTR_4I_1__SIZE 0x00000010
5067 #define NV50TCL_VTX_ATTR_4I_1_Z_SHIFT 0
5068 #define NV50TCL_VTX_ATTR_4I_1_Z_MASK 0x0000ffff
5069 #define NV50TCL_VTX_ATTR_4I_1_W_SHIFT 16
5070 #define NV50TCL_VTX_ATTR_4I_1_W_MASK 0xffff0000
5071 #define NV50TCL_VTX_ATTR_4NI_0(x) (0x00000780+((x)*8))
5072 #define NV50TCL_VTX_ATTR_4NI_0__SIZE 0x00000010
5073 #define NV50TCL_VTX_ATTR_4NI_0_X_SHIFT 0
5074 #define NV50TCL_VTX_ATTR_4NI_0_X_MASK 0x0000ffff
5075 #define NV50TCL_VTX_ATTR_4NI_0_Y_SHIFT 16
5076 #define NV50TCL_VTX_ATTR_4NI_0_Y_MASK 0xffff0000
5077 #define NV50TCL_VTX_ATTR_4NI_1(x) (0x00000784+((x)*8))
5078 #define NV50TCL_VTX_ATTR_4NI_1__SIZE 0x00000010
5079 #define NV50TCL_VTX_ATTR_4NI_1_Z_SHIFT 0
5080 #define NV50TCL_VTX_ATTR_4NI_1_Z_MASK 0x0000ffff
5081 #define NV50TCL_VTX_ATTR_4NI_1_W_SHIFT 16
5082 #define NV50TCL_VTX_ATTR_4NI_1_W_MASK 0xffff0000
5083 #define NV50TCL_VERTEX_ARRAY_FORMAT(x) (0x00000900+((x)*16))
5084 #define NV50TCL_VERTEX_ARRAY_FORMAT__SIZE 0x00000010
5085 #define NV50TCL_VIEWPORT_UNK0(x) (0x00000a00+((x)*4))
5086 #define NV50TCL_VIEWPORT_UNK0__SIZE 0x00000003
5087 #define NV50TCL_VIEWPORT_UNK1(x) (0x00000a0c+((x)*4))
5088 #define NV50TCL_VIEWPORT_UNK1__SIZE 0x00000003
5089 #define NV50TCL_VIEWPORT_HORIZ 0x00000c00
5090 #define NV50TCL_VIEWPORT_HORIZ_X_SHIFT 0
5091 #define NV50TCL_VIEWPORT_HORIZ_X_MASK 0x0000ffff
5092 #define NV50TCL_VIEWPORT_HORIZ_W_SHIFT 16
5093 #define NV50TCL_VIEWPORT_HORIZ_W_MASK 0xffff0000
5094 #define NV50TCL_VIEWPORT_VERT 0x00000c04
5095 #define NV50TCL_VIEWPORT_VERT_Y_SHIFT 0
5096 #define NV50TCL_VIEWPORT_VERT_Y_MASK 0x0000ffff
5097 #define NV50TCL_VIEWPORT_VERT_H_SHIFT 16
5098 #define NV50TCL_VIEWPORT_VERT_H_MASK 0xffff0000
5099 #define NV50TCL_DEPTH_RANGE_NEAR 0x00000c08
5100 #define NV50TCL_DEPTH_RANGE_FAR 0x00000c0c
5101 #define NV50TCL_VIEWPORT_CLIP_HORIZ(x) (0x00000d00+((x)*8))
5102 #define NV50TCL_VIEWPORT_CLIP_HORIZ__SIZE 0x00000008
5103 #define NV50TCL_VIEWPORT_CLIP_VERT(x) (0x00000d04+((x)*8))
5104 #define NV50TCL_VIEWPORT_CLIP_VERT__SIZE 0x00000008
5105 #define NV50TCL_VERTEX_BUFFER_FIRST 0x00000d74
5106 #define NV50TCL_VERTEX_BUFFER_COUNT 0x00000d78
5107 #define NV50TCL_CLEAR_COLOR(x) (0x00000d80+((x)*4))
5108 #define NV50TCL_CLEAR_COLOR__SIZE 0x00000004
5109 #define NV50TCL_CLEAR_DEPTH 0x00000d90
5110 #define NV50TCL_CLEAR_STENCIL 0x00000da0
5111 #define NV50TCL_POLYGON_MODE_FRONT 0x00000dac
5112 #define NV50TCL_POLYGON_MODE_FRONT_POINT 0x00001b00
5113 #define NV50TCL_POLYGON_MODE_FRONT_LINE 0x00001b01
5114 #define NV50TCL_POLYGON_MODE_FRONT_FILL 0x00001b02
5115 #define NV50TCL_POLYGON_MODE_BACK 0x00000db0
5116 #define NV50TCL_POLYGON_MODE_BACK_POINT 0x00001b00
5117 #define NV50TCL_POLYGON_MODE_BACK_LINE 0x00001b01
5118 #define NV50TCL_POLYGON_MODE_BACK_FILL 0x00001b02
5119 #define NV50TCL_POLYGON_SMOOTH_ENABLE 0x00000db4
5120 #define NV50TCL_POLYGON_OFFSET_POINT_ENABLE 0x00000dc0
5121 #define NV50TCL_POLYGON_OFFSET_LINE_ENABLE 0x00000dc4
5122 #define NV50TCL_POLYGON_OFFSET_FILL_ENABLE 0x00000dc8
5123 #define NV50TCL_SCISSOR_HORIZ 0x00000e04
5124 #define NV50TCL_SCISSOR_HORIZ_L_SHIFT 0
5125 #define NV50TCL_SCISSOR_HORIZ_L_MASK 0x0000ffff
5126 #define NV50TCL_SCISSOR_HORIZ_R_SHIFT 16
5127 #define NV50TCL_SCISSOR_HORIZ_R_MASK 0xffff0000
5128 #define NV50TCL_SCISSOR_VERT 0x00000e08
5129 #define NV50TCL_SCISSOR_VERT_T_SHIFT 0
5130 #define NV50TCL_SCISSOR_VERT_T_MASK 0x0000ffff
5131 #define NV50TCL_SCISSOR_VERT_B_SHIFT 16
5132 #define NV50TCL_SCISSOR_VERT_B_MASK 0xffff0000
5133 #define NV50TCL_VP_UPLOAD_CONST_ID 0x00000f00
5134 #define NV50TCL_VP_UPLOAD_CONST(x) (0x00000f04+((x)*4))
5135 #define NV50TCL_VP_UPLOAD_CONST__SIZE 0x00000010
5136 #define NV50TCL_STENCIL_FRONT_FUNC_REF 0x00000f54
5137 #define NV50TCL_STENCIL_FRONT_MASK 0x00000f58
5138 #define NV50TCL_STENCIL_FRONT_FUNC_MASK 0x00000f5c
5139 #define NV50TCL_GP_ADDRESS_HIGH 0x00000f70
5140 #define NV50TCL_GP_ADDRESS_LOW 0x00000f74
5141 #define NV50TCL_VP_ADDRESS_HIGH 0x00000f7c
5142 #define NV50TCL_VP_ADDRESS_LOW 0x00000f80
5143 #define NV50TCL_FP_ADDRESS_HIGH 0x00000fa4
5144 #define NV50TCL_FP_ADDRESS_LOW 0x00000fa8
5145 #define NV50TCL_ZETA_ADDRESS_HIGH 0x00000fe0
5146 #define NV50TCL_ZETA_ADDRESS_LOW 0x00000fe4
5147 #define NV50TCL_UNKFF4 0x00000ff4
5148 #define NV50TCL_UNKFF4_W_SHIFT 16
5149 #define NV50TCL_UNKFF4_W_MASK 0xffff0000
5150 #define NV50TCL_UNKFF8 0x00000ff8
5151 #define NV50TCL_UNKFF8_H_SHIFT 16
5152 #define NV50TCL_UNKFF8_H_MASK 0xffff0000
5153 #define NV50TCL_RT_HORIZ(x) (0x00001240+((x)*8))
5154 #define NV50TCL_RT_HORIZ__SIZE 0x00000008
5155 #define NV50TCL_RT_VERT(x) (0x00001244+((x)*8))
5156 #define NV50TCL_RT_VERT__SIZE 0x00000008
5157 #define NV50TCL_DEPTH_TEST_ENABLE 0x000012cc
5158 #define NV50TCL_SHADE_MODEL 0x000012d4
5159 #define NV50TCL_SHADE_MODEL_FLAT 0x00001d00
5160 #define NV50TCL_SHADE_MODEL_SMOOTH 0x00001d01
5161 #define NV50TCL_DEPTH_WRITE_ENABLE 0x000012e8
5162 #define NV50TCL_ALPHA_TEST_ENABLE 0x000012ec
5163 #define NV50TCL_DEPTH_TEST_FUNC 0x0000130c
5164 #define NV50TCL_DEPTH_TEST_FUNC_NEVER 0x00000200
5165 #define NV50TCL_DEPTH_TEST_FUNC_LESS 0x00000201
5166 #define NV50TCL_DEPTH_TEST_FUNC_EQUAL 0x00000202
5167 #define NV50TCL_DEPTH_TEST_FUNC_LEQUAL 0x00000203
5168 #define NV50TCL_DEPTH_TEST_FUNC_GREATER 0x00000204
5169 #define NV50TCL_DEPTH_TEST_FUNC_GREATER 0x00000204
5170 #define NV50TCL_DEPTH_TEST_FUNC_NOTEQUAL 0x00000205
5171 #define NV50TCL_DEPTH_TEST_FUNC_GEQUAL 0x00000206
5172 #define NV50TCL_DEPTH_TEST_FUNC_ALWAYS 0x00000207
5173 #define NV50TCL_ALPHA_TEST_REF 0x00001310
5174 #define NV50TCL_ALPHA_TEST_FUNC 0x00001314
5175 #define NV50TCL_ALPHA_TEST_FUNC_NEVER 0x00000200
5176 #define NV50TCL_ALPHA_TEST_FUNC_LESS 0x00000201
5177 #define NV50TCL_ALPHA_TEST_FUNC_EQUAL 0x00000202
5178 #define NV50TCL_ALPHA_TEST_FUNC_LEQUAL 0x00000203
5179 #define NV50TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
5180 #define NV50TCL_ALPHA_TEST_FUNC_GREATER 0x00000204
5181 #define NV50TCL_ALPHA_TEST_FUNC_NOTEQUAL 0x00000205
5182 #define NV50TCL_ALPHA_TEST_FUNC_GEQUAL 0x00000206
5183 #define NV50TCL_ALPHA_TEST_FUNC_ALWAYS 0x00000207
5184 #define NV50TCL_BLEND_COLOR(x) (0x0000131c+((x)*4))
5185 #define NV50TCL_BLEND_COLOR__SIZE 0x00000004
5186 #define NV50TCL_BLEND_EQUATION_RGB 0x00001340
5187 #define NV50TCL_BLEND_EQUATION_RGB_FUNC_ADD 0x00008006
5188 #define NV50TCL_BLEND_EQUATION_RGB_MIN 0x00008007
5189 #define NV50TCL_BLEND_EQUATION_RGB_MAX 0x00008008
5190 #define NV50TCL_BLEND_EQUATION_RGB_FUNC_SUBTRACT 0x0000800a
5191 #define NV50TCL_BLEND_EQUATION_RGB_FUNC_REVERSE_SUBTRACT 0x0000800b
5192 #define NV50TCL_BLEND_FUNC_SRC_RGB 0x00001344
5193 #define NV50TCL_BLEND_FUNC_SRC_RGB_ZERO 0x00000000
5194 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE 0x00000001
5195 #define NV50TCL_BLEND_FUNC_SRC_RGB_SRC_COLOR 0x00000300
5196 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_COLOR 0x00000301
5197 #define NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA 0x00000302
5198 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
5199 #define NV50TCL_BLEND_FUNC_SRC_RGB_DST_ALPHA 0x00000304
5200 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_ALPHA 0x00000305
5201 #define NV50TCL_BLEND_FUNC_SRC_RGB_DST_COLOR 0x00000306
5202 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_DST_COLOR 0x00000307
5203 #define NV50TCL_BLEND_FUNC_SRC_RGB_SRC_ALPHA_SATURATE 0x00000308
5204 #define NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_COLOR 0x00008001
5205 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
5206 #define NV50TCL_BLEND_FUNC_SRC_RGB_CONSTANT_ALPHA 0x00008003
5207 #define NV50TCL_BLEND_FUNC_SRC_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
5208 #define NV50TCL_BLEND_FUNC_DST_RGB 0x00001348
5209 #define NV50TCL_BLEND_FUNC_DST_RGB_ZERO 0x00000000
5210 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE 0x00000001
5211 #define NV50TCL_BLEND_FUNC_DST_RGB_SRC_COLOR 0x00000300
5212 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_COLOR 0x00000301
5213 #define NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA 0x00000302
5214 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_SRC_ALPHA 0x00000303
5215 #define NV50TCL_BLEND_FUNC_DST_RGB_DST_ALPHA 0x00000304
5216 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_ALPHA 0x00000305
5217 #define NV50TCL_BLEND_FUNC_DST_RGB_DST_COLOR 0x00000306
5218 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_DST_COLOR 0x00000307
5219 #define NV50TCL_BLEND_FUNC_DST_RGB_SRC_ALPHA_SATURATE 0x00000308
5220 #define NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_COLOR 0x00008001
5221 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_COLOR 0x00008002
5222 #define NV50TCL_BLEND_FUNC_DST_RGB_CONSTANT_ALPHA 0x00008003
5223 #define NV50TCL_BLEND_FUNC_DST_RGB_ONE_MINUS_CONSTANT_ALPHA 0x00008004
5224 #define NV50TCL_BLEND_EQUATION_ALPHA 0x0000134c
5225 #define NV50TCL_BLEND_EQUATION_ALPHA_FUNC_ADD 0x00008006
5226 #define NV50TCL_BLEND_EQUATION_ALPHA_MIN 0x00008007
5227 #define NV50TCL_BLEND_EQUATION_ALPHA_MAX 0x00008008
5228 #define NV50TCL_BLEND_EQUATION_ALPHA_FUNC_SUBTRACT 0x0000800a
5229 #define NV50TCL_BLEND_EQUATION_ALPHA_FUNC_REVERSE_SUBTRACT 0x0000800b
5230 #define NV50TCL_BLEND_FUNC_SRC_ALPHA 0x00001350
5231 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ZERO 0x00000000
5232 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE 0x00000001
5233 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_COLOR 0x00000300
5234 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_COLOR 0x00000301
5235 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA 0x00000302
5236 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_SRC_ALPHA 0x00000303
5237 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_ALPHA 0x00000304
5238 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_ALPHA 0x00000305
5239 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_DST_COLOR 0x00000306
5240 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_DST_COLOR 0x00000307
5241 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_SRC_ALPHA_SATURATE 0x00000308
5242 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_COLOR 0x00008001
5243 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x00008002
5244 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_CONSTANT_ALPHA 0x00008003
5245 #define NV50TCL_BLEND_FUNC_SRC_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x00008004
5246 #define NV50TCL_BLEND_FUNC_DST_ALPHA 0x00001358
5247 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ZERO 0x00000000
5248 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE 0x00000001
5249 #define NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_COLOR 0x00000300
5250 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_COLOR 0x00000301
5251 #define NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA 0x00000302
5252 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_SRC_ALPHA 0x00000303
5253 #define NV50TCL_BLEND_FUNC_DST_ALPHA_DST_ALPHA 0x00000304
5254 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_ALPHA 0x00000305
5255 #define NV50TCL_BLEND_FUNC_DST_ALPHA_DST_COLOR 0x00000306
5256 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_DST_COLOR 0x00000307
5257 #define NV50TCL_BLEND_FUNC_DST_ALPHA_SRC_ALPHA_SATURATE 0x00000308
5258 #define NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_COLOR 0x00008001
5259 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_COLOR 0x00008002
5260 #define NV50TCL_BLEND_FUNC_DST_ALPHA_CONSTANT_ALPHA 0x00008003
5261 #define NV50TCL_BLEND_FUNC_DST_ALPHA_ONE_MINUS_CONSTANT_ALPHA 0x00008004
5262 #define NV50TCL_BLEND_ENABLE(x) (0x00001360+((x)*4))
5263 #define NV50TCL_BLEND_ENABLE__SIZE 0x00000008
5264 #define NV50TCL_STENCIL_BACK_ENABLE 0x00001380
5265 #define NV50TCL_STENCIL_BACK_OP_FAIL 0x00001384
5266 #define NV50TCL_STENCIL_BACK_OP_FAIL_ZERO 0x00000000
5267 #define NV50TCL_STENCIL_BACK_OP_FAIL_INVERT 0x0000150a
5268 #define NV50TCL_STENCIL_BACK_OP_FAIL_KEEP 0x00001e00
5269 #define NV50TCL_STENCIL_BACK_OP_FAIL_REPLACE 0x00001e01
5270 #define NV50TCL_STENCIL_BACK_OP_FAIL_INCR 0x00001e02
5271 #define NV50TCL_STENCIL_BACK_OP_FAIL_DECR 0x00001e03
5272 #define NV50TCL_STENCIL_BACK_OP_FAIL_INCR_WRAP 0x00008507
5273 #define NV50TCL_STENCIL_BACK_OP_FAIL_DECR_WRAP 0x00008508
5274 #define NV50TCL_STENCIL_BACK_OP_ZFAIL 0x00001388
5275 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_ZERO 0x00000000
5276 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_INVERT 0x0000150a
5277 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_KEEP 0x00001e00
5278 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_REPLACE 0x00001e01
5279 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR 0x00001e02
5280 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR 0x00001e03
5281 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_INCR_WRAP 0x00008507
5282 #define NV50TCL_STENCIL_BACK_OP_ZFAIL_DECR_WRAP 0x00008508
5283 #define NV50TCL_STENCIL_BACK_OP_ZPASS 0x0000138c
5284 #define NV50TCL_STENCIL_BACK_OP_ZPASS_ZERO 0x00000000
5285 #define NV50TCL_STENCIL_BACK_OP_ZPASS_INVERT 0x0000150a
5286 #define NV50TCL_STENCIL_BACK_OP_ZPASS_KEEP 0x00001e00
5287 #define NV50TCL_STENCIL_BACK_OP_ZPASS_REPLACE 0x00001e01
5288 #define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR 0x00001e02
5289 #define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR 0x00001e03
5290 #define NV50TCL_STENCIL_BACK_OP_ZPASS_INCR_WRAP 0x00008507
5291 #define NV50TCL_STENCIL_BACK_OP_ZPASS_DECR_WRAP 0x00008508
5292 #define NV50TCL_STENCIL_BACK_FUNC_FUNC 0x00001390
5293 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_NEVER 0x00000200
5294 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_LESS 0x00000201
5295 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_EQUAL 0x00000202
5296 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_LEQUAL 0x00000203
5297 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
5298 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_GREATER 0x00000204
5299 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_NOTEQUAL 0x00000205
5300 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_GEQUAL 0x00000206
5301 #define NV50TCL_STENCIL_BACK_FUNC_FUNC_ALWAYS 0x00000207
5302 #define NV50TCL_STENCIL_BACK_FUNC_REF 0x00001394
5303 #define NV50TCL_STENCIL_BACK_MASK 0x00001398
5304 #define NV50TCL_STENCIL_BACK_FUNC_MASK 0x0000139c
5305 #define NV50TCL_LINE_WIDTH 0x000013b0
5306 #define NV50TCL_VP_START_ID 0x0000140c
5307 #define NV50TCL_GP_START_ID 0x00001410
5308 #define NV50TCL_FP_START_ID 0x00001414
5309 #define NV50TCL_POINT_SIZE 0x00001518
5310 #define NV50TCL_TEX_CB0_ADDRESS_HIGH 0x0000155c
5311 #define NV50TCL_TEX_CB0_ADDRESS_LOW 0x00001560
5312 #define NV50TCL_POLYGON_OFFSET_FACTOR 0x0000156c
5313 #define NV50TCL_LINE_SMOOTH_ENABLE 0x00001570
5314 #define NV50TCL_TEX_CB1_ADDRESS_HIGH 0x00001574
5315 #define NV50TCL_TEX_CB1_ADDRESS_LOW 0x00001578
5316 #define NV50TCL_STENCIL_FRONT_ENABLE 0x00001594
5317 #define NV50TCL_STENCIL_FRONT_OP_FAIL 0x00001598
5318 #define NV50TCL_STENCIL_FRONT_OP_FAIL_ZERO 0x00000000
5319 #define NV50TCL_STENCIL_FRONT_OP_FAIL_INVERT 0x0000150a
5320 #define NV50TCL_STENCIL_FRONT_OP_FAIL_KEEP 0x00001e00
5321 #define NV50TCL_STENCIL_FRONT_OP_FAIL_REPLACE 0x00001e01
5322 #define NV50TCL_STENCIL_FRONT_OP_FAIL_INCR 0x00001e02
5323 #define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR 0x00001e03
5324 #define NV50TCL_STENCIL_FRONT_OP_FAIL_INCR_WRAP 0x00008507
5325 #define NV50TCL_STENCIL_FRONT_OP_FAIL_DECR_WRAP 0x00008508
5326 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL 0x0000159c
5327 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_ZERO 0x00000000
5328 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INVERT 0x0000150a
5329 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_KEEP 0x00001e00
5330 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_REPLACE 0x00001e01
5331 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INCR 0x00001e02
5332 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR 0x00001e03
5333 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_INCR_WRAP 0x00008507
5334 #define NV50TCL_STENCIL_FRONT_OP_ZFAIL_DECR_WRAP 0x00008508
5335 #define NV50TCL_STENCIL_FRONT_OP_ZPASS 0x000015a0
5336 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_ZERO 0x00000000
5337 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_INVERT 0x0000150a
5338 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_KEEP 0x00001e00
5339 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_REPLACE 0x00001e01
5340 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_INCR 0x00001e02
5341 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR 0x00001e03
5342 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_INCR_WRAP 0x00008507
5343 #define NV50TCL_STENCIL_FRONT_OP_ZPASS_DECR_WRAP 0x00008508
5344 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC 0x000015a4
5345 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NEVER 0x00000200
5346 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LESS 0x00000201
5347 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_EQUAL 0x00000202
5348 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_LEQUAL 0x00000203
5349 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
5350 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GREATER 0x00000204
5351 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_NOTEQUAL 0x00000205
5352 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_GEQUAL 0x00000206
5353 #define NV50TCL_STENCIL_FRONT_FUNC_FUNC_ALWAYS 0x00000207
5354 #define NV50TCL_POLYGON_OFFSET_UNITS 0x000015bc
5355 #define NV50TCL_VERTEX_BEGIN 0x000015dc
5356 #define NV50TCL_VERTEX_BEGIN_POINTS 0x00000000
5357 #define NV50TCL_VERTEX_BEGIN_LINES 0x00000001
5358 #define NV50TCL_VERTEX_BEGIN_LINE_LOOP 0x00000002
5359 #define NV50TCL_VERTEX_BEGIN_LINE_STRIP 0x00000003
5360 #define NV50TCL_VERTEX_BEGIN_TRIANGLES 0x00000004
5361 #define NV50TCL_VERTEX_BEGIN_TRIANGLE_STRIP 0x00000005
5362 #define NV50TCL_VERTEX_BEGIN_TRIANGLE_FAN 0x00000006
5363 #define NV50TCL_VERTEX_BEGIN_QUADS 0x00000007
5364 #define NV50TCL_VERTEX_BEGIN_QUAD_STRIP 0x00000008
5365 #define NV50TCL_VERTEX_BEGIN_POLYGON 0x00000009
5366 #define NV50TCL_VERTEX_END 0x000015e0
5367 #define NV50TCL_VERTEX_DATA 0x00001640
5368 #define NV50TCL_VP_ATTR_EN_0 0x00001650
5369 #define NV50TCL_VP_ATTR_EN_0_7_SHIFT 28
5370 #define NV50TCL_VP_ATTR_EN_0_7_MASK 0xf0000000
5371 #define NV50TCL_VP_ATTR_EN_0_7_NONE 0x00000000
5372 #define NV50TCL_VP_ATTR_EN_0_7_XNNN 0x10000000
5373 #define NV50TCL_VP_ATTR_EN_0_7_NYNN 0x20000000
5374 #define NV50TCL_VP_ATTR_EN_0_7_XYNN 0x30000000
5375 #define NV50TCL_VP_ATTR_EN_0_7_NNZN 0x40000000
5376 #define NV50TCL_VP_ATTR_EN_0_7_XNZN 0x50000000
5377 #define NV50TCL_VP_ATTR_EN_0_7_NYZN 0x60000000
5378 #define NV50TCL_VP_ATTR_EN_0_7_XYZN 0x70000000
5379 #define NV50TCL_VP_ATTR_EN_0_7_NNNW 0x80000000
5380 #define NV50TCL_VP_ATTR_EN_0_7_XNNW 0x90000000
5381 #define NV50TCL_VP_ATTR_EN_0_7_NYNW 0xa0000000
5382 #define NV50TCL_VP_ATTR_EN_0_7_XYNW 0xb0000000
5383 #define NV50TCL_VP_ATTR_EN_0_7_NNZW 0xc0000000
5384 #define NV50TCL_VP_ATTR_EN_0_7_XNZW 0xd0000000
5385 #define NV50TCL_VP_ATTR_EN_0_7_NYZW 0xe0000000
5386 #define NV50TCL_VP_ATTR_EN_0_7_XYZW 0xf0000000
5387 #define NV50TCL_VP_ATTR_EN_0_6_SHIFT 24
5388 #define NV50TCL_VP_ATTR_EN_0_6_MASK 0x0f000000
5389 #define NV50TCL_VP_ATTR_EN_0_6_NONE 0x00000000
5390 #define NV50TCL_VP_ATTR_EN_0_6_XNNN 0x01000000
5391 #define NV50TCL_VP_ATTR_EN_0_6_NYNN 0x02000000
5392 #define NV50TCL_VP_ATTR_EN_0_6_XYNN 0x03000000
5393 #define NV50TCL_VP_ATTR_EN_0_6_NNZN 0x04000000
5394 #define NV50TCL_VP_ATTR_EN_0_6_XNZN 0x05000000
5395 #define NV50TCL_VP_ATTR_EN_0_6_NYZN 0x06000000
5396 #define NV50TCL_VP_ATTR_EN_0_6_XYZN 0x07000000
5397 #define NV50TCL_VP_ATTR_EN_0_6_NNNW 0x08000000
5398 #define NV50TCL_VP_ATTR_EN_0_6_XNNW 0x09000000
5399 #define NV50TCL_VP_ATTR_EN_0_6_NYNW 0x0a000000
5400 #define NV50TCL_VP_ATTR_EN_0_6_XYNW 0x0b000000
5401 #define NV50TCL_VP_ATTR_EN_0_6_NNZW 0x0c000000
5402 #define NV50TCL_VP_ATTR_EN_0_6_XNZW 0x0d000000
5403 #define NV50TCL_VP_ATTR_EN_0_6_NYZW 0x0e000000
5404 #define NV50TCL_VP_ATTR_EN_0_6_XYZW 0x0f000000
5405 #define NV50TCL_VP_ATTR_EN_0_5_SHIFT 20
5406 #define NV50TCL_VP_ATTR_EN_0_5_MASK 0x00f00000
5407 #define NV50TCL_VP_ATTR_EN_0_5_NONE 0x00000000
5408 #define NV50TCL_VP_ATTR_EN_0_5_XNNN 0x00100000
5409 #define NV50TCL_VP_ATTR_EN_0_5_NYNN 0x00200000
5410 #define NV50TCL_VP_ATTR_EN_0_5_XYNN 0x00300000
5411 #define NV50TCL_VP_ATTR_EN_0_5_NNZN 0x00400000
5412 #define NV50TCL_VP_ATTR_EN_0_5_XNZN 0x00500000
5413 #define NV50TCL_VP_ATTR_EN_0_5_NYZN 0x00600000
5414 #define NV50TCL_VP_ATTR_EN_0_5_XYZN 0x00700000
5415 #define NV50TCL_VP_ATTR_EN_0_5_NNNW 0x00800000
5416 #define NV50TCL_VP_ATTR_EN_0_5_XNNW 0x00900000
5417 #define NV50TCL_VP_ATTR_EN_0_5_NYNW 0x00a00000
5418 #define NV50TCL_VP_ATTR_EN_0_5_XYNW 0x00b00000
5419 #define NV50TCL_VP_ATTR_EN_0_5_NNZW 0x00c00000
5420 #define NV50TCL_VP_ATTR_EN_0_5_XNZW 0x00d00000
5421 #define NV50TCL_VP_ATTR_EN_0_5_NYZW 0x00e00000
5422 #define NV50TCL_VP_ATTR_EN_0_5_XYZW 0x00f00000
5423 #define NV50TCL_VP_ATTR_EN_0_4_SHIFT 16
5424 #define NV50TCL_VP_ATTR_EN_0_4_MASK 0x000f0000
5425 #define NV50TCL_VP_ATTR_EN_0_4_NONE 0x00000000
5426 #define NV50TCL_VP_ATTR_EN_0_4_XNNN 0x00010000
5427 #define NV50TCL_VP_ATTR_EN_0_4_NYNN 0x00020000
5428 #define NV50TCL_VP_ATTR_EN_0_4_XYNN 0x00030000
5429 #define NV50TCL_VP_ATTR_EN_0_4_NNZN 0x00040000
5430 #define NV50TCL_VP_ATTR_EN_0_4_XNZN 0x00050000
5431 #define NV50TCL_VP_ATTR_EN_0_4_NYZN 0x00060000
5432 #define NV50TCL_VP_ATTR_EN_0_4_XYZN 0x00070000
5433 #define NV50TCL_VP_ATTR_EN_0_4_NNNW 0x00080000
5434 #define NV50TCL_VP_ATTR_EN_0_4_XNNW 0x00090000
5435 #define NV50TCL_VP_ATTR_EN_0_4_NYNW 0x000a0000
5436 #define NV50TCL_VP_ATTR_EN_0_4_XYNW 0x000b0000
5437 #define NV50TCL_VP_ATTR_EN_0_4_NNZW 0x000c0000
5438 #define NV50TCL_VP_ATTR_EN_0_4_XNZW 0x000d0000
5439 #define NV50TCL_VP_ATTR_EN_0_4_NYZW 0x000e0000
5440 #define NV50TCL_VP_ATTR_EN_0_4_XYZW 0x000f0000
5441 #define NV50TCL_VP_ATTR_EN_0_3_SHIFT 12
5442 #define NV50TCL_VP_ATTR_EN_0_3_MASK 0x0000f000
5443 #define NV50TCL_VP_ATTR_EN_0_3_NONE 0x00000000
5444 #define NV50TCL_VP_ATTR_EN_0_3_XNNN 0x00001000
5445 #define NV50TCL_VP_ATTR_EN_0_3_NYNN 0x00002000
5446 #define NV50TCL_VP_ATTR_EN_0_3_XYNN 0x00003000
5447 #define NV50TCL_VP_ATTR_EN_0_3_NNZN 0x00004000
5448 #define NV50TCL_VP_ATTR_EN_0_3_XNZN 0x00005000
5449 #define NV50TCL_VP_ATTR_EN_0_3_NYZN 0x00006000
5450 #define NV50TCL_VP_ATTR_EN_0_3_XYZN 0x00007000
5451 #define NV50TCL_VP_ATTR_EN_0_3_NNNW 0x00008000
5452 #define NV50TCL_VP_ATTR_EN_0_3_XNNW 0x00009000
5453 #define NV50TCL_VP_ATTR_EN_0_3_NYNW 0x0000a000
5454 #define NV50TCL_VP_ATTR_EN_0_3_XYNW 0x0000b000
5455 #define NV50TCL_VP_ATTR_EN_0_3_NNZW 0x0000c000
5456 #define NV50TCL_VP_ATTR_EN_0_3_XNZW 0x0000d000
5457 #define NV50TCL_VP_ATTR_EN_0_3_NYZW 0x0000e000
5458 #define NV50TCL_VP_ATTR_EN_0_3_XYZW 0x0000f000
5459 #define NV50TCL_VP_ATTR_EN_0_2_SHIFT 8
5460 #define NV50TCL_VP_ATTR_EN_0_2_MASK 0x00000f00
5461 #define NV50TCL_VP_ATTR_EN_0_2_NONE 0x00000000
5462 #define NV50TCL_VP_ATTR_EN_0_2_XNNN 0x00000100
5463 #define NV50TCL_VP_ATTR_EN_0_2_NYNN 0x00000200
5464 #define NV50TCL_VP_ATTR_EN_0_2_XYNN 0x00000300
5465 #define NV50TCL_VP_ATTR_EN_0_2_NNZN 0x00000400
5466 #define NV50TCL_VP_ATTR_EN_0_2_XNZN 0x00000500
5467 #define NV50TCL_VP_ATTR_EN_0_2_NYZN 0x00000600
5468 #define NV50TCL_VP_ATTR_EN_0_2_XYZN 0x00000700
5469 #define NV50TCL_VP_ATTR_EN_0_2_NNNW 0x00000800
5470 #define NV50TCL_VP_ATTR_EN_0_2_XNNW 0x00000900
5471 #define NV50TCL_VP_ATTR_EN_0_2_NYNW 0x00000a00
5472 #define NV50TCL_VP_ATTR_EN_0_2_XYNW 0x00000b00
5473 #define NV50TCL_VP_ATTR_EN_0_2_NNZW 0x00000c00
5474 #define NV50TCL_VP_ATTR_EN_0_2_XNZW 0x00000d00
5475 #define NV50TCL_VP_ATTR_EN_0_2_NYZW 0x00000e00
5476 #define NV50TCL_VP_ATTR_EN_0_2_XYZW 0x00000f00
5477 #define NV50TCL_VP_ATTR_EN_0_1_SHIFT 4
5478 #define NV50TCL_VP_ATTR_EN_0_1_MASK 0x000000f0
5479 #define NV50TCL_VP_ATTR_EN_0_1_NONE 0x00000000
5480 #define NV50TCL_VP_ATTR_EN_0_1_XNNN 0x00000010
5481 #define NV50TCL_VP_ATTR_EN_0_1_NYNN 0x00000020
5482 #define NV50TCL_VP_ATTR_EN_0_1_XYNN 0x00000030
5483 #define NV50TCL_VP_ATTR_EN_0_1_NNZN 0x00000040
5484 #define NV50TCL_VP_ATTR_EN_0_1_XNZN 0x00000050
5485 #define NV50TCL_VP_ATTR_EN_0_1_NYZN 0x00000060
5486 #define NV50TCL_VP_ATTR_EN_0_1_XYZN 0x00000070
5487 #define NV50TCL_VP_ATTR_EN_0_1_NNNW 0x00000080
5488 #define NV50TCL_VP_ATTR_EN_0_1_XNNW 0x00000090
5489 #define NV50TCL_VP_ATTR_EN_0_1_NYNW 0x000000a0
5490 #define NV50TCL_VP_ATTR_EN_0_1_XYNW 0x000000b0
5491 #define NV50TCL_VP_ATTR_EN_0_1_NNZW 0x000000c0
5492 #define NV50TCL_VP_ATTR_EN_0_1_XNZW 0x000000d0
5493 #define NV50TCL_VP_ATTR_EN_0_1_NYZW 0x000000e0
5494 #define NV50TCL_VP_ATTR_EN_0_1_XYZW 0x000000f0
5495 #define NV50TCL_VP_ATTR_EN_0_0_SHIFT 0
5496 #define NV50TCL_VP_ATTR_EN_0_0_MASK 0x0000000f
5497 #define NV50TCL_VP_ATTR_EN_0_0_NONE 0x00000000
5498 #define NV50TCL_VP_ATTR_EN_0_0_XNNN 0x00000001
5499 #define NV50TCL_VP_ATTR_EN_0_0_NYNN 0x00000002
5500 #define NV50TCL_VP_ATTR_EN_0_0_XYNN 0x00000003
5501 #define NV50TCL_VP_ATTR_EN_0_0_NNZN 0x00000004
5502 #define NV50TCL_VP_ATTR_EN_0_0_XNZN 0x00000005
5503 #define NV50TCL_VP_ATTR_EN_0_0_NYZN 0x00000006
5504 #define NV50TCL_VP_ATTR_EN_0_0_XYZN 0x00000007
5505 #define NV50TCL_VP_ATTR_EN_0_0_NNNW 0x00000008
5506 #define NV50TCL_VP_ATTR_EN_0_0_XNNW 0x00000009
5507 #define NV50TCL_VP_ATTR_EN_0_0_NYNW 0x0000000a
5508 #define NV50TCL_VP_ATTR_EN_0_0_XYNW 0x0000000b
5509 #define NV50TCL_VP_ATTR_EN_0_0_NNZW 0x0000000c
5510 #define NV50TCL_VP_ATTR_EN_0_0_XNZW 0x0000000d
5511 #define NV50TCL_VP_ATTR_EN_0_0_NYZW 0x0000000e
5512 #define NV50TCL_VP_ATTR_EN_0_0_XYZW 0x0000000f
5513 #define NV50TCL_VP_ATTR_EN_1 0x00001654
5514 #define NV50TCL_VP_ATTR_EN_1_15_SHIFT 28
5515 #define NV50TCL_VP_ATTR_EN_1_15_MASK 0xf0000000
5516 #define NV50TCL_VP_ATTR_EN_1_15_NONE 0x00000000
5517 #define NV50TCL_VP_ATTR_EN_1_15_XNNN 0x10000000
5518 #define NV50TCL_VP_ATTR_EN_1_15_NYNN 0x20000000
5519 #define NV50TCL_VP_ATTR_EN_1_15_XYNN 0x30000000
5520 #define NV50TCL_VP_ATTR_EN_1_15_NNZN 0x40000000
5521 #define NV50TCL_VP_ATTR_EN_1_15_XNZN 0x50000000
5522 #define NV50TCL_VP_ATTR_EN_1_15_NYZN 0x60000000
5523 #define NV50TCL_VP_ATTR_EN_1_15_XYZN 0x70000000
5524 #define NV50TCL_VP_ATTR_EN_1_15_NNNW 0x80000000
5525 #define NV50TCL_VP_ATTR_EN_1_15_XNNW 0x90000000
5526 #define NV50TCL_VP_ATTR_EN_1_15_NYNW 0xa0000000
5527 #define NV50TCL_VP_ATTR_EN_1_15_XYNW 0xb0000000
5528 #define NV50TCL_VP_ATTR_EN_1_15_NNZW 0xc0000000
5529 #define NV50TCL_VP_ATTR_EN_1_15_XNZW 0xd0000000
5530 #define NV50TCL_VP_ATTR_EN_1_15_NYZW 0xe0000000
5531 #define NV50TCL_VP_ATTR_EN_1_15_XYZW 0xf0000000
5532 #define NV50TCL_VP_ATTR_EN_1_14_SHIFT 24
5533 #define NV50TCL_VP_ATTR_EN_1_14_MASK 0x0f000000
5534 #define NV50TCL_VP_ATTR_EN_1_14_NONE 0x00000000
5535 #define NV50TCL_VP_ATTR_EN_1_14_XNNN 0x01000000
5536 #define NV50TCL_VP_ATTR_EN_1_14_NYNN 0x02000000
5537 #define NV50TCL_VP_ATTR_EN_1_14_XYNN 0x03000000
5538 #define NV50TCL_VP_ATTR_EN_1_14_NNZN 0x04000000
5539 #define NV50TCL_VP_ATTR_EN_1_14_XNZN 0x05000000
5540 #define NV50TCL_VP_ATTR_EN_1_14_NYZN 0x06000000
5541 #define NV50TCL_VP_ATTR_EN_1_14_XYZN 0x07000000
5542 #define NV50TCL_VP_ATTR_EN_1_14_NNNW 0x08000000
5543 #define NV50TCL_VP_ATTR_EN_1_14_XNNW 0x09000000
5544 #define NV50TCL_VP_ATTR_EN_1_14_NYNW 0x0a000000
5545 #define NV50TCL_VP_ATTR_EN_1_14_XYNW 0x0b000000
5546 #define NV50TCL_VP_ATTR_EN_1_14_NNZW 0x0c000000
5547 #define NV50TCL_VP_ATTR_EN_1_14_XNZW 0x0d000000
5548 #define NV50TCL_VP_ATTR_EN_1_14_NYZW 0x0e000000
5549 #define NV50TCL_VP_ATTR_EN_1_14_XYZW 0x0f000000
5550 #define NV50TCL_VP_ATTR_EN_1_13_SHIFT 20
5551 #define NV50TCL_VP_ATTR_EN_1_13_MASK 0x00f00000
5552 #define NV50TCL_VP_ATTR_EN_1_13_NONE 0x00000000
5553 #define NV50TCL_VP_ATTR_EN_1_13_XNNN 0x00100000
5554 #define NV50TCL_VP_ATTR_EN_1_13_NYNN 0x00200000
5555 #define NV50TCL_VP_ATTR_EN_1_13_XYNN 0x00300000
5556 #define NV50TCL_VP_ATTR_EN_1_13_NNZN 0x00400000
5557 #define NV50TCL_VP_ATTR_EN_1_13_XNZN 0x00500000
5558 #define NV50TCL_VP_ATTR_EN_1_13_NYZN 0x00600000
5559 #define NV50TCL_VP_ATTR_EN_1_13_XYZN 0x00700000
5560 #define NV50TCL_VP_ATTR_EN_1_13_NNNW 0x00800000
5561 #define NV50TCL_VP_ATTR_EN_1_13_XNNW 0x00900000
5562 #define NV50TCL_VP_ATTR_EN_1_13_NYNW 0x00a00000
5563 #define NV50TCL_VP_ATTR_EN_1_13_XYNW 0x00b00000
5564 #define NV50TCL_VP_ATTR_EN_1_13_NNZW 0x00c00000
5565 #define NV50TCL_VP_ATTR_EN_1_13_XNZW 0x00d00000
5566 #define NV50TCL_VP_ATTR_EN_1_13_NYZW 0x00e00000
5567 #define NV50TCL_VP_ATTR_EN_1_13_XYZW 0x00f00000
5568 #define NV50TCL_VP_ATTR_EN_1_12_SHIFT 16
5569 #define NV50TCL_VP_ATTR_EN_1_12_MASK 0x000f0000
5570 #define NV50TCL_VP_ATTR_EN_1_12_NONE 0x00000000
5571 #define NV50TCL_VP_ATTR_EN_1_12_XNNN 0x00010000
5572 #define NV50TCL_VP_ATTR_EN_1_12_NYNN 0x00020000
5573 #define NV50TCL_VP_ATTR_EN_1_12_XYNN 0x00030000
5574 #define NV50TCL_VP_ATTR_EN_1_12_NNZN 0x00040000
5575 #define NV50TCL_VP_ATTR_EN_1_12_XNZN 0x00050000
5576 #define NV50TCL_VP_ATTR_EN_1_12_NYZN 0x00060000
5577 #define NV50TCL_VP_ATTR_EN_1_12_XYZN 0x00070000
5578 #define NV50TCL_VP_ATTR_EN_1_12_NNNW 0x00080000
5579 #define NV50TCL_VP_ATTR_EN_1_12_XNNW 0x00090000
5580 #define NV50TCL_VP_ATTR_EN_1_12_NYNW 0x000a0000
5581 #define NV50TCL_VP_ATTR_EN_1_12_XYNW 0x000b0000
5582 #define NV50TCL_VP_ATTR_EN_1_12_NNZW 0x000c0000
5583 #define NV50TCL_VP_ATTR_EN_1_12_XNZW 0x000d0000
5584 #define NV50TCL_VP_ATTR_EN_1_12_NYZW 0x000e0000
5585 #define NV50TCL_VP_ATTR_EN_1_12_XYZW 0x000f0000
5586 #define NV50TCL_VP_ATTR_EN_1_11_SHIFT 12
5587 #define NV50TCL_VP_ATTR_EN_1_11_MASK 0x0000f000
5588 #define NV50TCL_VP_ATTR_EN_1_11_NONE 0x00000000
5589 #define NV50TCL_VP_ATTR_EN_1_11_XNNN 0x00001000
5590 #define NV50TCL_VP_ATTR_EN_1_11_NYNN 0x00002000
5591 #define NV50TCL_VP_ATTR_EN_1_11_XYNN 0x00003000
5592 #define NV50TCL_VP_ATTR_EN_1_11_NNZN 0x00004000
5593 #define NV50TCL_VP_ATTR_EN_1_11_XNZN 0x00005000
5594 #define NV50TCL_VP_ATTR_EN_1_11_NYZN 0x00006000
5595 #define NV50TCL_VP_ATTR_EN_1_11_XYZN 0x00007000
5596 #define NV50TCL_VP_ATTR_EN_1_11_NNNW 0x00008000
5597 #define NV50TCL_VP_ATTR_EN_1_11_XNNW 0x00009000
5598 #define NV50TCL_VP_ATTR_EN_1_11_NYNW 0x0000a000
5599 #define NV50TCL_VP_ATTR_EN_1_11_XYNW 0x0000b000
5600 #define NV50TCL_VP_ATTR_EN_1_11_NNZW 0x0000c000
5601 #define NV50TCL_VP_ATTR_EN_1_11_XNZW 0x0000d000
5602 #define NV50TCL_VP_ATTR_EN_1_11_NYZW 0x0000e000
5603 #define NV50TCL_VP_ATTR_EN_1_11_XYZW 0x0000f000
5604 #define NV50TCL_VP_ATTR_EN_1_10_SHIFT 8
5605 #define NV50TCL_VP_ATTR_EN_1_10_MASK 0x00000f00
5606 #define NV50TCL_VP_ATTR_EN_1_10_NONE 0x00000000
5607 #define NV50TCL_VP_ATTR_EN_1_10_XNNN 0x00000100
5608 #define NV50TCL_VP_ATTR_EN_1_10_NYNN 0x00000200
5609 #define NV50TCL_VP_ATTR_EN_1_10_XYNN 0x00000300
5610 #define NV50TCL_VP_ATTR_EN_1_10_NNZN 0x00000400
5611 #define NV50TCL_VP_ATTR_EN_1_10_XNZN 0x00000500
5612 #define NV50TCL_VP_ATTR_EN_1_10_NYZN 0x00000600
5613 #define NV50TCL_VP_ATTR_EN_1_10_XYZN 0x00000700
5614 #define NV50TCL_VP_ATTR_EN_1_10_NNNW 0x00000800
5615 #define NV50TCL_VP_ATTR_EN_1_10_XNNW 0x00000900
5616 #define NV50TCL_VP_ATTR_EN_1_10_NYNW 0x00000a00
5617 #define NV50TCL_VP_ATTR_EN_1_10_XYNW 0x00000b00
5618 #define NV50TCL_VP_ATTR_EN_1_10_NNZW 0x00000c00
5619 #define NV50TCL_VP_ATTR_EN_1_10_XNZW 0x00000d00
5620 #define NV50TCL_VP_ATTR_EN_1_10_NYZW 0x00000e00
5621 #define NV50TCL_VP_ATTR_EN_1_10_XYZW 0x00000f00
5622 #define NV50TCL_VP_ATTR_EN_1_9_SHIFT 4
5623 #define NV50TCL_VP_ATTR_EN_1_9_MASK 0x000000f0
5624 #define NV50TCL_VP_ATTR_EN_1_9_NONE 0x00000000
5625 #define NV50TCL_VP_ATTR_EN_1_9_XNNN 0x00000010
5626 #define NV50TCL_VP_ATTR_EN_1_9_NYNN 0x00000020
5627 #define NV50TCL_VP_ATTR_EN_1_9_XYNN 0x00000030
5628 #define NV50TCL_VP_ATTR_EN_1_9_NNZN 0x00000040
5629 #define NV50TCL_VP_ATTR_EN_1_9_XNZN 0x00000050
5630 #define NV50TCL_VP_ATTR_EN_1_9_NYZN 0x00000060
5631 #define NV50TCL_VP_ATTR_EN_1_9_XYZN 0x00000070
5632 #define NV50TCL_VP_ATTR_EN_1_9_NNNW 0x00000080
5633 #define NV50TCL_VP_ATTR_EN_1_9_XNNW 0x00000090
5634 #define NV50TCL_VP_ATTR_EN_1_9_NYNW 0x000000a0
5635 #define NV50TCL_VP_ATTR_EN_1_9_XYNW 0x000000b0
5636 #define NV50TCL_VP_ATTR_EN_1_9_NNZW 0x000000c0
5637 #define NV50TCL_VP_ATTR_EN_1_9_XNZW 0x000000d0
5638 #define NV50TCL_VP_ATTR_EN_1_9_NYZW 0x000000e0
5639 #define NV50TCL_VP_ATTR_EN_1_9_XYZW 0x000000f0
5640 #define NV50TCL_VP_ATTR_EN_1_8_SHIFT 0
5641 #define NV50TCL_VP_ATTR_EN_1_8_MASK 0x0000000f
5642 #define NV50TCL_VP_ATTR_EN_1_8_NONE 0x00000000
5643 #define NV50TCL_VP_ATTR_EN_1_8_XNNN 0x00000001
5644 #define NV50TCL_VP_ATTR_EN_1_8_NYNN 0x00000002
5645 #define NV50TCL_VP_ATTR_EN_1_8_XYNN 0x00000003
5646 #define NV50TCL_VP_ATTR_EN_1_8_NNZN 0x00000004
5647 #define NV50TCL_VP_ATTR_EN_1_8_XNZN 0x00000005
5648 #define NV50TCL_VP_ATTR_EN_1_8_NYZN 0x00000006
5649 #define NV50TCL_VP_ATTR_EN_1_8_XYZN 0x00000007
5650 #define NV50TCL_VP_ATTR_EN_1_8_NNNW 0x00000008
5651 #define NV50TCL_VP_ATTR_EN_1_8_XNNW 0x00000009
5652 #define NV50TCL_VP_ATTR_EN_1_8_NYNW 0x0000000a
5653 #define NV50TCL_VP_ATTR_EN_1_8_XYNW 0x0000000b
5654 #define NV50TCL_VP_ATTR_EN_1_8_NNZW 0x0000000c
5655 #define NV50TCL_VP_ATTR_EN_1_8_XNZW 0x0000000d
5656 #define NV50TCL_VP_ATTR_EN_1_8_NYZW 0x0000000e
5657 #define NV50TCL_VP_ATTR_EN_1_8_XYZW 0x0000000f
5658 #define NV50TCL_LINE_STIPPLE_ENABLE 0x0000166c
5659 #define NV50TCL_LINE_STIPPLE_PATTERN 0x00001680
5660 #define NV50TCL_POLYGON_STIPPLE_ENABLE 0x0000168c
5661 #define NV50TCL_VP_REG_HPOS 0x000016bc
5662 #define NV50TCL_VP_REG_HPOS_X_SHIFT 0
5663 #define NV50TCL_VP_REG_HPOS_X_MASK 0x000000ff
5664 #define NV50TCL_VP_REG_HPOS_Y_SHIFT 8
5665 #define NV50TCL_VP_REG_HPOS_Y_MASK 0x0000ff00
5666 #define NV50TCL_VP_REG_HPOS_Z_SHIFT 16
5667 #define NV50TCL_VP_REG_HPOS_Z_MASK 0x00ff0000
5668 #define NV50TCL_VP_REG_HPOS_W_SHIFT 24
5669 #define NV50TCL_VP_REG_HPOS_W_MASK 0xff000000
5670 #define NV50TCL_VP_REG_COL0 0x000016c0
5671 #define NV50TCL_VP_REG_COL0_X_SHIFT 0
5672 #define NV50TCL_VP_REG_COL0_X_MASK 0x000000ff
5673 #define NV50TCL_VP_REG_COL0_Y_SHIFT 8
5674 #define NV50TCL_VP_REG_COL0_Y_MASK 0x0000ff00
5675 #define NV50TCL_VP_REG_COL0_Z_SHIFT 16
5676 #define NV50TCL_VP_REG_COL0_Z_MASK 0x00ff0000
5677 #define NV50TCL_VP_REG_COL0_W_SHIFT 24
5678 #define NV50TCL_VP_REG_COL0_W_MASK 0xff000000
5679 #define NV50TCL_POLYGON_STIPPLE_PATTERN(x) (0x00001700+((x)*4))
5680 #define NV50TCL_POLYGON_STIPPLE_PATTERN__SIZE 0x00000020
5681 #define NV50TCL_CULL_FACE_ENABLE 0x00001918
5682 #define NV50TCL_FRONT_FACE 0x0000191c
5683 #define NV50TCL_FRONT_FACE_CW 0x00000900
5684 #define NV50TCL_FRONT_FACE_CCW 0x00000901
5685 #define NV50TCL_CULL_FACE 0x00001920
5686 #define NV50TCL_CULL_FACE_FRONT 0x00000404
5687 #define NV50TCL_CULL_FACE_BACK 0x00000405
5688 #define NV50TCL_CULL_FACE_FRONT_AND_BACK 0x00000408
5689 #define NV50TCL_LOGIC_OP_ENABLE 0x000019c4
5690 #define NV50TCL_LOGIC_OP 0x000019c8
5691 #define NV50TCL_LOGIC_OP_CLEAR 0x00001500
5692 #define NV50TCL_LOGIC_OP_AND 0x00001501
5693 #define NV50TCL_LOGIC_OP_AND_REVERSE 0x00001502
5694 #define NV50TCL_LOGIC_OP_COPY 0x00001503
5695 #define NV50TCL_LOGIC_OP_AND_INVERTED 0x00001504
5696 #define NV50TCL_LOGIC_OP_NOOP 0x00001505
5697 #define NV50TCL_LOGIC_OP_XOR 0x00001506
5698 #define NV50TCL_LOGIC_OP_OR 0x00001507
5699 #define NV50TCL_LOGIC_OP_NOR 0x00001508
5700 #define NV50TCL_LOGIC_OP_EQUIV 0x00001509
5701 #define NV50TCL_LOGIC_OP_INVERT 0x0000150a
5702 #define NV50TCL_LOGIC_OP_OR_REVERSE 0x0000150b
5703 #define NV50TCL_LOGIC_OP_COPY_INVERTED 0x0000150c
5704 #define NV50TCL_LOGIC_OP_OR_INVERTED 0x0000150d
5705 #define NV50TCL_LOGIC_OP_NAND 0x0000150e
5706 #define NV50TCL_LOGIC_OP_SET 0x0000150f
5707 #define NV50TCL_CLEAR_BUFFERS 0x000019d0
5708 #define NV50TCL_COLOR_MASK(x) (0x00001a00+((x)*4))
5709 #define NV50TCL_COLOR_MASK__SIZE 0x00000008
5712 #define NV54TCL 0x00008297
5716 #endif /* NOUVEAU_REG_H */