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