• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*******************************************************************************
2     Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved.
3 
4     Permission is hereby granted, free of charge, to any person obtaining a
5     copy of this software and associated documentation files (the "Software"),
6     to deal in the Software without restriction, including without limitation
7     the rights to use, copy, modify, merge, publish, distribute, sublicense,
8     and/or sell copies of the Software, and to permit persons to whom the
9     Software is furnished to do so, subject to the following conditions:
10 
11     The above copyright notice and this permission notice shall be included in
12     all copies or substantial portions of the Software.
13 
14     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15     IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16     FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17     THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18     LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20     DEALINGS IN THE SOFTWARE.
21 
22 *******************************************************************************/
23 
24 #ifndef _cl_turing_a_h_
25 #define _cl_turing_a_h_
26 
27 /* AUTO GENERATED FILE -- DO NOT EDIT */
28 /* Command: ../../../../class/bin/sw_header.pl turing_a */
29 
30 #include "nvtypes.h"
31 
32 #define TURING_A    0xC597
33 
34 #define NVC597_SET_OBJECT                                                                                  0x0000
35 #define NVC597_SET_OBJECT_CLASS_ID                                                                           15:0
36 #define NVC597_SET_OBJECT_ENGINE_ID                                                                         20:16
37 
38 #define NVC597_NO_OPERATION                                                                                0x0100
39 #define NVC597_NO_OPERATION_V                                                                                31:0
40 
41 #define NVC597_SET_NOTIFY_A                                                                                0x0104
42 #define NVC597_SET_NOTIFY_A_ADDRESS_UPPER                                                                     7:0
43 
44 #define NVC597_SET_NOTIFY_B                                                                                0x0108
45 #define NVC597_SET_NOTIFY_B_ADDRESS_LOWER                                                                    31:0
46 
47 #define NVC597_NOTIFY                                                                                      0x010c
48 #define NVC597_NOTIFY_TYPE                                                                                   31:0
49 #define NVC597_NOTIFY_TYPE_WRITE_ONLY                                                                  0x00000000
50 #define NVC597_NOTIFY_TYPE_WRITE_THEN_AWAKEN                                                           0x00000001
51 
52 #define NVC597_WAIT_FOR_IDLE                                                                               0x0110
53 #define NVC597_WAIT_FOR_IDLE_V                                                                               31:0
54 
55 #define NVC597_LOAD_MME_INSTRUCTION_RAM_POINTER                                                            0x0114
56 #define NVC597_LOAD_MME_INSTRUCTION_RAM_POINTER_V                                                            31:0
57 
58 #define NVC597_LOAD_MME_INSTRUCTION_RAM                                                                    0x0118
59 #define NVC597_LOAD_MME_INSTRUCTION_RAM_V                                                                    31:0
60 
61 #define NVC597_LOAD_MME_START_ADDRESS_RAM_POINTER                                                          0x011c
62 #define NVC597_LOAD_MME_START_ADDRESS_RAM_POINTER_V                                                          31:0
63 
64 #define NVC597_LOAD_MME_START_ADDRESS_RAM                                                                  0x0120
65 #define NVC597_LOAD_MME_START_ADDRESS_RAM_V                                                                  31:0
66 
67 #define NVC597_SET_MME_SHADOW_RAM_CONTROL                                                                  0x0124
68 #define NVC597_SET_MME_SHADOW_RAM_CONTROL_MODE                                                                1:0
69 #define NVC597_SET_MME_SHADOW_RAM_CONTROL_MODE_METHOD_TRACK                                            0x00000000
70 #define NVC597_SET_MME_SHADOW_RAM_CONTROL_MODE_METHOD_TRACK_WITH_FILTER                                0x00000001
71 #define NVC597_SET_MME_SHADOW_RAM_CONTROL_MODE_METHOD_PASSTHROUGH                                      0x00000002
72 #define NVC597_SET_MME_SHADOW_RAM_CONTROL_MODE_METHOD_REPLAY                                           0x00000003
73 
74 #define NVC597_PEER_SEMAPHORE_RELEASE_OFFSET_UPPER                                                         0x0128
75 #define NVC597_PEER_SEMAPHORE_RELEASE_OFFSET_UPPER_V                                                          7:0
76 
77 #define NVC597_PEER_SEMAPHORE_RELEASE_OFFSET                                                               0x012c
78 #define NVC597_PEER_SEMAPHORE_RELEASE_OFFSET_V                                                               31:0
79 
80 #define NVC597_SET_GLOBAL_RENDER_ENABLE_A                                                                  0x0130
81 #define NVC597_SET_GLOBAL_RENDER_ENABLE_A_OFFSET_UPPER                                                        7:0
82 
83 #define NVC597_SET_GLOBAL_RENDER_ENABLE_B                                                                  0x0134
84 #define NVC597_SET_GLOBAL_RENDER_ENABLE_B_OFFSET_LOWER                                                       31:0
85 
86 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C                                                                  0x0138
87 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE                                                                2:0
88 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE_FALSE                                                   0x00000000
89 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE_TRUE                                                    0x00000001
90 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE_CONDITIONAL                                             0x00000002
91 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE_RENDER_IF_EQUAL                                         0x00000003
92 #define NVC597_SET_GLOBAL_RENDER_ENABLE_C_MODE_RENDER_IF_NOT_EQUAL                                     0x00000004
93 
94 #define NVC597_SEND_GO_IDLE                                                                                0x013c
95 #define NVC597_SEND_GO_IDLE_V                                                                                31:0
96 
97 #define NVC597_PM_TRIGGER                                                                                  0x0140
98 #define NVC597_PM_TRIGGER_V                                                                                  31:0
99 
100 #define NVC597_PM_TRIGGER_WFI                                                                              0x0144
101 #define NVC597_PM_TRIGGER_WFI_V                                                                              31:0
102 
103 #define NVC597_FE_ATOMIC_SEQUENCE_BEGIN                                                                    0x0148
104 #define NVC597_FE_ATOMIC_SEQUENCE_BEGIN_V                                                                    31:0
105 
106 #define NVC597_FE_ATOMIC_SEQUENCE_END                                                                      0x014c
107 #define NVC597_FE_ATOMIC_SEQUENCE_END_V                                                                      31:0
108 
109 #define NVC597_SET_INSTRUMENTATION_METHOD_HEADER                                                           0x0150
110 #define NVC597_SET_INSTRUMENTATION_METHOD_HEADER_V                                                           31:0
111 
112 #define NVC597_SET_INSTRUMENTATION_METHOD_DATA                                                             0x0154
113 #define NVC597_SET_INSTRUMENTATION_METHOD_DATA_V                                                             31:0
114 
115 #define NVC597_LINE_LENGTH_IN                                                                              0x0180
116 #define NVC597_LINE_LENGTH_IN_VALUE                                                                          31:0
117 
118 #define NVC597_LINE_COUNT                                                                                  0x0184
119 #define NVC597_LINE_COUNT_VALUE                                                                              31:0
120 
121 #define NVC597_OFFSET_OUT_UPPER                                                                            0x0188
122 #define NVC597_OFFSET_OUT_UPPER_VALUE                                                                         7:0
123 
124 #define NVC597_OFFSET_OUT                                                                                  0x018c
125 #define NVC597_OFFSET_OUT_VALUE                                                                              31:0
126 
127 #define NVC597_PITCH_OUT                                                                                   0x0190
128 #define NVC597_PITCH_OUT_VALUE                                                                               31:0
129 
130 #define NVC597_SET_DST_BLOCK_SIZE                                                                          0x0194
131 #define NVC597_SET_DST_BLOCK_SIZE_WIDTH                                                                       3:0
132 #define NVC597_SET_DST_BLOCK_SIZE_WIDTH_ONE_GOB                                                        0x00000000
133 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT                                                                      7:4
134 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_ONE_GOB                                                       0x00000000
135 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_TWO_GOBS                                                      0x00000001
136 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_FOUR_GOBS                                                     0x00000002
137 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_EIGHT_GOBS                                                    0x00000003
138 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS                                                  0x00000004
139 #define NVC597_SET_DST_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS                                                0x00000005
140 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH                                                                      11:8
141 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_ONE_GOB                                                        0x00000000
142 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_TWO_GOBS                                                       0x00000001
143 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_FOUR_GOBS                                                      0x00000002
144 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_EIGHT_GOBS                                                     0x00000003
145 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_SIXTEEN_GOBS                                                   0x00000004
146 #define NVC597_SET_DST_BLOCK_SIZE_DEPTH_THIRTYTWO_GOBS                                                 0x00000005
147 
148 #define NVC597_SET_DST_WIDTH                                                                               0x0198
149 #define NVC597_SET_DST_WIDTH_V                                                                               31:0
150 
151 #define NVC597_SET_DST_HEIGHT                                                                              0x019c
152 #define NVC597_SET_DST_HEIGHT_V                                                                              31:0
153 
154 #define NVC597_SET_DST_DEPTH                                                                               0x01a0
155 #define NVC597_SET_DST_DEPTH_V                                                                               31:0
156 
157 #define NVC597_SET_DST_LAYER                                                                               0x01a4
158 #define NVC597_SET_DST_LAYER_V                                                                               31:0
159 
160 #define NVC597_SET_DST_ORIGIN_BYTES_X                                                                      0x01a8
161 #define NVC597_SET_DST_ORIGIN_BYTES_X_V                                                                      20:0
162 
163 #define NVC597_SET_DST_ORIGIN_SAMPLES_Y                                                                    0x01ac
164 #define NVC597_SET_DST_ORIGIN_SAMPLES_Y_V                                                                    16:0
165 
166 #define NVC597_LAUNCH_DMA                                                                                  0x01b0
167 #define NVC597_LAUNCH_DMA_DST_MEMORY_LAYOUT                                                                   0:0
168 #define NVC597_LAUNCH_DMA_DST_MEMORY_LAYOUT_BLOCKLINEAR                                                0x00000000
169 #define NVC597_LAUNCH_DMA_DST_MEMORY_LAYOUT_PITCH                                                      0x00000001
170 #define NVC597_LAUNCH_DMA_COMPLETION_TYPE                                                                     5:4
171 #define NVC597_LAUNCH_DMA_COMPLETION_TYPE_FLUSH_DISABLE                                                0x00000000
172 #define NVC597_LAUNCH_DMA_COMPLETION_TYPE_FLUSH_ONLY                                                   0x00000001
173 #define NVC597_LAUNCH_DMA_COMPLETION_TYPE_RELEASE_SEMAPHORE                                            0x00000002
174 #define NVC597_LAUNCH_DMA_INTERRUPT_TYPE                                                                      9:8
175 #define NVC597_LAUNCH_DMA_INTERRUPT_TYPE_NONE                                                          0x00000000
176 #define NVC597_LAUNCH_DMA_INTERRUPT_TYPE_INTERRUPT                                                     0x00000001
177 #define NVC597_LAUNCH_DMA_SEMAPHORE_STRUCT_SIZE                                                             12:12
178 #define NVC597_LAUNCH_DMA_SEMAPHORE_STRUCT_SIZE_FOUR_WORDS                                             0x00000000
179 #define NVC597_LAUNCH_DMA_SEMAPHORE_STRUCT_SIZE_ONE_WORD                                               0x00000001
180 #define NVC597_LAUNCH_DMA_REDUCTION_ENABLE                                                                    1:1
181 #define NVC597_LAUNCH_DMA_REDUCTION_ENABLE_FALSE                                                       0x00000000
182 #define NVC597_LAUNCH_DMA_REDUCTION_ENABLE_TRUE                                                        0x00000001
183 #define NVC597_LAUNCH_DMA_REDUCTION_OP                                                                      15:13
184 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_ADD                                                         0x00000000
185 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_MIN                                                         0x00000001
186 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_MAX                                                         0x00000002
187 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_INC                                                         0x00000003
188 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_DEC                                                         0x00000004
189 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_AND                                                         0x00000005
190 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_OR                                                          0x00000006
191 #define NVC597_LAUNCH_DMA_REDUCTION_OP_RED_XOR                                                         0x00000007
192 #define NVC597_LAUNCH_DMA_REDUCTION_FORMAT                                                                    3:2
193 #define NVC597_LAUNCH_DMA_REDUCTION_FORMAT_UNSIGNED_32                                                 0x00000000
194 #define NVC597_LAUNCH_DMA_REDUCTION_FORMAT_SIGNED_32                                                   0x00000001
195 #define NVC597_LAUNCH_DMA_SYSMEMBAR_DISABLE                                                                   6:6
196 #define NVC597_LAUNCH_DMA_SYSMEMBAR_DISABLE_FALSE                                                      0x00000000
197 #define NVC597_LAUNCH_DMA_SYSMEMBAR_DISABLE_TRUE                                                       0x00000001
198 
199 #define NVC597_LOAD_INLINE_DATA                                                                            0x01b4
200 #define NVC597_LOAD_INLINE_DATA_V                                                                            31:0
201 
202 #define NVC597_SET_I2M_SEMAPHORE_A                                                                         0x01dc
203 #define NVC597_SET_I2M_SEMAPHORE_A_OFFSET_UPPER                                                               7:0
204 
205 #define NVC597_SET_I2M_SEMAPHORE_B                                                                         0x01e0
206 #define NVC597_SET_I2M_SEMAPHORE_B_OFFSET_LOWER                                                              31:0
207 
208 #define NVC597_SET_I2M_SEMAPHORE_C                                                                         0x01e4
209 #define NVC597_SET_I2M_SEMAPHORE_C_PAYLOAD                                                                   31:0
210 
211 #define NVC597_SET_I2M_SPARE_NOOP00                                                                        0x01f0
212 #define NVC597_SET_I2M_SPARE_NOOP00_V                                                                        31:0
213 
214 #define NVC597_SET_I2M_SPARE_NOOP01                                                                        0x01f4
215 #define NVC597_SET_I2M_SPARE_NOOP01_V                                                                        31:0
216 
217 #define NVC597_SET_I2M_SPARE_NOOP02                                                                        0x01f8
218 #define NVC597_SET_I2M_SPARE_NOOP02_V                                                                        31:0
219 
220 #define NVC597_SET_I2M_SPARE_NOOP03                                                                        0x01fc
221 #define NVC597_SET_I2M_SPARE_NOOP03_V                                                                        31:0
222 
223 #define NVC597_RUN_DS_NOW                                                                                  0x0200
224 #define NVC597_RUN_DS_NOW_V                                                                                  31:0
225 
226 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS                                                        0x0204
227 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD                           4:0
228 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD_INSTANTANEOUS             0x00000000
229 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__16                0x00000001
230 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__32                0x00000002
231 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__64                0x00000003
232 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__128               0x00000004
233 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__256               0x00000005
234 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__512               0x00000006
235 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__1024              0x00000007
236 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__2048              0x00000008
237 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__4096              0x00000009
238 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__8192              0x0000000A
239 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__16384             0x0000000B
240 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__32768             0x0000000C
241 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__65536             0x0000000D
242 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__131072             0x0000000E
243 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__262144             0x0000000F
244 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__524288             0x00000010
245 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__1048576             0x00000011
246 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__2097152             0x00000012
247 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD__4194304             0x00000013
248 #define NVC597_SET_OPPORTUNISTIC_EARLY_Z_HYSTERESIS_ACCUMULATED_PRIM_AREA_THRESHOLD_LATEZ_ALWAYS             0x0000001F
249 
250 #define NVC597_SET_GS_MODE                                                                                 0x0208
251 #define NVC597_SET_GS_MODE_TYPE                                                                               0:0
252 #define NVC597_SET_GS_MODE_TYPE_ANY                                                                    0x00000000
253 #define NVC597_SET_GS_MODE_TYPE_FAST_GS                                                                0x00000001
254 
255 #define NVC597_SET_ALIASED_LINE_WIDTH_ENABLE                                                               0x020c
256 #define NVC597_SET_ALIASED_LINE_WIDTH_ENABLE_V                                                                0:0
257 #define NVC597_SET_ALIASED_LINE_WIDTH_ENABLE_V_FALSE                                                   0x00000000
258 #define NVC597_SET_ALIASED_LINE_WIDTH_ENABLE_V_TRUE                                                    0x00000001
259 
260 #define NVC597_SET_API_MANDATED_EARLY_Z                                                                    0x0210
261 #define NVC597_SET_API_MANDATED_EARLY_Z_ENABLE                                                                0:0
262 #define NVC597_SET_API_MANDATED_EARLY_Z_ENABLE_FALSE                                                   0x00000000
263 #define NVC597_SET_API_MANDATED_EARLY_Z_ENABLE_TRUE                                                    0x00000001
264 
265 #define NVC597_SET_GS_DM_FIFO                                                                              0x0214
266 #define NVC597_SET_GS_DM_FIFO_SIZE_RASTER_ON                                                                 12:0
267 #define NVC597_SET_GS_DM_FIFO_SIZE_RASTER_OFF                                                               28:16
268 #define NVC597_SET_GS_DM_FIFO_SPILL_ENABLED                                                                 31:31
269 #define NVC597_SET_GS_DM_FIFO_SPILL_ENABLED_FALSE                                                      0x00000000
270 #define NVC597_SET_GS_DM_FIFO_SPILL_ENABLED_TRUE                                                       0x00000001
271 
272 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_PREFETCH_READ_REQUESTS                                         0x0218
273 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_PREFETCH_READ_REQUESTS_POLICY                                     5:4
274 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_PREFETCH_READ_REQUESTS_POLICY_EVICT_FIRST                  0x00000000
275 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_PREFETCH_READ_REQUESTS_POLICY_EVICT_NORMAL                 0x00000001
276 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_PREFETCH_READ_REQUESTS_POLICY_EVICT_LAST                   0x00000002
277 
278 #define NVC597_INVALIDATE_SHADER_CACHES                                                                    0x021c
279 #define NVC597_INVALIDATE_SHADER_CACHES_INSTRUCTION                                                           0:0
280 #define NVC597_INVALIDATE_SHADER_CACHES_INSTRUCTION_FALSE                                              0x00000000
281 #define NVC597_INVALIDATE_SHADER_CACHES_INSTRUCTION_TRUE                                               0x00000001
282 #define NVC597_INVALIDATE_SHADER_CACHES_DATA                                                                  4:4
283 #define NVC597_INVALIDATE_SHADER_CACHES_DATA_FALSE                                                     0x00000000
284 #define NVC597_INVALIDATE_SHADER_CACHES_DATA_TRUE                                                      0x00000001
285 #define NVC597_INVALIDATE_SHADER_CACHES_CONSTANT                                                            12:12
286 #define NVC597_INVALIDATE_SHADER_CACHES_CONSTANT_FALSE                                                 0x00000000
287 #define NVC597_INVALIDATE_SHADER_CACHES_CONSTANT_TRUE                                                  0x00000001
288 #define NVC597_INVALIDATE_SHADER_CACHES_LOCKS                                                                 1:1
289 #define NVC597_INVALIDATE_SHADER_CACHES_LOCKS_FALSE                                                    0x00000000
290 #define NVC597_INVALIDATE_SHADER_CACHES_LOCKS_TRUE                                                     0x00000001
291 #define NVC597_INVALIDATE_SHADER_CACHES_FLUSH_DATA                                                            2:2
292 #define NVC597_INVALIDATE_SHADER_CACHES_FLUSH_DATA_FALSE                                               0x00000000
293 #define NVC597_INVALIDATE_SHADER_CACHES_FLUSH_DATA_TRUE                                                0x00000001
294 
295 #define NVC597_SET_INSTANCE_COUNT                                                                          0x0220
296 #define NVC597_SET_INSTANCE_COUNT_V                                                                          31:0
297 
298 #define NVC597_SET_POSITION_W_SCALED_OFFSET_ENABLE                                                         0x0224
299 #define NVC597_SET_POSITION_W_SCALED_OFFSET_ENABLE_ENABLE                                                     0:0
300 #define NVC597_SET_POSITION_W_SCALED_OFFSET_ENABLE_ENABLE_FALSE                                        0x00000000
301 #define NVC597_SET_POSITION_W_SCALED_OFFSET_ENABLE_ENABLE_TRUE                                         0x00000001
302 
303 #define NVC597_SET_GO_IDLE_TIMEOUT                                                                         0x022c
304 #define NVC597_SET_GO_IDLE_TIMEOUT_V                                                                         31:0
305 
306 #define NVC597_SET_MME_VERSION                                                                             0x0234
307 #define NVC597_SET_MME_VERSION_MAJOR                                                                          7:0
308 
309 #define NVC597_SET_INDEX_BUFFER_SIZE_A                                                                     0x0238
310 #define NVC597_SET_INDEX_BUFFER_SIZE_A_UPPER                                                                  7:0
311 
312 #define NVC597_SET_INDEX_BUFFER_SIZE_B                                                                     0x023c
313 #define NVC597_SET_INDEX_BUFFER_SIZE_B_LOWER                                                                 31:0
314 
315 #define NVC597_SET_ROOT_TABLE_VISIBILITY(i)                                                        (0x0240+(i)*4)
316 #define NVC597_SET_ROOT_TABLE_VISIBILITY_BINDING_GROUP0_ENABLE                                                1:0
317 #define NVC597_SET_ROOT_TABLE_VISIBILITY_BINDING_GROUP1_ENABLE                                                5:4
318 #define NVC597_SET_ROOT_TABLE_VISIBILITY_BINDING_GROUP2_ENABLE                                                9:8
319 #define NVC597_SET_ROOT_TABLE_VISIBILITY_BINDING_GROUP3_ENABLE                                              13:12
320 #define NVC597_SET_ROOT_TABLE_VISIBILITY_BINDING_GROUP4_ENABLE                                              17:16
321 
322 #define NVC597_SET_DRAW_CONTROL_A                                                                          0x0260
323 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY                                                                    3:0
324 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_POINTS                                                      0x00000000
325 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_LINES                                                       0x00000001
326 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_LINE_LOOP                                                   0x00000002
327 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_LINE_STRIP                                                  0x00000003
328 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_TRIANGLES                                                   0x00000004
329 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_TRIANGLE_STRIP                                              0x00000005
330 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_TRIANGLE_FAN                                                0x00000006
331 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_QUADS                                                       0x00000007
332 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_QUAD_STRIP                                                  0x00000008
333 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_POLYGON                                                     0x00000009
334 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_LINELIST_ADJCY                                              0x0000000A
335 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_LINESTRIP_ADJCY                                             0x0000000B
336 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_TRIANGLELIST_ADJCY                                          0x0000000C
337 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_TRIANGLESTRIP_ADJCY                                         0x0000000D
338 #define NVC597_SET_DRAW_CONTROL_A_TOPOLOGY_PATCH                                                       0x0000000E
339 #define NVC597_SET_DRAW_CONTROL_A_PRIMITIVE_ID                                                                4:4
340 #define NVC597_SET_DRAW_CONTROL_A_PRIMITIVE_ID_FIRST                                                   0x00000000
341 #define NVC597_SET_DRAW_CONTROL_A_PRIMITIVE_ID_UNCHANGED                                               0x00000001
342 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ID                                                                 6:5
343 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ID_FIRST                                                    0x00000000
344 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ID_SUBSEQUENT                                               0x00000001
345 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ID_UNCHANGED                                                0x00000002
346 #define NVC597_SET_DRAW_CONTROL_A_SPLIT_MODE                                                                  8:7
347 #define NVC597_SET_DRAW_CONTROL_A_SPLIT_MODE_NORMAL_BEGIN_NORMAL_END                                   0x00000000
348 #define NVC597_SET_DRAW_CONTROL_A_SPLIT_MODE_NORMAL_BEGIN_OPEN_END                                     0x00000001
349 #define NVC597_SET_DRAW_CONTROL_A_SPLIT_MODE_OPEN_BEGIN_OPEN_END                                       0x00000002
350 #define NVC597_SET_DRAW_CONTROL_A_SPLIT_MODE_OPEN_BEGIN_NORMAL_END                                     0x00000003
351 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ITERATE_ENABLE                                                     9:9
352 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ITERATE_ENABLE_FALSE                                        0x00000000
353 #define NVC597_SET_DRAW_CONTROL_A_INSTANCE_ITERATE_ENABLE_TRUE                                         0x00000001
354 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_VERTEX_INDEX                                           10:10
355 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_VERTEX_INDEX_FALSE                                0x00000000
356 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_VERTEX_INDEX_TRUE                                 0x00000001
357 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_INSTANCE_INDEX                                         11:11
358 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_INSTANCE_INDEX_FALSE                              0x00000000
359 #define NVC597_SET_DRAW_CONTROL_A_IGNORE_GLOBAL_BASE_INSTANCE_INDEX_TRUE                               0x00000001
360 
361 #define NVC597_SET_DRAW_CONTROL_B                                                                          0x0264
362 #define NVC597_SET_DRAW_CONTROL_B_INSTANCE_COUNT                                                             31:0
363 
364 #define NVC597_DRAW_INDEX_BUFFER_BEGIN_END_A                                                               0x0268
365 #define NVC597_DRAW_INDEX_BUFFER_BEGIN_END_A_FIRST                                                           31:0
366 
367 #define NVC597_DRAW_INDEX_BUFFER_BEGIN_END_B                                                               0x026c
368 #define NVC597_DRAW_INDEX_BUFFER_BEGIN_END_B_COUNT                                                           31:0
369 
370 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_A                                                               0x0270
371 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_A_START                                                           31:0
372 
373 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_B                                                               0x0274
374 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_B_COUNT                                                           31:0
375 
376 #define NVC597_INVALIDATE_RASTER_CACHE_NO_WFI                                                              0x027c
377 #define NVC597_INVALIDATE_RASTER_CACHE_NO_WFI_V                                                               0:0
378 
379 #define NVC597_SET_COLOR_RENDER_TO_ZETA_SURFACE                                                            0x02b8
380 #define NVC597_SET_COLOR_RENDER_TO_ZETA_SURFACE_V                                                             0:0
381 #define NVC597_SET_COLOR_RENDER_TO_ZETA_SURFACE_V_FALSE                                                0x00000000
382 #define NVC597_SET_COLOR_RENDER_TO_ZETA_SURFACE_V_TRUE                                                 0x00000001
383 
384 #define NVC597_SET_ZCULL_VISIBLE_PRIM_OPTIMIZATION                                                         0x02bc
385 #define NVC597_SET_ZCULL_VISIBLE_PRIM_OPTIMIZATION_V                                                          0:0
386 #define NVC597_SET_ZCULL_VISIBLE_PRIM_OPTIMIZATION_V_FALSE                                             0x00000000
387 #define NVC597_SET_ZCULL_VISIBLE_PRIM_OPTIMIZATION_V_TRUE                                              0x00000001
388 
389 #define NVC597_INCREMENT_SYNC_POINT                                                                        0x02c8
390 #define NVC597_INCREMENT_SYNC_POINT_INDEX                                                                    11:0
391 #define NVC597_INCREMENT_SYNC_POINT_CLEAN_L2                                                                16:16
392 #define NVC597_INCREMENT_SYNC_POINT_CLEAN_L2_FALSE                                                     0x00000000
393 #define NVC597_INCREMENT_SYNC_POINT_CLEAN_L2_TRUE                                                      0x00000001
394 #define NVC597_INCREMENT_SYNC_POINT_CONDITION                                                               20:20
395 #define NVC597_INCREMENT_SYNC_POINT_CONDITION_STREAM_OUT_WRITES_DONE                                   0x00000000
396 #define NVC597_INCREMENT_SYNC_POINT_CONDITION_ROP_WRITES_DONE                                          0x00000001
397 
398 #define NVC597_FLUSH_AND_INVALIDATE_ROP_MINI_CACHE                                                         0x02d4
399 #define NVC597_FLUSH_AND_INVALIDATE_ROP_MINI_CACHE_V                                                          0:0
400 
401 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE                                                              0x02d8
402 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_WIDTH                                                           3:0
403 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_WIDTH_ONE_GOB                                            0x00000000
404 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT                                                          7:4
405 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_ONE_GOB                                           0x00000000
406 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_TWO_GOBS                                          0x00000001
407 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_FOUR_GOBS                                         0x00000002
408 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_EIGHT_GOBS                                        0x00000003
409 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS                                      0x00000004
410 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS                                    0x00000005
411 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_DEPTH                                                          11:8
412 #define NVC597_SET_SURFACE_CLIP_ID_BLOCK_SIZE_DEPTH_ONE_GOB                                            0x00000000
413 
414 #define NVC597_SET_ALPHA_CIRCULAR_BUFFER_SIZE                                                              0x02dc
415 #define NVC597_SET_ALPHA_CIRCULAR_BUFFER_SIZE_CACHE_LINES_PER_SM                                             13:0
416 
417 #define NVC597_DECOMPRESS_SURFACE                                                                          0x02e0
418 #define NVC597_DECOMPRESS_SURFACE_MRT_SELECT                                                                  2:0
419 #define NVC597_DECOMPRESS_SURFACE_RT_ARRAY_INDEX                                                             19:4
420 
421 #define NVC597_SET_ZCULL_ROP_BYPASS                                                                        0x02e4
422 #define NVC597_SET_ZCULL_ROP_BYPASS_ENABLE                                                                    0:0
423 #define NVC597_SET_ZCULL_ROP_BYPASS_ENABLE_FALSE                                                       0x00000000
424 #define NVC597_SET_ZCULL_ROP_BYPASS_ENABLE_TRUE                                                        0x00000001
425 #define NVC597_SET_ZCULL_ROP_BYPASS_NO_STALL                                                                  4:4
426 #define NVC597_SET_ZCULL_ROP_BYPASS_NO_STALL_FALSE                                                     0x00000000
427 #define NVC597_SET_ZCULL_ROP_BYPASS_NO_STALL_TRUE                                                      0x00000001
428 #define NVC597_SET_ZCULL_ROP_BYPASS_CULL_EVERYTHING                                                           8:8
429 #define NVC597_SET_ZCULL_ROP_BYPASS_CULL_EVERYTHING_FALSE                                              0x00000000
430 #define NVC597_SET_ZCULL_ROP_BYPASS_CULL_EVERYTHING_TRUE                                               0x00000001
431 #define NVC597_SET_ZCULL_ROP_BYPASS_THRESHOLD                                                               15:12
432 
433 #define NVC597_SET_ZCULL_SUBREGION                                                                         0x02e8
434 #define NVC597_SET_ZCULL_SUBREGION_ENABLE                                                                     0:0
435 #define NVC597_SET_ZCULL_SUBREGION_ENABLE_FALSE                                                        0x00000000
436 #define NVC597_SET_ZCULL_SUBREGION_ENABLE_TRUE                                                         0x00000001
437 #define NVC597_SET_ZCULL_SUBREGION_NORMALIZED_ALIQUOTS                                                       27:4
438 
439 #define NVC597_SET_RASTER_BOUNDING_BOX                                                                     0x02ec
440 #define NVC597_SET_RASTER_BOUNDING_BOX_MODE                                                                   0:0
441 #define NVC597_SET_RASTER_BOUNDING_BOX_MODE_BOUNDING_BOX                                               0x00000000
442 #define NVC597_SET_RASTER_BOUNDING_BOX_MODE_FULL_VIEWPORT                                              0x00000001
443 #define NVC597_SET_RASTER_BOUNDING_BOX_PAD                                                                   11:4
444 
445 #define NVC597_PEER_SEMAPHORE_RELEASE                                                                      0x02f0
446 #define NVC597_PEER_SEMAPHORE_RELEASE_V                                                                      31:0
447 
448 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION                                                             0x02f4
449 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION_NOOP                                                           1:0
450 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION_NOOP_NEVER                                              0x00000000
451 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION_NOOP_SOURCE_RGBA_0000                                   0x00000001
452 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION_NOOP_SOURCE_ALPHA_0                                     0x00000002
453 #define NVC597_SET_ITERATED_BLEND_OPTIMIZATION_NOOP_SOURCE_RGBA_0001                                   0x00000003
454 
455 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION                                                              0x02f8
456 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_SUBREGION_ID                                                    7:0
457 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_ALIQUOTS                                                       23:8
458 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT                                                        27:24
459 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_16X16X2_4X4                                     0x00000000
460 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_ZS_16X16_4X4                                      0x00000001
461 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_16X16_4X2                                       0x00000002
462 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_16X16_2X4                                       0x00000003
463 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_16X8_4X4                                        0x00000004
464 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_8X8_4X2                                         0x00000005
465 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_8X8_2X4                                         0x00000006
466 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_16X16_4X8                                       0x00000007
467 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_4X8_2X2                                         0x00000008
468 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_ZS_16X8_4X2                                       0x00000009
469 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_ZS_16X8_2X4                                       0x0000000A
470 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_ZS_8X8_2X2                                        0x0000000B
471 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_Z_4X8_1X1                                         0x0000000C
472 #define NVC597_SET_ZCULL_SUBREGION_ALLOCATION_FORMAT_NONE                                              0x0000000F
473 
474 #define NVC597_ASSIGN_ZCULL_SUBREGIONS                                                                     0x02fc
475 #define NVC597_ASSIGN_ZCULL_SUBREGIONS_ALGORITHM                                                              1:0
476 #define NVC597_ASSIGN_ZCULL_SUBREGIONS_ALGORITHM_Static                                                0x00000000
477 #define NVC597_ASSIGN_ZCULL_SUBREGIONS_ALGORITHM_Adaptive                                              0x00000001
478 
479 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE                                                             0x0300
480 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_ENABLE                                                         0:0
481 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_ENABLE_FALSE                                            0x00000000
482 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_ENABLE_TRUE                                             0x00000001
483 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_QUALIFY_BY_ANTI_ALIAS_ENABLE                                   1:1
484 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_QUALIFY_BY_ANTI_ALIAS_ENABLE_DISABLE                    0x00000000
485 #define NVC597_SET_PS_OUTPUT_SAMPLE_MASK_USAGE_QUALIFY_BY_ANTI_ALIAS_ENABLE_ENABLE                     0x00000001
486 
487 #define NVC597_DRAW_ZERO_INDEX                                                                             0x0304
488 #define NVC597_DRAW_ZERO_INDEX_COUNT                                                                         31:0
489 
490 #define NVC597_SET_L1_CONFIGURATION                                                                        0x0308
491 #define NVC597_SET_L1_CONFIGURATION_DIRECTLY_ADDRESSABLE_MEMORY                                               2:0
492 #define NVC597_SET_L1_CONFIGURATION_DIRECTLY_ADDRESSABLE_MEMORY_SIZE_16KB                              0x00000001
493 #define NVC597_SET_L1_CONFIGURATION_DIRECTLY_ADDRESSABLE_MEMORY_SIZE_48KB                              0x00000003
494 
495 #define NVC597_SET_RENDER_ENABLE_CONTROL                                                                   0x030c
496 #define NVC597_SET_RENDER_ENABLE_CONTROL_CONDITIONAL_LOAD_CONSTANT_BUFFER                                     0:0
497 #define NVC597_SET_RENDER_ENABLE_CONTROL_CONDITIONAL_LOAD_CONSTANT_BUFFER_FALSE                        0x00000000
498 #define NVC597_SET_RENDER_ENABLE_CONTROL_CONDITIONAL_LOAD_CONSTANT_BUFFER_TRUE                         0x00000001
499 
500 #define NVC597_SET_SPA_VERSION                                                                             0x0310
501 #define NVC597_SET_SPA_VERSION_MINOR                                                                          7:0
502 #define NVC597_SET_SPA_VERSION_MAJOR                                                                         15:8
503 
504 #define NVC597_SET_TIMESLICE_BATCH_LIMIT                                                                   0x0314
505 #define NVC597_SET_TIMESLICE_BATCH_LIMIT_BATCH_LIMIT                                                         15:0
506 
507 #define NVC597_SET_SNAP_GRID_LINE                                                                          0x0318
508 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL                                                         3:0
509 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__2X2                                             0x00000001
510 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__4X4                                             0x00000002
511 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__8X8                                             0x00000003
512 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__16X16                                           0x00000004
513 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__32X32                                           0x00000005
514 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__64X64                                           0x00000006
515 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__128X128                                         0x00000007
516 #define NVC597_SET_SNAP_GRID_LINE_LOCATIONS_PER_PIXEL__256X256                                         0x00000008
517 #define NVC597_SET_SNAP_GRID_LINE_ROUNDING_MODE                                                               8:8
518 #define NVC597_SET_SNAP_GRID_LINE_ROUNDING_MODE_RTNE                                                   0x00000000
519 #define NVC597_SET_SNAP_GRID_LINE_ROUNDING_MODE_TESLA                                                  0x00000001
520 
521 #define NVC597_SET_SNAP_GRID_NON_LINE                                                                      0x031c
522 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL                                                     3:0
523 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__2X2                                         0x00000001
524 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__4X4                                         0x00000002
525 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__8X8                                         0x00000003
526 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__16X16                                       0x00000004
527 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__32X32                                       0x00000005
528 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__64X64                                       0x00000006
529 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__128X128                                     0x00000007
530 #define NVC597_SET_SNAP_GRID_NON_LINE_LOCATIONS_PER_PIXEL__256X256                                     0x00000008
531 #define NVC597_SET_SNAP_GRID_NON_LINE_ROUNDING_MODE                                                           8:8
532 #define NVC597_SET_SNAP_GRID_NON_LINE_ROUNDING_MODE_RTNE                                               0x00000000
533 #define NVC597_SET_SNAP_GRID_NON_LINE_ROUNDING_MODE_TESLA                                              0x00000001
534 
535 #define NVC597_SET_TESSELLATION_PARAMETERS                                                                 0x0320
536 #define NVC597_SET_TESSELLATION_PARAMETERS_DOMAIN_TYPE                                                        1:0
537 #define NVC597_SET_TESSELLATION_PARAMETERS_DOMAIN_TYPE_ISOLINE                                         0x00000000
538 #define NVC597_SET_TESSELLATION_PARAMETERS_DOMAIN_TYPE_TRIANGLE                                        0x00000001
539 #define NVC597_SET_TESSELLATION_PARAMETERS_DOMAIN_TYPE_QUAD                                            0x00000002
540 #define NVC597_SET_TESSELLATION_PARAMETERS_SPACING                                                            5:4
541 #define NVC597_SET_TESSELLATION_PARAMETERS_SPACING_INTEGER                                             0x00000000
542 #define NVC597_SET_TESSELLATION_PARAMETERS_SPACING_FRACTIONAL_ODD                                      0x00000001
543 #define NVC597_SET_TESSELLATION_PARAMETERS_SPACING_FRACTIONAL_EVEN                                     0x00000002
544 #define NVC597_SET_TESSELLATION_PARAMETERS_OUTPUT_PRIMITIVES                                                  9:8
545 #define NVC597_SET_TESSELLATION_PARAMETERS_OUTPUT_PRIMITIVES_POINTS                                    0x00000000
546 #define NVC597_SET_TESSELLATION_PARAMETERS_OUTPUT_PRIMITIVES_LINES                                     0x00000001
547 #define NVC597_SET_TESSELLATION_PARAMETERS_OUTPUT_PRIMITIVES_TRIANGLES_CW                              0x00000002
548 #define NVC597_SET_TESSELLATION_PARAMETERS_OUTPUT_PRIMITIVES_TRIANGLES_CCW                             0x00000003
549 
550 #define NVC597_SET_TESSELLATION_LOD_U0_OR_DENSITY                                                          0x0324
551 #define NVC597_SET_TESSELLATION_LOD_U0_OR_DENSITY_V                                                          31:0
552 
553 #define NVC597_SET_TESSELLATION_LOD_V0_OR_DETAIL                                                           0x0328
554 #define NVC597_SET_TESSELLATION_LOD_V0_OR_DETAIL_V                                                           31:0
555 
556 #define NVC597_SET_TESSELLATION_LOD_U1_OR_W0                                                               0x032c
557 #define NVC597_SET_TESSELLATION_LOD_U1_OR_W0_V                                                               31:0
558 
559 #define NVC597_SET_TESSELLATION_LOD_V1                                                                     0x0330
560 #define NVC597_SET_TESSELLATION_LOD_V1_V                                                                     31:0
561 
562 #define NVC597_SET_TG_LOD_INTERIOR_U                                                                       0x0334
563 #define NVC597_SET_TG_LOD_INTERIOR_U_V                                                                       31:0
564 
565 #define NVC597_SET_TG_LOD_INTERIOR_V                                                                       0x0338
566 #define NVC597_SET_TG_LOD_INTERIOR_V_V                                                                       31:0
567 
568 #define NVC597_RESERVED_TG07                                                                               0x033c
569 #define NVC597_RESERVED_TG07_V                                                                                0:0
570 
571 #define NVC597_RESERVED_TG08                                                                               0x0340
572 #define NVC597_RESERVED_TG08_V                                                                                0:0
573 
574 #define NVC597_RESERVED_TG09                                                                               0x0344
575 #define NVC597_RESERVED_TG09_V                                                                                0:0
576 
577 #define NVC597_RESERVED_TG10                                                                               0x0348
578 #define NVC597_RESERVED_TG10_V                                                                                0:0
579 
580 #define NVC597_RESERVED_TG11                                                                               0x034c
581 #define NVC597_RESERVED_TG11_V                                                                                0:0
582 
583 #define NVC597_RESERVED_TG12                                                                               0x0350
584 #define NVC597_RESERVED_TG12_V                                                                                0:0
585 
586 #define NVC597_RESERVED_TG13                                                                               0x0354
587 #define NVC597_RESERVED_TG13_V                                                                                0:0
588 
589 #define NVC597_RESERVED_TG14                                                                               0x0358
590 #define NVC597_RESERVED_TG14_V                                                                                0:0
591 
592 #define NVC597_RESERVED_TG15                                                                               0x035c
593 #define NVC597_RESERVED_TG15_V                                                                                0:0
594 
595 #define NVC597_SET_SUBTILING_PERF_KNOB_A                                                                   0x0360
596 #define NVC597_SET_SUBTILING_PERF_KNOB_A_FRACTION_OF_SPM_REGISTER_FILE_PER_SUBTILE                            7:0
597 #define NVC597_SET_SUBTILING_PERF_KNOB_A_FRACTION_OF_SPM_PIXEL_OUTPUT_BUFFER_PER_SUBTILE                     15:8
598 #define NVC597_SET_SUBTILING_PERF_KNOB_A_FRACTION_OF_SPM_TRIANGLE_RAM_PER_SUBTILE                           23:16
599 #define NVC597_SET_SUBTILING_PERF_KNOB_A_FRACTION_OF_MAX_QUADS_PER_SUBTILE                                  31:24
600 
601 #define NVC597_SET_SUBTILING_PERF_KNOB_B                                                                   0x0364
602 #define NVC597_SET_SUBTILING_PERF_KNOB_B_FRACTION_OF_MAX_PRIMITIVES_PER_SUBTILE                               7:0
603 
604 #define NVC597_SET_SUBTILING_PERF_KNOB_C                                                                   0x0368
605 #define NVC597_SET_SUBTILING_PERF_KNOB_C_RESERVED                                                             0:0
606 
607 #define NVC597_SET_ZCULL_SUBREGION_TO_REPORT                                                               0x036c
608 #define NVC597_SET_ZCULL_SUBREGION_TO_REPORT_ENABLE                                                           0:0
609 #define NVC597_SET_ZCULL_SUBREGION_TO_REPORT_ENABLE_FALSE                                              0x00000000
610 #define NVC597_SET_ZCULL_SUBREGION_TO_REPORT_ENABLE_TRUE                                               0x00000001
611 #define NVC597_SET_ZCULL_SUBREGION_TO_REPORT_SUBREGION_ID                                                    11:4
612 
613 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE                                                             0x0370
614 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_ENABLE                                                         0:0
615 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_ENABLE_FALSE                                            0x00000000
616 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_ENABLE_TRUE                                             0x00000001
617 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_TYPE                                                           6:4
618 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_TYPE_DEPTH_TEST                                         0x00000000
619 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_TYPE_DEPTH_TEST_NO_ACCEPT                               0x00000001
620 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_TYPE_DEPTH_TEST_LATE_Z                                  0x00000002
621 #define NVC597_SET_ZCULL_SUBREGION_REPORT_TYPE_TYPE_STENCIL_TEST                                       0x00000003
622 
623 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD                                                             0x0374
624 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_UNPARTITIONED_MODE                                          0:0
625 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_UNPARTITIONED_MODE_FALSE                             0x00000000
626 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_UNPARTITIONED_MODE_TRUE                              0x00000001
627 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_TIMESLICED_MODE                                             4:4
628 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_TIMESLICED_MODE_FALSE                                0x00000000
629 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_IN_TIMESLICED_MODE_TRUE                                 0x00000001
630 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_UNPARTITIONED_MODE                                   8:8
631 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_UNPARTITIONED_MODE_FALSE                      0x00000000
632 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_UNPARTITIONED_MODE_TRUE                       0x00000001
633 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_TIMESLICED_MODE                                      9:9
634 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_TIMESLICED_MODE_FALSE                         0x00000000
635 #define NVC597_SET_BALANCED_PRIMITIVE_WORKLOAD_BY_PES_IN_TIMESLICED_MODE_TRUE                          0x00000001
636 
637 #define NVC597_SET_MAX_PATCHES_PER_BATCH                                                                   0x0378
638 #define NVC597_SET_MAX_PATCHES_PER_BATCH_V                                                                    5:0
639 
640 #define NVC597_SET_RASTER_ENABLE                                                                           0x037c
641 #define NVC597_SET_RASTER_ENABLE_V                                                                            0:0
642 #define NVC597_SET_RASTER_ENABLE_V_FALSE                                                               0x00000000
643 #define NVC597_SET_RASTER_ENABLE_V_TRUE                                                                0x00000001
644 
645 #define NVC597_SET_STREAM_OUT_BUFFER_ENABLE(j)                                                    (0x0380+(j)*32)
646 #define NVC597_SET_STREAM_OUT_BUFFER_ENABLE_V                                                                 0:0
647 #define NVC597_SET_STREAM_OUT_BUFFER_ENABLE_V_FALSE                                                    0x00000000
648 #define NVC597_SET_STREAM_OUT_BUFFER_ENABLE_V_TRUE                                                     0x00000001
649 
650 #define NVC597_SET_STREAM_OUT_BUFFER_ADDRESS_A(j)                                                 (0x0384+(j)*32)
651 #define NVC597_SET_STREAM_OUT_BUFFER_ADDRESS_A_UPPER                                                          7:0
652 
653 #define NVC597_SET_STREAM_OUT_BUFFER_ADDRESS_B(j)                                                 (0x0388+(j)*32)
654 #define NVC597_SET_STREAM_OUT_BUFFER_ADDRESS_B_LOWER                                                         31:0
655 
656 #define NVC597_SET_STREAM_OUT_BUFFER_SIZE(j)                                                      (0x038c+(j)*32)
657 #define NVC597_SET_STREAM_OUT_BUFFER_SIZE_BYTES                                                              31:0
658 
659 #define NVC597_SET_STREAM_OUT_BUFFER_LOAD_WRITE_POINTER(j)                                        (0x0390+(j)*32)
660 #define NVC597_SET_STREAM_OUT_BUFFER_LOAD_WRITE_POINTER_START_OFFSET                                         31:0
661 
662 #define NVC597_SET_POSITION_W_SCALED_OFFSET_SCALE_A(j)                                            (0x0400+(j)*16)
663 #define NVC597_SET_POSITION_W_SCALED_OFFSET_SCALE_A_V                                                        31:0
664 
665 #define NVC597_SET_POSITION_W_SCALED_OFFSET_SCALE_B(j)                                            (0x0404+(j)*16)
666 #define NVC597_SET_POSITION_W_SCALED_OFFSET_SCALE_B_V                                                        31:0
667 
668 #define NVC597_SET_POSITION_W_SCALED_OFFSET_RESERVED_A(j)                                         (0x0408+(j)*16)
669 #define NVC597_SET_POSITION_W_SCALED_OFFSET_RESERVED_A_V                                                     31:0
670 
671 #define NVC597_SET_POSITION_W_SCALED_OFFSET_RESERVED_B(j)                                         (0x040c+(j)*16)
672 #define NVC597_SET_POSITION_W_SCALED_OFFSET_RESERVED_B_V                                                     31:0
673 
674 #define NVC597_SET_ROOT_TABLE_SELECTOR                                                                     0x0504
675 #define NVC597_SET_ROOT_TABLE_SELECTOR_ROOT_TABLE                                                             2:0
676 #define NVC597_SET_ROOT_TABLE_SELECTOR_OFFSET                                                                15:8
677 
678 #define NVC597_LOAD_ROOT_TABLE                                                                             0x0508
679 #define NVC597_LOAD_ROOT_TABLE_V                                                                             31:0
680 
681 #define NVC597_SET_MME_MEM_ADDRESS_A                                                                       0x0550
682 #define NVC597_SET_MME_MEM_ADDRESS_A_UPPER                                                                    7:0
683 
684 #define NVC597_SET_MME_MEM_ADDRESS_B                                                                       0x0554
685 #define NVC597_SET_MME_MEM_ADDRESS_B_LOWER                                                                   31:0
686 
687 #define NVC597_SET_MME_DATA_RAM_ADDRESS                                                                    0x0558
688 #define NVC597_SET_MME_DATA_RAM_ADDRESS_WORD                                                                 31:0
689 
690 #define NVC597_MME_DMA_READ                                                                                0x055c
691 #define NVC597_MME_DMA_READ_LENGTH                                                                           31:0
692 
693 #define NVC597_MME_DMA_READ_FIFOED                                                                         0x0560
694 #define NVC597_MME_DMA_READ_FIFOED_LENGTH                                                                    31:0
695 
696 #define NVC597_MME_DMA_WRITE                                                                               0x0564
697 #define NVC597_MME_DMA_WRITE_LENGTH                                                                          31:0
698 
699 #define NVC597_MME_DMA_REDUCTION                                                                           0x0568
700 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP                                                                 2:0
701 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_ADD                                                  0x00000000
702 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_MIN                                                  0x00000001
703 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_MAX                                                  0x00000002
704 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_INC                                                  0x00000003
705 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_DEC                                                  0x00000004
706 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_AND                                                  0x00000005
707 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_OR                                                   0x00000006
708 #define NVC597_MME_DMA_REDUCTION_REDUCTION_OP_RED_XOR                                                  0x00000007
709 #define NVC597_MME_DMA_REDUCTION_REDUCTION_FORMAT                                                             5:4
710 #define NVC597_MME_DMA_REDUCTION_REDUCTION_FORMAT_UNSIGNED_32                                          0x00000000
711 #define NVC597_MME_DMA_REDUCTION_REDUCTION_FORMAT_SIGNED_32                                            0x00000001
712 #define NVC597_MME_DMA_REDUCTION_REDUCTION_SIZE                                                               8:8
713 #define NVC597_MME_DMA_REDUCTION_REDUCTION_SIZE_FOUR_BYTES                                             0x00000000
714 #define NVC597_MME_DMA_REDUCTION_REDUCTION_SIZE_EIGHT_BYTES                                            0x00000001
715 
716 #define NVC597_MME_DMA_SYSMEMBAR                                                                           0x056c
717 #define NVC597_MME_DMA_SYSMEMBAR_V                                                                            0:0
718 
719 #define NVC597_MME_DMA_SYNC                                                                                0x0570
720 #define NVC597_MME_DMA_SYNC_VALUE                                                                            31:0
721 
722 #define NVC597_SET_MME_DATA_FIFO_CONFIG                                                                    0x0574
723 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE                                                             2:0
724 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE_SIZE_0KB                                             0x00000000
725 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE_SIZE_4KB                                             0x00000001
726 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE_SIZE_8KB                                             0x00000002
727 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE_SIZE_12KB                                            0x00000003
728 #define NVC597_SET_MME_DATA_FIFO_CONFIG_FIFO_SIZE_SIZE_16KB                                            0x00000004
729 
730 #define NVC597_SET_VERTEX_STREAM_SIZE_A(j)                                                         (0x0600+(j)*8)
731 #define NVC597_SET_VERTEX_STREAM_SIZE_A_UPPER                                                                 7:0
732 
733 #define NVC597_SET_VERTEX_STREAM_SIZE_B(j)                                                         (0x0604+(j)*8)
734 #define NVC597_SET_VERTEX_STREAM_SIZE_B_LOWER                                                                31:0
735 
736 #define NVC597_SET_STREAM_OUT_CONTROL_STREAM(j)                                                   (0x0700+(j)*16)
737 #define NVC597_SET_STREAM_OUT_CONTROL_STREAM_SELECT                                                           1:0
738 
739 #define NVC597_SET_STREAM_OUT_CONTROL_COMPONENT_COUNT(j)                                          (0x0704+(j)*16)
740 #define NVC597_SET_STREAM_OUT_CONTROL_COMPONENT_COUNT_MAX                                                     7:0
741 
742 #define NVC597_SET_STREAM_OUT_CONTROL_STRIDE(j)                                                   (0x0708+(j)*16)
743 #define NVC597_SET_STREAM_OUT_CONTROL_STRIDE_BYTES                                                           31:0
744 
745 #define NVC597_SET_RASTER_INPUT                                                                            0x0740
746 #define NVC597_SET_RASTER_INPUT_STREAM_SELECT                                                                 1:0
747 
748 #define NVC597_SET_STREAM_OUTPUT                                                                           0x0744
749 #define NVC597_SET_STREAM_OUTPUT_ENABLE                                                                       0:0
750 #define NVC597_SET_STREAM_OUTPUT_ENABLE_FALSE                                                          0x00000000
751 #define NVC597_SET_STREAM_OUTPUT_ENABLE_TRUE                                                           0x00000001
752 
753 #define NVC597_SET_DA_PRIMITIVE_RESTART_TOPOLOGY_CHANGE                                                    0x0748
754 #define NVC597_SET_DA_PRIMITIVE_RESTART_TOPOLOGY_CHANGE_ENABLE                                                0:0
755 #define NVC597_SET_DA_PRIMITIVE_RESTART_TOPOLOGY_CHANGE_ENABLE_FALSE                                   0x00000000
756 #define NVC597_SET_DA_PRIMITIVE_RESTART_TOPOLOGY_CHANGE_ENABLE_TRUE                                    0x00000001
757 
758 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL                                                               0x0754
759 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL_PASSES                                                           3:0
760 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL_CENTROID                                                         4:4
761 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL_CENTROID_PER_FRAGMENT                                     0x00000000
762 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL_CENTROID_PER_PASS                                         0x00000001
763 #define NVC597_SET_HYBRID_ANTI_ALIAS_CONTROL_PASSES_EXTENDED                                                  5:5
764 
765 #define NVC597_SET_SHADER_LOCAL_MEMORY_WINDOW                                                              0x077c
766 #define NVC597_SET_SHADER_LOCAL_MEMORY_WINDOW_BASE_ADDRESS                                                   31:0
767 
768 #define NVC597_SET_SHADER_LOCAL_MEMORY_A                                                                   0x0790
769 #define NVC597_SET_SHADER_LOCAL_MEMORY_A_ADDRESS_UPPER                                                        7:0
770 
771 #define NVC597_SET_SHADER_LOCAL_MEMORY_B                                                                   0x0794
772 #define NVC597_SET_SHADER_LOCAL_MEMORY_B_ADDRESS_LOWER                                                       31:0
773 
774 #define NVC597_SET_SHADER_LOCAL_MEMORY_C                                                                   0x0798
775 #define NVC597_SET_SHADER_LOCAL_MEMORY_C_SIZE_UPPER                                                           5:0
776 
777 #define NVC597_SET_SHADER_LOCAL_MEMORY_D                                                                   0x079c
778 #define NVC597_SET_SHADER_LOCAL_MEMORY_D_SIZE_LOWER                                                          31:0
779 
780 #define NVC597_SET_SHADER_LOCAL_MEMORY_E                                                                   0x07a0
781 #define NVC597_SET_SHADER_LOCAL_MEMORY_E_DEFAULT_SIZE_PER_WARP                                               25:0
782 
783 #define NVC597_SET_COLOR_ZERO_BANDWIDTH_CLEAR                                                              0x07a4
784 #define NVC597_SET_COLOR_ZERO_BANDWIDTH_CLEAR_SLOT_DISABLE_MASK                                              14:0
785 
786 #define NVC597_SET_Z_ZERO_BANDWIDTH_CLEAR                                                                  0x07a8
787 #define NVC597_SET_Z_ZERO_BANDWIDTH_CLEAR_SLOT_DISABLE_MASK                                                  14:0
788 
789 #define NVC597_SET_STENCIL_ZERO_BANDWIDTH_CLEAR                                                            0x07b0
790 #define NVC597_SET_STENCIL_ZERO_BANDWIDTH_CLEAR_SLOT_DISABLE_MASK                                            14:0
791 
792 #define NVC597_SET_ZCULL_REGION_SIZE_A                                                                     0x07c0
793 #define NVC597_SET_ZCULL_REGION_SIZE_A_WIDTH                                                                 15:0
794 
795 #define NVC597_SET_ZCULL_REGION_SIZE_B                                                                     0x07c4
796 #define NVC597_SET_ZCULL_REGION_SIZE_B_HEIGHT                                                                15:0
797 
798 #define NVC597_SET_ZCULL_REGION_SIZE_C                                                                     0x07c8
799 #define NVC597_SET_ZCULL_REGION_SIZE_C_DEPTH                                                                 15:0
800 
801 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_C                                                             0x07cc
802 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_C_DEPTH                                                         15:0
803 
804 #define NVC597_SET_CULL_BEFORE_FETCH                                                                       0x07dc
805 #define NVC597_SET_CULL_BEFORE_FETCH_FETCH_STREAMS_ONCE                                                       0:0
806 #define NVC597_SET_CULL_BEFORE_FETCH_FETCH_STREAMS_ONCE_FALSE                                          0x00000000
807 #define NVC597_SET_CULL_BEFORE_FETCH_FETCH_STREAMS_ONCE_TRUE                                           0x00000001
808 
809 #define NVC597_SET_ZCULL_REGION_LOCATION                                                                   0x07e0
810 #define NVC597_SET_ZCULL_REGION_LOCATION_START_ALIQUOT                                                       15:0
811 #define NVC597_SET_ZCULL_REGION_LOCATION_ALIQUOT_COUNT                                                      31:16
812 
813 #define NVC597_SET_ZCULL_REGION_ALIQUOTS                                                                   0x07e4
814 #define NVC597_SET_ZCULL_REGION_ALIQUOTS_PER_LAYER                                                           15:0
815 
816 #define NVC597_SET_ZCULL_STORAGE_A                                                                         0x07e8
817 #define NVC597_SET_ZCULL_STORAGE_A_ADDRESS_UPPER                                                              7:0
818 
819 #define NVC597_SET_ZCULL_STORAGE_B                                                                         0x07ec
820 #define NVC597_SET_ZCULL_STORAGE_B_ADDRESS_LOWER                                                             31:0
821 
822 #define NVC597_SET_ZCULL_STORAGE_C                                                                         0x07f0
823 #define NVC597_SET_ZCULL_STORAGE_C_LIMIT_ADDRESS_UPPER                                                        7:0
824 
825 #define NVC597_SET_ZCULL_STORAGE_D                                                                         0x07f4
826 #define NVC597_SET_ZCULL_STORAGE_D_LIMIT_ADDRESS_LOWER                                                       31:0
827 
828 #define NVC597_SET_ZT_READ_ONLY                                                                            0x07f8
829 #define NVC597_SET_ZT_READ_ONLY_ENABLE_Z                                                                      0:0
830 #define NVC597_SET_ZT_READ_ONLY_ENABLE_Z_FALSE                                                         0x00000000
831 #define NVC597_SET_ZT_READ_ONLY_ENABLE_Z_TRUE                                                          0x00000001
832 #define NVC597_SET_ZT_READ_ONLY_ENABLE_STENCIL                                                                4:4
833 #define NVC597_SET_ZT_READ_ONLY_ENABLE_STENCIL_FALSE                                                   0x00000000
834 #define NVC597_SET_ZT_READ_ONLY_ENABLE_STENCIL_TRUE                                                    0x00000001
835 
836 #define NVC597_SET_COLOR_TARGET_A(j)                                                              (0x0800+(j)*64)
837 #define NVC597_SET_COLOR_TARGET_A_OFFSET_UPPER                                                                7:0
838 
839 #define NVC597_SET_COLOR_TARGET_B(j)                                                              (0x0804+(j)*64)
840 #define NVC597_SET_COLOR_TARGET_B_OFFSET_LOWER                                                               31:0
841 
842 #define NVC597_SET_COLOR_TARGET_WIDTH(j)                                                          (0x0808+(j)*64)
843 #define NVC597_SET_COLOR_TARGET_WIDTH_V                                                                      27:0
844 
845 #define NVC597_SET_COLOR_TARGET_HEIGHT(j)                                                         (0x080c+(j)*64)
846 #define NVC597_SET_COLOR_TARGET_HEIGHT_V                                                                     16:0
847 
848 #define NVC597_SET_COLOR_TARGET_FORMAT(j)                                                         (0x0810+(j)*64)
849 #define NVC597_SET_COLOR_TARGET_FORMAT_V                                                                      7:0
850 #define NVC597_SET_COLOR_TARGET_FORMAT_V_DISABLED                                                      0x00000000
851 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF32_GF32_BF32_AF32                                           0x000000C0
852 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS32_GS32_BS32_AS32                                           0x000000C1
853 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU32_GU32_BU32_AU32                                           0x000000C2
854 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF32_GF32_BF32_X32                                            0x000000C3
855 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS32_GS32_BS32_X32                                            0x000000C4
856 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU32_GU32_BU32_X32                                            0x000000C5
857 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R16_G16_B16_A16                                               0x000000C6
858 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RN16_GN16_BN16_AN16                                           0x000000C7
859 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS16_GS16_BS16_AS16                                           0x000000C8
860 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU16_GU16_BU16_AU16                                           0x000000C9
861 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF16_GF16_BF16_AF16                                           0x000000CA
862 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF32_GF32                                                     0x000000CB
863 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS32_GS32                                                     0x000000CC
864 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU32_GU32                                                     0x000000CD
865 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF16_GF16_BF16_X16                                            0x000000CE
866 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8R8G8B8                                                      0x000000CF
867 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8RL8GL8BL8                                                   0x000000D0
868 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A2B10G10R10                                                   0x000000D1
869 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AU2BU10GU10RU10                                               0x000000D2
870 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8B8G8R8                                                      0x000000D5
871 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8BL8GL8RL8                                                   0x000000D6
872 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AN8BN8GN8RN8                                                  0x000000D7
873 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AS8BS8GS8RS8                                                  0x000000D8
874 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AU8BU8GU8RU8                                                  0x000000D9
875 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R16_G16                                                       0x000000DA
876 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RN16_GN16                                                     0x000000DB
877 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS16_GS16                                                     0x000000DC
878 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU16_GU16                                                     0x000000DD
879 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF16_GF16                                                     0x000000DE
880 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A2R10G10B10                                                   0x000000DF
881 #define NVC597_SET_COLOR_TARGET_FORMAT_V_BF10GF11RF11                                                  0x000000E0
882 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS32                                                          0x000000E3
883 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU32                                                          0x000000E4
884 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF32                                                          0x000000E5
885 #define NVC597_SET_COLOR_TARGET_FORMAT_V_X8R8G8B8                                                      0x000000E6
886 #define NVC597_SET_COLOR_TARGET_FORMAT_V_X8RL8GL8BL8                                                   0x000000E7
887 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R5G6B5                                                        0x000000E8
888 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A1R5G5B5                                                      0x000000E9
889 #define NVC597_SET_COLOR_TARGET_FORMAT_V_G8R8                                                          0x000000EA
890 #define NVC597_SET_COLOR_TARGET_FORMAT_V_GN8RN8                                                        0x000000EB
891 #define NVC597_SET_COLOR_TARGET_FORMAT_V_GS8RS8                                                        0x000000EC
892 #define NVC597_SET_COLOR_TARGET_FORMAT_V_GU8RU8                                                        0x000000ED
893 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R16                                                           0x000000EE
894 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RN16                                                          0x000000EF
895 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS16                                                          0x000000F0
896 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU16                                                          0x000000F1
897 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF16                                                          0x000000F2
898 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R8                                                            0x000000F3
899 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RN8                                                           0x000000F4
900 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RS8                                                           0x000000F5
901 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RU8                                                           0x000000F6
902 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8                                                            0x000000F7
903 #define NVC597_SET_COLOR_TARGET_FORMAT_V_X1R5G5B5                                                      0x000000F8
904 #define NVC597_SET_COLOR_TARGET_FORMAT_V_X8B8G8R8                                                      0x000000F9
905 #define NVC597_SET_COLOR_TARGET_FORMAT_V_X8BL8GL8RL8                                                   0x000000FA
906 #define NVC597_SET_COLOR_TARGET_FORMAT_V_Z1R5G5B5                                                      0x000000FB
907 #define NVC597_SET_COLOR_TARGET_FORMAT_V_O1R5G5B5                                                      0x000000FC
908 #define NVC597_SET_COLOR_TARGET_FORMAT_V_Z8R8G8B8                                                      0x000000FD
909 #define NVC597_SET_COLOR_TARGET_FORMAT_V_O8R8G8B8                                                      0x000000FE
910 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R32                                                           0x000000FF
911 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A16                                                           0x00000040
912 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AF16                                                          0x00000041
913 #define NVC597_SET_COLOR_TARGET_FORMAT_V_AF32                                                          0x00000042
914 #define NVC597_SET_COLOR_TARGET_FORMAT_V_A8R8                                                          0x00000043
915 #define NVC597_SET_COLOR_TARGET_FORMAT_V_R16_A16                                                       0x00000044
916 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF16_AF16                                                     0x00000045
917 #define NVC597_SET_COLOR_TARGET_FORMAT_V_RF32_AF32                                                     0x00000046
918 #define NVC597_SET_COLOR_TARGET_FORMAT_V_B8G8R8A8                                                      0x00000047
919 
920 #define NVC597_SET_COLOR_TARGET_MEMORY(j)                                                         (0x0814+(j)*64)
921 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_WIDTH                                                            3:0
922 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_WIDTH_ONE_GOB                                             0x00000000
923 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT                                                           7:4
924 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_ONE_GOB                                            0x00000000
925 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_TWO_GOBS                                           0x00000001
926 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_FOUR_GOBS                                          0x00000002
927 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_EIGHT_GOBS                                         0x00000003
928 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_SIXTEEN_GOBS                                       0x00000004
929 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_HEIGHT_THIRTYTWO_GOBS                                     0x00000005
930 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH                                                           11:8
931 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_ONE_GOB                                             0x00000000
932 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_TWO_GOBS                                            0x00000001
933 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_FOUR_GOBS                                           0x00000002
934 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_EIGHT_GOBS                                          0x00000003
935 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_SIXTEEN_GOBS                                        0x00000004
936 #define NVC597_SET_COLOR_TARGET_MEMORY_BLOCK_DEPTH_THIRTYTWO_GOBS                                      0x00000005
937 #define NVC597_SET_COLOR_TARGET_MEMORY_LAYOUT                                                               12:12
938 #define NVC597_SET_COLOR_TARGET_MEMORY_LAYOUT_BLOCKLINEAR                                              0x00000000
939 #define NVC597_SET_COLOR_TARGET_MEMORY_LAYOUT_PITCH                                                    0x00000001
940 #define NVC597_SET_COLOR_TARGET_MEMORY_THIRD_DIMENSION_CONTROL                                              16:16
941 #define NVC597_SET_COLOR_TARGET_MEMORY_THIRD_DIMENSION_CONTROL_THIRD_DIMENSION_DEFINES_ARRAY_SIZE             0x00000000
942 #define NVC597_SET_COLOR_TARGET_MEMORY_THIRD_DIMENSION_CONTROL_THIRD_DIMENSION_DEFINES_DEPTH_SIZE             0x00000001
943 
944 #define NVC597_SET_COLOR_TARGET_THIRD_DIMENSION(j)                                                (0x0818+(j)*64)
945 #define NVC597_SET_COLOR_TARGET_THIRD_DIMENSION_V                                                            27:0
946 
947 #define NVC597_SET_COLOR_TARGET_ARRAY_PITCH(j)                                                    (0x081c+(j)*64)
948 #define NVC597_SET_COLOR_TARGET_ARRAY_PITCH_V                                                                31:0
949 
950 #define NVC597_SET_COLOR_TARGET_LAYER(j)                                                          (0x0820+(j)*64)
951 #define NVC597_SET_COLOR_TARGET_LAYER_OFFSET                                                                 15:0
952 
953 #define NVC597_SET_COLOR_TARGET_RESERVED_A(j)                                                     (0x0824+(j)*64)
954 #define NVC597_SET_COLOR_TARGET_RESERVED_A_V                                                                  0:0
955 
956 #define NVC597_SET_VIEWPORT_SCALE_X(j)                                                            (0x0a00+(j)*32)
957 #define NVC597_SET_VIEWPORT_SCALE_X_V                                                                        31:0
958 
959 #define NVC597_SET_VIEWPORT_SCALE_Y(j)                                                            (0x0a04+(j)*32)
960 #define NVC597_SET_VIEWPORT_SCALE_Y_V                                                                        31:0
961 
962 #define NVC597_SET_VIEWPORT_SCALE_Z(j)                                                            (0x0a08+(j)*32)
963 #define NVC597_SET_VIEWPORT_SCALE_Z_V                                                                        31:0
964 
965 #define NVC597_SET_VIEWPORT_OFFSET_X(j)                                                           (0x0a0c+(j)*32)
966 #define NVC597_SET_VIEWPORT_OFFSET_X_V                                                                       31:0
967 
968 #define NVC597_SET_VIEWPORT_OFFSET_Y(j)                                                           (0x0a10+(j)*32)
969 #define NVC597_SET_VIEWPORT_OFFSET_Y_V                                                                       31:0
970 
971 #define NVC597_SET_VIEWPORT_OFFSET_Z(j)                                                           (0x0a14+(j)*32)
972 #define NVC597_SET_VIEWPORT_OFFSET_Z_V                                                                       31:0
973 
974 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE(j)                                                 (0x0a18+(j)*32)
975 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X                                                              2:0
976 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_POS_X                                                 0x00000000
977 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_NEG_X                                                 0x00000001
978 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_POS_Y                                                 0x00000002
979 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_NEG_Y                                                 0x00000003
980 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_POS_Z                                                 0x00000004
981 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_NEG_Z                                                 0x00000005
982 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_POS_W                                                 0x00000006
983 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_X_NEG_W                                                 0x00000007
984 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y                                                              6:4
985 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_POS_X                                                 0x00000000
986 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_NEG_X                                                 0x00000001
987 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_POS_Y                                                 0x00000002
988 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_NEG_Y                                                 0x00000003
989 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_POS_Z                                                 0x00000004
990 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_NEG_Z                                                 0x00000005
991 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_POS_W                                                 0x00000006
992 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Y_NEG_W                                                 0x00000007
993 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z                                                             10:8
994 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_POS_X                                                 0x00000000
995 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_NEG_X                                                 0x00000001
996 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_POS_Y                                                 0x00000002
997 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_NEG_Y                                                 0x00000003
998 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_POS_Z                                                 0x00000004
999 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_NEG_Z                                                 0x00000005
1000 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_POS_W                                                 0x00000006
1001 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_Z_NEG_W                                                 0x00000007
1002 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W                                                            14:12
1003 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_POS_X                                                 0x00000000
1004 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_NEG_X                                                 0x00000001
1005 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_POS_Y                                                 0x00000002
1006 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_NEG_Y                                                 0x00000003
1007 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_POS_Z                                                 0x00000004
1008 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_NEG_Z                                                 0x00000005
1009 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_POS_W                                                 0x00000006
1010 #define NVC597_SET_VIEWPORT_COORDINATE_SWIZZLE_W_NEG_W                                                 0x00000007
1011 
1012 #define NVC597_SET_VIEWPORT_INCREASE_SNAP_GRID_PRECISION(j)                                       (0x0a1c+(j)*32)
1013 #define NVC597_SET_VIEWPORT_INCREASE_SNAP_GRID_PRECISION_X_BITS                                               4:0
1014 #define NVC597_SET_VIEWPORT_INCREASE_SNAP_GRID_PRECISION_Y_BITS                                              12:8
1015 
1016 #define NVC597_SET_VIEWPORT_CLIP_HORIZONTAL(j)                                                    (0x0c00+(j)*16)
1017 #define NVC597_SET_VIEWPORT_CLIP_HORIZONTAL_X0                                                               15:0
1018 #define NVC597_SET_VIEWPORT_CLIP_HORIZONTAL_WIDTH                                                           31:16
1019 
1020 #define NVC597_SET_VIEWPORT_CLIP_VERTICAL(j)                                                      (0x0c04+(j)*16)
1021 #define NVC597_SET_VIEWPORT_CLIP_VERTICAL_Y0                                                                 15:0
1022 #define NVC597_SET_VIEWPORT_CLIP_VERTICAL_HEIGHT                                                            31:16
1023 
1024 #define NVC597_SET_VIEWPORT_CLIP_MIN_Z(j)                                                         (0x0c08+(j)*16)
1025 #define NVC597_SET_VIEWPORT_CLIP_MIN_Z_V                                                                     31:0
1026 
1027 #define NVC597_SET_VIEWPORT_CLIP_MAX_Z(j)                                                         (0x0c0c+(j)*16)
1028 #define NVC597_SET_VIEWPORT_CLIP_MAX_Z_V                                                                     31:0
1029 
1030 #define NVC597_SET_WINDOW_CLIP_HORIZONTAL(j)                                                       (0x0d00+(j)*8)
1031 #define NVC597_SET_WINDOW_CLIP_HORIZONTAL_XMIN                                                               15:0
1032 #define NVC597_SET_WINDOW_CLIP_HORIZONTAL_XMAX                                                              31:16
1033 
1034 #define NVC597_SET_WINDOW_CLIP_VERTICAL(j)                                                         (0x0d04+(j)*8)
1035 #define NVC597_SET_WINDOW_CLIP_VERTICAL_YMIN                                                                 15:0
1036 #define NVC597_SET_WINDOW_CLIP_VERTICAL_YMAX                                                                31:16
1037 
1038 #define NVC597_SET_CLIP_ID_EXTENT_X(j)                                                             (0x0d40+(j)*8)
1039 #define NVC597_SET_CLIP_ID_EXTENT_X_MINX                                                                     15:0
1040 #define NVC597_SET_CLIP_ID_EXTENT_X_WIDTH                                                                   31:16
1041 
1042 #define NVC597_SET_CLIP_ID_EXTENT_Y(j)                                                             (0x0d44+(j)*8)
1043 #define NVC597_SET_CLIP_ID_EXTENT_Y_MINY                                                                     15:0
1044 #define NVC597_SET_CLIP_ID_EXTENT_Y_HEIGHT                                                                  31:16
1045 
1046 #define NVC597_SET_MAX_STREAM_OUTPUT_GS_INSTANCES_PER_TASK                                                 0x0d60
1047 #define NVC597_SET_MAX_STREAM_OUTPUT_GS_INSTANCES_PER_TASK_V                                                 10:0
1048 
1049 #define NVC597_SET_API_VISIBLE_CALL_LIMIT                                                                  0x0d64
1050 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V                                                                   3:0
1051 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__0                                                         0x00000000
1052 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__1                                                         0x00000001
1053 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__2                                                         0x00000002
1054 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__4                                                         0x00000003
1055 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__8                                                         0x00000004
1056 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__16                                                        0x00000005
1057 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__32                                                        0x00000006
1058 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__64                                                        0x00000007
1059 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V__128                                                       0x00000008
1060 #define NVC597_SET_API_VISIBLE_CALL_LIMIT_V_NO_CHECK                                                   0x0000000F
1061 
1062 #define NVC597_SET_STATISTICS_COUNTER                                                                      0x0d68
1063 #define NVC597_SET_STATISTICS_COUNTER_DA_VERTICES_GENERATED_ENABLE                                            0:0
1064 #define NVC597_SET_STATISTICS_COUNTER_DA_VERTICES_GENERATED_ENABLE_FALSE                               0x00000000
1065 #define NVC597_SET_STATISTICS_COUNTER_DA_VERTICES_GENERATED_ENABLE_TRUE                                0x00000001
1066 #define NVC597_SET_STATISTICS_COUNTER_DA_PRIMITIVES_GENERATED_ENABLE                                          1:1
1067 #define NVC597_SET_STATISTICS_COUNTER_DA_PRIMITIVES_GENERATED_ENABLE_FALSE                             0x00000000
1068 #define NVC597_SET_STATISTICS_COUNTER_DA_PRIMITIVES_GENERATED_ENABLE_TRUE                              0x00000001
1069 #define NVC597_SET_STATISTICS_COUNTER_VS_INVOCATIONS_ENABLE                                                   2:2
1070 #define NVC597_SET_STATISTICS_COUNTER_VS_INVOCATIONS_ENABLE_FALSE                                      0x00000000
1071 #define NVC597_SET_STATISTICS_COUNTER_VS_INVOCATIONS_ENABLE_TRUE                                       0x00000001
1072 #define NVC597_SET_STATISTICS_COUNTER_GS_INVOCATIONS_ENABLE                                                   3:3
1073 #define NVC597_SET_STATISTICS_COUNTER_GS_INVOCATIONS_ENABLE_FALSE                                      0x00000000
1074 #define NVC597_SET_STATISTICS_COUNTER_GS_INVOCATIONS_ENABLE_TRUE                                       0x00000001
1075 #define NVC597_SET_STATISTICS_COUNTER_GS_PRIMITIVES_GENERATED_ENABLE                                          4:4
1076 #define NVC597_SET_STATISTICS_COUNTER_GS_PRIMITIVES_GENERATED_ENABLE_FALSE                             0x00000000
1077 #define NVC597_SET_STATISTICS_COUNTER_GS_PRIMITIVES_GENERATED_ENABLE_TRUE                              0x00000001
1078 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_SUCCEEDED_ENABLE                                   5:5
1079 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_SUCCEEDED_ENABLE_FALSE                      0x00000000
1080 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_SUCCEEDED_ENABLE_TRUE                       0x00000001
1081 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_NEEDED_ENABLE                                      6:6
1082 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_NEEDED_ENABLE_FALSE                         0x00000000
1083 #define NVC597_SET_STATISTICS_COUNTER_STREAMING_PRIMITIVES_NEEDED_ENABLE_TRUE                          0x00000001
1084 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_INVOCATIONS_ENABLE                                              7:7
1085 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_INVOCATIONS_ENABLE_FALSE                                 0x00000000
1086 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_INVOCATIONS_ENABLE_TRUE                                  0x00000001
1087 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_PRIMITIVES_GENERATED_ENABLE                                     8:8
1088 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_PRIMITIVES_GENERATED_ENABLE_FALSE                        0x00000000
1089 #define NVC597_SET_STATISTICS_COUNTER_CLIPPER_PRIMITIVES_GENERATED_ENABLE_TRUE                         0x00000001
1090 #define NVC597_SET_STATISTICS_COUNTER_PS_INVOCATIONS_ENABLE                                                   9:9
1091 #define NVC597_SET_STATISTICS_COUNTER_PS_INVOCATIONS_ENABLE_FALSE                                      0x00000000
1092 #define NVC597_SET_STATISTICS_COUNTER_PS_INVOCATIONS_ENABLE_TRUE                                       0x00000001
1093 #define NVC597_SET_STATISTICS_COUNTER_TI_INVOCATIONS_ENABLE                                                 11:11
1094 #define NVC597_SET_STATISTICS_COUNTER_TI_INVOCATIONS_ENABLE_FALSE                                      0x00000000
1095 #define NVC597_SET_STATISTICS_COUNTER_TI_INVOCATIONS_ENABLE_TRUE                                       0x00000001
1096 #define NVC597_SET_STATISTICS_COUNTER_TS_INVOCATIONS_ENABLE                                                 12:12
1097 #define NVC597_SET_STATISTICS_COUNTER_TS_INVOCATIONS_ENABLE_FALSE                                      0x00000000
1098 #define NVC597_SET_STATISTICS_COUNTER_TS_INVOCATIONS_ENABLE_TRUE                                       0x00000001
1099 #define NVC597_SET_STATISTICS_COUNTER_TS_PRIMITIVES_GENERATED_ENABLE                                        13:13
1100 #define NVC597_SET_STATISTICS_COUNTER_TS_PRIMITIVES_GENERATED_ENABLE_FALSE                             0x00000000
1101 #define NVC597_SET_STATISTICS_COUNTER_TS_PRIMITIVES_GENERATED_ENABLE_TRUE                              0x00000001
1102 #define NVC597_SET_STATISTICS_COUNTER_TOTAL_STREAMING_PRIMITIVES_NEEDED_SUCCEEDED_ENABLE                    14:14
1103 #define NVC597_SET_STATISTICS_COUNTER_TOTAL_STREAMING_PRIMITIVES_NEEDED_SUCCEEDED_ENABLE_FALSE             0x00000000
1104 #define NVC597_SET_STATISTICS_COUNTER_TOTAL_STREAMING_PRIMITIVES_NEEDED_SUCCEEDED_ENABLE_TRUE             0x00000001
1105 #define NVC597_SET_STATISTICS_COUNTER_VTG_PRIMITIVES_OUT_ENABLE                                             10:10
1106 #define NVC597_SET_STATISTICS_COUNTER_VTG_PRIMITIVES_OUT_ENABLE_FALSE                                  0x00000000
1107 #define NVC597_SET_STATISTICS_COUNTER_VTG_PRIMITIVES_OUT_ENABLE_TRUE                                   0x00000001
1108 #define NVC597_SET_STATISTICS_COUNTER_ALPHA_BETA_CLOCKS_ENABLE                                              15:15
1109 #define NVC597_SET_STATISTICS_COUNTER_ALPHA_BETA_CLOCKS_ENABLE_FALSE                                   0x00000000
1110 #define NVC597_SET_STATISTICS_COUNTER_ALPHA_BETA_CLOCKS_ENABLE_TRUE                                    0x00000001
1111 #define NVC597_SET_STATISTICS_COUNTER_SCG_CLOCKS_ENABLE                                                     16:16
1112 #define NVC597_SET_STATISTICS_COUNTER_SCG_CLOCKS_ENABLE_FALSE                                          0x00000000
1113 #define NVC597_SET_STATISTICS_COUNTER_SCG_CLOCKS_ENABLE_TRUE                                           0x00000001
1114 
1115 #define NVC597_SET_CLEAR_RECT_HORIZONTAL                                                                   0x0d6c
1116 #define NVC597_SET_CLEAR_RECT_HORIZONTAL_XMIN                                                                15:0
1117 #define NVC597_SET_CLEAR_RECT_HORIZONTAL_XMAX                                                               31:16
1118 
1119 #define NVC597_SET_CLEAR_RECT_VERTICAL                                                                     0x0d70
1120 #define NVC597_SET_CLEAR_RECT_VERTICAL_YMIN                                                                  15:0
1121 #define NVC597_SET_CLEAR_RECT_VERTICAL_YMAX                                                                 31:16
1122 
1123 #define NVC597_SET_VERTEX_ARRAY_START                                                                      0x0d74
1124 #define NVC597_SET_VERTEX_ARRAY_START_V                                                                      31:0
1125 
1126 #define NVC597_DRAW_VERTEX_ARRAY                                                                           0x0d78
1127 #define NVC597_DRAW_VERTEX_ARRAY_COUNT                                                                       31:0
1128 
1129 #define NVC597_SET_VIEWPORT_Z_CLIP                                                                         0x0d7c
1130 #define NVC597_SET_VIEWPORT_Z_CLIP_RANGE                                                                      0:0
1131 #define NVC597_SET_VIEWPORT_Z_CLIP_RANGE_NEGATIVE_W_TO_POSITIVE_W                                      0x00000000
1132 #define NVC597_SET_VIEWPORT_Z_CLIP_RANGE_ZERO_TO_POSITIVE_W                                            0x00000001
1133 
1134 #define NVC597_SET_COLOR_CLEAR_VALUE(i)                                                            (0x0d80+(i)*4)
1135 #define NVC597_SET_COLOR_CLEAR_VALUE_V                                                                       31:0
1136 
1137 #define NVC597_SET_Z_CLEAR_VALUE                                                                           0x0d90
1138 #define NVC597_SET_Z_CLEAR_VALUE_V                                                                           31:0
1139 
1140 #define NVC597_SET_SHADER_CACHE_CONTROL                                                                    0x0d94
1141 #define NVC597_SET_SHADER_CACHE_CONTROL_ICACHE_PREFETCH_ENABLE                                                0:0
1142 #define NVC597_SET_SHADER_CACHE_CONTROL_ICACHE_PREFETCH_ENABLE_FALSE                                   0x00000000
1143 #define NVC597_SET_SHADER_CACHE_CONTROL_ICACHE_PREFETCH_ENABLE_TRUE                                    0x00000001
1144 
1145 #define NVC597_FORCE_TRANSITION_TO_BETA                                                                    0x0d98
1146 #define NVC597_FORCE_TRANSITION_TO_BETA_V                                                                     0:0
1147 
1148 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_ENABLE                                                          0x0d9c
1149 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_ENABLE_V                                                           0:0
1150 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_ENABLE_V_FALSE                                              0x00000000
1151 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_ENABLE_V_TRUE                                               0x00000001
1152 
1153 #define NVC597_SET_STENCIL_CLEAR_VALUE                                                                     0x0da0
1154 #define NVC597_SET_STENCIL_CLEAR_VALUE_V                                                                      7:0
1155 
1156 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI                                                             0x0da4
1157 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_INSTRUCTION                                                    0:0
1158 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_INSTRUCTION_FALSE                                       0x00000000
1159 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_INSTRUCTION_TRUE                                        0x00000001
1160 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_GLOBAL_DATA                                                    4:4
1161 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_GLOBAL_DATA_FALSE                                       0x00000000
1162 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_GLOBAL_DATA_TRUE                                        0x00000001
1163 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_CONSTANT                                                     12:12
1164 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_CONSTANT_FALSE                                          0x00000000
1165 #define NVC597_INVALIDATE_SHADER_CACHES_NO_WFI_CONSTANT_TRUE                                           0x00000001
1166 
1167 #define NVC597_SET_ZCULL_SERIALIZATION                                                                     0x0da8
1168 #define NVC597_SET_ZCULL_SERIALIZATION_ENABLE                                                                 0:0
1169 #define NVC597_SET_ZCULL_SERIALIZATION_ENABLE_FALSE                                                    0x00000000
1170 #define NVC597_SET_ZCULL_SERIALIZATION_ENABLE_TRUE                                                     0x00000001
1171 #define NVC597_SET_ZCULL_SERIALIZATION_APPLIED                                                                5:4
1172 #define NVC597_SET_ZCULL_SERIALIZATION_APPLIED_ALWAYS                                                  0x00000000
1173 #define NVC597_SET_ZCULL_SERIALIZATION_APPLIED_LATE_Z                                                  0x00000001
1174 #define NVC597_SET_ZCULL_SERIALIZATION_APPLIED_OUT_OF_GAMUT_Z                                          0x00000002
1175 #define NVC597_SET_ZCULL_SERIALIZATION_APPLIED_LATE_Z_OR_OUT_OF_GAMUT_Z                                0x00000003
1176 
1177 #define NVC597_SET_FRONT_POLYGON_MODE                                                                      0x0dac
1178 #define NVC597_SET_FRONT_POLYGON_MODE_V                                                                      31:0
1179 #define NVC597_SET_FRONT_POLYGON_MODE_V_POINT                                                          0x00001B00
1180 #define NVC597_SET_FRONT_POLYGON_MODE_V_LINE                                                           0x00001B01
1181 #define NVC597_SET_FRONT_POLYGON_MODE_V_FILL                                                           0x00001B02
1182 
1183 #define NVC597_SET_BACK_POLYGON_MODE                                                                       0x0db0
1184 #define NVC597_SET_BACK_POLYGON_MODE_V                                                                       31:0
1185 #define NVC597_SET_BACK_POLYGON_MODE_V_POINT                                                           0x00001B00
1186 #define NVC597_SET_BACK_POLYGON_MODE_V_LINE                                                            0x00001B01
1187 #define NVC597_SET_BACK_POLYGON_MODE_V_FILL                                                            0x00001B02
1188 
1189 #define NVC597_SET_POLY_SMOOTH                                                                             0x0db4
1190 #define NVC597_SET_POLY_SMOOTH_ENABLE                                                                         0:0
1191 #define NVC597_SET_POLY_SMOOTH_ENABLE_FALSE                                                            0x00000000
1192 #define NVC597_SET_POLY_SMOOTH_ENABLE_TRUE                                                             0x00000001
1193 
1194 #define NVC597_SET_ZCULL_DIR_FORMAT                                                                        0x0dbc
1195 #define NVC597_SET_ZCULL_DIR_FORMAT_ZDIR                                                                     15:0
1196 #define NVC597_SET_ZCULL_DIR_FORMAT_ZDIR_LESS                                                          0x00000000
1197 #define NVC597_SET_ZCULL_DIR_FORMAT_ZDIR_GREATER                                                       0x00000001
1198 #define NVC597_SET_ZCULL_DIR_FORMAT_ZFORMAT                                                                 31:16
1199 #define NVC597_SET_ZCULL_DIR_FORMAT_ZFORMAT_MSB                                                        0x00000000
1200 #define NVC597_SET_ZCULL_DIR_FORMAT_ZFORMAT_FP                                                         0x00000001
1201 #define NVC597_SET_ZCULL_DIR_FORMAT_ZFORMAT_ZTRICK                                                     0x00000002
1202 #define NVC597_SET_ZCULL_DIR_FORMAT_ZFORMAT_ZF32_1                                                     0x00000003
1203 
1204 #define NVC597_SET_POLY_OFFSET_POINT                                                                       0x0dc0
1205 #define NVC597_SET_POLY_OFFSET_POINT_ENABLE                                                                   0:0
1206 #define NVC597_SET_POLY_OFFSET_POINT_ENABLE_FALSE                                                      0x00000000
1207 #define NVC597_SET_POLY_OFFSET_POINT_ENABLE_TRUE                                                       0x00000001
1208 
1209 #define NVC597_SET_POLY_OFFSET_LINE                                                                        0x0dc4
1210 #define NVC597_SET_POLY_OFFSET_LINE_ENABLE                                                                    0:0
1211 #define NVC597_SET_POLY_OFFSET_LINE_ENABLE_FALSE                                                       0x00000000
1212 #define NVC597_SET_POLY_OFFSET_LINE_ENABLE_TRUE                                                        0x00000001
1213 
1214 #define NVC597_SET_POLY_OFFSET_FILL                                                                        0x0dc8
1215 #define NVC597_SET_POLY_OFFSET_FILL_ENABLE                                                                    0:0
1216 #define NVC597_SET_POLY_OFFSET_FILL_ENABLE_FALSE                                                       0x00000000
1217 #define NVC597_SET_POLY_OFFSET_FILL_ENABLE_TRUE                                                        0x00000001
1218 
1219 #define NVC597_SET_PATCH                                                                                   0x0dcc
1220 #define NVC597_SET_PATCH_SIZE                                                                                 7:0
1221 
1222 #define NVC597_SET_ITERATED_BLEND                                                                          0x0dd0
1223 #define NVC597_SET_ITERATED_BLEND_ENABLE                                                                      0:0
1224 #define NVC597_SET_ITERATED_BLEND_ENABLE_FALSE                                                         0x00000000
1225 #define NVC597_SET_ITERATED_BLEND_ENABLE_TRUE                                                          0x00000001
1226 #define NVC597_SET_ITERATED_BLEND_ALPHA_ENABLE                                                                1:1
1227 #define NVC597_SET_ITERATED_BLEND_ALPHA_ENABLE_FALSE                                                   0x00000000
1228 #define NVC597_SET_ITERATED_BLEND_ALPHA_ENABLE_TRUE                                                    0x00000001
1229 
1230 #define NVC597_SET_ITERATED_BLEND_PASS                                                                     0x0dd4
1231 #define NVC597_SET_ITERATED_BLEND_PASS_COUNT                                                                  7:0
1232 
1233 #define NVC597_SET_ZCULL_CRITERION                                                                         0x0dd8
1234 #define NVC597_SET_ZCULL_CRITERION_SFUNC                                                                      7:0
1235 #define NVC597_SET_ZCULL_CRITERION_SFUNC_NEVER                                                         0x00000000
1236 #define NVC597_SET_ZCULL_CRITERION_SFUNC_LESS                                                          0x00000001
1237 #define NVC597_SET_ZCULL_CRITERION_SFUNC_EQUAL                                                         0x00000002
1238 #define NVC597_SET_ZCULL_CRITERION_SFUNC_LEQUAL                                                        0x00000003
1239 #define NVC597_SET_ZCULL_CRITERION_SFUNC_GREATER                                                       0x00000004
1240 #define NVC597_SET_ZCULL_CRITERION_SFUNC_NOTEQUAL                                                      0x00000005
1241 #define NVC597_SET_ZCULL_CRITERION_SFUNC_GEQUAL                                                        0x00000006
1242 #define NVC597_SET_ZCULL_CRITERION_SFUNC_ALWAYS                                                        0x00000007
1243 #define NVC597_SET_ZCULL_CRITERION_NO_INVALIDATE                                                              8:8
1244 #define NVC597_SET_ZCULL_CRITERION_NO_INVALIDATE_FALSE                                                 0x00000000
1245 #define NVC597_SET_ZCULL_CRITERION_NO_INVALIDATE_TRUE                                                  0x00000001
1246 #define NVC597_SET_ZCULL_CRITERION_FORCE_MATCH                                                                9:9
1247 #define NVC597_SET_ZCULL_CRITERION_FORCE_MATCH_FALSE                                                   0x00000000
1248 #define NVC597_SET_ZCULL_CRITERION_FORCE_MATCH_TRUE                                                    0x00000001
1249 #define NVC597_SET_ZCULL_CRITERION_SREF                                                                     23:16
1250 #define NVC597_SET_ZCULL_CRITERION_SMASK                                                                    31:24
1251 
1252 #define NVC597_PIXEL_SHADER_BARRIER                                                                        0x0de0
1253 #define NVC597_PIXEL_SHADER_BARRIER_SYSMEMBAR_ENABLE                                                          0:0
1254 #define NVC597_PIXEL_SHADER_BARRIER_SYSMEMBAR_ENABLE_FALSE                                             0x00000000
1255 #define NVC597_PIXEL_SHADER_BARRIER_SYSMEMBAR_ENABLE_TRUE                                              0x00000001
1256 
1257 #define NVC597_SET_SM_TIMEOUT_INTERVAL                                                                     0x0de4
1258 #define NVC597_SET_SM_TIMEOUT_INTERVAL_COUNTER_BIT                                                            5:0
1259 
1260 #define NVC597_SET_DA_PRIMITIVE_RESTART_VERTEX_ARRAY                                                       0x0de8
1261 #define NVC597_SET_DA_PRIMITIVE_RESTART_VERTEX_ARRAY_ENABLE                                                   0:0
1262 #define NVC597_SET_DA_PRIMITIVE_RESTART_VERTEX_ARRAY_ENABLE_FALSE                                      0x00000000
1263 #define NVC597_SET_DA_PRIMITIVE_RESTART_VERTEX_ARRAY_ENABLE_TRUE                                       0x00000001
1264 
1265 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_POINTER                                                     0x0df0
1266 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_POINTER_V                                                      7:0
1267 
1268 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION                                                             0x0df4
1269 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC                                                        2:0
1270 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_FALSE                                           0x00000000
1271 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_TRUE                                            0x00000001
1272 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_EQ                                              0x00000002
1273 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_NE                                              0x00000003
1274 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_LT                                              0x00000004
1275 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_LE                                              0x00000005
1276 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_GT                                              0x00000006
1277 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_TEST_CC_GE                                              0x00000007
1278 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION                                                      5:3
1279 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_ADD_PRODUCTS                                  0x00000000
1280 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_SUB_PRODUCTS                                  0x00000001
1281 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_MIN                                           0x00000002
1282 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_MAX                                           0x00000003
1283 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_RCP                                           0x00000004
1284 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_ADD                                           0x00000005
1285 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERATION_SUBTRACT                                      0x00000006
1286 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT                                          8:6
1287 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT0                         0x00000000
1288 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT1                         0x00000001
1289 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT2                         0x00000002
1290 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT3                         0x00000003
1291 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT4                         0x00000004
1292 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT5                         0x00000005
1293 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT6                         0x00000006
1294 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_CONSTANT_INPUT_SELECT_CONSTANT7                         0x00000007
1295 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT                                              11:9
1296 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_SRC_RGB                                0x00000000
1297 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_DEST_RGB                               0x00000001
1298 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_SRC_AAA                                0x00000002
1299 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_DEST_AAA                               0x00000003
1300 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_TEMP0_RGB                              0x00000004
1301 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_TEMP1_RGB                              0x00000005
1302 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_TEMP2_RGB                              0x00000006
1303 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_A_SELECT_PBR_RGB                                0x00000007
1304 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT                                             15:12
1305 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_ZERO                                   0x00000000
1306 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_ONE                                    0x00000001
1307 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_SRC_RGB                                0x00000002
1308 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_SRC_AAA                                0x00000003
1309 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_ONE_MINUS_SRC_AAA                      0x00000004
1310 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_DEST_RGB                               0x00000005
1311 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_DEST_AAA                               0x00000006
1312 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_ONE_MINUS_DEST_AAA                     0x00000007
1313 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_TEMP0_RGB                              0x00000009
1314 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_TEMP1_RGB                              0x0000000A
1315 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_TEMP2_RGB                              0x0000000B
1316 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_PBR_RGB                                0x0000000C
1317 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_CONSTANT_RGB                           0x0000000D
1318 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_B_SELECT_ZERO_A_TIMES_B                         0x0000000E
1319 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT                                             18:16
1320 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_SRC_RGB                                0x00000000
1321 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_DEST_RGB                               0x00000001
1322 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_SRC_AAA                                0x00000002
1323 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_DEST_AAA                               0x00000003
1324 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_TEMP0_RGB                              0x00000004
1325 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_TEMP1_RGB                              0x00000005
1326 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_TEMP2_RGB                              0x00000006
1327 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_C_SELECT_PBR_RGB                                0x00000007
1328 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT                                             22:19
1329 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_ZERO                                   0x00000000
1330 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_ONE                                    0x00000001
1331 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_SRC_RGB                                0x00000002
1332 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_SRC_AAA                                0x00000003
1333 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_ONE_MINUS_SRC_AAA                      0x00000004
1334 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_DEST_RGB                               0x00000005
1335 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_DEST_AAA                               0x00000006
1336 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_ONE_MINUS_DEST_AAA                     0x00000007
1337 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_TEMP0_RGB                              0x00000009
1338 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_TEMP1_RGB                              0x0000000A
1339 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_TEMP2_RGB                              0x0000000B
1340 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_PBR_RGB                                0x0000000C
1341 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_CONSTANT_RGB                           0x0000000D
1342 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OPERAND_D_SELECT_ZERO_C_TIMES_D                         0x0000000E
1343 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE                                               25:23
1344 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_RGB                                      0x00000000
1345 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_GBR                                      0x00000001
1346 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_RRR                                      0x00000002
1347 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_GGG                                      0x00000003
1348 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_BBB                                      0x00000004
1349 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_SWIZZLE_R_TO_A                                   0x00000005
1350 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_WRITE_MASK                                            27:26
1351 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_WRITE_MASK_RGB                                   0x00000000
1352 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_WRITE_MASK_R_ONLY                                0x00000001
1353 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_WRITE_MASK_G_ONLY                                0x00000002
1354 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_OUTPUT_WRITE_MASK_B_ONLY                                0x00000003
1355 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_PASS_OUTPUT                                                  29:28
1356 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_PASS_OUTPUT_TEMP0                                       0x00000000
1357 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_PASS_OUTPUT_TEMP1                                       0x00000001
1358 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_PASS_OUTPUT_TEMP2                                       0x00000002
1359 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_PASS_OUTPUT_NONE                                        0x00000003
1360 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_SET_CC                                                       31:31
1361 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_SET_CC_FALSE                                            0x00000000
1362 #define NVC597_LOAD_ITERATED_BLEND_INSTRUCTION_SET_CC_TRUE                                             0x00000001
1363 
1364 #define NVC597_SET_WINDOW_OFFSET_X                                                                         0x0df8
1365 #define NVC597_SET_WINDOW_OFFSET_X_V                                                                         16:0
1366 
1367 #define NVC597_SET_WINDOW_OFFSET_Y                                                                         0x0dfc
1368 #define NVC597_SET_WINDOW_OFFSET_Y_V                                                                         17:0
1369 
1370 #define NVC597_SET_SCISSOR_ENABLE(j)                                                              (0x0e00+(j)*16)
1371 #define NVC597_SET_SCISSOR_ENABLE_V                                                                           0:0
1372 #define NVC597_SET_SCISSOR_ENABLE_V_FALSE                                                              0x00000000
1373 #define NVC597_SET_SCISSOR_ENABLE_V_TRUE                                                               0x00000001
1374 
1375 #define NVC597_SET_SCISSOR_HORIZONTAL(j)                                                          (0x0e04+(j)*16)
1376 #define NVC597_SET_SCISSOR_HORIZONTAL_XMIN                                                                   15:0
1377 #define NVC597_SET_SCISSOR_HORIZONTAL_XMAX                                                                  31:16
1378 
1379 #define NVC597_SET_SCISSOR_VERTICAL(j)                                                            (0x0e08+(j)*16)
1380 #define NVC597_SET_SCISSOR_VERTICAL_YMIN                                                                     15:0
1381 #define NVC597_SET_SCISSOR_VERTICAL_YMAX                                                                    31:16
1382 
1383 #define NVC597_SET_VPC_PERF_KNOB                                                                           0x0f14
1384 #define NVC597_SET_VPC_PERF_KNOB_CULLED_SMALL_LINES                                                           7:0
1385 #define NVC597_SET_VPC_PERF_KNOB_CULLED_SMALL_TRIANGLES                                                      15:8
1386 #define NVC597_SET_VPC_PERF_KNOB_NONCULLED_LINES_AND_POINTS                                                 23:16
1387 #define NVC597_SET_VPC_PERF_KNOB_NONCULLED_TRIANGLES                                                        31:24
1388 
1389 #define NVC597_PM_LOCAL_TRIGGER                                                                            0x0f18
1390 #define NVC597_PM_LOCAL_TRIGGER_BOOKMARK                                                                     15:0
1391 
1392 #define NVC597_SET_POST_Z_PS_IMASK                                                                         0x0f1c
1393 #define NVC597_SET_POST_Z_PS_IMASK_ENABLE                                                                     0:0
1394 #define NVC597_SET_POST_Z_PS_IMASK_ENABLE_FALSE                                                        0x00000000
1395 #define NVC597_SET_POST_Z_PS_IMASK_ENABLE_TRUE                                                         0x00000001
1396 
1397 #define NVC597_SET_CONSTANT_COLOR_RENDERING                                                                0x0f40
1398 #define NVC597_SET_CONSTANT_COLOR_RENDERING_ENABLE                                                            0:0
1399 #define NVC597_SET_CONSTANT_COLOR_RENDERING_ENABLE_FALSE                                               0x00000000
1400 #define NVC597_SET_CONSTANT_COLOR_RENDERING_ENABLE_TRUE                                                0x00000001
1401 
1402 #define NVC597_SET_CONSTANT_COLOR_RENDERING_RED                                                            0x0f44
1403 #define NVC597_SET_CONSTANT_COLOR_RENDERING_RED_V                                                            31:0
1404 
1405 #define NVC597_SET_CONSTANT_COLOR_RENDERING_GREEN                                                          0x0f48
1406 #define NVC597_SET_CONSTANT_COLOR_RENDERING_GREEN_V                                                          31:0
1407 
1408 #define NVC597_SET_CONSTANT_COLOR_RENDERING_BLUE                                                           0x0f4c
1409 #define NVC597_SET_CONSTANT_COLOR_RENDERING_BLUE_V                                                           31:0
1410 
1411 #define NVC597_SET_CONSTANT_COLOR_RENDERING_ALPHA                                                          0x0f50
1412 #define NVC597_SET_CONSTANT_COLOR_RENDERING_ALPHA_V                                                          31:0
1413 
1414 #define NVC597_SET_BACK_STENCIL_FUNC_REF                                                                   0x0f54
1415 #define NVC597_SET_BACK_STENCIL_FUNC_REF_V                                                                    7:0
1416 
1417 #define NVC597_SET_BACK_STENCIL_MASK                                                                       0x0f58
1418 #define NVC597_SET_BACK_STENCIL_MASK_V                                                                        7:0
1419 
1420 #define NVC597_SET_BACK_STENCIL_FUNC_MASK                                                                  0x0f5c
1421 #define NVC597_SET_BACK_STENCIL_FUNC_MASK_V                                                                   7:0
1422 
1423 #define NVC597_SET_VERTEX_STREAM_SUBSTITUTE_A                                                              0x0f84
1424 #define NVC597_SET_VERTEX_STREAM_SUBSTITUTE_A_ADDRESS_UPPER                                                   7:0
1425 
1426 #define NVC597_SET_VERTEX_STREAM_SUBSTITUTE_B                                                              0x0f88
1427 #define NVC597_SET_VERTEX_STREAM_SUBSTITUTE_B_ADDRESS_LOWER                                                  31:0
1428 
1429 #define NVC597_SET_LINE_MODE_POLYGON_CLIP                                                                  0x0f8c
1430 #define NVC597_SET_LINE_MODE_POLYGON_CLIP_GENERATED_EDGE                                                      0:0
1431 #define NVC597_SET_LINE_MODE_POLYGON_CLIP_GENERATED_EDGE_DRAW_LINE                                     0x00000000
1432 #define NVC597_SET_LINE_MODE_POLYGON_CLIP_GENERATED_EDGE_DO_NOT_DRAW_LINE                              0x00000001
1433 
1434 #define NVC597_SET_SINGLE_CT_WRITE_CONTROL                                                                 0x0f90
1435 #define NVC597_SET_SINGLE_CT_WRITE_CONTROL_ENABLE                                                             0:0
1436 #define NVC597_SET_SINGLE_CT_WRITE_CONTROL_ENABLE_FALSE                                                0x00000000
1437 #define NVC597_SET_SINGLE_CT_WRITE_CONTROL_ENABLE_TRUE                                                 0x00000001
1438 
1439 #define NVC597_SET_VTG_WARP_WATERMARKS                                                                     0x0f98
1440 #define NVC597_SET_VTG_WARP_WATERMARKS_LOW                                                                   15:0
1441 #define NVC597_SET_VTG_WARP_WATERMARKS_HIGH                                                                 31:16
1442 
1443 #define NVC597_SET_DEPTH_BOUNDS_MIN                                                                        0x0f9c
1444 #define NVC597_SET_DEPTH_BOUNDS_MIN_V                                                                        31:0
1445 
1446 #define NVC597_SET_DEPTH_BOUNDS_MAX                                                                        0x0fa0
1447 #define NVC597_SET_DEPTH_BOUNDS_MAX_V                                                                        31:0
1448 
1449 #define NVC597_SET_SAMPLE_MASK                                                                             0x0fa4
1450 #define NVC597_SET_SAMPLE_MASK_RASTER_OUT_ENABLE                                                              0:0
1451 #define NVC597_SET_SAMPLE_MASK_RASTER_OUT_ENABLE_FALSE                                                 0x00000000
1452 #define NVC597_SET_SAMPLE_MASK_RASTER_OUT_ENABLE_TRUE                                                  0x00000001
1453 #define NVC597_SET_SAMPLE_MASK_COLOR_TARGET_ENABLE                                                            4:4
1454 #define NVC597_SET_SAMPLE_MASK_COLOR_TARGET_ENABLE_FALSE                                               0x00000000
1455 #define NVC597_SET_SAMPLE_MASK_COLOR_TARGET_ENABLE_TRUE                                                0x00000001
1456 
1457 #define NVC597_SET_COLOR_TARGET_SAMPLE_MASK                                                                0x0fa8
1458 #define NVC597_SET_COLOR_TARGET_SAMPLE_MASK_V                                                                15:0
1459 
1460 #define NVC597_SET_CT_MRT_ENABLE                                                                           0x0fac
1461 #define NVC597_SET_CT_MRT_ENABLE_V                                                                            0:0
1462 #define NVC597_SET_CT_MRT_ENABLE_V_FALSE                                                               0x00000000
1463 #define NVC597_SET_CT_MRT_ENABLE_V_TRUE                                                                0x00000001
1464 
1465 #define NVC597_SET_NONMULTISAMPLED_Z                                                                       0x0fb0
1466 #define NVC597_SET_NONMULTISAMPLED_Z_V                                                                        0:0
1467 #define NVC597_SET_NONMULTISAMPLED_Z_V_PER_SAMPLE                                                      0x00000000
1468 #define NVC597_SET_NONMULTISAMPLED_Z_V_AT_PIXEL_CENTER                                                 0x00000001
1469 
1470 #define NVC597_SET_TIR                                                                                     0x0fb4
1471 #define NVC597_SET_TIR_MODE                                                                                   1:0
1472 #define NVC597_SET_TIR_MODE_DISABLED                                                                   0x00000000
1473 #define NVC597_SET_TIR_MODE_RASTER_N_TARGET_M                                                          0x00000001
1474 
1475 #define NVC597_SET_ANTI_ALIAS_RASTER                                                                       0x0fb8
1476 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES                                                                  2:0
1477 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES_MODE_1X1                                                  0x00000000
1478 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES_MODE_2X2                                                  0x00000002
1479 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES_MODE_4X2_D3D                                              0x00000004
1480 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES_MODE_2X1_D3D                                              0x00000005
1481 #define NVC597_SET_ANTI_ALIAS_RASTER_SAMPLES_MODE_4X4                                                  0x00000006
1482 
1483 #define NVC597_SET_SAMPLE_MASK_X0_Y0                                                                       0x0fbc
1484 #define NVC597_SET_SAMPLE_MASK_X0_Y0_V                                                                       15:0
1485 
1486 #define NVC597_SET_SAMPLE_MASK_X1_Y0                                                                       0x0fc0
1487 #define NVC597_SET_SAMPLE_MASK_X1_Y0_V                                                                       15:0
1488 
1489 #define NVC597_SET_SAMPLE_MASK_X0_Y1                                                                       0x0fc4
1490 #define NVC597_SET_SAMPLE_MASK_X0_Y1_V                                                                       15:0
1491 
1492 #define NVC597_SET_SAMPLE_MASK_X1_Y1                                                                       0x0fc8
1493 #define NVC597_SET_SAMPLE_MASK_X1_Y1_V                                                                       15:0
1494 
1495 #define NVC597_SET_SURFACE_CLIP_ID_MEMORY_A                                                                0x0fcc
1496 #define NVC597_SET_SURFACE_CLIP_ID_MEMORY_A_OFFSET_UPPER                                                      7:0
1497 
1498 #define NVC597_SET_SURFACE_CLIP_ID_MEMORY_B                                                                0x0fd0
1499 #define NVC597_SET_SURFACE_CLIP_ID_MEMORY_B_OFFSET_LOWER                                                     31:0
1500 
1501 #define NVC597_SET_TIR_MODULATION                                                                          0x0fd4
1502 #define NVC597_SET_TIR_MODULATION_COMPONENT_SELECT                                                            1:0
1503 #define NVC597_SET_TIR_MODULATION_COMPONENT_SELECT_NO_MODULATION                                       0x00000000
1504 #define NVC597_SET_TIR_MODULATION_COMPONENT_SELECT_MODULATE_RGB                                        0x00000001
1505 #define NVC597_SET_TIR_MODULATION_COMPONENT_SELECT_MODULATE_ALPHA_ONLY                                 0x00000002
1506 #define NVC597_SET_TIR_MODULATION_COMPONENT_SELECT_MODULATE_RGBA                                       0x00000003
1507 
1508 #define NVC597_SET_TIR_MODULATION_FUNCTION                                                                 0x0fd8
1509 #define NVC597_SET_TIR_MODULATION_FUNCTION_SELECT                                                             0:0
1510 #define NVC597_SET_TIR_MODULATION_FUNCTION_SELECT_LINEAR                                               0x00000000
1511 #define NVC597_SET_TIR_MODULATION_FUNCTION_SELECT_TABLE                                                0x00000001
1512 
1513 #define NVC597_SET_BLEND_OPT_CONTROL                                                                       0x0fdc
1514 #define NVC597_SET_BLEND_OPT_CONTROL_ALLOW_FLOAT_PIXEL_KILLS                                                  0:0
1515 #define NVC597_SET_BLEND_OPT_CONTROL_ALLOW_FLOAT_PIXEL_KILLS_FALSE                                     0x00000000
1516 #define NVC597_SET_BLEND_OPT_CONTROL_ALLOW_FLOAT_PIXEL_KILLS_TRUE                                      0x00000001
1517 
1518 #define NVC597_SET_ZT_A                                                                                    0x0fe0
1519 #define NVC597_SET_ZT_A_OFFSET_UPPER                                                                          7:0
1520 
1521 #define NVC597_SET_ZT_B                                                                                    0x0fe4
1522 #define NVC597_SET_ZT_B_OFFSET_LOWER                                                                         31:0
1523 
1524 #define NVC597_SET_ZT_FORMAT                                                                               0x0fe8
1525 #define NVC597_SET_ZT_FORMAT_V                                                                                4:0
1526 #define NVC597_SET_ZT_FORMAT_V_Z16                                                                     0x00000013
1527 #define NVC597_SET_ZT_FORMAT_V_Z24S8                                                                   0x00000014
1528 #define NVC597_SET_ZT_FORMAT_V_X8Z24                                                                   0x00000015
1529 #define NVC597_SET_ZT_FORMAT_V_S8Z24                                                                   0x00000016
1530 #define NVC597_SET_ZT_FORMAT_V_S8                                                                      0x00000017
1531 #define NVC597_SET_ZT_FORMAT_V_V8Z24                                                                   0x00000018
1532 #define NVC597_SET_ZT_FORMAT_V_ZF32                                                                    0x0000000A
1533 #define NVC597_SET_ZT_FORMAT_V_ZF32_X24S8                                                              0x00000019
1534 #define NVC597_SET_ZT_FORMAT_V_X8Z24_X16V8S8                                                           0x0000001D
1535 #define NVC597_SET_ZT_FORMAT_V_ZF32_X16V8X8                                                            0x0000001E
1536 #define NVC597_SET_ZT_FORMAT_V_ZF32_X16V8S8                                                            0x0000001F
1537 
1538 #define NVC597_SET_ZT_BLOCK_SIZE                                                                           0x0fec
1539 #define NVC597_SET_ZT_BLOCK_SIZE_WIDTH                                                                        3:0
1540 #define NVC597_SET_ZT_BLOCK_SIZE_WIDTH_ONE_GOB                                                         0x00000000
1541 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT                                                                       7:4
1542 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_ONE_GOB                                                        0x00000000
1543 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_TWO_GOBS                                                       0x00000001
1544 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_FOUR_GOBS                                                      0x00000002
1545 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_EIGHT_GOBS                                                     0x00000003
1546 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_SIXTEEN_GOBS                                                   0x00000004
1547 #define NVC597_SET_ZT_BLOCK_SIZE_HEIGHT_THIRTYTWO_GOBS                                                 0x00000005
1548 #define NVC597_SET_ZT_BLOCK_SIZE_DEPTH                                                                       11:8
1549 #define NVC597_SET_ZT_BLOCK_SIZE_DEPTH_ONE_GOB                                                         0x00000000
1550 
1551 #define NVC597_SET_ZT_ARRAY_PITCH                                                                          0x0ff0
1552 #define NVC597_SET_ZT_ARRAY_PITCH_V                                                                          31:0
1553 
1554 #define NVC597_SET_SURFACE_CLIP_HORIZONTAL                                                                 0x0ff4
1555 #define NVC597_SET_SURFACE_CLIP_HORIZONTAL_X                                                                 15:0
1556 #define NVC597_SET_SURFACE_CLIP_HORIZONTAL_WIDTH                                                            31:16
1557 
1558 #define NVC597_SET_SURFACE_CLIP_VERTICAL                                                                   0x0ff8
1559 #define NVC597_SET_SURFACE_CLIP_VERTICAL_Y                                                                   15:0
1560 #define NVC597_SET_SURFACE_CLIP_VERTICAL_HEIGHT                                                             31:16
1561 
1562 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS                                                       0x1000
1563 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_SYSTEM_MEMORY_VOLATILE                                   0:0
1564 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_SYSTEM_MEMORY_VOLATILE_FALSE                      0x00000000
1565 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_SYSTEM_MEMORY_VOLATILE_TRUE                       0x00000001
1566 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_POLICY                                                   5:4
1567 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_POLICY_EVICT_FIRST                                0x00000000
1568 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_POLICY_EVICT_NORMAL                               0x00000001
1569 #define NVC597_SET_L2_CACHE_CONTROL_FOR_VAF_REQUESTS_POLICY_EVICT_LAST                                 0x00000002
1570 
1571 #define NVC597_SET_VIEWPORT_MULTICAST                                                                      0x1004
1572 #define NVC597_SET_VIEWPORT_MULTICAST_ORDER                                                                   0:0
1573 #define NVC597_SET_VIEWPORT_MULTICAST_ORDER_VIEWPORT_ORDER                                             0x00000000
1574 #define NVC597_SET_VIEWPORT_MULTICAST_ORDER_PRIMITIVE_ORDER                                            0x00000001
1575 
1576 #define NVC597_SET_TESSELLATION_CUT_HEIGHT                                                                 0x1008
1577 #define NVC597_SET_TESSELLATION_CUT_HEIGHT_V                                                                  4:0
1578 
1579 #define NVC597_SET_MAX_GS_INSTANCES_PER_TASK                                                               0x100c
1580 #define NVC597_SET_MAX_GS_INSTANCES_PER_TASK_V                                                               10:0
1581 
1582 #define NVC597_SET_MAX_GS_OUTPUT_VERTICES_PER_TASK                                                         0x1010
1583 #define NVC597_SET_MAX_GS_OUTPUT_VERTICES_PER_TASK_V                                                         15:0
1584 
1585 #define NVC597_SET_RESERVED_SW_METHOD00                                                                    0x1014
1586 #define NVC597_SET_RESERVED_SW_METHOD00_V                                                                    31:0
1587 
1588 #define NVC597_SET_GS_OUTPUT_CB_STORAGE_MULTIPLIER                                                         0x1018
1589 #define NVC597_SET_GS_OUTPUT_CB_STORAGE_MULTIPLIER_V                                                          9:0
1590 
1591 #define NVC597_SET_BETA_CB_STORAGE_CONSTRAINT                                                              0x101c
1592 #define NVC597_SET_BETA_CB_STORAGE_CONSTRAINT_ENABLE                                                          0:0
1593 #define NVC597_SET_BETA_CB_STORAGE_CONSTRAINT_ENABLE_FALSE                                             0x00000000
1594 #define NVC597_SET_BETA_CB_STORAGE_CONSTRAINT_ENABLE_TRUE                                              0x00000001
1595 
1596 #define NVC597_SET_TI_OUTPUT_CB_STORAGE_MULTIPLIER                                                         0x1020
1597 #define NVC597_SET_TI_OUTPUT_CB_STORAGE_MULTIPLIER_V                                                          9:0
1598 
1599 #define NVC597_SET_ALPHA_CB_STORAGE_CONSTRAINT                                                             0x1024
1600 #define NVC597_SET_ALPHA_CB_STORAGE_CONSTRAINT_ENABLE                                                         0:0
1601 #define NVC597_SET_ALPHA_CB_STORAGE_CONSTRAINT_ENABLE_FALSE                                            0x00000000
1602 #define NVC597_SET_ALPHA_CB_STORAGE_CONSTRAINT_ENABLE_TRUE                                             0x00000001
1603 
1604 #define NVC597_SET_RESERVED_SW_METHOD01                                                                    0x1028
1605 #define NVC597_SET_RESERVED_SW_METHOD01_V                                                                    31:0
1606 
1607 #define NVC597_SET_RESERVED_SW_METHOD02                                                                    0x102c
1608 #define NVC597_SET_RESERVED_SW_METHOD02_V                                                                    31:0
1609 
1610 #define NVC597_SET_TIR_MODULATION_COEFFICIENT_TABLE(i)                                             (0x1030+(i)*4)
1611 #define NVC597_SET_TIR_MODULATION_COEFFICIENT_TABLE_V0                                                        7:0
1612 #define NVC597_SET_TIR_MODULATION_COEFFICIENT_TABLE_V1                                                       15:8
1613 #define NVC597_SET_TIR_MODULATION_COEFFICIENT_TABLE_V2                                                      23:16
1614 #define NVC597_SET_TIR_MODULATION_COEFFICIENT_TABLE_V3                                                      31:24
1615 
1616 #define NVC597_SET_SPARE_NOOP01                                                                            0x1044
1617 #define NVC597_SET_SPARE_NOOP01_V                                                                            31:0
1618 
1619 #define NVC597_SET_SPARE_NOOP02                                                                            0x1048
1620 #define NVC597_SET_SPARE_NOOP02_V                                                                            31:0
1621 
1622 #define NVC597_SET_SPARE_NOOP03                                                                            0x104c
1623 #define NVC597_SET_SPARE_NOOP03_V                                                                            31:0
1624 
1625 #define NVC597_SET_SPARE_NOOP04                                                                            0x1050
1626 #define NVC597_SET_SPARE_NOOP04_V                                                                            31:0
1627 
1628 #define NVC597_SET_SPARE_NOOP05                                                                            0x1054
1629 #define NVC597_SET_SPARE_NOOP05_V                                                                            31:0
1630 
1631 #define NVC597_SET_SPARE_NOOP06                                                                            0x1058
1632 #define NVC597_SET_SPARE_NOOP06_V                                                                            31:0
1633 
1634 #define NVC597_SET_SPARE_NOOP07                                                                            0x105c
1635 #define NVC597_SET_SPARE_NOOP07_V                                                                            31:0
1636 
1637 #define NVC597_SET_SPARE_NOOP08                                                                            0x1060
1638 #define NVC597_SET_SPARE_NOOP08_V                                                                            31:0
1639 
1640 #define NVC597_SET_SPARE_NOOP09                                                                            0x1064
1641 #define NVC597_SET_SPARE_NOOP09_V                                                                            31:0
1642 
1643 #define NVC597_SET_SPARE_NOOP10                                                                            0x1068
1644 #define NVC597_SET_SPARE_NOOP10_V                                                                            31:0
1645 
1646 #define NVC597_SET_SPARE_NOOP11                                                                            0x106c
1647 #define NVC597_SET_SPARE_NOOP11_V                                                                            31:0
1648 
1649 #define NVC597_SET_SPARE_NOOP12                                                                            0x1070
1650 #define NVC597_SET_SPARE_NOOP12_V                                                                            31:0
1651 
1652 #define NVC597_SET_SPARE_NOOP13                                                                            0x1074
1653 #define NVC597_SET_SPARE_NOOP13_V                                                                            31:0
1654 
1655 #define NVC597_SET_SPARE_NOOP14                                                                            0x1078
1656 #define NVC597_SET_SPARE_NOOP14_V                                                                            31:0
1657 
1658 #define NVC597_SET_SPARE_NOOP15                                                                            0x107c
1659 #define NVC597_SET_SPARE_NOOP15_V                                                                            31:0
1660 
1661 #define NVC597_SET_RESERVED_SW_METHOD03                                                                    0x10b0
1662 #define NVC597_SET_RESERVED_SW_METHOD03_V                                                                    31:0
1663 
1664 #define NVC597_SET_RESERVED_SW_METHOD04                                                                    0x10b4
1665 #define NVC597_SET_RESERVED_SW_METHOD04_V                                                                    31:0
1666 
1667 #define NVC597_SET_RESERVED_SW_METHOD05                                                                    0x10b8
1668 #define NVC597_SET_RESERVED_SW_METHOD05_V                                                                    31:0
1669 
1670 #define NVC597_SET_RESERVED_SW_METHOD06                                                                    0x10bc
1671 #define NVC597_SET_RESERVED_SW_METHOD06_V                                                                    31:0
1672 
1673 #define NVC597_SET_RESERVED_SW_METHOD07                                                                    0x10c0
1674 #define NVC597_SET_RESERVED_SW_METHOD07_V                                                                    31:0
1675 
1676 #define NVC597_SET_RESERVED_SW_METHOD08                                                                    0x10c4
1677 #define NVC597_SET_RESERVED_SW_METHOD08_V                                                                    31:0
1678 
1679 #define NVC597_SET_RESERVED_SW_METHOD09                                                                    0x10c8
1680 #define NVC597_SET_RESERVED_SW_METHOD09_V                                                                    31:0
1681 
1682 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM8                                                          0x10cc
1683 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM8_ALL_COVERED_ALL_HIT_ONCE                                    7:0
1684 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM8_ALL_COVERED                                               23:16
1685 
1686 #define NVC597_SET_RESERVED_SW_METHOD10                                                                    0x10d0
1687 #define NVC597_SET_RESERVED_SW_METHOD10_V                                                                    31:0
1688 
1689 #define NVC597_SET_RESERVED_SW_METHOD11                                                                    0x10d4
1690 #define NVC597_SET_RESERVED_SW_METHOD11_V                                                                    31:0
1691 
1692 #define NVC597_SET_RESERVED_SW_METHOD12                                                                    0x10d8
1693 #define NVC597_SET_RESERVED_SW_METHOD12_V                                                                    31:0
1694 
1695 #define NVC597_SET_RESERVED_SW_METHOD13                                                                    0x10dc
1696 #define NVC597_SET_RESERVED_SW_METHOD13_V                                                                    31:0
1697 
1698 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM10                                                         0x10e0
1699 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM10_ALL_COVERED_ALL_HIT_ONCE                                   7:0
1700 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM10_ALL_COVERED                                              23:16
1701 
1702 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM16                                                         0x10e4
1703 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM16_ALL_COVERED_ALL_HIT_ONCE                                   7:0
1704 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_UNORM16_ALL_COVERED                                              23:16
1705 
1706 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP11                                                            0x10e8
1707 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP11_ALL_COVERED_ALL_HIT_ONCE                                      5:0
1708 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP11_ALL_COVERED                                                 21:16
1709 
1710 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP16                                                            0x10ec
1711 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP16_ALL_COVERED_ALL_HIT_ONCE                                      7:0
1712 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_FP16_ALL_COVERED                                                 23:16
1713 
1714 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_SRGB8                                                           0x10f0
1715 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_SRGB8_ALL_COVERED_ALL_HIT_ONCE                                     7:0
1716 #define NVC597_SET_REDUCE_COLOR_THRESHOLDS_SRGB8_ALL_COVERED                                                23:16
1717 
1718 #define NVC597_UNBIND_ALL                                                                                  0x10f4
1719 #define NVC597_UNBIND_ALL_CONSTANT_BUFFERS                                                                    8:8
1720 #define NVC597_UNBIND_ALL_CONSTANT_BUFFERS_FALSE                                                       0x00000000
1721 #define NVC597_UNBIND_ALL_CONSTANT_BUFFERS_TRUE                                                        0x00000001
1722 
1723 #define NVC597_SET_CLEAR_SURFACE_CONTROL                                                                   0x10f8
1724 #define NVC597_SET_CLEAR_SURFACE_CONTROL_RESPECT_STENCIL_MASK                                                 0:0
1725 #define NVC597_SET_CLEAR_SURFACE_CONTROL_RESPECT_STENCIL_MASK_FALSE                                    0x00000000
1726 #define NVC597_SET_CLEAR_SURFACE_CONTROL_RESPECT_STENCIL_MASK_TRUE                                     0x00000001
1727 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_CLEAR_RECT                                                       4:4
1728 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_CLEAR_RECT_FALSE                                          0x00000000
1729 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_CLEAR_RECT_TRUE                                           0x00000001
1730 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_SCISSOR0                                                         8:8
1731 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_SCISSOR0_FALSE                                            0x00000000
1732 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_SCISSOR0_TRUE                                             0x00000001
1733 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_VIEWPORT_CLIP0                                                 12:12
1734 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_VIEWPORT_CLIP0_FALSE                                      0x00000000
1735 #define NVC597_SET_CLEAR_SURFACE_CONTROL_USE_VIEWPORT_CLIP0_TRUE                                       0x00000001
1736 
1737 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_READ_REQUESTS                                   0x10fc
1738 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_READ_REQUESTS_POLICY                               5:4
1739 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_READ_REQUESTS_POLICY_EVICT_FIRST             0x00000000
1740 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_READ_REQUESTS_POLICY_EVICT_NORMAL             0x00000001
1741 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_READ_REQUESTS_POLICY_EVICT_LAST             0x00000002
1742 
1743 #define NVC597_SET_RESERVED_SW_METHOD14                                                                    0x1100
1744 #define NVC597_SET_RESERVED_SW_METHOD14_V                                                                    31:0
1745 
1746 #define NVC597_SET_RESERVED_SW_METHOD15                                                                    0x1104
1747 #define NVC597_SET_RESERVED_SW_METHOD15_V                                                                    31:0
1748 
1749 #define NVC597_NO_OPERATION_DATA_HI                                                                        0x110c
1750 #define NVC597_NO_OPERATION_DATA_HI_V                                                                        31:0
1751 
1752 #define NVC597_SET_DEPTH_BIAS_CONTROL                                                                      0x1110
1753 #define NVC597_SET_DEPTH_BIAS_CONTROL_DEPTH_FORMAT_DEPENDENT                                                  0:0
1754 #define NVC597_SET_DEPTH_BIAS_CONTROL_DEPTH_FORMAT_DEPENDENT_FALSE                                     0x00000000
1755 #define NVC597_SET_DEPTH_BIAS_CONTROL_DEPTH_FORMAT_DEPENDENT_TRUE                                      0x00000001
1756 
1757 #define NVC597_PM_TRIGGER_END                                                                              0x1114
1758 #define NVC597_PM_TRIGGER_END_V                                                                              31:0
1759 
1760 #define NVC597_SET_VERTEX_ID_BASE                                                                          0x1118
1761 #define NVC597_SET_VERTEX_ID_BASE_V                                                                          31:0
1762 
1763 #define NVC597_SET_STENCIL_COMPRESSION                                                                     0x111c
1764 #define NVC597_SET_STENCIL_COMPRESSION_ENABLE                                                                 0:0
1765 #define NVC597_SET_STENCIL_COMPRESSION_ENABLE_FALSE                                                    0x00000000
1766 #define NVC597_SET_STENCIL_COMPRESSION_ENABLE_TRUE                                                     0x00000001
1767 
1768 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A(i)                                              (0x1120+(i)*4)
1769 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP0                                           0:0
1770 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP0_FALSE                              0x00000000
1771 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP0_TRUE                               0x00000001
1772 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP1                                           1:1
1773 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP1_FALSE                              0x00000000
1774 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP1_TRUE                               0x00000001
1775 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP2                                           2:2
1776 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP2_FALSE                              0x00000000
1777 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP2_TRUE                               0x00000001
1778 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP3                                           3:3
1779 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP3_FALSE                              0x00000000
1780 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE0_COMP3_TRUE                               0x00000001
1781 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP0                                           4:4
1782 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP0_FALSE                              0x00000000
1783 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP0_TRUE                               0x00000001
1784 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP1                                           5:5
1785 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP1_FALSE                              0x00000000
1786 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP1_TRUE                               0x00000001
1787 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP2                                           6:6
1788 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP2_FALSE                              0x00000000
1789 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP2_TRUE                               0x00000001
1790 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP3                                           7:7
1791 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP3_FALSE                              0x00000000
1792 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE1_COMP3_TRUE                               0x00000001
1793 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP0                                           8:8
1794 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP0_FALSE                              0x00000000
1795 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP0_TRUE                               0x00000001
1796 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP1                                           9:9
1797 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP1_FALSE                              0x00000000
1798 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP1_TRUE                               0x00000001
1799 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP2                                         10:10
1800 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP2_FALSE                              0x00000000
1801 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP2_TRUE                               0x00000001
1802 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP3                                         11:11
1803 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP3_FALSE                              0x00000000
1804 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE2_COMP3_TRUE                               0x00000001
1805 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP0                                         12:12
1806 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP0_FALSE                              0x00000000
1807 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP0_TRUE                               0x00000001
1808 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP1                                         13:13
1809 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP1_FALSE                              0x00000000
1810 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP1_TRUE                               0x00000001
1811 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP2                                         14:14
1812 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP2_FALSE                              0x00000000
1813 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP2_TRUE                               0x00000001
1814 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP3                                         15:15
1815 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP3_FALSE                              0x00000000
1816 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE3_COMP3_TRUE                               0x00000001
1817 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP0                                         16:16
1818 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP0_FALSE                              0x00000000
1819 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP0_TRUE                               0x00000001
1820 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP1                                         17:17
1821 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP1_FALSE                              0x00000000
1822 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP1_TRUE                               0x00000001
1823 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP2                                         18:18
1824 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP2_FALSE                              0x00000000
1825 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP2_TRUE                               0x00000001
1826 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP3                                         19:19
1827 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP3_FALSE                              0x00000000
1828 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE4_COMP3_TRUE                               0x00000001
1829 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP0                                         20:20
1830 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP0_FALSE                              0x00000000
1831 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP0_TRUE                               0x00000001
1832 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP1                                         21:21
1833 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP1_FALSE                              0x00000000
1834 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP1_TRUE                               0x00000001
1835 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP2                                         22:22
1836 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP2_FALSE                              0x00000000
1837 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP2_TRUE                               0x00000001
1838 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP3                                         23:23
1839 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP3_FALSE                              0x00000000
1840 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE5_COMP3_TRUE                               0x00000001
1841 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP0                                         24:24
1842 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP0_FALSE                              0x00000000
1843 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP0_TRUE                               0x00000001
1844 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP1                                         25:25
1845 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP1_FALSE                              0x00000000
1846 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP1_TRUE                               0x00000001
1847 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP2                                         26:26
1848 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP2_FALSE                              0x00000000
1849 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP2_TRUE                               0x00000001
1850 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP3                                         27:27
1851 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP3_FALSE                              0x00000000
1852 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE6_COMP3_TRUE                               0x00000001
1853 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP0                                         28:28
1854 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP0_FALSE                              0x00000000
1855 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP0_TRUE                               0x00000001
1856 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP1                                         29:29
1857 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP1_FALSE                              0x00000000
1858 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP1_TRUE                               0x00000001
1859 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP2                                         30:30
1860 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP2_FALSE                              0x00000000
1861 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP2_TRUE                               0x00000001
1862 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP3                                         31:31
1863 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP3_FALSE                              0x00000000
1864 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_A_ATTRIBUTE7_COMP3_TRUE                               0x00000001
1865 
1866 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B(i)                                              (0x1128+(i)*4)
1867 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP0                                           0:0
1868 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP0_FALSE                              0x00000000
1869 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP0_TRUE                               0x00000001
1870 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP1                                           1:1
1871 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP1_FALSE                              0x00000000
1872 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP1_TRUE                               0x00000001
1873 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP2                                           2:2
1874 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP2_FALSE                              0x00000000
1875 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP2_TRUE                               0x00000001
1876 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP3                                           3:3
1877 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP3_FALSE                              0x00000000
1878 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE0_COMP3_TRUE                               0x00000001
1879 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP0                                           4:4
1880 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP0_FALSE                              0x00000000
1881 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP0_TRUE                               0x00000001
1882 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP1                                           5:5
1883 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP1_FALSE                              0x00000000
1884 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP1_TRUE                               0x00000001
1885 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP2                                           6:6
1886 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP2_FALSE                              0x00000000
1887 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP2_TRUE                               0x00000001
1888 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP3                                           7:7
1889 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP3_FALSE                              0x00000000
1890 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE1_COMP3_TRUE                               0x00000001
1891 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP0                                           8:8
1892 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP0_FALSE                              0x00000000
1893 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP0_TRUE                               0x00000001
1894 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP1                                           9:9
1895 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP1_FALSE                              0x00000000
1896 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP1_TRUE                               0x00000001
1897 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP2                                         10:10
1898 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP2_FALSE                              0x00000000
1899 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP2_TRUE                               0x00000001
1900 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP3                                         11:11
1901 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP3_FALSE                              0x00000000
1902 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE2_COMP3_TRUE                               0x00000001
1903 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP0                                         12:12
1904 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP0_FALSE                              0x00000000
1905 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP0_TRUE                               0x00000001
1906 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP1                                         13:13
1907 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP1_FALSE                              0x00000000
1908 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP1_TRUE                               0x00000001
1909 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP2                                         14:14
1910 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP2_FALSE                              0x00000000
1911 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP2_TRUE                               0x00000001
1912 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP3                                         15:15
1913 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP3_FALSE                              0x00000000
1914 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE3_COMP3_TRUE                               0x00000001
1915 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP0                                         16:16
1916 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP0_FALSE                              0x00000000
1917 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP0_TRUE                               0x00000001
1918 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP1                                         17:17
1919 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP1_FALSE                              0x00000000
1920 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP1_TRUE                               0x00000001
1921 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP2                                         18:18
1922 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP2_FALSE                              0x00000000
1923 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP2_TRUE                               0x00000001
1924 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP3                                         19:19
1925 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP3_FALSE                              0x00000000
1926 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE4_COMP3_TRUE                               0x00000001
1927 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP0                                         20:20
1928 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP0_FALSE                              0x00000000
1929 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP0_TRUE                               0x00000001
1930 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP1                                         21:21
1931 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP1_FALSE                              0x00000000
1932 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP1_TRUE                               0x00000001
1933 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP2                                         22:22
1934 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP2_FALSE                              0x00000000
1935 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP2_TRUE                               0x00000001
1936 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP3                                         23:23
1937 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP3_FALSE                              0x00000000
1938 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE5_COMP3_TRUE                               0x00000001
1939 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP0                                         24:24
1940 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP0_FALSE                              0x00000000
1941 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP0_TRUE                               0x00000001
1942 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP1                                         25:25
1943 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP1_FALSE                              0x00000000
1944 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP1_TRUE                               0x00000001
1945 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP2                                         26:26
1946 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP2_FALSE                              0x00000000
1947 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP2_TRUE                               0x00000001
1948 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP3                                         27:27
1949 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP3_FALSE                              0x00000000
1950 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE6_COMP3_TRUE                               0x00000001
1951 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP0                                         28:28
1952 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP0_FALSE                              0x00000000
1953 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP0_TRUE                               0x00000001
1954 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP1                                         29:29
1955 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP1_FALSE                              0x00000000
1956 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP1_TRUE                               0x00000001
1957 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP2                                         30:30
1958 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP2_FALSE                              0x00000000
1959 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP2_TRUE                               0x00000001
1960 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP3                                         31:31
1961 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP3_FALSE                              0x00000000
1962 #define NVC597_SET_DA_OUTPUT_ATTRIBUTE_SKIP_MASK_B_ATTRIBUTE7_COMP3_TRUE                               0x00000001
1963 
1964 #define NVC597_SET_TIR_CONTROL                                                                             0x1130
1965 #define NVC597_SET_TIR_CONTROL_Z_PASS_PIXEL_COUNT_USE_RASTER_SAMPLES                                          0:0
1966 #define NVC597_SET_TIR_CONTROL_Z_PASS_PIXEL_COUNT_USE_RASTER_SAMPLES_DISABLE                           0x00000000
1967 #define NVC597_SET_TIR_CONTROL_Z_PASS_PIXEL_COUNT_USE_RASTER_SAMPLES_ENABLE                            0x00000001
1968 #define NVC597_SET_TIR_CONTROL_ALPHA_TO_COVERAGE_USE_RASTER_SAMPLES                                           4:4
1969 #define NVC597_SET_TIR_CONTROL_ALPHA_TO_COVERAGE_USE_RASTER_SAMPLES_DISABLE                            0x00000000
1970 #define NVC597_SET_TIR_CONTROL_ALPHA_TO_COVERAGE_USE_RASTER_SAMPLES_ENABLE                             0x00000001
1971 #define NVC597_SET_TIR_CONTROL_REDUCE_COVERAGE                                                                1:1
1972 #define NVC597_SET_TIR_CONTROL_REDUCE_COVERAGE_DISABLE                                                 0x00000000
1973 #define NVC597_SET_TIR_CONTROL_REDUCE_COVERAGE_ENABLE                                                  0x00000001
1974 
1975 #define NVC597_SET_MUTABLE_METHOD_CONTROL                                                                  0x1134
1976 #define NVC597_SET_MUTABLE_METHOD_CONTROL_TREAT_MUTABLE_AS_HEAVYWEIGHT                                        0:0
1977 #define NVC597_SET_MUTABLE_METHOD_CONTROL_TREAT_MUTABLE_AS_HEAVYWEIGHT_FALSE                           0x00000000
1978 #define NVC597_SET_MUTABLE_METHOD_CONTROL_TREAT_MUTABLE_AS_HEAVYWEIGHT_TRUE                            0x00000001
1979 
1980 #define NVC597_SET_POST_PS_INITIAL_COVERAGE                                                                0x1138
1981 #define NVC597_SET_POST_PS_INITIAL_COVERAGE_USE_PRE_PS_COVERAGE                                               0:0
1982 #define NVC597_SET_POST_PS_INITIAL_COVERAGE_USE_PRE_PS_COVERAGE_FALSE                                  0x00000000
1983 #define NVC597_SET_POST_PS_INITIAL_COVERAGE_USE_PRE_PS_COVERAGE_TRUE                                   0x00000001
1984 
1985 #define NVC597_SET_FILL_VIA_TRIANGLE                                                                       0x113c
1986 #define NVC597_SET_FILL_VIA_TRIANGLE_MODE                                                                     1:0
1987 #define NVC597_SET_FILL_VIA_TRIANGLE_MODE_DISABLED                                                     0x00000000
1988 #define NVC597_SET_FILL_VIA_TRIANGLE_MODE_FILL_ALL                                                     0x00000001
1989 #define NVC597_SET_FILL_VIA_TRIANGLE_MODE_FILL_BBOX                                                    0x00000002
1990 
1991 #define NVC597_SET_BLEND_PER_FORMAT_ENABLE                                                                 0x1140
1992 #define NVC597_SET_BLEND_PER_FORMAT_ENABLE_SNORM8_UNORM16_SNORM16                                             4:4
1993 #define NVC597_SET_BLEND_PER_FORMAT_ENABLE_SNORM8_UNORM16_SNORM16_FALSE                                0x00000000
1994 #define NVC597_SET_BLEND_PER_FORMAT_ENABLE_SNORM8_UNORM16_SNORM16_TRUE                                 0x00000001
1995 
1996 #define NVC597_FLUSH_PENDING_WRITES                                                                        0x1144
1997 #define NVC597_FLUSH_PENDING_WRITES_SM_DOES_GLOBAL_STORE                                                      0:0
1998 
1999 #define NVC597_SET_VERTEX_ATTRIBUTE_A(i)                                                           (0x1160+(i)*4)
2000 #define NVC597_SET_VERTEX_ATTRIBUTE_A_STREAM                                                                  4:0
2001 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SOURCE                                                                  6:6
2002 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SOURCE_ACTIVE                                                    0x00000000
2003 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SOURCE_INACTIVE                                                  0x00000001
2004 #define NVC597_SET_VERTEX_ATTRIBUTE_A_OFFSET                                                                 20:7
2005 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS                                                  26:21
2006 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R32_G32_B32_A32                             0x00000001
2007 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R32_G32_B32                                 0x00000002
2008 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R16_G16_B16_A16                             0x00000003
2009 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R32_G32                                     0x00000004
2010 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R16_G16_B16                                 0x00000005
2011 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_A8B8G8R8                                    0x0000002F
2012 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R8_G8_B8_A8                                 0x0000000A
2013 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_X8B8G8R8                                    0x00000033
2014 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_A2B10G10R10                                 0x00000030
2015 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_B10G11R11                                   0x00000031
2016 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R16_G16                                     0x0000000F
2017 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R32                                         0x00000012
2018 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R8_G8_B8                                    0x00000013
2019 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_G8R8                                        0x00000032
2020 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R8_G8                                       0x00000018
2021 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R16                                         0x0000001B
2022 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_R8                                          0x0000001D
2023 #define NVC597_SET_VERTEX_ATTRIBUTE_A_COMPONENT_BIT_WIDTHS_A8                                          0x00000034
2024 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE                                                        29:27
2025 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_UNUSED_ENUM_DO_NOT_USE_BECAUSE_IT_WILL_GO_AWAY             0x00000000
2026 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_SNORM                                         0x00000001
2027 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_UNORM                                         0x00000002
2028 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_SINT                                          0x00000003
2029 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_UINT                                          0x00000004
2030 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_USCALED                                       0x00000005
2031 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_SSCALED                                       0x00000006
2032 #define NVC597_SET_VERTEX_ATTRIBUTE_A_NUMERICAL_TYPE_NUM_FLOAT                                         0x00000007
2033 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SWAP_R_AND_B                                                          31:31
2034 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SWAP_R_AND_B_FALSE                                               0x00000000
2035 #define NVC597_SET_VERTEX_ATTRIBUTE_A_SWAP_R_AND_B_TRUE                                                0x00000001
2036 
2037 #define NVC597_SET_VERTEX_ATTRIBUTE_B(i)                                                           (0x11a0+(i)*4)
2038 #define NVC597_SET_VERTEX_ATTRIBUTE_B_STREAM                                                                  4:0
2039 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SOURCE                                                                  6:6
2040 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SOURCE_ACTIVE                                                    0x00000000
2041 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SOURCE_INACTIVE                                                  0x00000001
2042 #define NVC597_SET_VERTEX_ATTRIBUTE_B_OFFSET                                                                 20:7
2043 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS                                                  26:21
2044 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R32_G32_B32_A32                             0x00000001
2045 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R32_G32_B32                                 0x00000002
2046 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R16_G16_B16_A16                             0x00000003
2047 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R32_G32                                     0x00000004
2048 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R16_G16_B16                                 0x00000005
2049 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_A8B8G8R8                                    0x0000002F
2050 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R8_G8_B8_A8                                 0x0000000A
2051 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_X8B8G8R8                                    0x00000033
2052 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_A2B10G10R10                                 0x00000030
2053 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_B10G11R11                                   0x00000031
2054 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R16_G16                                     0x0000000F
2055 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R32                                         0x00000012
2056 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R8_G8_B8                                    0x00000013
2057 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_G8R8                                        0x00000032
2058 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R8_G8                                       0x00000018
2059 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R16                                         0x0000001B
2060 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_R8                                          0x0000001D
2061 #define NVC597_SET_VERTEX_ATTRIBUTE_B_COMPONENT_BIT_WIDTHS_A8                                          0x00000034
2062 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE                                                        29:27
2063 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_UNUSED_ENUM_DO_NOT_USE_BECAUSE_IT_WILL_GO_AWAY             0x00000000
2064 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_SNORM                                         0x00000001
2065 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_UNORM                                         0x00000002
2066 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_SINT                                          0x00000003
2067 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_UINT                                          0x00000004
2068 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_USCALED                                       0x00000005
2069 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_SSCALED                                       0x00000006
2070 #define NVC597_SET_VERTEX_ATTRIBUTE_B_NUMERICAL_TYPE_NUM_FLOAT                                         0x00000007
2071 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SWAP_R_AND_B                                                          31:31
2072 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SWAP_R_AND_B_FALSE                                               0x00000000
2073 #define NVC597_SET_VERTEX_ATTRIBUTE_B_SWAP_R_AND_B_TRUE                                                0x00000001
2074 
2075 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS(i)                                                  (0x11e0+(i)*4)
2076 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_X0                                                             3:0
2077 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_Y0                                                             7:4
2078 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_X1                                                            11:8
2079 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_Y1                                                           15:12
2080 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_X2                                                           19:16
2081 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_Y2                                                           23:20
2082 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_X3                                                           27:24
2083 #define NVC597_SET_ANTI_ALIAS_SAMPLE_POSITIONS_Y3                                                           31:28
2084 
2085 #define NVC597_SET_OFFSET_RENDER_TARGET_INDEX                                                              0x11f0
2086 #define NVC597_SET_OFFSET_RENDER_TARGET_INDEX_BY_VIEWPORT_INDEX                                               0:0
2087 #define NVC597_SET_OFFSET_RENDER_TARGET_INDEX_BY_VIEWPORT_INDEX_FALSE                                  0x00000000
2088 #define NVC597_SET_OFFSET_RENDER_TARGET_INDEX_BY_VIEWPORT_INDEX_TRUE                                   0x00000001
2089 
2090 #define NVC597_FORCE_HEAVYWEIGHT_METHOD_SYNC                                                               0x11f4
2091 #define NVC597_FORCE_HEAVYWEIGHT_METHOD_SYNC_V                                                               31:0
2092 
2093 #define NVC597_SET_COVERAGE_TO_COLOR                                                                       0x11f8
2094 #define NVC597_SET_COVERAGE_TO_COLOR_ENABLE                                                                   0:0
2095 #define NVC597_SET_COVERAGE_TO_COLOR_ENABLE_FALSE                                                      0x00000000
2096 #define NVC597_SET_COVERAGE_TO_COLOR_ENABLE_TRUE                                                       0x00000001
2097 #define NVC597_SET_COVERAGE_TO_COLOR_CT_SELECT                                                                6:4
2098 
2099 #define NVC597_DECOMPRESS_ZETA_SURFACE                                                                     0x11fc
2100 #define NVC597_DECOMPRESS_ZETA_SURFACE_Z_ENABLE                                                               0:0
2101 #define NVC597_DECOMPRESS_ZETA_SURFACE_Z_ENABLE_FALSE                                                  0x00000000
2102 #define NVC597_DECOMPRESS_ZETA_SURFACE_Z_ENABLE_TRUE                                                   0x00000001
2103 #define NVC597_DECOMPRESS_ZETA_SURFACE_STENCIL_ENABLE                                                         4:4
2104 #define NVC597_DECOMPRESS_ZETA_SURFACE_STENCIL_ENABLE_FALSE                                            0x00000000
2105 #define NVC597_DECOMPRESS_ZETA_SURFACE_STENCIL_ENABLE_TRUE                                             0x00000001
2106 
2107 #define NVC597_SET_SCREEN_STATE_MASK                                                                       0x1204
2108 #define NVC597_SET_SCREEN_STATE_MASK_MASK                                                                     3:0
2109 
2110 #define NVC597_SET_ZT_SPARSE                                                                               0x1208
2111 #define NVC597_SET_ZT_SPARSE_ENABLE                                                                           0:0
2112 #define NVC597_SET_ZT_SPARSE_ENABLE_FALSE                                                              0x00000000
2113 #define NVC597_SET_ZT_SPARSE_ENABLE_TRUE                                                               0x00000001
2114 #define NVC597_SET_ZT_SPARSE_UNMAPPED_COMPARE                                                                 1:1
2115 #define NVC597_SET_ZT_SPARSE_UNMAPPED_COMPARE_ZT_SPARSE_UNMAPPED_0                                     0x00000000
2116 #define NVC597_SET_ZT_SPARSE_UNMAPPED_COMPARE_ZT_SPARSE_FAIL_ALWAYS                                    0x00000001
2117 
2118 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST                                                  0x1214
2119 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_START_INDEX                                        15:0
2120 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_COUNT                                             27:16
2121 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY                                          31:28
2122 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POINTS                              0x00000000
2123 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINES                               0x00000001
2124 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_LOOP                           0x00000002
2125 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_STRIP                          0x00000003
2126 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLES                           0x00000004
2127 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_STRIP                      0x00000005
2128 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_FAN                        0x00000006
2129 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUADS                               0x00000007
2130 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUAD_STRIP                          0x00000008
2131 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POLYGON                             0x00000009
2132 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINELIST_ADJCY                      0x0000000A
2133 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINESTRIP_ADJCY                     0x0000000B
2134 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLELIST_ADJCY                  0x0000000C
2135 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLESTRIP_ADJCY                 0x0000000D
2136 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_PATCH                               0x0000000E
2137 
2138 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT                                             0x1218
2139 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_START_INDEX                                   15:0
2140 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_COUNT                                        27:16
2141 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY                                     31:28
2142 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POINTS                         0x00000000
2143 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINES                          0x00000001
2144 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_LOOP                      0x00000002
2145 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_STRIP                     0x00000003
2146 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLES                      0x00000004
2147 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_STRIP                 0x00000005
2148 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_FAN                   0x00000006
2149 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUADS                          0x00000007
2150 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUAD_STRIP                     0x00000008
2151 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POLYGON                        0x00000009
2152 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINELIST_ADJCY                 0x0000000A
2153 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINESTRIP_ADJCY                0x0000000B
2154 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLELIST_ADJCY             0x0000000C
2155 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLESTRIP_ADJCY             0x0000000D
2156 #define NVC597_DRAW_VERTEX_ARRAY_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_PATCH                          0x0000000E
2157 
2158 #define NVC597_SET_CT_SELECT                                                                               0x121c
2159 #define NVC597_SET_CT_SELECT_TARGET_COUNT                                                                     3:0
2160 #define NVC597_SET_CT_SELECT_TARGET0                                                                          6:4
2161 #define NVC597_SET_CT_SELECT_TARGET1                                                                          9:7
2162 #define NVC597_SET_CT_SELECT_TARGET2                                                                        12:10
2163 #define NVC597_SET_CT_SELECT_TARGET3                                                                        15:13
2164 #define NVC597_SET_CT_SELECT_TARGET4                                                                        18:16
2165 #define NVC597_SET_CT_SELECT_TARGET5                                                                        21:19
2166 #define NVC597_SET_CT_SELECT_TARGET6                                                                        24:22
2167 #define NVC597_SET_CT_SELECT_TARGET7                                                                        27:25
2168 
2169 #define NVC597_SET_COMPRESSION_THRESHOLD                                                                   0x1220
2170 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES                                                              3:0
2171 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__0                                                    0x00000000
2172 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__1                                                    0x00000001
2173 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__2                                                    0x00000002
2174 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__4                                                    0x00000003
2175 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__8                                                    0x00000004
2176 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__16                                                   0x00000005
2177 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__32                                                   0x00000006
2178 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__64                                                   0x00000007
2179 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__128                                                  0x00000008
2180 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__256                                                  0x00000009
2181 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__512                                                  0x0000000A
2182 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__1024                                                 0x0000000B
2183 #define NVC597_SET_COMPRESSION_THRESHOLD_SAMPLES__2048                                                 0x0000000C
2184 
2185 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL                                                          0x1224
2186 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_MODE                                         1:0
2187 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_MODE_NO_CONFLICT_DETECT               0x00000000
2188 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_MODE_CONFLICT_DETECT_SAMPLE             0x00000001
2189 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_MODE_CONFLICT_DETECT_PIXEL             0x00000002
2190 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_TILE_SIZE                                    2:2
2191 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_TILE_SIZE_TC_TILE_SIZE_16X16             0x00000000
2192 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_TILE_SIZE_TC_TILE_SIZE_8X8             0x00000001
2193 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_FRAGMENT_ORDER                               3:3
2194 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_FRAGMENT_ORDER_TC_FRAGMENT_ORDERED             0x00000000
2195 #define NVC597_SET_PIXEL_SHADER_INTERLOCK_CONTROL_TILE_COALESCER_FRAGMENT_ORDER_TC_FRAGMENT_UNORDERED             0x00000001
2196 
2197 #define NVC597_SET_ZT_SIZE_A                                                                               0x1228
2198 #define NVC597_SET_ZT_SIZE_A_WIDTH                                                                           27:0
2199 
2200 #define NVC597_SET_ZT_SIZE_B                                                                               0x122c
2201 #define NVC597_SET_ZT_SIZE_B_HEIGHT                                                                          17:0
2202 
2203 #define NVC597_SET_ZT_SIZE_C                                                                               0x1230
2204 #define NVC597_SET_ZT_SIZE_C_THIRD_DIMENSION                                                                 15:0
2205 #define NVC597_SET_ZT_SIZE_C_CONTROL                                                                        16:16
2206 #define NVC597_SET_ZT_SIZE_C_CONTROL_THIRD_DIMENSION_DEFINES_ARRAY_SIZE                                0x00000000
2207 #define NVC597_SET_ZT_SIZE_C_CONTROL_ARRAY_SIZE_IS_ONE                                                 0x00000001
2208 
2209 #define NVC597_SET_SAMPLER_BINDING                                                                         0x1234
2210 #define NVC597_SET_SAMPLER_BINDING_V                                                                          0:0
2211 #define NVC597_SET_SAMPLER_BINDING_V_INDEPENDENTLY                                                     0x00000000
2212 #define NVC597_SET_SAMPLER_BINDING_V_VIA_HEADER_BINDING                                                0x00000001
2213 
2214 #define NVC597_DRAW_AUTO                                                                                   0x123c
2215 #define NVC597_DRAW_AUTO_BYTE_COUNT                                                                          31:0
2216 
2217 #define NVC597_SET_POST_VTG_SHADER_ATTRIBUTE_SKIP_MASK(i)                                          (0x1240+(i)*4)
2218 #define NVC597_SET_POST_VTG_SHADER_ATTRIBUTE_SKIP_MASK_V                                                     31:0
2219 
2220 #define NVC597_SET_PIXEL_SHADER_TICKET_DISPENSER_VALUE                                                     0x1260
2221 #define NVC597_SET_PIXEL_SHADER_TICKET_DISPENSER_VALUE_TICKET_DISPENSER_INDEX                                 7:0
2222 #define NVC597_SET_PIXEL_SHADER_TICKET_DISPENSER_VALUE_TICKET_DISPENSER_VALUE                                23:8
2223 
2224 #define NVC597_SET_BACK_END_COPY_A                                                                         0x1264
2225 #define NVC597_SET_BACK_END_COPY_A_DWORDS                                                                     7:0
2226 #define NVC597_SET_BACK_END_COPY_A_SATURATE32_ENABLE                                                          8:8
2227 #define NVC597_SET_BACK_END_COPY_A_SATURATE32_ENABLE_FALSE                                             0x00000000
2228 #define NVC597_SET_BACK_END_COPY_A_SATURATE32_ENABLE_TRUE                                              0x00000001
2229 #define NVC597_SET_BACK_END_COPY_A_TIMESTAMP_ENABLE                                                         12:12
2230 #define NVC597_SET_BACK_END_COPY_A_TIMESTAMP_ENABLE_FALSE                                              0x00000000
2231 #define NVC597_SET_BACK_END_COPY_A_TIMESTAMP_ENABLE_TRUE                                               0x00000001
2232 
2233 #define NVC597_SET_BACK_END_COPY_B                                                                         0x1268
2234 #define NVC597_SET_BACK_END_COPY_B_SRC_ADDRESS_UPPER                                                          7:0
2235 
2236 #define NVC597_SET_BACK_END_COPY_C                                                                         0x126c
2237 #define NVC597_SET_BACK_END_COPY_C_SRC_ADDRESS_LOWER                                                         31:0
2238 
2239 #define NVC597_SET_BACK_END_COPY_D                                                                         0x1270
2240 #define NVC597_SET_BACK_END_COPY_D_DEST_ADDRESS_UPPER                                                         7:0
2241 
2242 #define NVC597_SET_BACK_END_COPY_E                                                                         0x1274
2243 #define NVC597_SET_BACK_END_COPY_E_DEST_ADDRESS_LOWER                                                        31:0
2244 
2245 #define NVC597_SET_CIRCULAR_BUFFER_SIZE                                                                    0x1280
2246 #define NVC597_SET_CIRCULAR_BUFFER_SIZE_CACHE_LINES_PER_SM                                                   19:0
2247 
2248 #define NVC597_SET_VTG_REGISTER_WATERMARKS                                                                 0x1284
2249 #define NVC597_SET_VTG_REGISTER_WATERMARKS_LOW                                                               15:0
2250 #define NVC597_SET_VTG_REGISTER_WATERMARKS_HIGH                                                             31:16
2251 
2252 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI                                                        0x1288
2253 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI_LINES                                                     0:0
2254 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI_LINES_ALL                                          0x00000000
2255 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI_LINES_ONE                                          0x00000001
2256 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI_TAG                                                      25:4
2257 
2258 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_READ_REQUESTS                                      0x1290
2259 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_READ_REQUESTS_POLICY                                  5:4
2260 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_READ_REQUESTS_POLICY_EVICT_FIRST               0x00000000
2261 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_READ_REQUESTS_POLICY_EVICT_NORMAL              0x00000001
2262 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_READ_REQUESTS_POLICY_EVICT_LAST                0x00000002
2263 
2264 #define NVC597_SET_DA_PRIMITIVE_RESTART_INDEX_TOPOLOGY_CHANGE                                              0x12a4
2265 #define NVC597_SET_DA_PRIMITIVE_RESTART_INDEX_TOPOLOGY_CHANGE_V                                              31:0
2266 
2267 #define NVC597_CLEAR_ZCULL_REGION                                                                          0x12c8
2268 #define NVC597_CLEAR_ZCULL_REGION_Z_ENABLE                                                                    0:0
2269 #define NVC597_CLEAR_ZCULL_REGION_Z_ENABLE_FALSE                                                       0x00000000
2270 #define NVC597_CLEAR_ZCULL_REGION_Z_ENABLE_TRUE                                                        0x00000001
2271 #define NVC597_CLEAR_ZCULL_REGION_STENCIL_ENABLE                                                              4:4
2272 #define NVC597_CLEAR_ZCULL_REGION_STENCIL_ENABLE_FALSE                                                 0x00000000
2273 #define NVC597_CLEAR_ZCULL_REGION_STENCIL_ENABLE_TRUE                                                  0x00000001
2274 #define NVC597_CLEAR_ZCULL_REGION_USE_CLEAR_RECT                                                              1:1
2275 #define NVC597_CLEAR_ZCULL_REGION_USE_CLEAR_RECT_FALSE                                                 0x00000000
2276 #define NVC597_CLEAR_ZCULL_REGION_USE_CLEAR_RECT_TRUE                                                  0x00000001
2277 #define NVC597_CLEAR_ZCULL_REGION_USE_RT_ARRAY_INDEX                                                          2:2
2278 #define NVC597_CLEAR_ZCULL_REGION_USE_RT_ARRAY_INDEX_FALSE                                             0x00000000
2279 #define NVC597_CLEAR_ZCULL_REGION_USE_RT_ARRAY_INDEX_TRUE                                              0x00000001
2280 #define NVC597_CLEAR_ZCULL_REGION_RT_ARRAY_INDEX                                                             20:5
2281 #define NVC597_CLEAR_ZCULL_REGION_MAKE_CONSERVATIVE                                                           3:3
2282 #define NVC597_CLEAR_ZCULL_REGION_MAKE_CONSERVATIVE_FALSE                                              0x00000000
2283 #define NVC597_CLEAR_ZCULL_REGION_MAKE_CONSERVATIVE_TRUE                                               0x00000001
2284 
2285 #define NVC597_SET_DEPTH_TEST                                                                              0x12cc
2286 #define NVC597_SET_DEPTH_TEST_ENABLE                                                                          0:0
2287 #define NVC597_SET_DEPTH_TEST_ENABLE_FALSE                                                             0x00000000
2288 #define NVC597_SET_DEPTH_TEST_ENABLE_TRUE                                                              0x00000001
2289 
2290 #define NVC597_SET_FILL_MODE                                                                               0x12d0
2291 #define NVC597_SET_FILL_MODE_V                                                                               31:0
2292 #define NVC597_SET_FILL_MODE_V_POINT                                                                   0x00000001
2293 #define NVC597_SET_FILL_MODE_V_WIREFRAME                                                               0x00000002
2294 #define NVC597_SET_FILL_MODE_V_SOLID                                                                   0x00000003
2295 
2296 #define NVC597_SET_SHADE_MODE                                                                              0x12d4
2297 #define NVC597_SET_SHADE_MODE_V                                                                              31:0
2298 #define NVC597_SET_SHADE_MODE_V_FLAT                                                                   0x00000001
2299 #define NVC597_SET_SHADE_MODE_V_GOURAUD                                                                0x00000002
2300 #define NVC597_SET_SHADE_MODE_V_OGL_FLAT                                                               0x00001D00
2301 #define NVC597_SET_SHADE_MODE_V_OGL_SMOOTH                                                             0x00001D01
2302 
2303 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_WRITE_REQUESTS                                  0x12d8
2304 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_WRITE_REQUESTS_POLICY                              5:4
2305 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_FIRST             0x00000000
2306 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_NORMAL             0x00000001
2307 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_NONINTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_LAST             0x00000002
2308 
2309 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_WRITE_REQUESTS                                     0x12dc
2310 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_WRITE_REQUESTS_POLICY                                 5:4
2311 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_FIRST              0x00000000
2312 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_NORMAL             0x00000001
2313 #define NVC597_SET_L2_CACHE_CONTROL_FOR_ROP_INTERLOCKED_WRITE_REQUESTS_POLICY_EVICT_LAST               0x00000002
2314 
2315 #define NVC597_SET_ALPHA_TO_COVERAGE_DITHER_CONTROL                                                        0x12e0
2316 #define NVC597_SET_ALPHA_TO_COVERAGE_DITHER_CONTROL_DITHER_FOOTPRINT                                          3:0
2317 #define NVC597_SET_ALPHA_TO_COVERAGE_DITHER_CONTROL_DITHER_FOOTPRINT_PIXELS_1X1                        0x00000000
2318 #define NVC597_SET_ALPHA_TO_COVERAGE_DITHER_CONTROL_DITHER_FOOTPRINT_PIXELS_2X2                        0x00000001
2319 #define NVC597_SET_ALPHA_TO_COVERAGE_DITHER_CONTROL_DITHER_FOOTPRINT_PIXELS_1X1_VIRTUAL_SAMPLES             0x00000002
2320 
2321 #define NVC597_SET_BLEND_STATE_PER_TARGET                                                                  0x12e4
2322 #define NVC597_SET_BLEND_STATE_PER_TARGET_ENABLE                                                              0:0
2323 #define NVC597_SET_BLEND_STATE_PER_TARGET_ENABLE_FALSE                                                 0x00000000
2324 #define NVC597_SET_BLEND_STATE_PER_TARGET_ENABLE_TRUE                                                  0x00000001
2325 
2326 #define NVC597_SET_DEPTH_WRITE                                                                             0x12e8
2327 #define NVC597_SET_DEPTH_WRITE_ENABLE                                                                         0:0
2328 #define NVC597_SET_DEPTH_WRITE_ENABLE_FALSE                                                            0x00000000
2329 #define NVC597_SET_DEPTH_WRITE_ENABLE_TRUE                                                             0x00000001
2330 
2331 #define NVC597_SET_ALPHA_TEST                                                                              0x12ec
2332 #define NVC597_SET_ALPHA_TEST_ENABLE                                                                          0:0
2333 #define NVC597_SET_ALPHA_TEST_ENABLE_FALSE                                                             0x00000000
2334 #define NVC597_SET_ALPHA_TEST_ENABLE_TRUE                                                              0x00000001
2335 
2336 #define NVC597_SET_INLINE_INDEX4X8_ALIGN                                                                   0x1300
2337 #define NVC597_SET_INLINE_INDEX4X8_ALIGN_COUNT                                                               29:0
2338 #define NVC597_SET_INLINE_INDEX4X8_ALIGN_START                                                              31:30
2339 
2340 #define NVC597_DRAW_INLINE_INDEX4X8                                                                        0x1304
2341 #define NVC597_DRAW_INLINE_INDEX4X8_INDEX0                                                                    7:0
2342 #define NVC597_DRAW_INLINE_INDEX4X8_INDEX1                                                                   15:8
2343 #define NVC597_DRAW_INLINE_INDEX4X8_INDEX2                                                                  23:16
2344 #define NVC597_DRAW_INLINE_INDEX4X8_INDEX3                                                                  31:24
2345 
2346 #define NVC597_D3D_SET_CULL_MODE                                                                           0x1308
2347 #define NVC597_D3D_SET_CULL_MODE_V                                                                           31:0
2348 #define NVC597_D3D_SET_CULL_MODE_V_NONE                                                                0x00000001
2349 #define NVC597_D3D_SET_CULL_MODE_V_CW                                                                  0x00000002
2350 #define NVC597_D3D_SET_CULL_MODE_V_CCW                                                                 0x00000003
2351 
2352 #define NVC597_SET_DEPTH_FUNC                                                                              0x130c
2353 #define NVC597_SET_DEPTH_FUNC_V                                                                              31:0
2354 #define NVC597_SET_DEPTH_FUNC_V_OGL_NEVER                                                              0x00000200
2355 #define NVC597_SET_DEPTH_FUNC_V_OGL_LESS                                                               0x00000201
2356 #define NVC597_SET_DEPTH_FUNC_V_OGL_EQUAL                                                              0x00000202
2357 #define NVC597_SET_DEPTH_FUNC_V_OGL_LEQUAL                                                             0x00000203
2358 #define NVC597_SET_DEPTH_FUNC_V_OGL_GREATER                                                            0x00000204
2359 #define NVC597_SET_DEPTH_FUNC_V_OGL_NOTEQUAL                                                           0x00000205
2360 #define NVC597_SET_DEPTH_FUNC_V_OGL_GEQUAL                                                             0x00000206
2361 #define NVC597_SET_DEPTH_FUNC_V_OGL_ALWAYS                                                             0x00000207
2362 #define NVC597_SET_DEPTH_FUNC_V_D3D_NEVER                                                              0x00000001
2363 #define NVC597_SET_DEPTH_FUNC_V_D3D_LESS                                                               0x00000002
2364 #define NVC597_SET_DEPTH_FUNC_V_D3D_EQUAL                                                              0x00000003
2365 #define NVC597_SET_DEPTH_FUNC_V_D3D_LESSEQUAL                                                          0x00000004
2366 #define NVC597_SET_DEPTH_FUNC_V_D3D_GREATER                                                            0x00000005
2367 #define NVC597_SET_DEPTH_FUNC_V_D3D_NOTEQUAL                                                           0x00000006
2368 #define NVC597_SET_DEPTH_FUNC_V_D3D_GREATEREQUAL                                                       0x00000007
2369 #define NVC597_SET_DEPTH_FUNC_V_D3D_ALWAYS                                                             0x00000008
2370 
2371 #define NVC597_SET_ALPHA_REF                                                                               0x1310
2372 #define NVC597_SET_ALPHA_REF_V                                                                               31:0
2373 
2374 #define NVC597_SET_ALPHA_FUNC                                                                              0x1314
2375 #define NVC597_SET_ALPHA_FUNC_V                                                                              31:0
2376 #define NVC597_SET_ALPHA_FUNC_V_OGL_NEVER                                                              0x00000200
2377 #define NVC597_SET_ALPHA_FUNC_V_OGL_LESS                                                               0x00000201
2378 #define NVC597_SET_ALPHA_FUNC_V_OGL_EQUAL                                                              0x00000202
2379 #define NVC597_SET_ALPHA_FUNC_V_OGL_LEQUAL                                                             0x00000203
2380 #define NVC597_SET_ALPHA_FUNC_V_OGL_GREATER                                                            0x00000204
2381 #define NVC597_SET_ALPHA_FUNC_V_OGL_NOTEQUAL                                                           0x00000205
2382 #define NVC597_SET_ALPHA_FUNC_V_OGL_GEQUAL                                                             0x00000206
2383 #define NVC597_SET_ALPHA_FUNC_V_OGL_ALWAYS                                                             0x00000207
2384 #define NVC597_SET_ALPHA_FUNC_V_D3D_NEVER                                                              0x00000001
2385 #define NVC597_SET_ALPHA_FUNC_V_D3D_LESS                                                               0x00000002
2386 #define NVC597_SET_ALPHA_FUNC_V_D3D_EQUAL                                                              0x00000003
2387 #define NVC597_SET_ALPHA_FUNC_V_D3D_LESSEQUAL                                                          0x00000004
2388 #define NVC597_SET_ALPHA_FUNC_V_D3D_GREATER                                                            0x00000005
2389 #define NVC597_SET_ALPHA_FUNC_V_D3D_NOTEQUAL                                                           0x00000006
2390 #define NVC597_SET_ALPHA_FUNC_V_D3D_GREATEREQUAL                                                       0x00000007
2391 #define NVC597_SET_ALPHA_FUNC_V_D3D_ALWAYS                                                             0x00000008
2392 
2393 #define NVC597_SET_DRAW_AUTO_STRIDE                                                                        0x1318
2394 #define NVC597_SET_DRAW_AUTO_STRIDE_V                                                                        11:0
2395 
2396 #define NVC597_SET_BLEND_CONST_RED                                                                         0x131c
2397 #define NVC597_SET_BLEND_CONST_RED_V                                                                         31:0
2398 
2399 #define NVC597_SET_BLEND_CONST_GREEN                                                                       0x1320
2400 #define NVC597_SET_BLEND_CONST_GREEN_V                                                                       31:0
2401 
2402 #define NVC597_SET_BLEND_CONST_BLUE                                                                        0x1324
2403 #define NVC597_SET_BLEND_CONST_BLUE_V                                                                        31:0
2404 
2405 #define NVC597_SET_BLEND_CONST_ALPHA                                                                       0x1328
2406 #define NVC597_SET_BLEND_CONST_ALPHA_V                                                                       31:0
2407 
2408 #define NVC597_INVALIDATE_SAMPLER_CACHE                                                                    0x1330
2409 #define NVC597_INVALIDATE_SAMPLER_CACHE_LINES                                                                 0:0
2410 #define NVC597_INVALIDATE_SAMPLER_CACHE_LINES_ALL                                                      0x00000000
2411 #define NVC597_INVALIDATE_SAMPLER_CACHE_LINES_ONE                                                      0x00000001
2412 #define NVC597_INVALIDATE_SAMPLER_CACHE_TAG                                                                  25:4
2413 
2414 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE                                                             0x1334
2415 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_LINES                                                          0:0
2416 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_LINES_ALL                                               0x00000000
2417 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_LINES_ONE                                               0x00000001
2418 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_TAG                                                           25:4
2419 
2420 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE                                                               0x1338
2421 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_LINES                                                            0:0
2422 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_LINES_ALL                                                 0x00000000
2423 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_LINES_ONE                                                 0x00000001
2424 #define NVC597_INVALIDATE_TEXTURE_DATA_CACHE_TAG                                                             25:4
2425 
2426 #define NVC597_SET_BLEND_SEPARATE_FOR_ALPHA                                                                0x133c
2427 #define NVC597_SET_BLEND_SEPARATE_FOR_ALPHA_ENABLE                                                            0:0
2428 #define NVC597_SET_BLEND_SEPARATE_FOR_ALPHA_ENABLE_FALSE                                               0x00000000
2429 #define NVC597_SET_BLEND_SEPARATE_FOR_ALPHA_ENABLE_TRUE                                                0x00000001
2430 
2431 #define NVC597_SET_BLEND_COLOR_OP                                                                          0x1340
2432 #define NVC597_SET_BLEND_COLOR_OP_V                                                                          31:0
2433 #define NVC597_SET_BLEND_COLOR_OP_V_OGL_FUNC_SUBTRACT                                                  0x0000800A
2434 #define NVC597_SET_BLEND_COLOR_OP_V_OGL_FUNC_REVERSE_SUBTRACT                                          0x0000800B
2435 #define NVC597_SET_BLEND_COLOR_OP_V_OGL_FUNC_ADD                                                       0x00008006
2436 #define NVC597_SET_BLEND_COLOR_OP_V_OGL_MIN                                                            0x00008007
2437 #define NVC597_SET_BLEND_COLOR_OP_V_OGL_MAX                                                            0x00008008
2438 #define NVC597_SET_BLEND_COLOR_OP_V_D3D_ADD                                                            0x00000001
2439 #define NVC597_SET_BLEND_COLOR_OP_V_D3D_SUBTRACT                                                       0x00000002
2440 #define NVC597_SET_BLEND_COLOR_OP_V_D3D_REVSUBTRACT                                                    0x00000003
2441 #define NVC597_SET_BLEND_COLOR_OP_V_D3D_MIN                                                            0x00000004
2442 #define NVC597_SET_BLEND_COLOR_OP_V_D3D_MAX                                                            0x00000005
2443 
2444 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF                                                                0x1344
2445 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V                                                                31:0
2446 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ZERO                                                 0x00004000
2447 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE                                                  0x00004001
2448 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_SRC_COLOR                                            0x00004300
2449 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                                  0x00004301
2450 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_SRC_ALPHA                                            0x00004302
2451 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                                  0x00004303
2452 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_DST_ALPHA                                            0x00004304
2453 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                                  0x00004305
2454 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_DST_COLOR                                            0x00004306
2455 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_COLOR                                  0x00004307
2456 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_SRC_ALPHA_SATURATE                                   0x00004308
2457 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_CONSTANT_COLOR                                       0x0000C001
2458 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                             0x0000C002
2459 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_CONSTANT_ALPHA                                       0x0000C003
2460 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                             0x0000C004
2461 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_SRC1COLOR                                            0x0000C900
2462 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_INVSRC1COLOR                                         0x0000C901
2463 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_SRC1ALPHA                                            0x0000C902
2464 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_OGL_INVSRC1ALPHA                                         0x0000C903
2465 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_ZERO                                                 0x00000001
2466 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_ONE                                                  0x00000002
2467 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_SRCCOLOR                                             0x00000003
2468 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVSRCCOLOR                                          0x00000004
2469 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_SRCALPHA                                             0x00000005
2470 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVSRCALPHA                                          0x00000006
2471 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_DESTALPHA                                            0x00000007
2472 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVDESTALPHA                                         0x00000008
2473 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_DESTCOLOR                                            0x00000009
2474 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVDESTCOLOR                                         0x0000000A
2475 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_SRCALPHASAT                                          0x0000000B
2476 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_BOTHSRCALPHA                                         0x0000000C
2477 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_BOTHINVSRCALPHA                                      0x0000000D
2478 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_BLENDFACTOR                                          0x0000000E
2479 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVBLENDFACTOR                                       0x0000000F
2480 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_SRC1COLOR                                            0x00000010
2481 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVSRC1COLOR                                         0x00000011
2482 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_SRC1ALPHA                                            0x00000012
2483 #define NVC597_SET_BLEND_COLOR_SOURCE_COEFF_V_D3D_INVSRC1ALPHA                                         0x00000013
2484 
2485 #define NVC597_SET_BLEND_COLOR_DEST_COEFF                                                                  0x1348
2486 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V                                                                  31:0
2487 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ZERO                                                   0x00004000
2488 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE                                                    0x00004001
2489 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_SRC_COLOR                                              0x00004300
2490 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                                    0x00004301
2491 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_SRC_ALPHA                                              0x00004302
2492 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                                    0x00004303
2493 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_DST_ALPHA                                              0x00004304
2494 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                                    0x00004305
2495 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_DST_COLOR                                              0x00004306
2496 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_DST_COLOR                                    0x00004307
2497 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_SRC_ALPHA_SATURATE                                     0x00004308
2498 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_CONSTANT_COLOR                                         0x0000C001
2499 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                               0x0000C002
2500 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_CONSTANT_ALPHA                                         0x0000C003
2501 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                               0x0000C004
2502 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_SRC1COLOR                                              0x0000C900
2503 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_INVSRC1COLOR                                           0x0000C901
2504 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_SRC1ALPHA                                              0x0000C902
2505 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_OGL_INVSRC1ALPHA                                           0x0000C903
2506 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_ZERO                                                   0x00000001
2507 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_ONE                                                    0x00000002
2508 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_SRCCOLOR                                               0x00000003
2509 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVSRCCOLOR                                            0x00000004
2510 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_SRCALPHA                                               0x00000005
2511 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVSRCALPHA                                            0x00000006
2512 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_DESTALPHA                                              0x00000007
2513 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVDESTALPHA                                           0x00000008
2514 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_DESTCOLOR                                              0x00000009
2515 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVDESTCOLOR                                           0x0000000A
2516 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_SRCALPHASAT                                            0x0000000B
2517 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_BLENDFACTOR                                            0x0000000E
2518 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVBLENDFACTOR                                         0x0000000F
2519 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_SRC1COLOR                                              0x00000010
2520 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVSRC1COLOR                                           0x00000011
2521 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_SRC1ALPHA                                              0x00000012
2522 #define NVC597_SET_BLEND_COLOR_DEST_COEFF_V_D3D_INVSRC1ALPHA                                           0x00000013
2523 
2524 #define NVC597_SET_BLEND_ALPHA_OP                                                                          0x134c
2525 #define NVC597_SET_BLEND_ALPHA_OP_V                                                                          31:0
2526 #define NVC597_SET_BLEND_ALPHA_OP_V_OGL_FUNC_SUBTRACT                                                  0x0000800A
2527 #define NVC597_SET_BLEND_ALPHA_OP_V_OGL_FUNC_REVERSE_SUBTRACT                                          0x0000800B
2528 #define NVC597_SET_BLEND_ALPHA_OP_V_OGL_FUNC_ADD                                                       0x00008006
2529 #define NVC597_SET_BLEND_ALPHA_OP_V_OGL_MIN                                                            0x00008007
2530 #define NVC597_SET_BLEND_ALPHA_OP_V_OGL_MAX                                                            0x00008008
2531 #define NVC597_SET_BLEND_ALPHA_OP_V_D3D_ADD                                                            0x00000001
2532 #define NVC597_SET_BLEND_ALPHA_OP_V_D3D_SUBTRACT                                                       0x00000002
2533 #define NVC597_SET_BLEND_ALPHA_OP_V_D3D_REVSUBTRACT                                                    0x00000003
2534 #define NVC597_SET_BLEND_ALPHA_OP_V_D3D_MIN                                                            0x00000004
2535 #define NVC597_SET_BLEND_ALPHA_OP_V_D3D_MAX                                                            0x00000005
2536 
2537 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF                                                                0x1350
2538 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V                                                                31:0
2539 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ZERO                                                 0x00004000
2540 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE                                                  0x00004001
2541 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_SRC_COLOR                                            0x00004300
2542 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                                  0x00004301
2543 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_SRC_ALPHA                                            0x00004302
2544 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                                  0x00004303
2545 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_DST_ALPHA                                            0x00004304
2546 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                                  0x00004305
2547 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_DST_COLOR                                            0x00004306
2548 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_COLOR                                  0x00004307
2549 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_SRC_ALPHA_SATURATE                                   0x00004308
2550 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_CONSTANT_COLOR                                       0x0000C001
2551 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                             0x0000C002
2552 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_CONSTANT_ALPHA                                       0x0000C003
2553 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                             0x0000C004
2554 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_SRC1COLOR                                            0x0000C900
2555 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_INVSRC1COLOR                                         0x0000C901
2556 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_SRC1ALPHA                                            0x0000C902
2557 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_OGL_INVSRC1ALPHA                                         0x0000C903
2558 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_ZERO                                                 0x00000001
2559 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_ONE                                                  0x00000002
2560 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_SRCCOLOR                                             0x00000003
2561 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVSRCCOLOR                                          0x00000004
2562 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_SRCALPHA                                             0x00000005
2563 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVSRCALPHA                                          0x00000006
2564 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_DESTALPHA                                            0x00000007
2565 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVDESTALPHA                                         0x00000008
2566 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_DESTCOLOR                                            0x00000009
2567 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVDESTCOLOR                                         0x0000000A
2568 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_SRCALPHASAT                                          0x0000000B
2569 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_BOTHSRCALPHA                                         0x0000000C
2570 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_BOTHINVSRCALPHA                                      0x0000000D
2571 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_BLENDFACTOR                                          0x0000000E
2572 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVBLENDFACTOR                                       0x0000000F
2573 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_SRC1COLOR                                            0x00000010
2574 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVSRC1COLOR                                         0x00000011
2575 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_SRC1ALPHA                                            0x00000012
2576 #define NVC597_SET_BLEND_ALPHA_SOURCE_COEFF_V_D3D_INVSRC1ALPHA                                         0x00000013
2577 
2578 #define NVC597_SET_GLOBAL_COLOR_KEY                                                                        0x1354
2579 #define NVC597_SET_GLOBAL_COLOR_KEY_ENABLE                                                                    0:0
2580 #define NVC597_SET_GLOBAL_COLOR_KEY_ENABLE_FALSE                                                       0x00000000
2581 #define NVC597_SET_GLOBAL_COLOR_KEY_ENABLE_TRUE                                                        0x00000001
2582 
2583 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF                                                                  0x1358
2584 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V                                                                  31:0
2585 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ZERO                                                   0x00004000
2586 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE                                                    0x00004001
2587 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_SRC_COLOR                                              0x00004300
2588 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                                    0x00004301
2589 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_SRC_ALPHA                                              0x00004302
2590 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                                    0x00004303
2591 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_DST_ALPHA                                              0x00004304
2592 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                                    0x00004305
2593 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_DST_COLOR                                              0x00004306
2594 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_DST_COLOR                                    0x00004307
2595 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_SRC_ALPHA_SATURATE                                     0x00004308
2596 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_CONSTANT_COLOR                                         0x0000C001
2597 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                               0x0000C002
2598 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_CONSTANT_ALPHA                                         0x0000C003
2599 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                               0x0000C004
2600 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_SRC1COLOR                                              0x0000C900
2601 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_INVSRC1COLOR                                           0x0000C901
2602 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_SRC1ALPHA                                              0x0000C902
2603 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_OGL_INVSRC1ALPHA                                           0x0000C903
2604 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_ZERO                                                   0x00000001
2605 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_ONE                                                    0x00000002
2606 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_SRCCOLOR                                               0x00000003
2607 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVSRCCOLOR                                            0x00000004
2608 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_SRCALPHA                                               0x00000005
2609 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVSRCALPHA                                            0x00000006
2610 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_DESTALPHA                                              0x00000007
2611 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVDESTALPHA                                           0x00000008
2612 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_DESTCOLOR                                              0x00000009
2613 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVDESTCOLOR                                           0x0000000A
2614 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_SRCALPHASAT                                            0x0000000B
2615 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_BLENDFACTOR                                            0x0000000E
2616 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVBLENDFACTOR                                         0x0000000F
2617 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_SRC1COLOR                                              0x00000010
2618 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVSRC1COLOR                                           0x00000011
2619 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_SRC1ALPHA                                              0x00000012
2620 #define NVC597_SET_BLEND_ALPHA_DEST_COEFF_V_D3D_INVSRC1ALPHA                                           0x00000013
2621 
2622 #define NVC597_SET_SINGLE_ROP_CONTROL                                                                      0x135c
2623 #define NVC597_SET_SINGLE_ROP_CONTROL_ENABLE                                                                  0:0
2624 #define NVC597_SET_SINGLE_ROP_CONTROL_ENABLE_FALSE                                                     0x00000000
2625 #define NVC597_SET_SINGLE_ROP_CONTROL_ENABLE_TRUE                                                      0x00000001
2626 
2627 #define NVC597_SET_BLEND(i)                                                                        (0x1360+(i)*4)
2628 #define NVC597_SET_BLEND_ENABLE                                                                               0:0
2629 #define NVC597_SET_BLEND_ENABLE_FALSE                                                                  0x00000000
2630 #define NVC597_SET_BLEND_ENABLE_TRUE                                                                   0x00000001
2631 
2632 #define NVC597_SET_STENCIL_TEST                                                                            0x1380
2633 #define NVC597_SET_STENCIL_TEST_ENABLE                                                                        0:0
2634 #define NVC597_SET_STENCIL_TEST_ENABLE_FALSE                                                           0x00000000
2635 #define NVC597_SET_STENCIL_TEST_ENABLE_TRUE                                                            0x00000001
2636 
2637 #define NVC597_SET_STENCIL_OP_FAIL                                                                         0x1384
2638 #define NVC597_SET_STENCIL_OP_FAIL_V                                                                         31:0
2639 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_KEEP                                                          0x00001E00
2640 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_ZERO                                                          0x00000000
2641 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_REPLACE                                                       0x00001E01
2642 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_INCRSAT                                                       0x00001E02
2643 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_DECRSAT                                                       0x00001E03
2644 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_INVERT                                                        0x0000150A
2645 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_INCR                                                          0x00008507
2646 #define NVC597_SET_STENCIL_OP_FAIL_V_OGL_DECR                                                          0x00008508
2647 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_KEEP                                                          0x00000001
2648 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_ZERO                                                          0x00000002
2649 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_REPLACE                                                       0x00000003
2650 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_INCRSAT                                                       0x00000004
2651 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_DECRSAT                                                       0x00000005
2652 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_INVERT                                                        0x00000006
2653 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_INCR                                                          0x00000007
2654 #define NVC597_SET_STENCIL_OP_FAIL_V_D3D_DECR                                                          0x00000008
2655 
2656 #define NVC597_SET_STENCIL_OP_ZFAIL                                                                        0x1388
2657 #define NVC597_SET_STENCIL_OP_ZFAIL_V                                                                        31:0
2658 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_KEEP                                                         0x00001E00
2659 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_ZERO                                                         0x00000000
2660 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_REPLACE                                                      0x00001E01
2661 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_INCRSAT                                                      0x00001E02
2662 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_DECRSAT                                                      0x00001E03
2663 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_INVERT                                                       0x0000150A
2664 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_INCR                                                         0x00008507
2665 #define NVC597_SET_STENCIL_OP_ZFAIL_V_OGL_DECR                                                         0x00008508
2666 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_KEEP                                                         0x00000001
2667 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_ZERO                                                         0x00000002
2668 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_REPLACE                                                      0x00000003
2669 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_INCRSAT                                                      0x00000004
2670 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_DECRSAT                                                      0x00000005
2671 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_INVERT                                                       0x00000006
2672 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_INCR                                                         0x00000007
2673 #define NVC597_SET_STENCIL_OP_ZFAIL_V_D3D_DECR                                                         0x00000008
2674 
2675 #define NVC597_SET_STENCIL_OP_ZPASS                                                                        0x138c
2676 #define NVC597_SET_STENCIL_OP_ZPASS_V                                                                        31:0
2677 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_KEEP                                                         0x00001E00
2678 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_ZERO                                                         0x00000000
2679 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_REPLACE                                                      0x00001E01
2680 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_INCRSAT                                                      0x00001E02
2681 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_DECRSAT                                                      0x00001E03
2682 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_INVERT                                                       0x0000150A
2683 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_INCR                                                         0x00008507
2684 #define NVC597_SET_STENCIL_OP_ZPASS_V_OGL_DECR                                                         0x00008508
2685 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_KEEP                                                         0x00000001
2686 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_ZERO                                                         0x00000002
2687 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_REPLACE                                                      0x00000003
2688 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_INCRSAT                                                      0x00000004
2689 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_DECRSAT                                                      0x00000005
2690 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_INVERT                                                       0x00000006
2691 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_INCR                                                         0x00000007
2692 #define NVC597_SET_STENCIL_OP_ZPASS_V_D3D_DECR                                                         0x00000008
2693 
2694 #define NVC597_SET_STENCIL_FUNC                                                                            0x1390
2695 #define NVC597_SET_STENCIL_FUNC_V                                                                            31:0
2696 #define NVC597_SET_STENCIL_FUNC_V_OGL_NEVER                                                            0x00000200
2697 #define NVC597_SET_STENCIL_FUNC_V_OGL_LESS                                                             0x00000201
2698 #define NVC597_SET_STENCIL_FUNC_V_OGL_EQUAL                                                            0x00000202
2699 #define NVC597_SET_STENCIL_FUNC_V_OGL_LEQUAL                                                           0x00000203
2700 #define NVC597_SET_STENCIL_FUNC_V_OGL_GREATER                                                          0x00000204
2701 #define NVC597_SET_STENCIL_FUNC_V_OGL_NOTEQUAL                                                         0x00000205
2702 #define NVC597_SET_STENCIL_FUNC_V_OGL_GEQUAL                                                           0x00000206
2703 #define NVC597_SET_STENCIL_FUNC_V_OGL_ALWAYS                                                           0x00000207
2704 #define NVC597_SET_STENCIL_FUNC_V_D3D_NEVER                                                            0x00000001
2705 #define NVC597_SET_STENCIL_FUNC_V_D3D_LESS                                                             0x00000002
2706 #define NVC597_SET_STENCIL_FUNC_V_D3D_EQUAL                                                            0x00000003
2707 #define NVC597_SET_STENCIL_FUNC_V_D3D_LESSEQUAL                                                        0x00000004
2708 #define NVC597_SET_STENCIL_FUNC_V_D3D_GREATER                                                          0x00000005
2709 #define NVC597_SET_STENCIL_FUNC_V_D3D_NOTEQUAL                                                         0x00000006
2710 #define NVC597_SET_STENCIL_FUNC_V_D3D_GREATEREQUAL                                                     0x00000007
2711 #define NVC597_SET_STENCIL_FUNC_V_D3D_ALWAYS                                                           0x00000008
2712 
2713 #define NVC597_SET_STENCIL_FUNC_REF                                                                        0x1394
2714 #define NVC597_SET_STENCIL_FUNC_REF_V                                                                         7:0
2715 
2716 #define NVC597_SET_STENCIL_FUNC_MASK                                                                       0x1398
2717 #define NVC597_SET_STENCIL_FUNC_MASK_V                                                                        7:0
2718 
2719 #define NVC597_SET_STENCIL_MASK                                                                            0x139c
2720 #define NVC597_SET_STENCIL_MASK_V                                                                             7:0
2721 
2722 #define NVC597_SET_DRAW_AUTO_START                                                                         0x13a4
2723 #define NVC597_SET_DRAW_AUTO_START_BYTE_COUNT                                                                31:0
2724 
2725 #define NVC597_SET_PS_SATURATE                                                                             0x13a8
2726 #define NVC597_SET_PS_SATURATE_OUTPUT0                                                                        0:0
2727 #define NVC597_SET_PS_SATURATE_OUTPUT0_FALSE                                                           0x00000000
2728 #define NVC597_SET_PS_SATURATE_OUTPUT0_TRUE                                                            0x00000001
2729 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE0                                                                   1:1
2730 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE0_ZERO_TO_PLUS_ONE                                           0x00000000
2731 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE0_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2732 #define NVC597_SET_PS_SATURATE_OUTPUT1                                                                        4:4
2733 #define NVC597_SET_PS_SATURATE_OUTPUT1_FALSE                                                           0x00000000
2734 #define NVC597_SET_PS_SATURATE_OUTPUT1_TRUE                                                            0x00000001
2735 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE1                                                                   5:5
2736 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE1_ZERO_TO_PLUS_ONE                                           0x00000000
2737 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE1_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2738 #define NVC597_SET_PS_SATURATE_OUTPUT2                                                                        8:8
2739 #define NVC597_SET_PS_SATURATE_OUTPUT2_FALSE                                                           0x00000000
2740 #define NVC597_SET_PS_SATURATE_OUTPUT2_TRUE                                                            0x00000001
2741 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE2                                                                   9:9
2742 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE2_ZERO_TO_PLUS_ONE                                           0x00000000
2743 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE2_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2744 #define NVC597_SET_PS_SATURATE_OUTPUT3                                                                      12:12
2745 #define NVC597_SET_PS_SATURATE_OUTPUT3_FALSE                                                           0x00000000
2746 #define NVC597_SET_PS_SATURATE_OUTPUT3_TRUE                                                            0x00000001
2747 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE3                                                                 13:13
2748 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE3_ZERO_TO_PLUS_ONE                                           0x00000000
2749 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE3_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2750 #define NVC597_SET_PS_SATURATE_OUTPUT4                                                                      16:16
2751 #define NVC597_SET_PS_SATURATE_OUTPUT4_FALSE                                                           0x00000000
2752 #define NVC597_SET_PS_SATURATE_OUTPUT4_TRUE                                                            0x00000001
2753 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE4                                                                 17:17
2754 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE4_ZERO_TO_PLUS_ONE                                           0x00000000
2755 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE4_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2756 #define NVC597_SET_PS_SATURATE_OUTPUT5                                                                      20:20
2757 #define NVC597_SET_PS_SATURATE_OUTPUT5_FALSE                                                           0x00000000
2758 #define NVC597_SET_PS_SATURATE_OUTPUT5_TRUE                                                            0x00000001
2759 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE5                                                                 21:21
2760 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE5_ZERO_TO_PLUS_ONE                                           0x00000000
2761 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE5_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2762 #define NVC597_SET_PS_SATURATE_OUTPUT6                                                                      24:24
2763 #define NVC597_SET_PS_SATURATE_OUTPUT6_FALSE                                                           0x00000000
2764 #define NVC597_SET_PS_SATURATE_OUTPUT6_TRUE                                                            0x00000001
2765 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE6                                                                 25:25
2766 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE6_ZERO_TO_PLUS_ONE                                           0x00000000
2767 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE6_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2768 #define NVC597_SET_PS_SATURATE_OUTPUT7                                                                      28:28
2769 #define NVC597_SET_PS_SATURATE_OUTPUT7_FALSE                                                           0x00000000
2770 #define NVC597_SET_PS_SATURATE_OUTPUT7_TRUE                                                            0x00000001
2771 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE7                                                                 29:29
2772 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE7_ZERO_TO_PLUS_ONE                                           0x00000000
2773 #define NVC597_SET_PS_SATURATE_CLAMP_RANGE7_MINUS_ONE_TO_PLUS_ONE                                      0x00000001
2774 
2775 #define NVC597_SET_WINDOW_ORIGIN                                                                           0x13ac
2776 #define NVC597_SET_WINDOW_ORIGIN_MODE                                                                         0:0
2777 #define NVC597_SET_WINDOW_ORIGIN_MODE_UPPER_LEFT                                                       0x00000000
2778 #define NVC597_SET_WINDOW_ORIGIN_MODE_LOWER_LEFT                                                       0x00000001
2779 #define NVC597_SET_WINDOW_ORIGIN_FLIP_Y                                                                       4:4
2780 #define NVC597_SET_WINDOW_ORIGIN_FLIP_Y_FALSE                                                          0x00000000
2781 #define NVC597_SET_WINDOW_ORIGIN_FLIP_Y_TRUE                                                           0x00000001
2782 
2783 #define NVC597_SET_LINE_WIDTH_FLOAT                                                                        0x13b0
2784 #define NVC597_SET_LINE_WIDTH_FLOAT_V                                                                        31:0
2785 
2786 #define NVC597_SET_ALIASED_LINE_WIDTH_FLOAT                                                                0x13b4
2787 #define NVC597_SET_ALIASED_LINE_WIDTH_FLOAT_V                                                                31:0
2788 
2789 #define NVC597_SET_LINE_MULTISAMPLE_OVERRIDE                                                               0x1418
2790 #define NVC597_SET_LINE_MULTISAMPLE_OVERRIDE_ENABLE                                                           0:0
2791 #define NVC597_SET_LINE_MULTISAMPLE_OVERRIDE_ENABLE_FALSE                                              0x00000000
2792 #define NVC597_SET_LINE_MULTISAMPLE_OVERRIDE_ENABLE_TRUE                                               0x00000001
2793 
2794 #define NVC597_INVALIDATE_SAMPLER_CACHE_NO_WFI                                                             0x1424
2795 #define NVC597_INVALIDATE_SAMPLER_CACHE_NO_WFI_LINES                                                          0:0
2796 #define NVC597_INVALIDATE_SAMPLER_CACHE_NO_WFI_LINES_ALL                                               0x00000000
2797 #define NVC597_INVALIDATE_SAMPLER_CACHE_NO_WFI_LINES_ONE                                               0x00000001
2798 #define NVC597_INVALIDATE_SAMPLER_CACHE_NO_WFI_TAG                                                           25:4
2799 
2800 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_NO_WFI                                                      0x1428
2801 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_NO_WFI_LINES                                                   0:0
2802 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_NO_WFI_LINES_ALL                                        0x00000000
2803 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_NO_WFI_LINES_ONE                                        0x00000001
2804 #define NVC597_INVALIDATE_TEXTURE_HEADER_CACHE_NO_WFI_TAG                                                    25:4
2805 
2806 #define NVC597_SET_GLOBAL_BASE_VERTEX_INDEX                                                                0x1434
2807 #define NVC597_SET_GLOBAL_BASE_VERTEX_INDEX_V                                                                31:0
2808 
2809 #define NVC597_SET_GLOBAL_BASE_INSTANCE_INDEX                                                              0x1438
2810 #define NVC597_SET_GLOBAL_BASE_INSTANCE_INDEX_V                                                              31:0
2811 
2812 #define NVC597_SET_PS_WARP_WATERMARKS                                                                      0x1450
2813 #define NVC597_SET_PS_WARP_WATERMARKS_LOW                                                                    15:0
2814 #define NVC597_SET_PS_WARP_WATERMARKS_HIGH                                                                  31:16
2815 
2816 #define NVC597_SET_PS_REGISTER_WATERMARKS                                                                  0x1454
2817 #define NVC597_SET_PS_REGISTER_WATERMARKS_LOW                                                                15:0
2818 #define NVC597_SET_PS_REGISTER_WATERMARKS_HIGH                                                              31:16
2819 
2820 #define NVC597_STORE_ZCULL                                                                                 0x1464
2821 #define NVC597_STORE_ZCULL_V                                                                                  0:0
2822 
2823 #define NVC597_SET_ITERATED_BLEND_CONSTANT_RED(j)                                                 (0x1480+(j)*16)
2824 #define NVC597_SET_ITERATED_BLEND_CONSTANT_RED_V                                                             15:0
2825 
2826 #define NVC597_SET_ITERATED_BLEND_CONSTANT_GREEN(j)                                               (0x1484+(j)*16)
2827 #define NVC597_SET_ITERATED_BLEND_CONSTANT_GREEN_V                                                           15:0
2828 
2829 #define NVC597_SET_ITERATED_BLEND_CONSTANT_BLUE(j)                                                (0x1488+(j)*16)
2830 #define NVC597_SET_ITERATED_BLEND_CONSTANT_BLUE_V                                                            15:0
2831 
2832 #define NVC597_LOAD_ZCULL                                                                                  0x1500
2833 #define NVC597_LOAD_ZCULL_V                                                                                   0:0
2834 
2835 #define NVC597_SET_SURFACE_CLIP_ID_HEIGHT                                                                  0x1504
2836 #define NVC597_SET_SURFACE_CLIP_ID_HEIGHT_V                                                                  31:0
2837 
2838 #define NVC597_SET_CLIP_ID_CLEAR_RECT_HORIZONTAL                                                           0x1508
2839 #define NVC597_SET_CLIP_ID_CLEAR_RECT_HORIZONTAL_XMIN                                                        15:0
2840 #define NVC597_SET_CLIP_ID_CLEAR_RECT_HORIZONTAL_XMAX                                                       31:16
2841 
2842 #define NVC597_SET_CLIP_ID_CLEAR_RECT_VERTICAL                                                             0x150c
2843 #define NVC597_SET_CLIP_ID_CLEAR_RECT_VERTICAL_YMIN                                                          15:0
2844 #define NVC597_SET_CLIP_ID_CLEAR_RECT_VERTICAL_YMAX                                                         31:16
2845 
2846 #define NVC597_SET_USER_CLIP_ENABLE                                                                        0x1510
2847 #define NVC597_SET_USER_CLIP_ENABLE_PLANE0                                                                    0:0
2848 #define NVC597_SET_USER_CLIP_ENABLE_PLANE0_FALSE                                                       0x00000000
2849 #define NVC597_SET_USER_CLIP_ENABLE_PLANE0_TRUE                                                        0x00000001
2850 #define NVC597_SET_USER_CLIP_ENABLE_PLANE1                                                                    1:1
2851 #define NVC597_SET_USER_CLIP_ENABLE_PLANE1_FALSE                                                       0x00000000
2852 #define NVC597_SET_USER_CLIP_ENABLE_PLANE1_TRUE                                                        0x00000001
2853 #define NVC597_SET_USER_CLIP_ENABLE_PLANE2                                                                    2:2
2854 #define NVC597_SET_USER_CLIP_ENABLE_PLANE2_FALSE                                                       0x00000000
2855 #define NVC597_SET_USER_CLIP_ENABLE_PLANE2_TRUE                                                        0x00000001
2856 #define NVC597_SET_USER_CLIP_ENABLE_PLANE3                                                                    3:3
2857 #define NVC597_SET_USER_CLIP_ENABLE_PLANE3_FALSE                                                       0x00000000
2858 #define NVC597_SET_USER_CLIP_ENABLE_PLANE3_TRUE                                                        0x00000001
2859 #define NVC597_SET_USER_CLIP_ENABLE_PLANE4                                                                    4:4
2860 #define NVC597_SET_USER_CLIP_ENABLE_PLANE4_FALSE                                                       0x00000000
2861 #define NVC597_SET_USER_CLIP_ENABLE_PLANE4_TRUE                                                        0x00000001
2862 #define NVC597_SET_USER_CLIP_ENABLE_PLANE5                                                                    5:5
2863 #define NVC597_SET_USER_CLIP_ENABLE_PLANE5_FALSE                                                       0x00000000
2864 #define NVC597_SET_USER_CLIP_ENABLE_PLANE5_TRUE                                                        0x00000001
2865 #define NVC597_SET_USER_CLIP_ENABLE_PLANE6                                                                    6:6
2866 #define NVC597_SET_USER_CLIP_ENABLE_PLANE6_FALSE                                                       0x00000000
2867 #define NVC597_SET_USER_CLIP_ENABLE_PLANE6_TRUE                                                        0x00000001
2868 #define NVC597_SET_USER_CLIP_ENABLE_PLANE7                                                                    7:7
2869 #define NVC597_SET_USER_CLIP_ENABLE_PLANE7_FALSE                                                       0x00000000
2870 #define NVC597_SET_USER_CLIP_ENABLE_PLANE7_TRUE                                                        0x00000001
2871 
2872 #define NVC597_SET_ZPASS_PIXEL_COUNT                                                                       0x1514
2873 #define NVC597_SET_ZPASS_PIXEL_COUNT_ENABLE                                                                   0:0
2874 #define NVC597_SET_ZPASS_PIXEL_COUNT_ENABLE_FALSE                                                      0x00000000
2875 #define NVC597_SET_ZPASS_PIXEL_COUNT_ENABLE_TRUE                                                       0x00000001
2876 
2877 #define NVC597_SET_POINT_SIZE                                                                              0x1518
2878 #define NVC597_SET_POINT_SIZE_V                                                                              31:0
2879 
2880 #define NVC597_SET_ZCULL_STATS                                                                             0x151c
2881 #define NVC597_SET_ZCULL_STATS_ENABLE                                                                         0:0
2882 #define NVC597_SET_ZCULL_STATS_ENABLE_FALSE                                                            0x00000000
2883 #define NVC597_SET_ZCULL_STATS_ENABLE_TRUE                                                             0x00000001
2884 
2885 #define NVC597_SET_POINT_SPRITE                                                                            0x1520
2886 #define NVC597_SET_POINT_SPRITE_ENABLE                                                                        0:0
2887 #define NVC597_SET_POINT_SPRITE_ENABLE_FALSE                                                           0x00000000
2888 #define NVC597_SET_POINT_SPRITE_ENABLE_TRUE                                                            0x00000001
2889 
2890 #define NVC597_SET_SHADER_EXCEPTIONS                                                                       0x1528
2891 #define NVC597_SET_SHADER_EXCEPTIONS_ENABLE                                                                   0:0
2892 #define NVC597_SET_SHADER_EXCEPTIONS_ENABLE_FALSE                                                      0x00000000
2893 #define NVC597_SET_SHADER_EXCEPTIONS_ENABLE_TRUE                                                       0x00000001
2894 
2895 #define NVC597_CLEAR_REPORT_VALUE                                                                          0x1530
2896 #define NVC597_CLEAR_REPORT_VALUE_TYPE                                                                        4:0
2897 #define NVC597_CLEAR_REPORT_VALUE_TYPE_DA_VERTICES_GENERATED                                           0x00000012
2898 #define NVC597_CLEAR_REPORT_VALUE_TYPE_DA_PRIMITIVES_GENERATED                                         0x00000013
2899 #define NVC597_CLEAR_REPORT_VALUE_TYPE_VS_INVOCATIONS                                                  0x00000015
2900 #define NVC597_CLEAR_REPORT_VALUE_TYPE_TI_INVOCATIONS                                                  0x00000016
2901 #define NVC597_CLEAR_REPORT_VALUE_TYPE_TS_INVOCATIONS                                                  0x00000017
2902 #define NVC597_CLEAR_REPORT_VALUE_TYPE_TS_PRIMITIVES_GENERATED                                         0x00000018
2903 #define NVC597_CLEAR_REPORT_VALUE_TYPE_GS_INVOCATIONS                                                  0x0000001A
2904 #define NVC597_CLEAR_REPORT_VALUE_TYPE_GS_PRIMITIVES_GENERATED                                         0x0000001B
2905 #define NVC597_CLEAR_REPORT_VALUE_TYPE_VTG_PRIMITIVES_OUT                                              0x0000001F
2906 #define NVC597_CLEAR_REPORT_VALUE_TYPE_STREAMING_PRIMITIVES_SUCCEEDED                                  0x00000010
2907 #define NVC597_CLEAR_REPORT_VALUE_TYPE_STREAMING_PRIMITIVES_NEEDED                                     0x00000011
2908 #define NVC597_CLEAR_REPORT_VALUE_TYPE_TOTAL_STREAMING_PRIMITIVES_NEEDED_MINUS_SUCCEEDED               0x00000003
2909 #define NVC597_CLEAR_REPORT_VALUE_TYPE_CLIPPER_INVOCATIONS                                             0x0000001C
2910 #define NVC597_CLEAR_REPORT_VALUE_TYPE_CLIPPER_PRIMITIVES_GENERATED                                    0x0000001D
2911 #define NVC597_CLEAR_REPORT_VALUE_TYPE_ZCULL_STATS                                                     0x00000002
2912 #define NVC597_CLEAR_REPORT_VALUE_TYPE_PS_INVOCATIONS                                                  0x0000001E
2913 #define NVC597_CLEAR_REPORT_VALUE_TYPE_ZPASS_PIXEL_CNT                                                 0x00000001
2914 #define NVC597_CLEAR_REPORT_VALUE_TYPE_ALPHA_BETA_CLOCKS                                               0x00000004
2915 #define NVC597_CLEAR_REPORT_VALUE_TYPE_SCG_CLOCKS                                                      0x00000009
2916 
2917 #define NVC597_SET_ANTI_ALIAS_ENABLE                                                                       0x1534
2918 #define NVC597_SET_ANTI_ALIAS_ENABLE_V                                                                        0:0
2919 #define NVC597_SET_ANTI_ALIAS_ENABLE_V_FALSE                                                           0x00000000
2920 #define NVC597_SET_ANTI_ALIAS_ENABLE_V_TRUE                                                            0x00000001
2921 
2922 #define NVC597_SET_ZT_SELECT                                                                               0x1538
2923 #define NVC597_SET_ZT_SELECT_TARGET_COUNT                                                                     0:0
2924 
2925 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL                                                                0x153c
2926 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_COVERAGE                                                 0:0
2927 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_COVERAGE_DISABLE                                  0x00000000
2928 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_COVERAGE_ENABLE                                   0x00000001
2929 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_ONE                                                      4:4
2930 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_ONE_DISABLE                                       0x00000000
2931 #define NVC597_SET_ANTI_ALIAS_ALPHA_CONTROL_ALPHA_TO_ONE_ENABLE                                        0x00000001
2932 
2933 #define NVC597_SET_RENDER_ENABLE_A                                                                         0x1550
2934 #define NVC597_SET_RENDER_ENABLE_A_OFFSET_UPPER                                                               7:0
2935 
2936 #define NVC597_SET_RENDER_ENABLE_B                                                                         0x1554
2937 #define NVC597_SET_RENDER_ENABLE_B_OFFSET_LOWER                                                              31:0
2938 
2939 #define NVC597_SET_RENDER_ENABLE_C                                                                         0x1558
2940 #define NVC597_SET_RENDER_ENABLE_C_MODE                                                                       2:0
2941 #define NVC597_SET_RENDER_ENABLE_C_MODE_FALSE                                                          0x00000000
2942 #define NVC597_SET_RENDER_ENABLE_C_MODE_TRUE                                                           0x00000001
2943 #define NVC597_SET_RENDER_ENABLE_C_MODE_CONDITIONAL                                                    0x00000002
2944 #define NVC597_SET_RENDER_ENABLE_C_MODE_RENDER_IF_EQUAL                                                0x00000003
2945 #define NVC597_SET_RENDER_ENABLE_C_MODE_RENDER_IF_NOT_EQUAL                                            0x00000004
2946 
2947 #define NVC597_SET_TEX_SAMPLER_POOL_A                                                                      0x155c
2948 #define NVC597_SET_TEX_SAMPLER_POOL_A_OFFSET_UPPER                                                            7:0
2949 
2950 #define NVC597_SET_TEX_SAMPLER_POOL_B                                                                      0x1560
2951 #define NVC597_SET_TEX_SAMPLER_POOL_B_OFFSET_LOWER                                                           31:0
2952 
2953 #define NVC597_SET_TEX_SAMPLER_POOL_C                                                                      0x1564
2954 #define NVC597_SET_TEX_SAMPLER_POOL_C_MAXIMUM_INDEX                                                          19:0
2955 
2956 #define NVC597_SET_SLOPE_SCALE_DEPTH_BIAS                                                                  0x156c
2957 #define NVC597_SET_SLOPE_SCALE_DEPTH_BIAS_V                                                                  31:0
2958 
2959 #define NVC597_SET_ANTI_ALIASED_LINE                                                                       0x1570
2960 #define NVC597_SET_ANTI_ALIASED_LINE_ENABLE                                                                   0:0
2961 #define NVC597_SET_ANTI_ALIASED_LINE_ENABLE_FALSE                                                      0x00000000
2962 #define NVC597_SET_ANTI_ALIASED_LINE_ENABLE_TRUE                                                       0x00000001
2963 
2964 #define NVC597_SET_TEX_HEADER_POOL_A                                                                       0x1574
2965 #define NVC597_SET_TEX_HEADER_POOL_A_OFFSET_UPPER                                                             7:0
2966 
2967 #define NVC597_SET_TEX_HEADER_POOL_B                                                                       0x1578
2968 #define NVC597_SET_TEX_HEADER_POOL_B_OFFSET_LOWER                                                            31:0
2969 
2970 #define NVC597_SET_TEX_HEADER_POOL_C                                                                       0x157c
2971 #define NVC597_SET_TEX_HEADER_POOL_C_MAXIMUM_INDEX                                                           21:0
2972 
2973 #define NVC597_SET_ACTIVE_ZCULL_REGION                                                                     0x1590
2974 #define NVC597_SET_ACTIVE_ZCULL_REGION_ID                                                                     5:0
2975 
2976 #define NVC597_SET_TWO_SIDED_STENCIL_TEST                                                                  0x1594
2977 #define NVC597_SET_TWO_SIDED_STENCIL_TEST_ENABLE                                                              0:0
2978 #define NVC597_SET_TWO_SIDED_STENCIL_TEST_ENABLE_FALSE                                                 0x00000000
2979 #define NVC597_SET_TWO_SIDED_STENCIL_TEST_ENABLE_TRUE                                                  0x00000001
2980 
2981 #define NVC597_SET_BACK_STENCIL_OP_FAIL                                                                    0x1598
2982 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V                                                                    31:0
2983 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_KEEP                                                     0x00001E00
2984 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_ZERO                                                     0x00000000
2985 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_REPLACE                                                  0x00001E01
2986 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_INCRSAT                                                  0x00001E02
2987 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_DECRSAT                                                  0x00001E03
2988 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_INVERT                                                   0x0000150A
2989 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_INCR                                                     0x00008507
2990 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_OGL_DECR                                                     0x00008508
2991 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_KEEP                                                     0x00000001
2992 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_ZERO                                                     0x00000002
2993 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_REPLACE                                                  0x00000003
2994 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_INCRSAT                                                  0x00000004
2995 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_DECRSAT                                                  0x00000005
2996 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_INVERT                                                   0x00000006
2997 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_INCR                                                     0x00000007
2998 #define NVC597_SET_BACK_STENCIL_OP_FAIL_V_D3D_DECR                                                     0x00000008
2999 
3000 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL                                                                   0x159c
3001 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V                                                                   31:0
3002 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_KEEP                                                    0x00001E00
3003 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_ZERO                                                    0x00000000
3004 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_REPLACE                                                 0x00001E01
3005 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_INCRSAT                                                 0x00001E02
3006 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_DECRSAT                                                 0x00001E03
3007 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_INVERT                                                  0x0000150A
3008 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_INCR                                                    0x00008507
3009 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_OGL_DECR                                                    0x00008508
3010 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_KEEP                                                    0x00000001
3011 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_ZERO                                                    0x00000002
3012 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_REPLACE                                                 0x00000003
3013 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_INCRSAT                                                 0x00000004
3014 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_DECRSAT                                                 0x00000005
3015 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_INVERT                                                  0x00000006
3016 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_INCR                                                    0x00000007
3017 #define NVC597_SET_BACK_STENCIL_OP_ZFAIL_V_D3D_DECR                                                    0x00000008
3018 
3019 #define NVC597_SET_BACK_STENCIL_OP_ZPASS                                                                   0x15a0
3020 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V                                                                   31:0
3021 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_KEEP                                                    0x00001E00
3022 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_ZERO                                                    0x00000000
3023 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_REPLACE                                                 0x00001E01
3024 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_INCRSAT                                                 0x00001E02
3025 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_DECRSAT                                                 0x00001E03
3026 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_INVERT                                                  0x0000150A
3027 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_INCR                                                    0x00008507
3028 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_OGL_DECR                                                    0x00008508
3029 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_KEEP                                                    0x00000001
3030 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_ZERO                                                    0x00000002
3031 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_REPLACE                                                 0x00000003
3032 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_INCRSAT                                                 0x00000004
3033 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_DECRSAT                                                 0x00000005
3034 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_INVERT                                                  0x00000006
3035 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_INCR                                                    0x00000007
3036 #define NVC597_SET_BACK_STENCIL_OP_ZPASS_V_D3D_DECR                                                    0x00000008
3037 
3038 #define NVC597_SET_BACK_STENCIL_FUNC                                                                       0x15a4
3039 #define NVC597_SET_BACK_STENCIL_FUNC_V                                                                       31:0
3040 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_NEVER                                                       0x00000200
3041 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_LESS                                                        0x00000201
3042 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_EQUAL                                                       0x00000202
3043 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_LEQUAL                                                      0x00000203
3044 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_GREATER                                                     0x00000204
3045 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_NOTEQUAL                                                    0x00000205
3046 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_GEQUAL                                                      0x00000206
3047 #define NVC597_SET_BACK_STENCIL_FUNC_V_OGL_ALWAYS                                                      0x00000207
3048 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_NEVER                                                       0x00000001
3049 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_LESS                                                        0x00000002
3050 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_EQUAL                                                       0x00000003
3051 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_LESSEQUAL                                                   0x00000004
3052 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_GREATER                                                     0x00000005
3053 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_NOTEQUAL                                                    0x00000006
3054 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_GREATEREQUAL                                                0x00000007
3055 #define NVC597_SET_BACK_STENCIL_FUNC_V_D3D_ALWAYS                                                      0x00000008
3056 
3057 #define NVC597_SET_SRGB_WRITE                                                                              0x15b8
3058 #define NVC597_SET_SRGB_WRITE_ENABLE                                                                          0:0
3059 #define NVC597_SET_SRGB_WRITE_ENABLE_FALSE                                                             0x00000000
3060 #define NVC597_SET_SRGB_WRITE_ENABLE_TRUE                                                              0x00000001
3061 
3062 #define NVC597_SET_DEPTH_BIAS                                                                              0x15bc
3063 #define NVC597_SET_DEPTH_BIAS_V                                                                              31:0
3064 
3065 #define NVC597_SET_ZCULL_REGION_FORMAT                                                                     0x15c8
3066 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE                                                                   3:0
3067 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_4X4                                                      0x00000000
3068 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_ZS_4X4                                                     0x00000001
3069 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_4X2                                                      0x00000002
3070 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_2X4                                                      0x00000003
3071 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_16X8_4X4                                                 0x00000004
3072 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_8X8_4X2                                                  0x00000005
3073 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_8X8_2X4                                                  0x00000006
3074 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_16X16_4X8                                                0x00000007
3075 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_4X8_2X2                                                  0x00000008
3076 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_ZS_16X8_4X2                                                0x00000009
3077 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_ZS_16X8_2X4                                                0x0000000A
3078 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_ZS_8X8_2X2                                                 0x0000000B
3079 #define NVC597_SET_ZCULL_REGION_FORMAT_TYPE_Z_4X8_1X1                                                  0x0000000C
3080 
3081 #define NVC597_SET_RT_LAYER                                                                                0x15cc
3082 #define NVC597_SET_RT_LAYER_V                                                                                15:0
3083 #define NVC597_SET_RT_LAYER_CONTROL                                                                         16:16
3084 #define NVC597_SET_RT_LAYER_CONTROL_V_SELECTS_LAYER                                                    0x00000000
3085 #define NVC597_SET_RT_LAYER_CONTROL_GEOMETRY_SHADER_SELECTS_LAYER                                      0x00000001
3086 
3087 #define NVC597_SET_ANTI_ALIAS                                                                              0x15d0
3088 #define NVC597_SET_ANTI_ALIAS_SAMPLES                                                                         3:0
3089 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_1X1                                                         0x00000000
3090 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_2X1                                                         0x00000001
3091 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_2X2                                                         0x00000002
3092 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_4X2                                                         0x00000003
3093 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_4X2_D3D                                                     0x00000004
3094 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_2X1_D3D                                                     0x00000005
3095 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_4X4                                                         0x00000006
3096 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_2X2_VC_4                                                    0x00000008
3097 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_2X2_VC_12                                                   0x00000009
3098 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_4X2_VC_8                                                    0x0000000A
3099 #define NVC597_SET_ANTI_ALIAS_SAMPLES_MODE_4X2_VC_24                                                   0x0000000B
3100 
3101 #define NVC597_SET_EDGE_FLAG                                                                               0x15e4
3102 #define NVC597_SET_EDGE_FLAG_V                                                                                0:0
3103 #define NVC597_SET_EDGE_FLAG_V_FALSE                                                                   0x00000000
3104 #define NVC597_SET_EDGE_FLAG_V_TRUE                                                                    0x00000001
3105 
3106 #define NVC597_DRAW_INLINE_INDEX                                                                           0x15e8
3107 #define NVC597_DRAW_INLINE_INDEX_V                                                                           31:0
3108 
3109 #define NVC597_SET_INLINE_INDEX2X16_ALIGN                                                                  0x15ec
3110 #define NVC597_SET_INLINE_INDEX2X16_ALIGN_COUNT                                                              30:0
3111 #define NVC597_SET_INLINE_INDEX2X16_ALIGN_START_ODD                                                         31:31
3112 #define NVC597_SET_INLINE_INDEX2X16_ALIGN_START_ODD_FALSE                                              0x00000000
3113 #define NVC597_SET_INLINE_INDEX2X16_ALIGN_START_ODD_TRUE                                               0x00000001
3114 
3115 #define NVC597_DRAW_INLINE_INDEX2X16                                                                       0x15f0
3116 #define NVC597_DRAW_INLINE_INDEX2X16_EVEN                                                                    15:0
3117 #define NVC597_DRAW_INLINE_INDEX2X16_ODD                                                                    31:16
3118 
3119 #define NVC597_SET_VERTEX_GLOBAL_BASE_OFFSET_A                                                             0x15f4
3120 #define NVC597_SET_VERTEX_GLOBAL_BASE_OFFSET_A_UPPER                                                          7:0
3121 
3122 #define NVC597_SET_VERTEX_GLOBAL_BASE_OFFSET_B                                                             0x15f8
3123 #define NVC597_SET_VERTEX_GLOBAL_BASE_OFFSET_B_LOWER                                                         31:0
3124 
3125 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_A                                                             0x15fc
3126 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_A_WIDTH                                                         15:0
3127 
3128 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_B                                                             0x1600
3129 #define NVC597_SET_ZCULL_REGION_PIXEL_OFFSET_B_HEIGHT                                                        15:0
3130 
3131 #define NVC597_SET_POINT_SPRITE_SELECT                                                                     0x1604
3132 #define NVC597_SET_POINT_SPRITE_SELECT_RMODE                                                                  1:0
3133 #define NVC597_SET_POINT_SPRITE_SELECT_RMODE_ZERO                                                      0x00000000
3134 #define NVC597_SET_POINT_SPRITE_SELECT_RMODE_FROM_R                                                    0x00000001
3135 #define NVC597_SET_POINT_SPRITE_SELECT_RMODE_FROM_S                                                    0x00000002
3136 #define NVC597_SET_POINT_SPRITE_SELECT_ORIGIN                                                                 2:2
3137 #define NVC597_SET_POINT_SPRITE_SELECT_ORIGIN_BOTTOM                                                   0x00000000
3138 #define NVC597_SET_POINT_SPRITE_SELECT_ORIGIN_TOP                                                      0x00000001
3139 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE0                                                               3:3
3140 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE0_PASSTHROUGH                                            0x00000000
3141 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE0_GENERATE                                               0x00000001
3142 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE1                                                               4:4
3143 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE1_PASSTHROUGH                                            0x00000000
3144 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE1_GENERATE                                               0x00000001
3145 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE2                                                               5:5
3146 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE2_PASSTHROUGH                                            0x00000000
3147 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE2_GENERATE                                               0x00000001
3148 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE3                                                               6:6
3149 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE3_PASSTHROUGH                                            0x00000000
3150 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE3_GENERATE                                               0x00000001
3151 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE4                                                               7:7
3152 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE4_PASSTHROUGH                                            0x00000000
3153 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE4_GENERATE                                               0x00000001
3154 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE5                                                               8:8
3155 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE5_PASSTHROUGH                                            0x00000000
3156 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE5_GENERATE                                               0x00000001
3157 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE6                                                               9:9
3158 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE6_PASSTHROUGH                                            0x00000000
3159 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE6_GENERATE                                               0x00000001
3160 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE7                                                             10:10
3161 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE7_PASSTHROUGH                                            0x00000000
3162 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE7_GENERATE                                               0x00000001
3163 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE8                                                             11:11
3164 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE8_PASSTHROUGH                                            0x00000000
3165 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE8_GENERATE                                               0x00000001
3166 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE9                                                             12:12
3167 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE9_PASSTHROUGH                                            0x00000000
3168 #define NVC597_SET_POINT_SPRITE_SELECT_TEXTURE9_GENERATE                                               0x00000001
3169 
3170 #define NVC597_SET_ATTRIBUTE_DEFAULT                                                                       0x1610
3171 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_DIFFUSE                                                      0:0
3172 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_DIFFUSE_VECTOR_0001                                   0x00000000
3173 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_DIFFUSE_VECTOR_1111                                   0x00000001
3174 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_SPECULAR                                                     1:1
3175 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_SPECULAR_VECTOR_0000                                  0x00000000
3176 #define NVC597_SET_ATTRIBUTE_DEFAULT_COLOR_FRONT_SPECULAR_VECTOR_0001                                  0x00000001
3177 #define NVC597_SET_ATTRIBUTE_DEFAULT_GENERIC_VECTOR                                                           2:2
3178 #define NVC597_SET_ATTRIBUTE_DEFAULT_GENERIC_VECTOR_VECTOR_0000                                        0x00000000
3179 #define NVC597_SET_ATTRIBUTE_DEFAULT_GENERIC_VECTOR_VECTOR_0001                                        0x00000001
3180 #define NVC597_SET_ATTRIBUTE_DEFAULT_FIXED_FNC_TEXTURE                                                        3:3
3181 #define NVC597_SET_ATTRIBUTE_DEFAULT_FIXED_FNC_TEXTURE_VECTOR_0000                                     0x00000000
3182 #define NVC597_SET_ATTRIBUTE_DEFAULT_FIXED_FNC_TEXTURE_VECTOR_0001                                     0x00000001
3183 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR0                                                               4:4
3184 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR0_VECTOR_0001                                            0x00000000
3185 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR0_VECTOR_1111                                            0x00000001
3186 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR1_TO_COLOR15                                                    5:5
3187 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR1_TO_COLOR15_VECTOR_0000                                 0x00000000
3188 #define NVC597_SET_ATTRIBUTE_DEFAULT_DX9_COLOR1_TO_COLOR15_VECTOR_0001                                 0x00000001
3189 
3190 #define NVC597_END                                                                                         0x1614
3191 #define NVC597_END_V                                                                                          0:0
3192 
3193 #define NVC597_BEGIN                                                                                       0x1618
3194 #define NVC597_BEGIN_OP                                                                                      15:0
3195 #define NVC597_BEGIN_OP_POINTS                                                                         0x00000000
3196 #define NVC597_BEGIN_OP_LINES                                                                          0x00000001
3197 #define NVC597_BEGIN_OP_LINE_LOOP                                                                      0x00000002
3198 #define NVC597_BEGIN_OP_LINE_STRIP                                                                     0x00000003
3199 #define NVC597_BEGIN_OP_TRIANGLES                                                                      0x00000004
3200 #define NVC597_BEGIN_OP_TRIANGLE_STRIP                                                                 0x00000005
3201 #define NVC597_BEGIN_OP_TRIANGLE_FAN                                                                   0x00000006
3202 #define NVC597_BEGIN_OP_QUADS                                                                          0x00000007
3203 #define NVC597_BEGIN_OP_QUAD_STRIP                                                                     0x00000008
3204 #define NVC597_BEGIN_OP_POLYGON                                                                        0x00000009
3205 #define NVC597_BEGIN_OP_LINELIST_ADJCY                                                                 0x0000000A
3206 #define NVC597_BEGIN_OP_LINESTRIP_ADJCY                                                                0x0000000B
3207 #define NVC597_BEGIN_OP_TRIANGLELIST_ADJCY                                                             0x0000000C
3208 #define NVC597_BEGIN_OP_TRIANGLESTRIP_ADJCY                                                            0x0000000D
3209 #define NVC597_BEGIN_OP_PATCH                                                                          0x0000000E
3210 #define NVC597_BEGIN_PRIMITIVE_ID                                                                           24:24
3211 #define NVC597_BEGIN_PRIMITIVE_ID_FIRST                                                                0x00000000
3212 #define NVC597_BEGIN_PRIMITIVE_ID_UNCHANGED                                                            0x00000001
3213 #define NVC597_BEGIN_INSTANCE_ID                                                                            27:26
3214 #define NVC597_BEGIN_INSTANCE_ID_FIRST                                                                 0x00000000
3215 #define NVC597_BEGIN_INSTANCE_ID_SUBSEQUENT                                                            0x00000001
3216 #define NVC597_BEGIN_INSTANCE_ID_UNCHANGED                                                             0x00000002
3217 #define NVC597_BEGIN_SPLIT_MODE                                                                             30:29
3218 #define NVC597_BEGIN_SPLIT_MODE_NORMAL_BEGIN_NORMAL_END                                                0x00000000
3219 #define NVC597_BEGIN_SPLIT_MODE_NORMAL_BEGIN_OPEN_END                                                  0x00000001
3220 #define NVC597_BEGIN_SPLIT_MODE_OPEN_BEGIN_OPEN_END                                                    0x00000002
3221 #define NVC597_BEGIN_SPLIT_MODE_OPEN_BEGIN_NORMAL_END                                                  0x00000003
3222 #define NVC597_BEGIN_INSTANCE_ITERATE_ENABLE                                                                31:31
3223 #define NVC597_BEGIN_INSTANCE_ITERATE_ENABLE_FALSE                                                     0x00000000
3224 #define NVC597_BEGIN_INSTANCE_ITERATE_ENABLE_TRUE                                                      0x00000001
3225 
3226 #define NVC597_SET_VERTEX_ID_COPY                                                                          0x161c
3227 #define NVC597_SET_VERTEX_ID_COPY_ENABLE                                                                      0:0
3228 #define NVC597_SET_VERTEX_ID_COPY_ENABLE_FALSE                                                         0x00000000
3229 #define NVC597_SET_VERTEX_ID_COPY_ENABLE_TRUE                                                          0x00000001
3230 #define NVC597_SET_VERTEX_ID_COPY_ATTRIBUTE_SLOT                                                             11:4
3231 
3232 #define NVC597_ADD_TO_PRIMITIVE_ID                                                                         0x1620
3233 #define NVC597_ADD_TO_PRIMITIVE_ID_V                                                                         31:0
3234 
3235 #define NVC597_LOAD_PRIMITIVE_ID                                                                           0x1624
3236 #define NVC597_LOAD_PRIMITIVE_ID_V                                                                           31:0
3237 
3238 #define NVC597_SET_SHADER_BASED_CULL                                                                       0x162c
3239 #define NVC597_SET_SHADER_BASED_CULL_BATCH_CULL_ENABLE                                                        1:1
3240 #define NVC597_SET_SHADER_BASED_CULL_BATCH_CULL_ENABLE_FALSE                                           0x00000000
3241 #define NVC597_SET_SHADER_BASED_CULL_BATCH_CULL_ENABLE_TRUE                                            0x00000001
3242 #define NVC597_SET_SHADER_BASED_CULL_BEFORE_FETCH_ENABLE                                                      0:0
3243 #define NVC597_SET_SHADER_BASED_CULL_BEFORE_FETCH_ENABLE_FALSE                                         0x00000000
3244 #define NVC597_SET_SHADER_BASED_CULL_BEFORE_FETCH_ENABLE_TRUE                                          0x00000001
3245 
3246 #define NVC597_SET_CLASS_VERSION                                                                           0x1638
3247 #define NVC597_SET_CLASS_VERSION_CURRENT                                                                     15:0
3248 #define NVC597_SET_CLASS_VERSION_OLDEST_SUPPORTED                                                           31:16
3249 
3250 #define NVC597_SET_DA_PRIMITIVE_RESTART                                                                    0x1644
3251 #define NVC597_SET_DA_PRIMITIVE_RESTART_ENABLE                                                                0:0
3252 #define NVC597_SET_DA_PRIMITIVE_RESTART_ENABLE_FALSE                                                   0x00000000
3253 #define NVC597_SET_DA_PRIMITIVE_RESTART_ENABLE_TRUE                                                    0x00000001
3254 
3255 #define NVC597_SET_DA_PRIMITIVE_RESTART_INDEX                                                              0x1648
3256 #define NVC597_SET_DA_PRIMITIVE_RESTART_INDEX_V                                                              31:0
3257 
3258 #define NVC597_SET_DA_OUTPUT                                                                               0x164c
3259 #define NVC597_SET_DA_OUTPUT_VERTEX_ID_USES_ARRAY_START                                                     12:12
3260 #define NVC597_SET_DA_OUTPUT_VERTEX_ID_USES_ARRAY_START_FALSE                                          0x00000000
3261 #define NVC597_SET_DA_OUTPUT_VERTEX_ID_USES_ARRAY_START_TRUE                                           0x00000001
3262 
3263 #define NVC597_SET_ANTI_ALIASED_POINT                                                                      0x1658
3264 #define NVC597_SET_ANTI_ALIASED_POINT_ENABLE                                                                  0:0
3265 #define NVC597_SET_ANTI_ALIASED_POINT_ENABLE_FALSE                                                     0x00000000
3266 #define NVC597_SET_ANTI_ALIASED_POINT_ENABLE_TRUE                                                      0x00000001
3267 
3268 #define NVC597_SET_POINT_CENTER_MODE                                                                       0x165c
3269 #define NVC597_SET_POINT_CENTER_MODE_V                                                                       31:0
3270 #define NVC597_SET_POINT_CENTER_MODE_V_OGL                                                             0x00000000
3271 #define NVC597_SET_POINT_CENTER_MODE_V_D3D                                                             0x00000001
3272 
3273 #define NVC597_SET_LINE_SMOOTH_PARAMETERS                                                                  0x1668
3274 #define NVC597_SET_LINE_SMOOTH_PARAMETERS_FALLOFF                                                            31:0
3275 #define NVC597_SET_LINE_SMOOTH_PARAMETERS_FALLOFF__1_00                                                0x00000000
3276 #define NVC597_SET_LINE_SMOOTH_PARAMETERS_FALLOFF__1_33                                                0x00000001
3277 #define NVC597_SET_LINE_SMOOTH_PARAMETERS_FALLOFF__1_60                                                0x00000002
3278 
3279 #define NVC597_SET_LINE_STIPPLE                                                                            0x166c
3280 #define NVC597_SET_LINE_STIPPLE_ENABLE                                                                        0:0
3281 #define NVC597_SET_LINE_STIPPLE_ENABLE_FALSE                                                           0x00000000
3282 #define NVC597_SET_LINE_STIPPLE_ENABLE_TRUE                                                            0x00000001
3283 
3284 #define NVC597_SET_LINE_SMOOTH_EDGE_TABLE(i)                                                       (0x1670+(i)*4)
3285 #define NVC597_SET_LINE_SMOOTH_EDGE_TABLE_V0                                                                  7:0
3286 #define NVC597_SET_LINE_SMOOTH_EDGE_TABLE_V1                                                                 15:8
3287 #define NVC597_SET_LINE_SMOOTH_EDGE_TABLE_V2                                                                23:16
3288 #define NVC597_SET_LINE_SMOOTH_EDGE_TABLE_V3                                                                31:24
3289 
3290 #define NVC597_SET_LINE_STIPPLE_PARAMETERS                                                                 0x1680
3291 #define NVC597_SET_LINE_STIPPLE_PARAMETERS_FACTOR                                                             7:0
3292 #define NVC597_SET_LINE_STIPPLE_PARAMETERS_PATTERN                                                           23:8
3293 
3294 #define NVC597_SET_PROVOKING_VERTEX                                                                        0x1684
3295 #define NVC597_SET_PROVOKING_VERTEX_V                                                                         0:0
3296 #define NVC597_SET_PROVOKING_VERTEX_V_FIRST                                                            0x00000000
3297 #define NVC597_SET_PROVOKING_VERTEX_V_LAST                                                             0x00000001
3298 
3299 #define NVC597_SET_TWO_SIDED_LIGHT                                                                         0x1688
3300 #define NVC597_SET_TWO_SIDED_LIGHT_ENABLE                                                                     0:0
3301 #define NVC597_SET_TWO_SIDED_LIGHT_ENABLE_FALSE                                                        0x00000000
3302 #define NVC597_SET_TWO_SIDED_LIGHT_ENABLE_TRUE                                                         0x00000001
3303 
3304 #define NVC597_SET_POLYGON_STIPPLE                                                                         0x168c
3305 #define NVC597_SET_POLYGON_STIPPLE_ENABLE                                                                     0:0
3306 #define NVC597_SET_POLYGON_STIPPLE_ENABLE_FALSE                                                        0x00000000
3307 #define NVC597_SET_POLYGON_STIPPLE_ENABLE_TRUE                                                         0x00000001
3308 
3309 #define NVC597_SET_SHADER_CONTROL                                                                          0x1690
3310 #define NVC597_SET_SHADER_CONTROL_DEFAULT_PARTIAL                                                             0:0
3311 #define NVC597_SET_SHADER_CONTROL_DEFAULT_PARTIAL_ZERO                                                 0x00000000
3312 #define NVC597_SET_SHADER_CONTROL_DEFAULT_PARTIAL_INFINITY                                             0x00000001
3313 #define NVC597_SET_SHADER_CONTROL_FP32_NAN_BEHAVIOR                                                           1:1
3314 #define NVC597_SET_SHADER_CONTROL_FP32_NAN_BEHAVIOR_LEGACY                                             0x00000000
3315 #define NVC597_SET_SHADER_CONTROL_FP32_NAN_BEHAVIOR_FP64_COMPATIBLE                                    0x00000001
3316 #define NVC597_SET_SHADER_CONTROL_FP32_F2I_NAN_BEHAVIOR                                                       2:2
3317 #define NVC597_SET_SHADER_CONTROL_FP32_F2I_NAN_BEHAVIOR_PASS_ZERO                                      0x00000000
3318 #define NVC597_SET_SHADER_CONTROL_FP32_F2I_NAN_BEHAVIOR_PASS_INDEFINITE                                0x00000001
3319 
3320 #define NVC597_CHECK_CLASS_VERSION                                                                         0x16a0
3321 #define NVC597_CHECK_CLASS_VERSION_CURRENT                                                                   15:0
3322 #define NVC597_CHECK_CLASS_VERSION_OLDEST_SUPPORTED                                                         31:16
3323 
3324 #define NVC597_SET_SPH_VERSION                                                                             0x16a4
3325 #define NVC597_SET_SPH_VERSION_CURRENT                                                                       15:0
3326 #define NVC597_SET_SPH_VERSION_OLDEST_SUPPORTED                                                             31:16
3327 
3328 #define NVC597_CHECK_SPH_VERSION                                                                           0x16a8
3329 #define NVC597_CHECK_SPH_VERSION_CURRENT                                                                     15:0
3330 #define NVC597_CHECK_SPH_VERSION_OLDEST_SUPPORTED                                                           31:16
3331 
3332 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE                                                              0x16b4
3333 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_ANTI_ALIAS_ENABLE                                    0:0
3334 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_ANTI_ALIAS_ENABLE_DISABLE                     0x00000000
3335 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_ANTI_ALIAS_ENABLE_ENABLE                      0x00000001
3336 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_PS_SAMPLE_MASK_OUTPUT                                1:1
3337 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_PS_SAMPLE_MASK_OUTPUT_DISABLE                 0x00000000
3338 #define NVC597_SET_ALPHA_TO_COVERAGE_OVERRIDE_QUALIFY_BY_PS_SAMPLE_MASK_OUTPUT_ENABLE                  0x00000001
3339 
3340 #define NVC597_SET_SCG_GRAPHICS_PRIORITY                                                                   0x16bc
3341 #define NVC597_SET_SCG_GRAPHICS_PRIORITY_PRIORITY                                                             5:0
3342 
3343 #define NVC597_SET_SCG_GRAPHICS_SCHEDULING_PARAMETERS(i)                                           (0x16c0+(i)*4)
3344 #define NVC597_SET_SCG_GRAPHICS_SCHEDULING_PARAMETERS_V                                                      31:0
3345 
3346 #define NVC597_SET_POLYGON_STIPPLE_PATTERN(i)                                                      (0x1700+(i)*4)
3347 #define NVC597_SET_POLYGON_STIPPLE_PATTERN_V                                                                 31:0
3348 
3349 #define NVC597_SET_AAM_VERSION                                                                             0x1790
3350 #define NVC597_SET_AAM_VERSION_CURRENT                                                                       15:0
3351 #define NVC597_SET_AAM_VERSION_OLDEST_SUPPORTED                                                             31:16
3352 
3353 #define NVC597_CHECK_AAM_VERSION                                                                           0x1794
3354 #define NVC597_CHECK_AAM_VERSION_CURRENT                                                                     15:0
3355 #define NVC597_CHECK_AAM_VERSION_OLDEST_SUPPORTED                                                           31:16
3356 
3357 #define NVC597_SET_ZT_LAYER                                                                                0x179c
3358 #define NVC597_SET_ZT_LAYER_OFFSET                                                                           15:0
3359 
3360 #define NVC597_SET_INDEX_BUFFER_A                                                                          0x17c8
3361 #define NVC597_SET_INDEX_BUFFER_A_ADDRESS_UPPER                                                               7:0
3362 
3363 #define NVC597_SET_INDEX_BUFFER_B                                                                          0x17cc
3364 #define NVC597_SET_INDEX_BUFFER_B_ADDRESS_LOWER                                                              31:0
3365 
3366 #define NVC597_SET_INDEX_BUFFER_E                                                                          0x17d8
3367 #define NVC597_SET_INDEX_BUFFER_E_INDEX_SIZE                                                                  1:0
3368 #define NVC597_SET_INDEX_BUFFER_E_INDEX_SIZE_ONE_BYTE                                                  0x00000000
3369 #define NVC597_SET_INDEX_BUFFER_E_INDEX_SIZE_TWO_BYTES                                                 0x00000001
3370 #define NVC597_SET_INDEX_BUFFER_E_INDEX_SIZE_FOUR_BYTES                                                0x00000002
3371 
3372 #define NVC597_SET_INDEX_BUFFER_F                                                                          0x17dc
3373 #define NVC597_SET_INDEX_BUFFER_F_FIRST                                                                      31:0
3374 
3375 #define NVC597_DRAW_INDEX_BUFFER                                                                           0x17e0
3376 #define NVC597_DRAW_INDEX_BUFFER_COUNT                                                                       31:0
3377 
3378 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST                                                0x17e4
3379 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_FIRST                                            15:0
3380 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_COUNT                                           27:16
3381 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY                                        31:28
3382 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POINTS                            0x00000000
3383 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINES                             0x00000001
3384 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_LOOP                         0x00000002
3385 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_STRIP                        0x00000003
3386 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLES                         0x00000004
3387 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_STRIP                    0x00000005
3388 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_FAN                      0x00000006
3389 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUADS                             0x00000007
3390 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUAD_STRIP                        0x00000008
3391 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POLYGON                           0x00000009
3392 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINELIST_ADJCY                    0x0000000A
3393 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINESTRIP_ADJCY                   0x0000000B
3394 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLELIST_ADJCY                0x0000000C
3395 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLESTRIP_ADJCY               0x0000000D
3396 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_PATCH                             0x0000000E
3397 
3398 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST                                                0x17e8
3399 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_FIRST                                            15:0
3400 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_COUNT                                           27:16
3401 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY                                        31:28
3402 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POINTS                            0x00000000
3403 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINES                             0x00000001
3404 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_LOOP                         0x00000002
3405 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_STRIP                        0x00000003
3406 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLES                         0x00000004
3407 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_STRIP                    0x00000005
3408 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_FAN                      0x00000006
3409 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUADS                             0x00000007
3410 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUAD_STRIP                        0x00000008
3411 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POLYGON                           0x00000009
3412 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINELIST_ADJCY                    0x0000000A
3413 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINESTRIP_ADJCY                   0x0000000B
3414 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLELIST_ADJCY                0x0000000C
3415 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLESTRIP_ADJCY               0x0000000D
3416 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_PATCH                             0x0000000E
3417 
3418 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST                                                 0x17ec
3419 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_FIRST                                             15:0
3420 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_COUNT                                            27:16
3421 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY                                         31:28
3422 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POINTS                             0x00000000
3423 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINES                              0x00000001
3424 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_LOOP                          0x00000002
3425 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINE_STRIP                         0x00000003
3426 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLES                          0x00000004
3427 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_STRIP                     0x00000005
3428 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLE_FAN                       0x00000006
3429 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUADS                              0x00000007
3430 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_QUAD_STRIP                         0x00000008
3431 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_POLYGON                            0x00000009
3432 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINELIST_ADJCY                     0x0000000A
3433 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_LINESTRIP_ADJCY                    0x0000000B
3434 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLELIST_ADJCY                 0x0000000C
3435 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_TRIANGLESTRIP_ADJCY                0x0000000D
3436 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_FIRST_TOPOLOGY_PATCH                              0x0000000E
3437 
3438 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT                                           0x17f0
3439 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_FIRST                                       15:0
3440 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_COUNT                                      27:16
3441 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY                                   31:28
3442 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POINTS                       0x00000000
3443 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINES                        0x00000001
3444 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_LOOP                    0x00000002
3445 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_STRIP                   0x00000003
3446 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLES                    0x00000004
3447 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_STRIP               0x00000005
3448 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_FAN                 0x00000006
3449 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUADS                        0x00000007
3450 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUAD_STRIP                   0x00000008
3451 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POLYGON                      0x00000009
3452 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINELIST_ADJCY               0x0000000A
3453 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINESTRIP_ADJCY              0x0000000B
3454 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLELIST_ADJCY             0x0000000C
3455 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLESTRIP_ADJCY             0x0000000D
3456 #define NVC597_DRAW_INDEX_BUFFER32_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_PATCH                        0x0000000E
3457 
3458 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT                                           0x17f4
3459 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_FIRST                                       15:0
3460 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_COUNT                                      27:16
3461 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY                                   31:28
3462 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POINTS                       0x00000000
3463 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINES                        0x00000001
3464 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_LOOP                    0x00000002
3465 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_STRIP                   0x00000003
3466 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLES                    0x00000004
3467 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_STRIP               0x00000005
3468 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_FAN                 0x00000006
3469 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUADS                        0x00000007
3470 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUAD_STRIP                   0x00000008
3471 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POLYGON                      0x00000009
3472 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINELIST_ADJCY               0x0000000A
3473 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINESTRIP_ADJCY              0x0000000B
3474 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLELIST_ADJCY             0x0000000C
3475 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLESTRIP_ADJCY             0x0000000D
3476 #define NVC597_DRAW_INDEX_BUFFER16_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_PATCH                        0x0000000E
3477 
3478 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT                                            0x17f8
3479 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_FIRST                                        15:0
3480 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_COUNT                                       27:16
3481 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY                                    31:28
3482 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POINTS                        0x00000000
3483 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINES                         0x00000001
3484 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_LOOP                     0x00000002
3485 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINE_STRIP                    0x00000003
3486 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLES                     0x00000004
3487 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_STRIP                0x00000005
3488 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLE_FAN                  0x00000006
3489 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUADS                         0x00000007
3490 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_QUAD_STRIP                    0x00000008
3491 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_POLYGON                       0x00000009
3492 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINELIST_ADJCY                0x0000000A
3493 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_LINESTRIP_ADJCY               0x0000000B
3494 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLELIST_ADJCY             0x0000000C
3495 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_TRIANGLESTRIP_ADJCY             0x0000000D
3496 #define NVC597_DRAW_INDEX_BUFFER8_BEGIN_END_INSTANCE_SUBSEQUENT_TOPOLOGY_PATCH                         0x0000000E
3497 
3498 #define NVC597_SET_DEPTH_BIAS_CLAMP                                                                        0x187c
3499 #define NVC597_SET_DEPTH_BIAS_CLAMP_V                                                                        31:0
3500 
3501 #define NVC597_SET_VERTEX_STREAM_INSTANCE_A(i)                                                     (0x1880+(i)*4)
3502 #define NVC597_SET_VERTEX_STREAM_INSTANCE_A_IS_INSTANCED                                                      0:0
3503 #define NVC597_SET_VERTEX_STREAM_INSTANCE_A_IS_INSTANCED_FALSE                                         0x00000000
3504 #define NVC597_SET_VERTEX_STREAM_INSTANCE_A_IS_INSTANCED_TRUE                                          0x00000001
3505 
3506 #define NVC597_SET_VERTEX_STREAM_INSTANCE_B(i)                                                     (0x18c0+(i)*4)
3507 #define NVC597_SET_VERTEX_STREAM_INSTANCE_B_IS_INSTANCED                                                      0:0
3508 #define NVC597_SET_VERTEX_STREAM_INSTANCE_B_IS_INSTANCED_FALSE                                         0x00000000
3509 #define NVC597_SET_VERTEX_STREAM_INSTANCE_B_IS_INSTANCED_TRUE                                          0x00000001
3510 
3511 #define NVC597_SET_ATTRIBUTE_POINT_SIZE                                                                    0x1910
3512 #define NVC597_SET_ATTRIBUTE_POINT_SIZE_ENABLE                                                                0:0
3513 #define NVC597_SET_ATTRIBUTE_POINT_SIZE_ENABLE_FALSE                                                   0x00000000
3514 #define NVC597_SET_ATTRIBUTE_POINT_SIZE_ENABLE_TRUE                                                    0x00000001
3515 #define NVC597_SET_ATTRIBUTE_POINT_SIZE_SLOT                                                                 11:4
3516 
3517 #define NVC597_OGL_SET_CULL                                                                                0x1918
3518 #define NVC597_OGL_SET_CULL_ENABLE                                                                            0:0
3519 #define NVC597_OGL_SET_CULL_ENABLE_FALSE                                                               0x00000000
3520 #define NVC597_OGL_SET_CULL_ENABLE_TRUE                                                                0x00000001
3521 
3522 #define NVC597_OGL_SET_FRONT_FACE                                                                          0x191c
3523 #define NVC597_OGL_SET_FRONT_FACE_V                                                                          31:0
3524 #define NVC597_OGL_SET_FRONT_FACE_V_CW                                                                 0x00000900
3525 #define NVC597_OGL_SET_FRONT_FACE_V_CCW                                                                0x00000901
3526 
3527 #define NVC597_OGL_SET_CULL_FACE                                                                           0x1920
3528 #define NVC597_OGL_SET_CULL_FACE_V                                                                           31:0
3529 #define NVC597_OGL_SET_CULL_FACE_V_FRONT                                                               0x00000404
3530 #define NVC597_OGL_SET_CULL_FACE_V_BACK                                                                0x00000405
3531 #define NVC597_OGL_SET_CULL_FACE_V_FRONT_AND_BACK                                                      0x00000408
3532 
3533 #define NVC597_SET_VIEWPORT_PIXEL                                                                          0x1924
3534 #define NVC597_SET_VIEWPORT_PIXEL_CENTER                                                                      0:0
3535 #define NVC597_SET_VIEWPORT_PIXEL_CENTER_AT_HALF_INTEGERS                                              0x00000000
3536 #define NVC597_SET_VIEWPORT_PIXEL_CENTER_AT_INTEGERS                                                   0x00000001
3537 
3538 #define NVC597_SET_VIEWPORT_SCALE_OFFSET                                                                   0x192c
3539 #define NVC597_SET_VIEWPORT_SCALE_OFFSET_ENABLE                                                               0:0
3540 #define NVC597_SET_VIEWPORT_SCALE_OFFSET_ENABLE_FALSE                                                  0x00000000
3541 #define NVC597_SET_VIEWPORT_SCALE_OFFSET_ENABLE_TRUE                                                   0x00000001
3542 
3543 #define NVC597_SET_VIEWPORT_CLIP_CONTROL                                                                   0x193c
3544 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_MIN_Z_ZERO_MAX_Z_ONE                                                 0:0
3545 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_MIN_Z_ZERO_MAX_Z_ONE_FALSE                                    0x00000000
3546 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_MIN_Z_ZERO_MAX_Z_ONE_TRUE                                     0x00000001
3547 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_Z_CLIP_RANGE                                                       17:16
3548 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_Z_CLIP_RANGE_USE_FIELD_MIN_Z_ZERO_MAX_Z_ONE                   0x00000000
3549 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_Z_CLIP_RANGE_MIN_Z_MAX_Z                                      0x00000001
3550 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_Z_CLIP_RANGE_ZERO_ONE                                         0x00000002
3551 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_Z_CLIP_RANGE_MINUS_INF_PLUS_INF                               0x00000003
3552 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MIN_Z                                                          3:3
3553 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MIN_Z_CLIP                                              0x00000000
3554 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MIN_Z_CLAMP                                             0x00000001
3555 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MAX_Z                                                          4:4
3556 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MAX_Z_CLIP                                              0x00000000
3557 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_PIXEL_MAX_Z_CLAMP                                             0x00000001
3558 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND                                                   7:7
3559 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_SCALE_256                                  0x00000000
3560 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_SCALE_1                                    0x00000001
3561 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_LINE_POINT_CULL_GUARDBAND                                          10:10
3562 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_LINE_POINT_CULL_GUARDBAND_SCALE_256                           0x00000000
3563 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_LINE_POINT_CULL_GUARDBAND_SCALE_1                             0x00000001
3564 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP                                                      13:11
3565 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_WZERO_CLIP                                      0x00000000
3566 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_PASSTHRU                                        0x00000001
3567 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_FRUSTUM_XY_CLIP                                 0x00000002
3568 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_FRUSTUM_XYZ_CLIP                                0x00000003
3569 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_WZERO_CLIP_NO_Z_CULL                            0x00000004
3570 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_FRUSTUM_Z_CLIP                                  0x00000005
3571 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_CLIP_WZERO_TRI_FILL_OR_CLIP                          0x00000006
3572 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_Z                                                 2:1
3573 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_Z_SAME_AS_XY_GUARDBAND                     0x00000000
3574 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_Z_SCALE_256                                0x00000001
3575 #define NVC597_SET_VIEWPORT_CLIP_CONTROL_GEOMETRY_GUARDBAND_Z_SCALE_1                                  0x00000002
3576 
3577 #define NVC597_SET_USER_CLIP_OP                                                                            0x1940
3578 #define NVC597_SET_USER_CLIP_OP_PLANE0                                                                        0:0
3579 #define NVC597_SET_USER_CLIP_OP_PLANE0_CLIP                                                            0x00000000
3580 #define NVC597_SET_USER_CLIP_OP_PLANE0_CULL                                                            0x00000001
3581 #define NVC597_SET_USER_CLIP_OP_PLANE1                                                                        4:4
3582 #define NVC597_SET_USER_CLIP_OP_PLANE1_CLIP                                                            0x00000000
3583 #define NVC597_SET_USER_CLIP_OP_PLANE1_CULL                                                            0x00000001
3584 #define NVC597_SET_USER_CLIP_OP_PLANE2                                                                        8:8
3585 #define NVC597_SET_USER_CLIP_OP_PLANE2_CLIP                                                            0x00000000
3586 #define NVC597_SET_USER_CLIP_OP_PLANE2_CULL                                                            0x00000001
3587 #define NVC597_SET_USER_CLIP_OP_PLANE3                                                                      12:12
3588 #define NVC597_SET_USER_CLIP_OP_PLANE3_CLIP                                                            0x00000000
3589 #define NVC597_SET_USER_CLIP_OP_PLANE3_CULL                                                            0x00000001
3590 #define NVC597_SET_USER_CLIP_OP_PLANE4                                                                      16:16
3591 #define NVC597_SET_USER_CLIP_OP_PLANE4_CLIP                                                            0x00000000
3592 #define NVC597_SET_USER_CLIP_OP_PLANE4_CULL                                                            0x00000001
3593 #define NVC597_SET_USER_CLIP_OP_PLANE5                                                                      20:20
3594 #define NVC597_SET_USER_CLIP_OP_PLANE5_CLIP                                                            0x00000000
3595 #define NVC597_SET_USER_CLIP_OP_PLANE5_CULL                                                            0x00000001
3596 #define NVC597_SET_USER_CLIP_OP_PLANE6                                                                      24:24
3597 #define NVC597_SET_USER_CLIP_OP_PLANE6_CLIP                                                            0x00000000
3598 #define NVC597_SET_USER_CLIP_OP_PLANE6_CULL                                                            0x00000001
3599 #define NVC597_SET_USER_CLIP_OP_PLANE7                                                                      28:28
3600 #define NVC597_SET_USER_CLIP_OP_PLANE7_CLIP                                                            0x00000000
3601 #define NVC597_SET_USER_CLIP_OP_PLANE7_CULL                                                            0x00000001
3602 
3603 #define NVC597_SET_RENDER_ENABLE_OVERRIDE                                                                  0x1944
3604 #define NVC597_SET_RENDER_ENABLE_OVERRIDE_MODE                                                                1:0
3605 #define NVC597_SET_RENDER_ENABLE_OVERRIDE_MODE_USE_RENDER_ENABLE                                       0x00000000
3606 #define NVC597_SET_RENDER_ENABLE_OVERRIDE_MODE_ALWAYS_RENDER                                           0x00000001
3607 #define NVC597_SET_RENDER_ENABLE_OVERRIDE_MODE_NEVER_RENDER                                            0x00000002
3608 
3609 #define NVC597_SET_PRIMITIVE_TOPOLOGY_CONTROL                                                              0x1948
3610 #define NVC597_SET_PRIMITIVE_TOPOLOGY_CONTROL_OVERRIDE                                                        0:0
3611 #define NVC597_SET_PRIMITIVE_TOPOLOGY_CONTROL_OVERRIDE_USE_TOPOLOGY_IN_BEGIN_METHODS                   0x00000000
3612 #define NVC597_SET_PRIMITIVE_TOPOLOGY_CONTROL_OVERRIDE_USE_SEPARATE_TOPOLOGY_STATE                     0x00000001
3613 
3614 #define NVC597_SET_WINDOW_CLIP_ENABLE                                                                      0x194c
3615 #define NVC597_SET_WINDOW_CLIP_ENABLE_V                                                                       0:0
3616 #define NVC597_SET_WINDOW_CLIP_ENABLE_V_FALSE                                                          0x00000000
3617 #define NVC597_SET_WINDOW_CLIP_ENABLE_V_TRUE                                                           0x00000001
3618 
3619 #define NVC597_SET_WINDOW_CLIP_TYPE                                                                        0x1950
3620 #define NVC597_SET_WINDOW_CLIP_TYPE_V                                                                         1:0
3621 #define NVC597_SET_WINDOW_CLIP_TYPE_V_INCLUSIVE                                                        0x00000000
3622 #define NVC597_SET_WINDOW_CLIP_TYPE_V_EXCLUSIVE                                                        0x00000001
3623 #define NVC597_SET_WINDOW_CLIP_TYPE_V_CLIPALL                                                          0x00000002
3624 
3625 #define NVC597_INVALIDATE_ZCULL                                                                            0x1958
3626 #define NVC597_INVALIDATE_ZCULL_V                                                                            31:0
3627 #define NVC597_INVALIDATE_ZCULL_V_INVALIDATE                                                           0x00000000
3628 
3629 #define NVC597_SET_ZCULL                                                                                   0x1968
3630 #define NVC597_SET_ZCULL_Z_ENABLE                                                                             0:0
3631 #define NVC597_SET_ZCULL_Z_ENABLE_FALSE                                                                0x00000000
3632 #define NVC597_SET_ZCULL_Z_ENABLE_TRUE                                                                 0x00000001
3633 #define NVC597_SET_ZCULL_STENCIL_ENABLE                                                                       4:4
3634 #define NVC597_SET_ZCULL_STENCIL_ENABLE_FALSE                                                          0x00000000
3635 #define NVC597_SET_ZCULL_STENCIL_ENABLE_TRUE                                                           0x00000001
3636 
3637 #define NVC597_SET_ZCULL_BOUNDS                                                                            0x196c
3638 #define NVC597_SET_ZCULL_BOUNDS_Z_MIN_UNBOUNDED_ENABLE                                                        0:0
3639 #define NVC597_SET_ZCULL_BOUNDS_Z_MIN_UNBOUNDED_ENABLE_FALSE                                           0x00000000
3640 #define NVC597_SET_ZCULL_BOUNDS_Z_MIN_UNBOUNDED_ENABLE_TRUE                                            0x00000001
3641 #define NVC597_SET_ZCULL_BOUNDS_Z_MAX_UNBOUNDED_ENABLE                                                        4:4
3642 #define NVC597_SET_ZCULL_BOUNDS_Z_MAX_UNBOUNDED_ENABLE_FALSE                                           0x00000000
3643 #define NVC597_SET_ZCULL_BOUNDS_Z_MAX_UNBOUNDED_ENABLE_TRUE                                            0x00000001
3644 
3645 #define NVC597_SET_PRIMITIVE_TOPOLOGY                                                                      0x1970
3646 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V                                                                      15:0
3647 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_POINTLIST                                                      0x00000001
3648 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LINELIST                                                       0x00000002
3649 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LINESTRIP                                                      0x00000003
3650 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_TRIANGLELIST                                                   0x00000004
3651 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_TRIANGLESTRIP                                                  0x00000005
3652 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LINELIST_ADJCY                                                 0x0000000A
3653 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LINESTRIP_ADJCY                                                0x0000000B
3654 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_TRIANGLELIST_ADJCY                                             0x0000000C
3655 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_TRIANGLESTRIP_ADJCY                                            0x0000000D
3656 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_PATCHLIST                                                      0x0000000E
3657 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_POINTS                                                  0x00001001
3658 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDLINELIST                                         0x00001002
3659 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDTRIANGLELIST                                     0x00001003
3660 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_LINELIST                                                0x0000100F
3661 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_LINESTRIP                                               0x00001010
3662 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDLINESTRIP                                        0x00001011
3663 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_TRIANGLELIST                                            0x00001012
3664 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_TRIANGLESTRIP                                           0x00001013
3665 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDTRIANGLESTRIP                                    0x00001014
3666 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_TRIANGLEFAN                                             0x00001015
3667 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDTRIANGLEFAN                                      0x00001016
3668 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_TRIANGLEFAN_IMM                                         0x00001017
3669 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_LINELIST_IMM                                            0x00001018
3670 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDTRIANGLELIST2                                    0x0000101A
3671 #define NVC597_SET_PRIMITIVE_TOPOLOGY_V_LEGACY_INDEXEDLINELIST2                                        0x0000101B
3672 
3673 #define NVC597_ZCULL_SYNC                                                                                  0x1978
3674 #define NVC597_ZCULL_SYNC_V                                                                                  31:0
3675 
3676 #define NVC597_SET_CLIP_ID_TEST                                                                            0x197c
3677 #define NVC597_SET_CLIP_ID_TEST_ENABLE                                                                        0:0
3678 #define NVC597_SET_CLIP_ID_TEST_ENABLE_FALSE                                                           0x00000000
3679 #define NVC597_SET_CLIP_ID_TEST_ENABLE_TRUE                                                            0x00000001
3680 
3681 #define NVC597_SET_SURFACE_CLIP_ID_WIDTH                                                                   0x1980
3682 #define NVC597_SET_SURFACE_CLIP_ID_WIDTH_V                                                                   31:0
3683 
3684 #define NVC597_SET_CLIP_ID                                                                                 0x1984
3685 #define NVC597_SET_CLIP_ID_V                                                                                 31:0
3686 
3687 #define NVC597_SET_DEPTH_BOUNDS_TEST                                                                       0x19bc
3688 #define NVC597_SET_DEPTH_BOUNDS_TEST_ENABLE                                                                   0:0
3689 #define NVC597_SET_DEPTH_BOUNDS_TEST_ENABLE_FALSE                                                      0x00000000
3690 #define NVC597_SET_DEPTH_BOUNDS_TEST_ENABLE_TRUE                                                       0x00000001
3691 
3692 #define NVC597_SET_BLEND_FLOAT_OPTION                                                                      0x19c0
3693 #define NVC597_SET_BLEND_FLOAT_OPTION_ZERO_TIMES_ANYTHING_IS_ZERO                                             0:0
3694 #define NVC597_SET_BLEND_FLOAT_OPTION_ZERO_TIMES_ANYTHING_IS_ZERO_FALSE                                0x00000000
3695 #define NVC597_SET_BLEND_FLOAT_OPTION_ZERO_TIMES_ANYTHING_IS_ZERO_TRUE                                 0x00000001
3696 
3697 #define NVC597_SET_LOGIC_OP                                                                                0x19c4
3698 #define NVC597_SET_LOGIC_OP_ENABLE                                                                            0:0
3699 #define NVC597_SET_LOGIC_OP_ENABLE_FALSE                                                               0x00000000
3700 #define NVC597_SET_LOGIC_OP_ENABLE_TRUE                                                                0x00000001
3701 
3702 #define NVC597_SET_LOGIC_OP_FUNC                                                                           0x19c8
3703 #define NVC597_SET_LOGIC_OP_FUNC_V                                                                           31:0
3704 #define NVC597_SET_LOGIC_OP_FUNC_V_CLEAR                                                               0x00001500
3705 #define NVC597_SET_LOGIC_OP_FUNC_V_AND                                                                 0x00001501
3706 #define NVC597_SET_LOGIC_OP_FUNC_V_AND_REVERSE                                                         0x00001502
3707 #define NVC597_SET_LOGIC_OP_FUNC_V_COPY                                                                0x00001503
3708 #define NVC597_SET_LOGIC_OP_FUNC_V_AND_INVERTED                                                        0x00001504
3709 #define NVC597_SET_LOGIC_OP_FUNC_V_NOOP                                                                0x00001505
3710 #define NVC597_SET_LOGIC_OP_FUNC_V_XOR                                                                 0x00001506
3711 #define NVC597_SET_LOGIC_OP_FUNC_V_OR                                                                  0x00001507
3712 #define NVC597_SET_LOGIC_OP_FUNC_V_NOR                                                                 0x00001508
3713 #define NVC597_SET_LOGIC_OP_FUNC_V_EQUIV                                                               0x00001509
3714 #define NVC597_SET_LOGIC_OP_FUNC_V_INVERT                                                              0x0000150A
3715 #define NVC597_SET_LOGIC_OP_FUNC_V_OR_REVERSE                                                          0x0000150B
3716 #define NVC597_SET_LOGIC_OP_FUNC_V_COPY_INVERTED                                                       0x0000150C
3717 #define NVC597_SET_LOGIC_OP_FUNC_V_OR_INVERTED                                                         0x0000150D
3718 #define NVC597_SET_LOGIC_OP_FUNC_V_NAND                                                                0x0000150E
3719 #define NVC597_SET_LOGIC_OP_FUNC_V_SET                                                                 0x0000150F
3720 
3721 #define NVC597_SET_Z_COMPRESSION                                                                           0x19cc
3722 #define NVC597_SET_Z_COMPRESSION_ENABLE                                                                       0:0
3723 #define NVC597_SET_Z_COMPRESSION_ENABLE_FALSE                                                          0x00000000
3724 #define NVC597_SET_Z_COMPRESSION_ENABLE_TRUE                                                           0x00000001
3725 
3726 #define NVC597_CLEAR_SURFACE                                                                               0x19d0
3727 #define NVC597_CLEAR_SURFACE_Z_ENABLE                                                                         0:0
3728 #define NVC597_CLEAR_SURFACE_Z_ENABLE_FALSE                                                            0x00000000
3729 #define NVC597_CLEAR_SURFACE_Z_ENABLE_TRUE                                                             0x00000001
3730 #define NVC597_CLEAR_SURFACE_STENCIL_ENABLE                                                                   1:1
3731 #define NVC597_CLEAR_SURFACE_STENCIL_ENABLE_FALSE                                                      0x00000000
3732 #define NVC597_CLEAR_SURFACE_STENCIL_ENABLE_TRUE                                                       0x00000001
3733 #define NVC597_CLEAR_SURFACE_R_ENABLE                                                                         2:2
3734 #define NVC597_CLEAR_SURFACE_R_ENABLE_FALSE                                                            0x00000000
3735 #define NVC597_CLEAR_SURFACE_R_ENABLE_TRUE                                                             0x00000001
3736 #define NVC597_CLEAR_SURFACE_G_ENABLE                                                                         3:3
3737 #define NVC597_CLEAR_SURFACE_G_ENABLE_FALSE                                                            0x00000000
3738 #define NVC597_CLEAR_SURFACE_G_ENABLE_TRUE                                                             0x00000001
3739 #define NVC597_CLEAR_SURFACE_B_ENABLE                                                                         4:4
3740 #define NVC597_CLEAR_SURFACE_B_ENABLE_FALSE                                                            0x00000000
3741 #define NVC597_CLEAR_SURFACE_B_ENABLE_TRUE                                                             0x00000001
3742 #define NVC597_CLEAR_SURFACE_A_ENABLE                                                                         5:5
3743 #define NVC597_CLEAR_SURFACE_A_ENABLE_FALSE                                                            0x00000000
3744 #define NVC597_CLEAR_SURFACE_A_ENABLE_TRUE                                                             0x00000001
3745 #define NVC597_CLEAR_SURFACE_MRT_SELECT                                                                       9:6
3746 #define NVC597_CLEAR_SURFACE_RT_ARRAY_INDEX                                                                 25:10
3747 
3748 #define NVC597_CLEAR_CLIP_ID_SURFACE                                                                       0x19d4
3749 #define NVC597_CLEAR_CLIP_ID_SURFACE_V                                                                       31:0
3750 
3751 #define NVC597_SET_COLOR_COMPRESSION(i)                                                            (0x19e0+(i)*4)
3752 #define NVC597_SET_COLOR_COMPRESSION_ENABLE                                                                   0:0
3753 #define NVC597_SET_COLOR_COMPRESSION_ENABLE_FALSE                                                      0x00000000
3754 #define NVC597_SET_COLOR_COMPRESSION_ENABLE_TRUE                                                       0x00000001
3755 
3756 #define NVC597_SET_CT_WRITE(i)                                                                     (0x1a00+(i)*4)
3757 #define NVC597_SET_CT_WRITE_R_ENABLE                                                                          0:0
3758 #define NVC597_SET_CT_WRITE_R_ENABLE_FALSE                                                             0x00000000
3759 #define NVC597_SET_CT_WRITE_R_ENABLE_TRUE                                                              0x00000001
3760 #define NVC597_SET_CT_WRITE_G_ENABLE                                                                          4:4
3761 #define NVC597_SET_CT_WRITE_G_ENABLE_FALSE                                                             0x00000000
3762 #define NVC597_SET_CT_WRITE_G_ENABLE_TRUE                                                              0x00000001
3763 #define NVC597_SET_CT_WRITE_B_ENABLE                                                                          8:8
3764 #define NVC597_SET_CT_WRITE_B_ENABLE_FALSE                                                             0x00000000
3765 #define NVC597_SET_CT_WRITE_B_ENABLE_TRUE                                                              0x00000001
3766 #define NVC597_SET_CT_WRITE_A_ENABLE                                                                        12:12
3767 #define NVC597_SET_CT_WRITE_A_ENABLE_FALSE                                                             0x00000000
3768 #define NVC597_SET_CT_WRITE_A_ENABLE_TRUE                                                              0x00000001
3769 
3770 #define NVC597_PIPE_NOP                                                                                    0x1a2c
3771 #define NVC597_PIPE_NOP_V                                                                                    31:0
3772 
3773 #define NVC597_SET_SPARE00                                                                                 0x1a30
3774 #define NVC597_SET_SPARE00_V                                                                                 31:0
3775 
3776 #define NVC597_SET_SPARE01                                                                                 0x1a34
3777 #define NVC597_SET_SPARE01_V                                                                                 31:0
3778 
3779 #define NVC597_SET_SPARE02                                                                                 0x1a38
3780 #define NVC597_SET_SPARE02_V                                                                                 31:0
3781 
3782 #define NVC597_SET_SPARE03                                                                                 0x1a3c
3783 #define NVC597_SET_SPARE03_V                                                                                 31:0
3784 
3785 #define NVC597_SET_REPORT_SEMAPHORE_A                                                                      0x1b00
3786 #define NVC597_SET_REPORT_SEMAPHORE_A_OFFSET_UPPER                                                            7:0
3787 
3788 #define NVC597_SET_REPORT_SEMAPHORE_B                                                                      0x1b04
3789 #define NVC597_SET_REPORT_SEMAPHORE_B_OFFSET_LOWER                                                           31:0
3790 
3791 #define NVC597_SET_REPORT_SEMAPHORE_C                                                                      0x1b08
3792 #define NVC597_SET_REPORT_SEMAPHORE_C_PAYLOAD                                                                31:0
3793 
3794 #define NVC597_SET_REPORT_SEMAPHORE_D                                                                      0x1b0c
3795 #define NVC597_SET_REPORT_SEMAPHORE_D_OPERATION                                                               1:0
3796 #define NVC597_SET_REPORT_SEMAPHORE_D_OPERATION_RELEASE                                                0x00000000
3797 #define NVC597_SET_REPORT_SEMAPHORE_D_OPERATION_ACQUIRE                                                0x00000001
3798 #define NVC597_SET_REPORT_SEMAPHORE_D_OPERATION_REPORT_ONLY                                            0x00000002
3799 #define NVC597_SET_REPORT_SEMAPHORE_D_OPERATION_TRAP                                                   0x00000003
3800 #define NVC597_SET_REPORT_SEMAPHORE_D_RELEASE                                                                 4:4
3801 #define NVC597_SET_REPORT_SEMAPHORE_D_RELEASE_AFTER_ALL_PRECEEDING_READS_COMPLETE                      0x00000000
3802 #define NVC597_SET_REPORT_SEMAPHORE_D_RELEASE_AFTER_ALL_PRECEEDING_WRITES_COMPLETE                     0x00000001
3803 #define NVC597_SET_REPORT_SEMAPHORE_D_ACQUIRE                                                                 8:8
3804 #define NVC597_SET_REPORT_SEMAPHORE_D_ACQUIRE_BEFORE_ANY_FOLLOWING_WRITES_START                        0x00000000
3805 #define NVC597_SET_REPORT_SEMAPHORE_D_ACQUIRE_BEFORE_ANY_FOLLOWING_READS_START                         0x00000001
3806 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION                                                     15:12
3807 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_NONE                                           0x00000000
3808 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_DATA_ASSEMBLER                                 0x00000001
3809 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_VERTEX_SHADER                                  0x00000002
3810 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_TESSELATION_INIT_SHADER                        0x00000008
3811 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_TESSELATION_SHADER                             0x00000009
3812 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_GEOMETRY_SHADER                                0x00000006
3813 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_STREAMING_OUTPUT                               0x00000005
3814 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_VPC                                            0x00000004
3815 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_ZCULL                                          0x00000007
3816 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_PIXEL_SHADER                                   0x0000000A
3817 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_DEPTH_TEST                                     0x0000000C
3818 #define NVC597_SET_REPORT_SEMAPHORE_D_PIPELINE_LOCATION_ALL                                            0x0000000F
3819 #define NVC597_SET_REPORT_SEMAPHORE_D_COMPARISON                                                            16:16
3820 #define NVC597_SET_REPORT_SEMAPHORE_D_COMPARISON_EQ                                                    0x00000000
3821 #define NVC597_SET_REPORT_SEMAPHORE_D_COMPARISON_GE                                                    0x00000001
3822 #define NVC597_SET_REPORT_SEMAPHORE_D_AWAKEN_ENABLE                                                         20:20
3823 #define NVC597_SET_REPORT_SEMAPHORE_D_AWAKEN_ENABLE_FALSE                                              0x00000000
3824 #define NVC597_SET_REPORT_SEMAPHORE_D_AWAKEN_ENABLE_TRUE                                               0x00000001
3825 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT                                                                27:23
3826 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_NONE                                                      0x00000000
3827 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_DA_VERTICES_GENERATED                                     0x00000001
3828 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_DA_PRIMITIVES_GENERATED                                   0x00000003
3829 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_VS_INVOCATIONS                                            0x00000005
3830 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_TI_INVOCATIONS                                            0x0000001B
3831 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_TS_INVOCATIONS                                            0x0000001D
3832 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_TS_PRIMITIVES_GENERATED                                   0x0000001F
3833 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_GS_INVOCATIONS                                            0x00000007
3834 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_GS_PRIMITIVES_GENERATED                                   0x00000009
3835 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ALPHA_BETA_CLOCKS                                         0x00000004
3836 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_SCG_CLOCKS                                                0x00000008
3837 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_VTG_PRIMITIVES_OUT                                        0x00000012
3838 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_TOTAL_STREAMING_PRIMITIVES_NEEDED_MINUS_SUCCEEDED             0x0000001E
3839 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_STREAMING_PRIMITIVES_SUCCEEDED                            0x0000000B
3840 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_STREAMING_PRIMITIVES_NEEDED                               0x0000000D
3841 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_STREAMING_PRIMITIVES_NEEDED_MINUS_SUCCEEDED               0x00000006
3842 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_STREAMING_BYTE_COUNT                                      0x0000001A
3843 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_CLIPPER_INVOCATIONS                                       0x0000000F
3844 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_CLIPPER_PRIMITIVES_GENERATED                              0x00000011
3845 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZCULL_STATS0                                              0x0000000A
3846 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZCULL_STATS1                                              0x0000000C
3847 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZCULL_STATS2                                              0x0000000E
3848 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZCULL_STATS3                                              0x00000010
3849 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_PS_INVOCATIONS                                            0x00000013
3850 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZPASS_PIXEL_CNT                                           0x00000002
3851 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_ZPASS_PIXEL_CNT64                                         0x00000015
3852 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_TILED_ZPASS_PIXEL_CNT64                                   0x00000017
3853 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_IEEE_CLEAN_COLOR_TARGET                                   0x00000018
3854 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_IEEE_CLEAN_ZETA_TARGET                                    0x00000019
3855 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_BOUNDING_RECTANGLE                                        0x0000001C
3856 #define NVC597_SET_REPORT_SEMAPHORE_D_STRUCTURE_SIZE                                                        28:28
3857 #define NVC597_SET_REPORT_SEMAPHORE_D_STRUCTURE_SIZE_FOUR_WORDS                                        0x00000000
3858 #define NVC597_SET_REPORT_SEMAPHORE_D_STRUCTURE_SIZE_ONE_WORD                                          0x00000001
3859 #define NVC597_SET_REPORT_SEMAPHORE_D_SUB_REPORT                                                              7:5
3860 #define NVC597_SET_REPORT_SEMAPHORE_D_REPORT_DWORD_NUMBER                                                   21:21
3861 #define NVC597_SET_REPORT_SEMAPHORE_D_FLUSH_DISABLE                                                           2:2
3862 #define NVC597_SET_REPORT_SEMAPHORE_D_FLUSH_DISABLE_FALSE                                              0x00000000
3863 #define NVC597_SET_REPORT_SEMAPHORE_D_FLUSH_DISABLE_TRUE                                               0x00000001
3864 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_ENABLE                                                        3:3
3865 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_ENABLE_FALSE                                           0x00000000
3866 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_ENABLE_TRUE                                            0x00000001
3867 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP                                                           11:9
3868 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_ADD                                             0x00000000
3869 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_MIN                                             0x00000001
3870 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_MAX                                             0x00000002
3871 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_INC                                             0x00000003
3872 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_DEC                                             0x00000004
3873 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_AND                                             0x00000005
3874 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_OR                                              0x00000006
3875 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_OP_RED_XOR                                             0x00000007
3876 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_FORMAT                                                      18:17
3877 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_FORMAT_UNSIGNED_32                                     0x00000000
3878 #define NVC597_SET_REPORT_SEMAPHORE_D_REDUCTION_FORMAT_SIGNED_32                                       0x00000001
3879 #define NVC597_SET_REPORT_SEMAPHORE_D_CONDITIONAL_TRAP                                                      19:19
3880 #define NVC597_SET_REPORT_SEMAPHORE_D_CONDITIONAL_TRAP_FALSE                                           0x00000000
3881 #define NVC597_SET_REPORT_SEMAPHORE_D_CONDITIONAL_TRAP_TRUE                                            0x00000001
3882 
3883 #define NVC597_SET_VERTEX_STREAM_A_FORMAT(j)                                                      (0x1c00+(j)*16)
3884 #define NVC597_SET_VERTEX_STREAM_A_FORMAT_STRIDE                                                             11:0
3885 #define NVC597_SET_VERTEX_STREAM_A_FORMAT_ENABLE                                                            12:12
3886 #define NVC597_SET_VERTEX_STREAM_A_FORMAT_ENABLE_FALSE                                                 0x00000000
3887 #define NVC597_SET_VERTEX_STREAM_A_FORMAT_ENABLE_TRUE                                                  0x00000001
3888 
3889 #define NVC597_SET_VERTEX_STREAM_A_LOCATION_A(j)                                                  (0x1c04+(j)*16)
3890 #define NVC597_SET_VERTEX_STREAM_A_LOCATION_A_OFFSET_UPPER                                                    7:0
3891 
3892 #define NVC597_SET_VERTEX_STREAM_A_LOCATION_B(j)                                                  (0x1c08+(j)*16)
3893 #define NVC597_SET_VERTEX_STREAM_A_LOCATION_B_OFFSET_LOWER                                                   31:0
3894 
3895 #define NVC597_SET_VERTEX_STREAM_A_FREQUENCY(j)                                                   (0x1c0c+(j)*16)
3896 #define NVC597_SET_VERTEX_STREAM_A_FREQUENCY_V                                                               31:0
3897 
3898 #define NVC597_SET_VERTEX_STREAM_B_FORMAT(j)                                                      (0x1d00+(j)*16)
3899 #define NVC597_SET_VERTEX_STREAM_B_FORMAT_STRIDE                                                             11:0
3900 #define NVC597_SET_VERTEX_STREAM_B_FORMAT_ENABLE                                                            12:12
3901 #define NVC597_SET_VERTEX_STREAM_B_FORMAT_ENABLE_FALSE                                                 0x00000000
3902 #define NVC597_SET_VERTEX_STREAM_B_FORMAT_ENABLE_TRUE                                                  0x00000001
3903 
3904 #define NVC597_SET_VERTEX_STREAM_B_LOCATION_A(j)                                                  (0x1d04+(j)*16)
3905 #define NVC597_SET_VERTEX_STREAM_B_LOCATION_A_OFFSET_UPPER                                                    7:0
3906 
3907 #define NVC597_SET_VERTEX_STREAM_B_LOCATION_B(j)                                                  (0x1d08+(j)*16)
3908 #define NVC597_SET_VERTEX_STREAM_B_LOCATION_B_OFFSET_LOWER                                                   31:0
3909 
3910 #define NVC597_SET_VERTEX_STREAM_B_FREQUENCY(j)                                                   (0x1d0c+(j)*16)
3911 #define NVC597_SET_VERTEX_STREAM_B_FREQUENCY_V                                                               31:0
3912 
3913 #define NVC597_SET_BLEND_PER_TARGET_SEPARATE_FOR_ALPHA(j)                                         (0x1e00+(j)*32)
3914 #define NVC597_SET_BLEND_PER_TARGET_SEPARATE_FOR_ALPHA_ENABLE                                                 0:0
3915 #define NVC597_SET_BLEND_PER_TARGET_SEPARATE_FOR_ALPHA_ENABLE_FALSE                                    0x00000000
3916 #define NVC597_SET_BLEND_PER_TARGET_SEPARATE_FOR_ALPHA_ENABLE_TRUE                                     0x00000001
3917 
3918 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP(j)                                                   (0x1e04+(j)*32)
3919 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V                                                               31:0
3920 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_OGL_FUNC_SUBTRACT                                       0x0000800A
3921 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_OGL_FUNC_REVERSE_SUBTRACT                               0x0000800B
3922 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_OGL_FUNC_ADD                                            0x00008006
3923 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_OGL_MIN                                                 0x00008007
3924 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_OGL_MAX                                                 0x00008008
3925 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_D3D_ADD                                                 0x00000001
3926 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_D3D_SUBTRACT                                            0x00000002
3927 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_D3D_REVSUBTRACT                                         0x00000003
3928 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_D3D_MIN                                                 0x00000004
3929 #define NVC597_SET_BLEND_PER_TARGET_COLOR_OP_V_D3D_MAX                                                 0x00000005
3930 
3931 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF(j)                                         (0x1e08+(j)*32)
3932 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V                                                     31:0
3933 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ZERO                                      0x00004000
3934 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE                                       0x00004001
3935 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_SRC_COLOR                                 0x00004300
3936 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                       0x00004301
3937 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_SRC_ALPHA                                 0x00004302
3938 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                       0x00004303
3939 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_DST_ALPHA                                 0x00004304
3940 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                       0x00004305
3941 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_DST_COLOR                                 0x00004306
3942 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_COLOR                       0x00004307
3943 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_SRC_ALPHA_SATURATE                        0x00004308
3944 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_CONSTANT_COLOR                            0x0000C001
3945 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                  0x0000C002
3946 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_CONSTANT_ALPHA                            0x0000C003
3947 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                  0x0000C004
3948 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_SRC1COLOR                                 0x0000C900
3949 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_INVSRC1COLOR                              0x0000C901
3950 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_SRC1ALPHA                                 0x0000C902
3951 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_OGL_INVSRC1ALPHA                              0x0000C903
3952 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_ZERO                                      0x00000001
3953 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_ONE                                       0x00000002
3954 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_SRCCOLOR                                  0x00000003
3955 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVSRCCOLOR                               0x00000004
3956 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_SRCALPHA                                  0x00000005
3957 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVSRCALPHA                               0x00000006
3958 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_DESTALPHA                                 0x00000007
3959 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVDESTALPHA                              0x00000008
3960 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_DESTCOLOR                                 0x00000009
3961 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVDESTCOLOR                              0x0000000A
3962 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_SRCALPHASAT                               0x0000000B
3963 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_BOTHSRCALPHA                              0x0000000C
3964 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_BOTHINVSRCALPHA                           0x0000000D
3965 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_BLENDFACTOR                               0x0000000E
3966 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVBLENDFACTOR                            0x0000000F
3967 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_SRC1COLOR                                 0x00000010
3968 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVSRC1COLOR                              0x00000011
3969 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_SRC1ALPHA                                 0x00000012
3970 #define NVC597_SET_BLEND_PER_TARGET_COLOR_SOURCE_COEFF_V_D3D_INVSRC1ALPHA                              0x00000013
3971 
3972 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF(j)                                           (0x1e0c+(j)*32)
3973 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V                                                       31:0
3974 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ZERO                                        0x00004000
3975 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE                                         0x00004001
3976 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_SRC_COLOR                                   0x00004300
3977 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                         0x00004301
3978 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_SRC_ALPHA                                   0x00004302
3979 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                         0x00004303
3980 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_DST_ALPHA                                   0x00004304
3981 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                         0x00004305
3982 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_DST_COLOR                                   0x00004306
3983 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_DST_COLOR                         0x00004307
3984 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_SRC_ALPHA_SATURATE                          0x00004308
3985 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_CONSTANT_COLOR                              0x0000C001
3986 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                    0x0000C002
3987 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_CONSTANT_ALPHA                              0x0000C003
3988 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                    0x0000C004
3989 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_SRC1COLOR                                   0x0000C900
3990 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_INVSRC1COLOR                                0x0000C901
3991 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_SRC1ALPHA                                   0x0000C902
3992 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_OGL_INVSRC1ALPHA                                0x0000C903
3993 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_ZERO                                        0x00000001
3994 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_ONE                                         0x00000002
3995 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_SRCCOLOR                                    0x00000003
3996 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVSRCCOLOR                                 0x00000004
3997 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_SRCALPHA                                    0x00000005
3998 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVSRCALPHA                                 0x00000006
3999 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_DESTALPHA                                   0x00000007
4000 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVDESTALPHA                                0x00000008
4001 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_DESTCOLOR                                   0x00000009
4002 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVDESTCOLOR                                0x0000000A
4003 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_SRCALPHASAT                                 0x0000000B
4004 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_BLENDFACTOR                                 0x0000000E
4005 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVBLENDFACTOR                              0x0000000F
4006 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_SRC1COLOR                                   0x00000010
4007 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVSRC1COLOR                                0x00000011
4008 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_SRC1ALPHA                                   0x00000012
4009 #define NVC597_SET_BLEND_PER_TARGET_COLOR_DEST_COEFF_V_D3D_INVSRC1ALPHA                                0x00000013
4010 
4011 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP(j)                                                   (0x1e10+(j)*32)
4012 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V                                                               31:0
4013 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_OGL_FUNC_SUBTRACT                                       0x0000800A
4014 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_OGL_FUNC_REVERSE_SUBTRACT                               0x0000800B
4015 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_OGL_FUNC_ADD                                            0x00008006
4016 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_OGL_MIN                                                 0x00008007
4017 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_OGL_MAX                                                 0x00008008
4018 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_D3D_ADD                                                 0x00000001
4019 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_D3D_SUBTRACT                                            0x00000002
4020 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_D3D_REVSUBTRACT                                         0x00000003
4021 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_D3D_MIN                                                 0x00000004
4022 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_OP_V_D3D_MAX                                                 0x00000005
4023 
4024 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF(j)                                         (0x1e14+(j)*32)
4025 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V                                                     31:0
4026 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ZERO                                      0x00004000
4027 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE                                       0x00004001
4028 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_SRC_COLOR                                 0x00004300
4029 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                       0x00004301
4030 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_SRC_ALPHA                                 0x00004302
4031 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                       0x00004303
4032 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_DST_ALPHA                                 0x00004304
4033 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                       0x00004305
4034 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_DST_COLOR                                 0x00004306
4035 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_DST_COLOR                       0x00004307
4036 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_SRC_ALPHA_SATURATE                        0x00004308
4037 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_CONSTANT_COLOR                            0x0000C001
4038 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                  0x0000C002
4039 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_CONSTANT_ALPHA                            0x0000C003
4040 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                  0x0000C004
4041 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_SRC1COLOR                                 0x0000C900
4042 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_INVSRC1COLOR                              0x0000C901
4043 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_SRC1ALPHA                                 0x0000C902
4044 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_OGL_INVSRC1ALPHA                              0x0000C903
4045 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_ZERO                                      0x00000001
4046 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_ONE                                       0x00000002
4047 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_SRCCOLOR                                  0x00000003
4048 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVSRCCOLOR                               0x00000004
4049 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_SRCALPHA                                  0x00000005
4050 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVSRCALPHA                               0x00000006
4051 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_DESTALPHA                                 0x00000007
4052 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVDESTALPHA                              0x00000008
4053 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_DESTCOLOR                                 0x00000009
4054 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVDESTCOLOR                              0x0000000A
4055 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_SRCALPHASAT                               0x0000000B
4056 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_BOTHSRCALPHA                              0x0000000C
4057 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_BOTHINVSRCALPHA                           0x0000000D
4058 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_BLENDFACTOR                               0x0000000E
4059 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVBLENDFACTOR                            0x0000000F
4060 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_SRC1COLOR                                 0x00000010
4061 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVSRC1COLOR                              0x00000011
4062 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_SRC1ALPHA                                 0x00000012
4063 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_SOURCE_COEFF_V_D3D_INVSRC1ALPHA                              0x00000013
4064 
4065 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF(j)                                           (0x1e18+(j)*32)
4066 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V                                                       31:0
4067 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ZERO                                        0x00004000
4068 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE                                         0x00004001
4069 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_SRC_COLOR                                   0x00004300
4070 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_SRC_COLOR                         0x00004301
4071 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_SRC_ALPHA                                   0x00004302
4072 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_SRC_ALPHA                         0x00004303
4073 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_DST_ALPHA                                   0x00004304
4074 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_DST_ALPHA                         0x00004305
4075 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_DST_COLOR                                   0x00004306
4076 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_DST_COLOR                         0x00004307
4077 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_SRC_ALPHA_SATURATE                          0x00004308
4078 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_CONSTANT_COLOR                              0x0000C001
4079 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_COLOR                    0x0000C002
4080 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_CONSTANT_ALPHA                              0x0000C003
4081 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_ONE_MINUS_CONSTANT_ALPHA                    0x0000C004
4082 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_SRC1COLOR                                   0x0000C900
4083 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_INVSRC1COLOR                                0x0000C901
4084 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_SRC1ALPHA                                   0x0000C902
4085 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_OGL_INVSRC1ALPHA                                0x0000C903
4086 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_ZERO                                        0x00000001
4087 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_ONE                                         0x00000002
4088 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_SRCCOLOR                                    0x00000003
4089 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVSRCCOLOR                                 0x00000004
4090 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_SRCALPHA                                    0x00000005
4091 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVSRCALPHA                                 0x00000006
4092 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_DESTALPHA                                   0x00000007
4093 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVDESTALPHA                                0x00000008
4094 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_DESTCOLOR                                   0x00000009
4095 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVDESTCOLOR                                0x0000000A
4096 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_SRCALPHASAT                                 0x0000000B
4097 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_BLENDFACTOR                                 0x0000000E
4098 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVBLENDFACTOR                              0x0000000F
4099 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_SRC1COLOR                                   0x00000010
4100 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVSRC1COLOR                                0x00000011
4101 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_SRC1ALPHA                                   0x00000012
4102 #define NVC597_SET_BLEND_PER_TARGET_ALPHA_DEST_COEFF_V_D3D_INVSRC1ALPHA                                0x00000013
4103 
4104 #define NVC597_SET_PIPELINE_SHADER(j)                                                             (0x2000+(j)*64)
4105 #define NVC597_SET_PIPELINE_SHADER_ENABLE                                                                     0:0
4106 #define NVC597_SET_PIPELINE_SHADER_ENABLE_FALSE                                                        0x00000000
4107 #define NVC597_SET_PIPELINE_SHADER_ENABLE_TRUE                                                         0x00000001
4108 #define NVC597_SET_PIPELINE_SHADER_TYPE                                                                       7:4
4109 #define NVC597_SET_PIPELINE_SHADER_TYPE_VERTEX_CULL_BEFORE_FETCH                                       0x00000000
4110 #define NVC597_SET_PIPELINE_SHADER_TYPE_VERTEX                                                         0x00000001
4111 #define NVC597_SET_PIPELINE_SHADER_TYPE_TESSELLATION_INIT                                              0x00000002
4112 #define NVC597_SET_PIPELINE_SHADER_TYPE_TESSELLATION                                                   0x00000003
4113 #define NVC597_SET_PIPELINE_SHADER_TYPE_GEOMETRY                                                       0x00000004
4114 #define NVC597_SET_PIPELINE_SHADER_TYPE_PIXEL                                                          0x00000005
4115 
4116 #define NVC597_SET_PIPELINE_RESERVED_A(j)                                                         (0x2008+(j)*64)
4117 #define NVC597_SET_PIPELINE_RESERVED_A_V                                                                      0:0
4118 
4119 #define NVC597_SET_PIPELINE_REGISTER_COUNT(j)                                                     (0x200c+(j)*64)
4120 #define NVC597_SET_PIPELINE_REGISTER_COUNT_V                                                                  8:0
4121 
4122 #define NVC597_SET_PIPELINE_BINDING(j)                                                            (0x2010+(j)*64)
4123 #define NVC597_SET_PIPELINE_BINDING_GROUP                                                                     2:0
4124 
4125 #define NVC597_SET_PIPELINE_PROGRAM_ADDRESS_A(j)                                                  (0x2014+(j)*64)
4126 #define NVC597_SET_PIPELINE_PROGRAM_ADDRESS_A_UPPER                                                           7:0
4127 
4128 #define NVC597_SET_PIPELINE_PROGRAM_ADDRESS_B(j)                                                  (0x2018+(j)*64)
4129 #define NVC597_SET_PIPELINE_PROGRAM_ADDRESS_B_LOWER                                                          31:0
4130 
4131 #define NVC597_SET_PIPELINE_RESERVED_D(j)                                                         (0x201c+(j)*64)
4132 #define NVC597_SET_PIPELINE_RESERVED_D_V                                                                      0:0
4133 
4134 #define NVC597_SET_PIPELINE_RESERVED_E(j)                                                         (0x2020+(j)*64)
4135 #define NVC597_SET_PIPELINE_RESERVED_E_V                                                                      0:0
4136 
4137 #define NVC597_SET_FALCON00                                                                                0x2300
4138 #define NVC597_SET_FALCON00_V                                                                                31:0
4139 
4140 #define NVC597_SET_FALCON01                                                                                0x2304
4141 #define NVC597_SET_FALCON01_V                                                                                31:0
4142 
4143 #define NVC597_SET_FALCON02                                                                                0x2308
4144 #define NVC597_SET_FALCON02_V                                                                                31:0
4145 
4146 #define NVC597_SET_FALCON03                                                                                0x230c
4147 #define NVC597_SET_FALCON03_V                                                                                31:0
4148 
4149 #define NVC597_SET_FALCON04                                                                                0x2310
4150 #define NVC597_SET_FALCON04_V                                                                                31:0
4151 
4152 #define NVC597_SET_FALCON05                                                                                0x2314
4153 #define NVC597_SET_FALCON05_V                                                                                31:0
4154 
4155 #define NVC597_SET_FALCON06                                                                                0x2318
4156 #define NVC597_SET_FALCON06_V                                                                                31:0
4157 
4158 #define NVC597_SET_FALCON07                                                                                0x231c
4159 #define NVC597_SET_FALCON07_V                                                                                31:0
4160 
4161 #define NVC597_SET_FALCON08                                                                                0x2320
4162 #define NVC597_SET_FALCON08_V                                                                                31:0
4163 
4164 #define NVC597_SET_FALCON09                                                                                0x2324
4165 #define NVC597_SET_FALCON09_V                                                                                31:0
4166 
4167 #define NVC597_SET_FALCON10                                                                                0x2328
4168 #define NVC597_SET_FALCON10_V                                                                                31:0
4169 
4170 #define NVC597_SET_FALCON11                                                                                0x232c
4171 #define NVC597_SET_FALCON11_V                                                                                31:0
4172 
4173 #define NVC597_SET_FALCON12                                                                                0x2330
4174 #define NVC597_SET_FALCON12_V                                                                                31:0
4175 
4176 #define NVC597_SET_FALCON13                                                                                0x2334
4177 #define NVC597_SET_FALCON13_V                                                                                31:0
4178 
4179 #define NVC597_SET_FALCON14                                                                                0x2338
4180 #define NVC597_SET_FALCON14_V                                                                                31:0
4181 
4182 #define NVC597_SET_FALCON15                                                                                0x233c
4183 #define NVC597_SET_FALCON15_V                                                                                31:0
4184 
4185 #define NVC597_SET_FALCON16                                                                                0x2340
4186 #define NVC597_SET_FALCON16_V                                                                                31:0
4187 
4188 #define NVC597_SET_FALCON17                                                                                0x2344
4189 #define NVC597_SET_FALCON17_V                                                                                31:0
4190 
4191 #define NVC597_SET_FALCON18                                                                                0x2348
4192 #define NVC597_SET_FALCON18_V                                                                                31:0
4193 
4194 #define NVC597_SET_FALCON19                                                                                0x234c
4195 #define NVC597_SET_FALCON19_V                                                                                31:0
4196 
4197 #define NVC597_SET_FALCON20                                                                                0x2350
4198 #define NVC597_SET_FALCON20_V                                                                                31:0
4199 
4200 #define NVC597_SET_FALCON21                                                                                0x2354
4201 #define NVC597_SET_FALCON21_V                                                                                31:0
4202 
4203 #define NVC597_SET_FALCON22                                                                                0x2358
4204 #define NVC597_SET_FALCON22_V                                                                                31:0
4205 
4206 #define NVC597_SET_FALCON23                                                                                0x235c
4207 #define NVC597_SET_FALCON23_V                                                                                31:0
4208 
4209 #define NVC597_SET_FALCON24                                                                                0x2360
4210 #define NVC597_SET_FALCON24_V                                                                                31:0
4211 
4212 #define NVC597_SET_FALCON25                                                                                0x2364
4213 #define NVC597_SET_FALCON25_V                                                                                31:0
4214 
4215 #define NVC597_SET_FALCON26                                                                                0x2368
4216 #define NVC597_SET_FALCON26_V                                                                                31:0
4217 
4218 #define NVC597_SET_FALCON27                                                                                0x236c
4219 #define NVC597_SET_FALCON27_V                                                                                31:0
4220 
4221 #define NVC597_SET_FALCON28                                                                                0x2370
4222 #define NVC597_SET_FALCON28_V                                                                                31:0
4223 
4224 #define NVC597_SET_FALCON29                                                                                0x2374
4225 #define NVC597_SET_FALCON29_V                                                                                31:0
4226 
4227 #define NVC597_SET_FALCON30                                                                                0x2378
4228 #define NVC597_SET_FALCON30_V                                                                                31:0
4229 
4230 #define NVC597_SET_FALCON31                                                                                0x237c
4231 #define NVC597_SET_FALCON31_V                                                                                31:0
4232 
4233 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_A                                                              0x2380
4234 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_A_SIZE                                                           16:0
4235 
4236 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_B                                                              0x2384
4237 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_B_ADDRESS_UPPER                                                   7:0
4238 
4239 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_C                                                              0x2388
4240 #define NVC597_SET_CONSTANT_BUFFER_SELECTOR_C_ADDRESS_LOWER                                                  31:0
4241 
4242 #define NVC597_LOAD_CONSTANT_BUFFER_OFFSET                                                                 0x238c
4243 #define NVC597_LOAD_CONSTANT_BUFFER_OFFSET_V                                                                 15:0
4244 
4245 #define NVC597_LOAD_CONSTANT_BUFFER(i)                                                             (0x2390+(i)*4)
4246 #define NVC597_LOAD_CONSTANT_BUFFER_V                                                                        31:0
4247 
4248 #define NVC597_BIND_GROUP_RESERVED_A(j)                                                           (0x2400+(j)*32)
4249 #define NVC597_BIND_GROUP_RESERVED_A_V                                                                        0:0
4250 
4251 #define NVC597_BIND_GROUP_RESERVED_B(j)                                                           (0x2404+(j)*32)
4252 #define NVC597_BIND_GROUP_RESERVED_B_V                                                                        0:0
4253 
4254 #define NVC597_BIND_GROUP_RESERVED_C(j)                                                           (0x2408+(j)*32)
4255 #define NVC597_BIND_GROUP_RESERVED_C_V                                                                        0:0
4256 
4257 #define NVC597_BIND_GROUP_RESERVED_D(j)                                                           (0x240c+(j)*32)
4258 #define NVC597_BIND_GROUP_RESERVED_D_V                                                                        0:0
4259 
4260 #define NVC597_BIND_GROUP_CONSTANT_BUFFER(j)                                                      (0x2410+(j)*32)
4261 #define NVC597_BIND_GROUP_CONSTANT_BUFFER_VALID                                                               0:0
4262 #define NVC597_BIND_GROUP_CONSTANT_BUFFER_VALID_FALSE                                                  0x00000000
4263 #define NVC597_BIND_GROUP_CONSTANT_BUFFER_VALID_TRUE                                                   0x00000001
4264 #define NVC597_BIND_GROUP_CONSTANT_BUFFER_SHADER_SLOT                                                         8:4
4265 
4266 #define NVC597_SET_TRAP_HANDLER_A                                                                          0x25f8
4267 #define NVC597_SET_TRAP_HANDLER_A_ADDRESS_UPPER                                                              16:0
4268 
4269 #define NVC597_SET_TRAP_HANDLER_B                                                                          0x25fc
4270 #define NVC597_SET_TRAP_HANDLER_B_ADDRESS_LOWER                                                              31:0
4271 
4272 #define NVC597_SET_COLOR_CLAMP                                                                             0x2600
4273 #define NVC597_SET_COLOR_CLAMP_ENABLE                                                                         0:0
4274 #define NVC597_SET_COLOR_CLAMP_ENABLE_FALSE                                                            0x00000000
4275 #define NVC597_SET_COLOR_CLAMP_ENABLE_TRUE                                                             0x00000001
4276 
4277 #define NVC597_SET_BINDLESS_TEXTURE                                                                        0x2608
4278 #define NVC597_SET_BINDLESS_TEXTURE_CONSTANT_BUFFER_SLOT_SELECT                                               4:0
4279 
4280 #define NVC597_SET_STREAM_OUT_LAYOUT_SELECT(i,j)                                           (0x2800+(i)*128+(j)*4)
4281 #define NVC597_SET_STREAM_OUT_LAYOUT_SELECT_ATTRIBUTE_NUMBER00                                                7:0
4282 #define NVC597_SET_STREAM_OUT_LAYOUT_SELECT_ATTRIBUTE_NUMBER01                                               15:8
4283 #define NVC597_SET_STREAM_OUT_LAYOUT_SELECT_ATTRIBUTE_NUMBER02                                              23:16
4284 #define NVC597_SET_STREAM_OUT_LAYOUT_SELECT_ATTRIBUTE_NUMBER03                                              31:24
4285 
4286 #define NVC597_SET_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_VALUE(i)                                    (0x32f4+(i)*4)
4287 #define NVC597_SET_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_VALUE_V                                               31:0
4288 
4289 #define NVC597_SET_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_VALUE_UPPER(i)                              (0x3314+(i)*4)
4290 #define NVC597_SET_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_VALUE_UPPER_V                                         31:0
4291 
4292 #define NVC597_ENABLE_SHADER_PERFORMANCE_SNAPSHOT_COUNTER                                                  0x3334
4293 #define NVC597_ENABLE_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_V                                                   0:0
4294 
4295 #define NVC597_DISABLE_SHADER_PERFORMANCE_SNAPSHOT_COUNTER                                                 0x3338
4296 #define NVC597_DISABLE_SHADER_PERFORMANCE_SNAPSHOT_COUNTER_V                                                  0:0
4297 
4298 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_VALUE_UPPER(i)                                       (0x333c+(i)*4)
4299 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_VALUE_UPPER_V                                                  31:0
4300 
4301 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_VALUE(i)                                             (0x335c+(i)*4)
4302 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_VALUE_V                                                        31:0
4303 
4304 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_EVENT(i)                                             (0x337c+(i)*4)
4305 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_EVENT_EVENT                                                     7:0
4306 
4307 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A(i)                                         (0x339c+(i)*4)
4308 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT0                                                1:0
4309 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT0                                           4:2
4310 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT1                                                6:5
4311 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT1                                           9:7
4312 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT2                                              11:10
4313 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT2                                         14:12
4314 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT3                                              16:15
4315 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT3                                         19:17
4316 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT4                                              21:20
4317 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT4                                         24:22
4318 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_EVENT5                                              26:25
4319 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_BIT_SELECT5                                         29:27
4320 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_A_SPARE                                               31:30
4321 
4322 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_B(i)                                         (0x33bc+(i)*4)
4323 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_B_EDGE                                                  0:0
4324 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_B_MODE                                                  2:1
4325 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_B_WINDOWED                                              3:3
4326 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CONTROL_B_FUNC                                                 19:4
4327 
4328 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_TRAP_CONTROL                                                 0x33dc
4329 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_TRAP_CONTROL_MASK                                               7:0
4330 
4331 #define NVC597_START_SHADER_PERFORMANCE_COUNTER                                                            0x33e0
4332 #define NVC597_START_SHADER_PERFORMANCE_COUNTER_COUNTER_MASK                                                  7:0
4333 
4334 #define NVC597_STOP_SHADER_PERFORMANCE_COUNTER                                                             0x33e4
4335 #define NVC597_STOP_SHADER_PERFORMANCE_COUNTER_COUNTER_MASK                                                   7:0
4336 
4337 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_SCTL_FILTER                                                  0x33e8
4338 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_SCTL_FILTER_V                                                  31:0
4339 
4340 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CORE_MIO_FILTER                                              0x33ec
4341 #define NVC597_SET_SHADER_PERFORMANCE_COUNTER_CORE_MIO_FILTER_V                                              31:0
4342 
4343 #define NVC597_SET_MME_SHADOW_SCRATCH(i)                                                           (0x3400+(i)*4)
4344 #define NVC597_SET_MME_SHADOW_SCRATCH_V                                                                      31:0
4345 
4346 #define NVC597_CALL_MME_MACRO(j)                                                                   (0x3800+(j)*8)
4347 #define NVC597_CALL_MME_MACRO_V                                                                              31:0
4348 
4349 #define NVC597_CALL_MME_DATA(j)                                                                    (0x3804+(j)*8)
4350 #define NVC597_CALL_MME_DATA_V                                                                               31:0
4351 
4352 #endif /* _cl_turing_a_h_ */
4353