3 <enum name=
"Compare Function" prefix=
"V3D_COMPARE_FUNC">
4 <value name=
"NEVER" value=
"0"/>
5 <value name=
"LESS" value=
"1"/>
6 <value name=
"EQUAL" value=
"2"/>
7 <value name=
"LEQUAL" value=
"3"/>
8 <value name=
"GREATER" value=
"4"/>
9 <value name=
"NOTEQUAL" value=
"5"/>
10 <value name=
"GEQUAL" value=
"6"/>
11 <value name=
"ALWAYS" value=
"7"/>
14 <enum name=
"Blend Factor" prefix=
"V3D_BLEND_FACTOR">
15 <value name=
"ZERO" value=
"0"/>
16 <value name=
"ONE" value=
"1"/>
17 <value name=
"SRC_COLOR" value=
"2"/>
18 <value name=
"INV_SRC_COLOR" value=
"3"/>
19 <value name=
"DST_COLOR" value=
"4"/>
20 <value name=
"INV_DST_COLOR" value=
"5"/>
21 <value name=
"SRC_ALPHA" value=
"6"/>
22 <value name=
"INV_SRC_ALPHA" value=
"7"/>
23 <value name=
"DST_ALPHA" value=
"8"/>
24 <value name=
"INV_DST_ALPHA" value=
"9"/>
25 <value name=
"CONST_COLOR" value=
"10"/>
26 <value name=
"INV_CONST_COLOR" value=
"11"/>
27 <value name=
"CONST_ALPHA" value=
"12"/>
28 <value name=
"INV_CONST_ALPHA" value=
"13"/>
29 <value name=
"SRC_ALPHA_SATURATE" value=
"14"/>
32 <enum name=
"Blend Mode" prefix=
"V3D_BLEND_MODE">
33 <value name=
"ADD" value=
"0"/>
34 <value name=
"SUB" value=
"1"/>
35 <value name=
"RSUB" value=
"2"/>
36 <value name=
"MIN" value=
"3"/>
37 <value name=
"MAX" value=
"4"/>
38 <value name=
"MUL" value=
"5"/>
39 <value name=
"SCREEN" value=
"6"/>
40 <value name=
"DARKEN" value=
"7"/>
41 <value name=
"LIGHTEN" value=
"8"/>
44 <enum name=
"Stencil Op" prefix=
"V3D_STENCIL_OP">
45 <value name=
"ZERO" value=
"0"/>
46 <value name=
"KEEP" value=
"1"/>
47 <value name=
"REPLACE" value=
"2"/>
48 <value name=
"INCR" value=
"3"/>
49 <value name=
"DECR" value=
"4"/>
50 <value name=
"INVERT" value=
"5"/>
51 <value name=
"INCWRAP" value=
"6"/>
52 <value name=
"DECWRAP" value=
"7"/>
55 <enum name=
"Primitive" prefix=
"V3D_PRIM">
56 <value name=
"POINTS" value=
"0"/>
57 <value name=
"LINES" value=
"1"/>
58 <value name=
"LINE_LOOP" value=
"2"/>
59 <value name=
"LINE_STRIP" value=
"3"/>
60 <value name=
"TRIANGLES" value=
"4"/>
61 <value name=
"TRIANGLE_STRIP" value=
"5"/>
62 <value name=
"TRIANGLE_FAN" value=
"6"/>
65 <packet code=
"0" name=
"Halt"/>
66 <packet code=
"1" name=
"NOP"/>
67 <packet code=
"4" name=
"Flush"/>
68 <packet code=
"5" name=
"Flush All State"/>
69 <packet code=
"6" name=
"Start Tile Binning"/>
70 <packet code=
"7" name=
"Increment Semaphore"/>
71 <packet code=
"8" name=
"Wait on Semaphore"/>
72 <packet code=
"9" name=
"Wait for previous frame"/>
73 <packet code=
"10" name=
"Enable Z-only rendering" cl=
"R"/>
74 <packet code=
"11" name=
"Disable Z-only rendering" cl=
"R"/>
75 <packet code=
"12" name=
"End of Z-only rendering in frame"/>
76 <packet code=
"13" name=
"End of rendering"/>
78 <packet code=
"14" name=
"Wait for transform feedback" cl=
"B">
79 <field name=
"Block count" size=
"8" start=
"0" type=
"uint"/>
82 <packet code=
"15" name=
"Branch to auto-chained sub-list">
83 <field name=
"address" size=
"32" start=
"0" type=
"address"/>
86 <packet code=
"16" name=
"Branch">
87 <field name=
"address" size=
"32" start=
"0" type=
"address"/>
90 <packet code=
"17" name=
"Branch to Sub-list">
91 <field name=
"address" size=
"32" start=
"0" type=
"address"/>
94 <packet code=
"18" name=
"Return from sub-list"/>
95 <packet code=
"19" name=
"Flush VCD cache"/>
96 <packet code=
"24" name=
"Store Multi-Sample Resolved Tile Color Buffer" cl=
"R"/>
98 <packet code=
"25" name=
"Store Multi-Sample Resolved Tile Color Buffer (extended)" cl=
"R">
99 <field name=
"Disable Color Buffer write" size=
"8" start=
"8" type=
"uint"/>
100 <field name=
"Enable Z write" size=
"1" start=
"7" type=
"bool"/>
101 <field name=
"Enable Stencil write" size=
"1" start=
"6" type=
"bool"/>
102 <!-- bit 5 unused -->
103 <field name=
"Disable Colour buffer(s) clear on write" size=
"1" start=
"4" type=
"bool"/>
104 <field name=
"Disable Stencil buffer clear on write" size=
"1" start=
"3" type=
"bool"/>
105 <field name=
"Disable Z buffer clear on write" size=
"1" start=
"2" type=
"bool"/>
106 <field name=
"Disable fast opportunistic write out in multisample mode" size=
"1" start=
"1" type=
"bool"/>
107 <field name=
"Last Tile of Frame" size=
"1" start=
"0" type=
"bool"/>
110 <packet code=
"26" name=
"Reload Tile Colour Buffer" cl=
"R">
111 <field name=
"Disable Colour Buffer load" size=
"8" start=
"8" type=
"uint"/>
112 <field name=
"Enable Z load" size=
"1" start=
"7" type=
"bool"/>
113 <field name=
"Enable Stencil load" size=
"1" start=
"6" type=
"bool"/>
116 <packet code=
"29" name=
"Store Tile Buffer General" cl=
"R">
117 <field name=
"Address" size=
"32" start=
"16" type=
"address"/>
118 <field name=
"Padded height of output image in UIF blocks" size=
"13" start=
"11" type=
"uint"/>
119 <field name=
"XOR UIF" size=
"13" start=
"11" type=
"uint"/>
120 <field name=
"Last Tile of Frame" size=
"1" start=
"8" type=
"bool"/>
121 <field name=
"Disable Colour buffer(s) clear on write" size=
"1" start=
"7" type=
"bool"/>
122 <field name=
"Disable Stencil buffer clear on write" size=
"1" start=
"6" type=
"bool"/>
123 <field name=
"Disable Z buffer clear on write" size=
"1" start=
"5" type=
"bool"/>
124 <field name=
"Raw Mode" size=
"1" start=
"4" type=
"bool"/>
125 <field name=
"Buffer to Store" size=
"4" start=
"0" type=
"uint">
126 <value name=
"Render target 0" value=
"0"/>
127 <value name=
"Render target 1" value=
"1"/>
128 <value name=
"Render target 2" value=
"2"/>
129 <value name=
"Render target 3" value=
"3"/>
130 <value name=
"None" value=
"8"/>
131 <value name=
"Z" value=
"9"/>
132 <value name=
"Stencil" value=
"10"/>
133 <value name=
"Z+Stencil" value=
"11"/>
137 <packet code=
"32" name=
"Indexed Primitive List" cl=
"B">
138 <field name=
"Minimum index" size=
"32" start=
"104" type=
"uint"/>
139 <field name=
"Enable Primitive Restarts" size=
"1" start=
"103" type=
"bool"/>
140 <field name=
"Maximum index" size=
"31" start=
"72" type=
"uint"/>
141 <field name=
"Address of Indices List" size=
"32" start=
"40" type=
"address"/>
142 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
144 <field name=
"Index type" size=
"2" start=
"6" type=
"uint">
145 <value name=
"Index type 8-bit" value=
"0"/>
146 <value name=
"Index type 16-bit" value=
"1"/>
147 <value name=
"Index type 32-bit" value=
"2"/>
150 <field name=
"mode" size=
"5" start=
"0" type=
"uint">
154 <packet code=
"34" name=
"Indexed Instanced Primitive List" cl=
"B">
155 <field name=
"Enable Primitive Restarts" size=
"1" start=
"135" type=
"bool"/>
156 <field name=
"Maximum index" size=
"31" start=
"104" type=
"uint"/>
157 <field name=
"Address of Indices List" size=
"32" start=
"72" type=
"address"/>
158 <field name=
"Number of Instances" size=
"32" start=
"40" type=
"uint"/>
159 <field name=
"Instance Length" size=
"32" start=
"8" type=
"uint"/>
161 <field name=
"Index type" size=
"2" start=
"6" type=
"uint">
162 <value name=
"Index type 8-bit" value=
"0"/>
163 <value name=
"Index type 16-bit" value=
"1"/>
164 <value name=
"Index type 32-bit" value=
"2"/>
167 <field name=
"mode" size=
"5" start=
"0" type=
"Primitive"/>
170 <packet code=
"36" name=
"Vertex Array Primitives" cl=
"B">
171 <field name=
"Index of First Vertex" size=
"32" start=
"40" type=
"uint"/>
172 <field name=
"Length" size=
"32" start=
"8" type=
"uint"/>
174 <field name=
"mode" size=
"8" start=
"0" type=
"Primitive"/>
177 <packet code=
"38" name=
"Vertex Array Instanced Primitives" cl=
"B">
178 <field name=
"Index of First Vertex" size=
"32" start=
"72" type=
"uint"/>
179 <field name=
"Number of Instances" size=
"32" start=
"40" type=
"uint"/>
180 <field name=
"Instance Length" size=
"32" start=
"8" type=
"uint"/>
182 <field name=
"mode" size=
"8" start=
"0" type=
"Primitive"/>
185 <packet code=
"56" name=
"Primitive List Format">
186 <field name=
"data type" size=
"1" start=
"6" type=
"uint">
187 <value name=
"List Indexed" value=
"0"/>
188 <value name=
"List 32-bit X/Y" value=
"1"/>
190 <field name=
"primitive type" size=
"6" start=
"0" type=
"uint">
191 <value name=
"List Points" value=
"0"/>
192 <value name=
"List Lines" value=
"1"/>
193 <value name=
"List Triangles" value=
"2"/>
197 <packet code=
"64" name=
"GL Shader State">
198 <field name=
"address" size=
"27" start=
"5" type=
"address"/>
199 <field name=
"number of attribute arrays" size=
"5" start=
"0" type=
"uint"/>
202 <packet code=
"74" name=
"Transform Feedback Enable">
203 <field name=
"number of 32-bit Output Buffer Address following" size=
"3" start=
"8" type=
"uint"/>
204 <field name=
"number of 16-bit Output Data Specs following" size=
"5" start=
"11" type=
"uint"/>
207 <packet code=
"75" name=
"Flush Transform Feedback Data"/>
209 <struct name=
"Transform Feedback Output Data Spec">
210 <field name=
"First Shaded Vertex Value to output" size=
"8" start=
"0" type=
"uint"/>
211 <field name=
"Number of consecutive Vertex Values to output as 32-bit values" size=
"4" start=
"8" type=
"uint"/>
212 <field name=
"Output Buffer to write to" size=
"2" start=
"12" type=
"uint"/>
215 <struct name=
"Transform Feedback Output Address">
216 <field name=
"address" size=
"32" start=
"0" type=
"address"/>
219 <packet code=
"80" name=
"Stencil Config">
220 <field name=
"Stencil Write Mask" size=
"8" start=
"32" type=
"uint"/>
221 <field name=
"Back Config" size=
"1" start=
"29" type=
"bool"/>
222 <field name=
"Front Config" size=
"1" start=
"28" type=
"bool"/>
223 <field name=
"Stencil Pass Op" size=
"3" start=
"25" type=
"Stencil Op"/>
224 <field name=
"Depth Test Fail Op" size=
"3" start=
"22" type=
"Stencil Op"/>
225 <field name=
"Stencil Test Fail Op" size=
"3" start=
"19" type=
"Stencil Op"/>
226 <field name=
"Stencil Test Function" size=
"3" start=
"16" type=
"Compare Function"/>
227 <field name=
"Stencil Test Mask" size=
"8" start=
"8" type=
"uint"/>
228 <field name=
"Stencil Ref Value" size=
"8" start=
"0" type=
"uint"/>
231 <packet code=
"84" name=
"Blend Config">
232 <field name=
"VG Coverage Modes" size=
"2" start=
"28" type=
"uint"/>
233 <field name=
"Colour blend dst factor" size=
"4" start=
"20" type=
"Blend Factor"/>
234 <field name=
"Colour blend src factor" size=
"4" start=
"16" type=
"Blend Factor"/>
235 <field name=
"Colour blend mode" size=
"4" start=
"12" type=
"Blend Mode"/>
236 <field name=
"Alpha blend dst factor" size=
"4" start=
"8" type=
"Blend Factor"/>
237 <field name=
"Alpha blend src factor" size=
"4" start=
"4" type=
"Blend Factor"/>
238 <field name=
"Alpha blend mode" size=
"4" start=
"0" type=
"Blend Mode"/>
241 <packet code=
"86" name=
"Blend Constant Colour">
242 <field name=
"Alpha (F16)" size=
"16" start=
"48" type=
"uint"/>
243 <field name=
"Blue (F16)" size=
"16" start=
"32" type=
"uint"/>
244 <field name=
"Green (F16)" size=
"16" start=
"16" type=
"uint"/>
245 <field name=
"Red (F16)" size=
"16" start=
"0" type=
"uint"/>
248 <packet code=
"87" name=
"Colour Write Masks">
249 <field name=
"Reserved" size=
"16" start=
"16" type=
"uint"/>
250 <field name=
"Render Target 3 per colour component write masks" size=
"4" start=
"12" type=
"uint"/>
251 <field name=
"Render Target 2 per colour component write masks" size=
"4" start=
"8" type=
"uint"/>
252 <field name=
"Render Target 1 per colour component write masks" size=
"4" start=
"4" type=
"uint"/>
253 <field name=
"Render Target 0 per colour component write masks" size=
"4" start=
"0" type=
"uint"/>
256 <packet code=
"96" name=
"Configuration Bits">
257 <field name=
"Direct3D 'Point-fill' mode" size=
"1" start=
"20" type=
"bool"/>
258 <field name=
"Blend enable" size=
"1" start=
"19" type=
"bool"/>
259 <field name=
"Stencil enable" size=
"1" start=
"18" type=
"bool"/>
260 <field name=
"Early Z updates enable" size=
"1" start=
"17" type=
"bool"/>
261 <field name=
"Early Z enable" size=
"1" start=
"16" type=
"bool"/>
262 <field name=
"Z updates enable" size=
"1" start=
"15" type=
"bool"/>
263 <field name=
"Depth-Test Function" size=
"3" start=
"12" type=
"Compare Function"/>
264 <field name=
"Direct3D Wireframe triangles mode" size=
"1" start=
"11" type=
"bool"/>
265 <field name=
"Coverage Update Mode" size=
"2" start=
"9" type=
"uint"/>
266 <field name=
"Coverage Pipe Select" size=
"1" start=
"8" type=
"bool"/>
267 <field name=
"Rasterizer Oversample Mode" size=
"2" start=
"6" type=
"uint"/>
268 <field name=
"Line Rasterization" size=
"2" start=
"4" type=
"uint"/>
269 <field name=
"Enable Depth Offset" size=
"1" start=
"3" type=
"bool"/>
270 <field name=
"Clockwise Primitives" size=
"1" start=
"2" type=
"bool"/>
271 <field name=
"Enable Reverse Facing Primitive" size=
"1" start=
"1" type=
"bool"/>
272 <field name=
"Enable Forward Facing Primitive" size=
"1" start=
"0" type=
"bool"/>
275 <packet code=
"97" name=
"Zero All Flat Shade Flags"/>
277 <packet code=
"98" name=
"Flat Shade Flags">
278 <field name=
"Flat Shade Flags for varyings V0*24" size=
"24" start=
"8" type=
"uint"/>
279 <field name=
"Action for Flat Shade Flags of higher numbered varyings" size=
"2" start=
"6" type=
"uint"/>
280 <field name=
"Action for Flat Shade Flags of lower numbered varyings" size=
"2" start=
"4" type=
"uint"/>
281 <field name=
"Varying offset V0" size=
"4" start=
"0" type=
"uint"/>
284 <packet code=
"104" name=
"Point size">
285 <field name=
"Point Size" size=
"32" start=
"0" type=
"float"/>
288 <packet code=
"105" name=
"Line width">
289 <field name=
"Line width" size=
"32" start=
"0" type=
"float"/>
292 <packet name=
"Depth Offset" code=
"106">
293 <!-- these fields are both float-1-8-7 encoded (top 16 bits of a float32) -->
294 <field name=
"Depth Offset Units" size=
"16" start=
"16" type=
"uint"/>
295 <field name=
"Depth Offset Factor" size=
"16" start=
"0" type=
"uint"/>
298 <packet name=
"Clip Window" code=
"107">
299 <field name=
"Clip Window Height in pixels" size=
"16" start=
"48" type=
"uint"/>
300 <field name=
"Clip Window Width in pixels" size=
"16" start=
"32" type=
"uint"/>
301 <field name=
"Clip Window Bottom Pixel Coordinate" size=
"16" start=
"16" type=
"uint"/>
302 <field name=
"Clip Window Left Pixel Coordinate" size=
"16" start=
"0" type=
"uint"/>
305 <packet name=
"Viewport Offset" code=
"108">
306 <field name=
"Viewport Centre Y-coordinate" size=
"32" start=
"32" type=
"s24.8"/>
307 <field name=
"Viewport Centre X-coordinate" size=
"32" start=
"0" type=
"s24.8"/>
310 <packet name=
"Clipper Z min/max clipping planes" code=
"109">
311 <field name=
"Maximum Zw" size=
"32" start=
"32" type=
"float"/>
312 <field name=
"Minimum Zw" size=
"32" start=
"0" type=
"float"/>
315 <packet name=
"Clipper XY Scaling" code=
"110" cl=
"B">
316 <field name=
"Viewport Half-Height in 1/256th of pixel" size=
"32" start=
"32" type=
"float"/>
317 <field name=
"Viewport Half-Width in 1/256th of pixel" size=
"32" start=
"0" type=
"float"/>
320 <packet name=
"Clipper Z Scale and Offset" code=
"111" cl=
"B">
321 <field name=
"Viewport Z Offset (Zc to Zs)" size=
"32" start=
"32" type=
"float"/>
322 <field name=
"Viewport Z Scale (Zc to Zs)" size=
"32" start=
"0" type=
"float"/>
325 <packet code=
"120" name=
"Tile Binning Mode Configuration">
326 <field name=
"pad" size=
"63" start=
"1" type=
"uint" default=
"0"/>
327 <field name=
"sub-id" size=
"1" start=
"0" type=
"uint" default=
"0"/>
330 <packet code=
"120" name=
"Tile Binning Mode Configuration (Part1)">
331 <field name=
"Double-buffer in non-ms mode" size=
"1" start=
"63" type=
"bool"/>
332 <field name=
"Multisample Mode (4x)" size=
"1" start=
"62" type=
"bool"/>
334 <field name=
"Maximum BPP of all render targets" size=
"2" start=
"60" type=
"uint">
335 <value name=
"Render target maximum 32bpp" value=
"0"/>
336 <value name=
"Render target maximum 64bpp" value=
"1"/>
337 <value name=
"Render target maximum 128bpp" value=
"2"/>
340 <field name=
"Number of Render Targets" size=
"4" start=
"56" type=
"uint"/>
341 <field name=
"Height (in tiles)" size=
"12" start=
"44" type=
"uint"/>
342 <field name=
"Width (in tiles)" size=
"12" start=
"32" type=
"uint"/>
344 <field name=
"Tile State Data Array Base Address" size=
"32" start=
"0" type=
"address"/>
346 <field name=
"tile allocation block size" size=
"2" start=
"4" type=
"uint">
347 <value name=
"tile allocation block size 64b" value=
"0"/>
348 <value name=
"tile allocation block size 128b" value=
"1"/>
349 <value name=
"tile allocation block size 256b" value=
"2"/>
351 <field name=
"tile allocation initial block size" size=
"2" start=
"2" type=
"uint">
352 <value name=
"tile allocation initial block size 64b" value=
"0"/>
353 <value name=
"tile allocation initial block size 128b" value=
"1"/>
354 <value name=
"tile allocation initial block size 256b" value=
"2"/>
356 <field name=
"auto-initialize tile state data array" size=
"1" start=
"1" type=
"bool" default=
"1"/>
357 <field name=
"sub-id" size=
"1" start=
"0" type=
"uint" default=
"0"/>
360 <packet code=
"120" name=
"Tile Binning Mode Configuration (Part2)" cl=
"B">
361 <field name=
"Tile Allocation Memory Address" size=
"32" start=
"32" type=
"address"/>
362 <field name=
"Tile Allocation Memory Size" size=
"32" start=
"0" type=
"uint"/>
364 <field name=
"sub-id" size=
"1" start=
"0" type=
"uint" default=
"1"/>
367 <packet code=
"121" name=
"Tile Rendering Mode Configuration" cl=
"R">
368 <field name=
"pad" size=
"60" start=
"4" type=
"uint"/>
369 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint"/>
372 <packet code=
"121" name=
"Tile Rendering Mode Configuration (Common Configuration)" cl=
"R">
373 <field name=
"Disable Render Target Stores" size=
"8" start=
"56" type=
"bool"/>
374 <field name=
"Enable Z Store" size=
"1" start=
"55" type=
"bool"/>
375 <field name=
"Enable Stencil Store" size=
"1" start=
"54" type=
"bool"/>
377 <field name=
"Early-Z disable" size=
"1" start=
"46" type=
"bool"/>
379 <field name=
"Early-Z Test and Update Direction" size=
"1" start=
"45" type=
"uint">
380 <value name=
"Early-Z direction LT/LE" value=
"0"/>
381 <value name=
"Early-Z direction GT/GE" value=
"1"/>
384 <field name=
"Select Coverage Mode" size=
"1" start=
"44" type=
"bool"/>
385 <field name=
"Double-buffer in non-ms mode" size=
"1" start=
"43" type=
"bool"/>
386 <field name=
"Multisample Mode (4x)" size=
"1" start=
"42" type=
"bool"/>
388 <field name=
"Maximum BPP of all render targets" size=
"2" start=
"40" type=
"uint">
389 <value name=
"Render target maximum 32bpp" value=
"0"/>
390 <value name=
"Render target maximum 64bpp" value=
"1"/>
391 <value name=
"Render target maximum 128bpp" value=
"2"/>
394 <field name=
"Image Height (pixels)" size=
"16" start=
"24" type=
"uint"/>
395 <field name=
"Image Width (pixels)" size=
"16" start=
"8" type=
"uint"/>
396 <field name=
"Number of Render Targets Minus 1" size=
"4" start=
"4" type=
"uint"/>
398 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint" default=
"0"/>
401 <packet code=
"121" name=
"Tile Rendering Mode Configuration (Render Target config)" cl=
"R">
402 <field name=
"Address" size=
"32" start=
"32" type=
"address"/>
404 <field name=
"Pad" size=
"4" start=
"28" type=
"uint"/>
406 <field name=
"Flip Y" size=
"1" start=
"27" type=
"bool"/>
408 <field name=
"Memory Format" size=
"3" start=
"24" type=
"uint" prefix=
"Memory Format">
409 <value name=
"Raster" value=
"0"/>
410 <value name=
"Lineartile" value=
"1"/>
411 <value name=
"UB-linear (1 UIF block wide)" value=
"2"/>
412 <value name=
"UB-linear (2 UIF blocks wide)" value=
"3"/>
413 <value name=
"UIF (No XOR)" value=
"4"/>
414 <value name=
"UIF (XOR)" value=
"5"/>
417 <field name=
"A dithered" size=
"1" start=
"23" type=
"bool"/>
418 <field name=
"BGR dithered" size=
"1" start=
"22" type=
"bool"/>
420 <field name=
"Output image format" size=
"6" start=
"16" type=
"uint" prefix=
"Output Image Format">
421 <value name=
"srgb8_alpha8" value=
"0"/>
422 <value name=
"srgb" value=
"1"/>
423 <value name=
"rgb10_a2ui" value=
"2"/>
424 <value name=
"rgb10_a2" value=
"3"/>
425 <value name=
"abgr1555" value=
"4"/>
426 <value name=
"alpha-masked abgr1555" value=
"5"/>
427 <value name=
"abgr4444" value=
"6"/>
428 <value name=
"bgr565" value=
"7"/>
429 <value name=
"r11f_g11f_b10f" value=
"8"/>
430 <value name=
"rgba32f" value=
"9"/>
431 <value name=
"rg32f" value=
"10"/>
432 <value name=
"r32f" value=
"11"/>
433 <value name=
"rgba32i" value=
"12"/>
434 <value name=
"rg32i" value=
"13"/>
435 <value name=
"r32i" value=
"14"/>
436 <value name=
"rgba32ui" value=
"15"/>
437 <value name=
"rg32ui" value=
"16"/>
438 <value name=
"r32ui" value=
"17"/>
439 <value name=
"rgba16f" value=
"18"/>
440 <value name=
"rg16f" value=
"19"/>
441 <value name=
"r16f" value=
"20"/>
442 <value name=
"rgba16i" value=
"21"/>
443 <value name=
"rg16i" value=
"22"/>
444 <value name=
"r16i" value=
"23"/>
445 <value name=
"rgba16ui" value=
"24"/>
446 <value name=
"rg16ui" value=
"25"/>
447 <value name=
"r16ui" value=
"26"/>
448 <value name=
"rgba8" value=
"27"/>
449 <value name=
"rgb8" value=
"28"/>
450 <value name=
"rg8" value=
"29"/>
451 <value name=
"r8" value=
"30"/>
452 <value name=
"rgba8i" value=
"31"/>
453 <value name=
"rg8i" value=
"32"/>
454 <value name=
"r8i" value=
"33"/>
455 <value name=
"rgba8ui" value=
"34"/>
456 <value name=
"rg8ui" value=
"35"/>
457 <value name=
"r8ui" value=
"36"/>
458 <value name=
"srgbx8" value=
"37"/>
459 <value name=
"rgbx8" value=
"38"/>
462 <field name=
"Decimate mode" size=
"2" start=
"14" type=
"uint"/>
464 <field name=
"Internal Type" size=
"4" start=
"10" type=
"uint" prefix=
"Internal Type">
465 <value name=
"8i" value=
"0"/>
466 <value name=
"8ui" value=
"1"/>
467 <value name=
"8" value=
"2"/>
468 <value name=
"16i" value=
"4"/>
469 <value name=
"16ui" value=
"5"/>
470 <value name=
"16f" value=
"6"/>
471 <value name=
"32i" value=
"8"/>
472 <value name=
"32ui" value=
"9"/>
473 <value name=
"32f" value=
"10"/>
476 <field name=
"Internal BPP" size=
"2" start=
"8" type=
"uint" prefix=
"Internal Bpp">
477 <value name=
"32" value=
"0"/>
478 <value name=
"64" value=
"1"/>
479 <value name=
"128" value=
"2"/>
481 <field name=
"Render Target Number" size=
"4" start=
"4" type=
"uint"/>
482 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint" default=
"2"/>
485 <packet code=
"121" name=
"Tile Rendering Mode Configuration (Z/Stencil config)" cl=
"R">
486 <field name=
"Address" size=
"32" start=
"32" type=
"address"/>
488 <field name=
"Padded height of output image in UIF blocks" size=
"13" start=
"25" type=
"uint"/>
490 <field name=
"Memory Format" size=
"3" start=
"22" type=
"uint" prefix=
"Memory Format">
491 <value name=
"Raster" value=
"0"/>
492 <value name=
"Lineartile" value=
"1"/>
493 <value name=
"UB-linear (1 UIF block wide)" value=
"2"/>
494 <value name=
"UB-linear (2 UIF blocks wide)" value=
"3"/>
495 <value name=
"UIF (No XOR)" value=
"4"/>
496 <value name=
"UIF (XOR)" value=
"5"/>
499 <field name=
"Output image format" size=
"6" start=
"16" type=
"uint" prefix=
"Output Image Format">
500 <value name=
"depth_component32f" value=
"0"/>
501 <value name=
"depth_component24" value=
"1"/>
502 <value name=
"depth_component16" value=
"2"/>
503 <value name=
"depth24_stencil8" value=
"3"/>
506 <field name=
"Decimate mode" size=
"2" start=
"14" type=
"uint"/>
508 <field name=
"Internal Type" size=
"4" start=
"10" type=
"uint" prefix=
"Internal Type">
509 <value name=
"depth_32f" value=
"0"/>
510 <value name=
"depth_24" value=
"1"/>
511 <value name=
"depth_16" value=
"2"/>
514 <field name=
"Internal BPP (ignored)" size=
"2" start=
"8" type=
"uint"/>
515 <!-- selects between Z/Stencil config packet and Separate Stencil packet. -->
516 <field name=
"Z/Stencil ID" size=
"4" start=
"4" type=
"uint" default=
"0"/>
517 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint" default=
"1"/>
520 <packet code=
"121" name=
"Tile Rendering Mode Configuration (Z Stencil Clear Values)" cl=
"R">
521 <field name=
"unused" size=
"16" start=
"48" type=
"uint"/>
523 <field name=
"Z/S Clear Value" size=
"32" start=
"16" type=
"uint"/>
525 <field name=
"Stencil/VG Mask Clear Value" size=
"8" start=
"8" type=
"uint"/>
526 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint" default=
"3"/>
529 <packet code=
"121" name=
"Tile Rendering Mode Configuration (Clear Colors Part1)" cl=
"R">
530 <!-- Express this as a 56-bit field? -->
531 <field name=
"Clear Color next 24 bits" size=
"24" start=
"40" type=
"uint"/>
532 <field name=
"Clear Color low 32 bits" size=
"32" start=
"8" type=
"uint"/>
534 <field name=
"Render Target number" size=
"4" start=
"4" type=
"uint"/>
535 <field name=
"sub-id" size=
"4" start=
"0" type=
"uint" default=
"4"/>
538 <packet code=
"124" name=
"Tile Coordinates">
539 <field name=
"tile row number" size=
"12" start=
"12" type=
"uint"/>
540 <field name=
"tile column number" size=
"12" start=
"0" type=
"uint"/>
544 <packet code=
"125" name=
"Tile Coordinates Implicit"/>
546 <packet code=
"126" name=
"Tile List Initial Block Size">
547 <field name=
"Use auto-chained tile lists" size=
"1" start=
"2" type=
"bool"/>
549 <field name=
"Size of first block in chained tile lists" size=
"2" start=
"0" type=
"uint">
550 <value name=
"tile allocation block size 64b" value=
"0"/>
551 <value name=
"tile allocation block size 128b" value=
"1"/>
552 <value name=
"tile allocation block size 256b" value=
"2"/>
556 <struct name=
"GL Shader State Record">
557 <field name=
"Point size in shaded vertex data" size=
"1" start=
"0" type=
"bool"/>
558 <field name=
"Enable clipping" size=
"1" start=
"1" type=
"bool"/>
559 <field name=
"Vertex ID read by coordinate shader" size=
"1" start=
"2" type=
"bool"/>
560 <field name=
"Instance ID read by coordinate shader" size=
"1" start=
"3" type=
"bool"/>
561 <field name=
"Vertex ID read by vertex shader" size=
"1" start=
"4" type=
"bool"/>
562 <field name=
"Instance ID read by vertex shader" size=
"1" start=
"5" type=
"bool"/>
563 <field name=
"Fragment shader does Z writes" size=
"1" start=
"6" type=
"bool"/>
564 <field name=
"Turn off early-z test" size=
"1" start=
"7" type=
"bool"/>
565 <field name=
"Coordinate shader has separate input and output VPM blocks" size=
"1" start=
"8" type=
"bool"/>
566 <field name=
"Vertex shader has separate input and output VPM blocks" size=
"1" start=
"9" type=
"bool"/>
567 <field name=
"Fragment shader uses real pixel centre W in addition to centroid W2" size=
"1" start=
"10" type=
"bool"/>
569 <field name=
"Number of varyings in Fragment Shader" size=
"8" start=
"2b" type=
"uint"/>
570 <field name=
"Coordinate Shader output VPM segment size" size=
"8" start=
"4b" type=
"uint"/>
571 <field name=
"Coordinate Shader input VPM segment size" size=
"8" start=
"5b" type=
"uint"/>
572 <field name=
"Vertex Shader output VPM segment size" size=
"8" start=
"6b" type=
"uint"/>
573 <field name=
"Vertex Shader input VPM segment size" size=
"8" start=
"7b" type=
"uint"/>
574 <field name=
"Address of default attribute values" size=
"32" start=
"8b" type=
"address"/>
575 <field name=
"Fragment Shader Code Address" size=
"32" start=
"12b" type=
"address"/>
576 <field name=
"2-way threadable" size=
"1" start=
"96" type=
"bool"/>
577 <field name=
"4-way threadable" size=
"1" start=
"97" type=
"bool"/>
578 <field name=
"Propagate NaNs" size=
"1" start=
"98" type=
"bool"/>
579 <field name=
"Fragment Shader Uniforms Address" size=
"32" start=
"16b" type=
"address"/>
580 <field name=
"Vertex Shader Code Address" size=
"32" start=
"20b" type=
"address"/>
581 <field name=
"Vertex Shader Uniforms Address" size=
"32" start=
"24b" type=
"address"/>
582 <field name=
"Coordinate Shader Code Address" size=
"32" start=
"28b" type=
"address"/>
583 <field name=
"Coordinate Shader Uniforms Address" size=
"32" start=
"32b" type=
"address"/>
586 <struct name=
"GL Shader State Attribute Record">
587 <field name=
"Address" size=
"32" start=
"0" type=
"address"/>
589 <field name=
"Vec size" size=
"2" start=
"32" type=
"uint"/>
590 <field name=
"Type" size=
"3" start=
"34" type=
"uint">
591 <value name=
"Attribute half-float" value=
"1"/>
592 <value name=
"Attribute float" value=
"2"/>
593 <value name=
"Attribute fixed" value=
"3"/>
594 <value name=
"Attribute byte" value=
"4"/>
595 <value name=
"Attribute short" value=
"5"/>
596 <value name=
"Attribute int" value=
"6"/>
597 <value name=
"Attribute int2_10_10_10" value=
"7"/>
599 <field name=
"Signed int type" size=
"1" start=
"37" type=
"bool"/>
600 <field name=
"Normalized int type" size=
"1" start=
"38" type=
"bool"/>
601 <field name=
"Read as int/uint" size=
"1" start=
"39" type=
"bool"/>
603 <field name=
"Number of values read by Coordinate shader" size=
"4" start=
"40" type=
"uint"/>
604 <field name=
"Number of values read by Vertex shader" size=
"4" start=
"44" type=
"uint"/>
606 <field name=
"Instance Divisor" size=
"16" start=
"6b" type=
"uint"/>
607 <field name=
"Stride" size=
"32" start=
"8b" type=
"uint"/>
610 <struct name=
"VPM generic block write setup">
611 <field name=
"id" size=
"2" start=
"30" type=
"uint" default=
"0"/>
612 <field name=
"id0" size=
"3" start=
"27" type=
"uint" default=
"0"/>
614 <field name=
"horiz" size=
"1" start=
"24" type=
"bool"/>
615 <field name=
"laned" size=
"1" start=
"23" type=
"bool"/>
616 <field name=
"segs" size=
"1" start=
"22" type=
"bool"/>
617 <field name=
"stride" size=
"7" start=
"15" type=
"int"/>
619 <field name=
"size" size=
"2" start=
"13" type=
"uint">
620 <value name=
"VPM setup size 8-bit" value=
"0"/>
621 <value name=
"VPM setup size 16-bit" value=
"1"/>
622 <value name=
"VPM setup size 32-bit" value=
"2"/>
625 <field name=
"addr" size=
"13" start=
"0" type=
"uint"/>
628 <struct name=
"VPM generic block read setup">
629 <field name=
"id" size=
"2" start=
"30" type=
"uint" default=
"1"/>
631 <field name=
"horiz" size=
"1" start=
"29" type=
"bool"/>
632 <field name=
"laned" size=
"1" start=
"28" type=
"bool"/>
633 <field name=
"segs" size=
"1" start=
"27" type=
"bool"/>
634 <field name=
"num" size=
"5" start=
"22" type=
"uint"/>
635 <field name=
"stride" size=
"7" start=
"15" type=
"int"/>
637 <field name=
"size" size=
"2" start=
"13" type=
"uint">
638 <value name=
"VPM setup size 8-bit" value=
"0"/>
639 <value name=
"VPM setup size 16-bit" value=
"1"/>
640 <value name=
"VPM setup size 32-bit" value=
"2"/>
643 <field name=
"addr" size=
"13" start=
"0" type=
"uint"/>
646 <struct name=
"Texture Uniform Parameter 0 CFG_MODE=1">
647 <field name=
"Per-pixel mask enable" size=
"1" start=
"31" type=
"bool"/>
649 <field name=
"Texel offset for r coordinate" size=
"4" start=
"27" type=
"int"/>
650 <field name=
"Texel offset for t coordinate" size=
"4" start=
"23" type=
"int"/>
651 <field name=
"Texel offset for s coordinate" size=
"4" start=
"19" type=
"int"/>
653 <field name=
"R Wrap Mode" size=
"3" start=
"16" type=
"uint">
654 <value name=
"Wrap mode REPEAT" value=
"0"/>
655 <value name=
"Wrap mode CLAMP" value=
"1"/>
656 <value name=
"Wrap mode MIRROR" value=
"2"/>
657 <value name=
"Wrap mode BORDER" value=
"3"/>
658 <value name=
"Wrap mode MIRROR_ONCE" value=
"4"/>
661 <field name=
"T Wrap Mode" size=
"3" start=
"13" type=
"uint">
662 <value name=
"Wrap mode REPEAT" value=
"0"/>
663 <value name=
"Wrap mode CLAMP" value=
"1"/>
664 <value name=
"Wrap mode MIRROR" value=
"2"/>
665 <value name=
"Wrap mode BORDER" value=
"3"/>
666 <value name=
"Wrap mode MIRROR_ONCE" value=
"4"/>
669 <field name=
"S Wrap Mode" size=
"3" start=
"10" type=
"uint">
670 <value name=
"Wrap mode REPEAT" value=
"0"/>
671 <value name=
"Wrap mode CLAMP" value=
"1"/>
672 <value name=
"Wrap mode MIRROR" value=
"2"/>
673 <value name=
"Wrap mode BORDER" value=
"3"/>
674 <value name=
"Wrap mode MIRROR_ONCE" value=
"4"/>
677 <field name=
"New configuration mode" size=
"1" start=
"9" type=
"bool" default=
"1"/>
679 <field name=
"Shadow" size=
"1" start=
"8" type=
"bool"/>
680 <field name=
"Coefficient lookup mode" size=
"1" start=
"7" type=
"bool"/>
681 <field name=
"Disable AutoLOD, use bias only" size=
"1" start=
"6" type=
"bool"/>
682 <field name=
"Bias supplied" size=
"1" start=
"5" type=
"bool"/>
683 <field name=
"Gather sample mode" size=
"1" start=
"4" type=
"bool"/>
684 <field name=
"Fetch sample mode" size=
"1" start=
"3" type=
"bool"/>
686 <field name=
"Lookup Type" size=
"3" start=
"0" type=
"bool">
687 <value name=
"Texture 2D" value=
"0"/>
688 <value name=
"Texture 2D array" value=
"1"/>
689 <value name=
"Texture 3D" value=
"2"/>
690 <value name=
"Texture Cube Map" value=
"3"/>
691 <value name=
"Texture 1D" value=
"4"/>
692 <value name=
"Texture 1D Array" value=
"5"/>
693 <value name=
"Texture Child Image" value=
"6"/>
697 <struct name=
"Texture Uniform Parameter 1 CFG_MODE=1">
698 <field name=
"Texture state record base address" size=
"32" start=
"0" type=
"address"/>
699 <field name=
"Return word 3 of texture data" size=
"1" start=
"3" type=
"bool"/>
700 <field name=
"Return word 2 of texture data" size=
"1" start=
"2" type=
"bool"/>
701 <field name=
"Return word 1 of texture data" size=
"1" start=
"1" type=
"bool"/>
702 <field name=
"Return word 0 of texture data" size=
"1" start=
"0" type=
"bool"/>
705 <struct name=
"Texture Shader State">
706 <field name=
"Level 0 is strictly UIF" size=
"1" start=
"254" type=
"bool"/>
707 <field name=
"Level 0 XOR enable" size=
"1" start=
"252" type=
"bool"/>
708 <field name=
"Level 0 UB_PAD" size=
"4" start=
"248" type=
"uint"/>
710 <field name=
"Base Level" size=
"4" start=
"240" type=
"uint"/>
711 <field name=
"Fixed Bias" size=
"16" start=
"224" type=
"s8.8"/>
712 <field name=
"Max Level-of-Detail" size=
"16" start=
"208" type=
"s8.8"/>
713 <field name=
"Min Level-of-Detail" size=
"16" start=
"192" type=
"s8.8"/>
715 <field name=
"Border Color alpha" size=
"16" start=
"176" type=
"uint"/>
716 <field name=
"Border Color blue" size=
"16" start=
"160" type=
"uint"/>
717 <field name=
"Border Color green" size=
"16" start=
"144" type=
"uint"/>
718 <field name=
"Border Color red" size=
"16" start=
"128" type=
"uint"/>
720 <field name=
"Flip S and T on incoming request" size=
"1" start=
"127" type=
"bool"/>
721 <field name=
"Flip ETC Y" size=
"1" start=
"126" type=
"bool" default=
"1"/>
722 <field name=
"Flip texture Y Axis" size=
"1" start=
"125" type=
"bool"/>
723 <field name=
"Flip texture X Axis" size=
"1" start=
"124" type=
"bool"/>
725 <field name=
"Swizzle A" size=
"3" start=
"121" type=
"uint">
726 <value name=
"Swizzle Zero" value=
"0"/>
727 <value name=
"Swizzle One" value=
"1"/>
728 <value name=
"Swizzle Red" value=
"2"/>
729 <value name=
"Swizzle Green" value=
"3"/>
730 <value name=
"Swizzle Blue" value=
"4"/>
731 <value name=
"Swizzle Alpha" value=
"5"/>
734 <field name=
"Swizzle B" size=
"3" start=
"118" type=
"uint"/>
735 <field name=
"Swizzle G" size=
"3" start=
"115" type=
"uint"/>
736 <field name=
"Swizzle R" size=
"3" start=
"112" type=
"uint"/>
738 <field name=
"Depth Compare Function" size=
"3" start=
"109" type=
"Compare Function"/>
740 <field name=
"sRGB" size=
"1" start=
"107" type=
"bool"/>
742 <field name=
"Texture type" size=
"7" start=
"100" type=
"uint"/>
744 <field name=
"Image Depth" size=
"14" start=
"86" type=
"uint"/>
745 <field name=
"Image Height" size=
"14" start=
"72" type=
"uint"/>
746 <field name=
"Image Width" size=
"14" start=
"58" type=
"uint"/>
748 <field name=
"Array Stride (64-byte aligned)" size=
"26" start=
"32" type=
"uint"/>
750 <field name=
"Texture base pointer" size=
"32" start=
"0" type=
"address"/>
752 <field name=
"Minification Filter" size=
"3" start=
"1" type=
"uint"/>
753 <field name=
"Magnification Filter" size=
"1" start=
"0" type=
"uint"/>
756 <enum name=
"Texture Data Formats">
757 <value name=
"Texture Data Format R8" value=
"0"/>
758 <value name=
"Texture Data Format R8 SNORM" value=
"1"/>
759 <value name=
"Texture Data Format RG8" value=
"2"/>
760 <value name=
"Texture Data Format RG8 SNORM" value=
"3"/>
761 <value name=
"Texture Data Format RGBA8" value=
"4"/>
762 <value name=
"Texture Data Format RGBA8 SNORM" value=
"5"/>
763 <value name=
"Texture Data Format RGB565" value=
"6"/>
764 <value name=
"Texture Data Format RGBA4" value=
"7"/>
765 <value name=
"Texture Data Format RGB5_A1" value=
"8"/>
766 <value name=
"Texture Data Format RGB10_A2" value=
"9"/>
767 <value name=
"Texture Data Format R16" value=
"10"/>
768 <value name=
"Texture Data Format R16 SNORM" value=
"11"/>
769 <value name=
"Texture Data Format RG16" value=
"12"/>
770 <value name=
"Texture Data Format RG16 SNORM" value=
"13"/>
771 <value name=
"Texture Data Format RGBA16" value=
"14"/>
772 <value name=
"Texture Data Format RGBA16 SNORM" value=
"15"/>
773 <value name=
"Texture Data Format R16F" value=
"16"/>
774 <value name=
"Texture Data Format RG16F" value=
"17"/>
775 <value name=
"Texture Data Format RGBA16F" value=
"18"/>
776 <value name=
"Texture Data Format R11F_G11F_B10F" value=
"19"/>
777 <value name=
"Texture Data Format RGB9_E5" value=
"20"/>
778 <value name=
"Texture Data Format DEPTH COMP16" value=
"21"/>
779 <value name=
"Texture Data Format DEPTH COMP24" value=
"22"/>
780 <value name=
"Texture Data Format DEPTH COMP32F" value=
"23"/>
781 <value name=
"Texture Data Format DEPTH24_X8" value=
"24"/>
782 <value name=
"Texture Data Format R4" value=
"25"/>
783 <value name=
"Texture Data Format R1" value=
"26"/>
784 <!-- generic unfiltered 8-bit sample -->
785 <value name=
"Texture Data Format S8" value=
"27"/>
786 <!-- generic unfiltered 16-bit sample -->
787 <value name=
"Texture Data Format S16" value=
"28"/>
788 <!-- generic unfiltered 32-bit sample -->
789 <value name=
"Texture Data Format R32F" value=
"29"/>
790 <!-- generic unfiltered 64-bit sample -->
791 <value name=
"Texture Data Format RG32F" value=
"30"/>
792 <!-- generic unfiltered 128-bit sample -->
793 <value name=
"Texture Data Format RGBA32F" value=
"31"/>
795 <value name=
"Texture Data Format RGB8_ETC2" value=
"32"/>
796 <value name=
"Texture Data Format RGB8_PUNCHTHROUGH_ALPHA1" value=
"33"/>
798 <value name=
"Texture Data Format R11_EAC" value=
"34"/>
799 <value name=
"Texture Data Format SIGNED_R11_EAC" value=
"35"/>
800 <value name=
"Texture Data Format RG11_EAC" value=
"36"/>
801 <value name=
"Texture Data Format SIGNED_RG11_EAC" value=
"37"/>
803 <value name=
"Texture Data Format RGBA8_ETC2_EAC" value=
"38"/>
804 <value name=
"Texture Data Format YCBCR_LUMA" value=
"39"/>
805 <value name=
"Texture Data Format YCBCR_420_CHROMA" value=
"40"/>
807 <value name=
"Texture Data Format BC1" value=
"48"/>
808 <value name=
"Texture Data Format BC2" value=
"49"/>
809 <value name=
"Texture Data Format BC3" value=
"50"/>
811 <value name=
"Texture Data Format ASTC_4x4" value=
"64"/>
812 <value name=
"Texture Data Format ASTC_5x4" value=
"65"/>
813 <value name=
"Texture Data Format ASTC_5x5" value=
"66"/>
814 <value name=
"Texture Data Format ASTC_6x5" value=
"67"/>
815 <value name=
"Texture Data Format ASTC_6x6" value=
"68"/>
816 <value name=
"Texture Data Format ASTC_8x5" value=
"69"/>
817 <value name=
"Texture Data Format ASTC_8x6" value=
"70"/>
818 <value name=
"Texture Data Format ASTC_8x8" value=
"71"/>
819 <value name=
"Texture Data Format ASTC_10x5" value=
"72"/>
820 <value name=
"Texture Data Format ASTC_10x6" value=
"73"/>
821 <value name=
"Texture Data Format ASTC_10x8" value=
"74"/>
822 <value name=
"Texture Data Format ASTC_10x10" value=
"75"/>
823 <value name=
"Texture Data Format ASTC_12x10" value=
"76"/>
824 <value name=
"Texture Data Format ASTC_12x12" value=
"77"/>