1bf215546Sopenharmony_ci<?xml version="1.0" ?> 2bf215546Sopenharmony_ci 3bf215546Sopenharmony_ci<!-- 4bf215546Sopenharmony_ciCopyright © 2022 Imagination Technologies Ltd. 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ciPermission is hereby granted, free of charge, to any person obtaining a copy 7bf215546Sopenharmony_ciof this software and associated documentation files (the "Software"), to deal 8bf215546Sopenharmony_ciin the Software without restriction, including without limitation the rights 9bf215546Sopenharmony_cito use, copy, modify, merge, publish, distribute, sublicense, and/or sell 10bf215546Sopenharmony_cicopies of the Software, and to permit persons to whom the Software is 11bf215546Sopenharmony_cifurnished to do so, subject to the following conditions: 12bf215546Sopenharmony_ci 13bf215546Sopenharmony_ciThe above copyright notice and this permission notice (including the next 14bf215546Sopenharmony_ciparagraph) shall be included in all copies or substantial portions of the 15bf215546Sopenharmony_ciSoftware. 16bf215546Sopenharmony_ci 17bf215546Sopenharmony_ciTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18bf215546Sopenharmony_ciIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19bf215546Sopenharmony_ciFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20bf215546Sopenharmony_ciAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21bf215546Sopenharmony_ciLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22bf215546Sopenharmony_ciOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23bf215546Sopenharmony_ciSOFTWARE. 24bf215546Sopenharmony_ci--> 25bf215546Sopenharmony_ci 26bf215546Sopenharmony_ci<csbgen name="ROGUE" prefix="TA"> 27bf215546Sopenharmony_ci 28bf215546Sopenharmony_ci <enum name="CLIP_MODE"> 29bf215546Sopenharmony_ci <value name="NO_FRONT_OR_REAR" value="0"/> 30bf215546Sopenharmony_ci <value name="FRONT_REAR" value="1"/> 31bf215546Sopenharmony_ci <value name="FRONT_REAR_DEPTH" value="2"/> 32bf215546Sopenharmony_ci </enum> 33bf215546Sopenharmony_ci 34bf215546Sopenharmony_ci <enum name="CMPMODE"> 35bf215546Sopenharmony_ci <value name="NEVER" value="0"/> 36bf215546Sopenharmony_ci <value name="LESS" value="1"/> 37bf215546Sopenharmony_ci <value name="EQUAL" value="2"/> 38bf215546Sopenharmony_ci <value name="LESS_OR_EQUAL" value="3"/> 39bf215546Sopenharmony_ci <value name="GREATER" value="4"/> 40bf215546Sopenharmony_ci <value name="NOT_EQUAL" value="5"/> 41bf215546Sopenharmony_ci <value name="GREATER_OR_EQUAL" value="6"/> 42bf215546Sopenharmony_ci <value name="ALWAYS" value="7"/> 43bf215546Sopenharmony_ci </enum> 44bf215546Sopenharmony_ci 45bf215546Sopenharmony_ci <enum name="CULLMODE"> 46bf215546Sopenharmony_ci <value name="NO_CULLING" value="0"/> 47bf215546Sopenharmony_ci <value name="CULL_CW" value="1"/> 48bf215546Sopenharmony_ci <value name="CULL_CCW" value="2"/> 49bf215546Sopenharmony_ci </enum> 50bf215546Sopenharmony_ci 51bf215546Sopenharmony_ci <enum name="FLATSHADE"> 52bf215546Sopenharmony_ci <value name="VTX_VERTEX_0" value="1"/> 53bf215546Sopenharmony_ci <value name="VTX_VERTEX_1" value="2"/> 54bf215546Sopenharmony_ci <value name="VTX_VERTEX_2" value="3"/> 55bf215546Sopenharmony_ci </enum> 56bf215546Sopenharmony_ci 57bf215546Sopenharmony_ci <enum name="GS_OUTPUT_TOPOLOGY"> 58bf215546Sopenharmony_ci <value name="POINT_LIST" value="0"/> 59bf215546Sopenharmony_ci <value name="LINE_STRIP" value="1"/> 60bf215546Sopenharmony_ci <value name="TRI_STRIP" value="2"/> 61bf215546Sopenharmony_ci </enum> 62bf215546Sopenharmony_ci 63bf215546Sopenharmony_ci <enum name="ISPB_STENCILOP"> 64bf215546Sopenharmony_ci <value name="KEEP" value="0"/> 65bf215546Sopenharmony_ci <value name="ZERO" value="1"/> 66bf215546Sopenharmony_ci <value name="REPLACE" value="2"/> 67bf215546Sopenharmony_ci <value name="INCREMENT_SATURATE" value="3"/> 68bf215546Sopenharmony_ci <value name="DECREMENT_SATURATE" value="4"/> 69bf215546Sopenharmony_ci <value name="INVERT" value="5"/> 70bf215546Sopenharmony_ci <value name="INCREMENT" value="6"/> 71bf215546Sopenharmony_ci <value name="DECREMENT" value="7"/> 72bf215546Sopenharmony_ci </enum> 73bf215546Sopenharmony_ci 74bf215546Sopenharmony_ci <enum name="OBJTYPE"> 75bf215546Sopenharmony_ci <value name="TRIANGLE" value="0"/> 76bf215546Sopenharmony_ci <value name="LINE" value="1"/> 77bf215546Sopenharmony_ci <value name="SPRITE_10UV" value="2"/> 78bf215546Sopenharmony_ci <value name="SPRITE_UV" value="3"/> 79bf215546Sopenharmony_ci <value name="SPRITE_01UV" value="4"/> 80bf215546Sopenharmony_ci <value name="LINE_FILLED_TRIANGLE" value="5"/> 81bf215546Sopenharmony_ci <value name="POINT_FILLED_TRIANGLE" value="6"/> 82bf215546Sopenharmony_ci <value name="TESSELLATED_OBJECT_NO_GS" value="7"/> 83bf215546Sopenharmony_ci <value name="TESSELLATED_OBJECT_WITH_GS" value="8"/> 84bf215546Sopenharmony_ci </enum> 85bf215546Sopenharmony_ci 86bf215546Sopenharmony_ci <!-- 87bf215546Sopenharmony_ci TODO: Add support for "ifs" in csbgen root element. 88bf215546Sopenharmony_ci --> 89bf215546Sopenharmony_ci <enum name="PASSTYPE"> 90bf215546Sopenharmony_ci <value name="OPAQUE" value="0"/> 91bf215546Sopenharmony_ci <value name="TRANSLUCENT" value="1"/> 92bf215546Sopenharmony_ci <value name="PUNCH_THROUGH" value="2"/> 93bf215546Sopenharmony_ci <value name="VIEWPORT_OBJECT" value="3"/> 94bf215546Sopenharmony_ci <value name="FAST_PUNCH_THROUGH" value="4"/> 95bf215546Sopenharmony_ci <value name="DEPTH_FEEDBACK" value="5"/> 96bf215546Sopenharmony_ci <value name="ANTI_ALIASED" value="6"/> 97bf215546Sopenharmony_ci </enum> 98bf215546Sopenharmony_ci 99bf215546Sopenharmony_ci <enum name="REGION_CLIP_MODE"> 100bf215546Sopenharmony_ci <value name="NONE" value="0"/> 101bf215546Sopenharmony_ci <value name="OUTSIDE" value="1"/> 102bf215546Sopenharmony_ci </enum> 103bf215546Sopenharmony_ci 104bf215546Sopenharmony_ci <struct name="STATE_HEADER" length="1"> 105bf215546Sopenharmony_ci <field name="not_final_term" start="26" end="26" type="bool"/> 106bf215546Sopenharmony_ci <field name="pres_terminate" start="25" end="25" type="bool"/> 107bf215546Sopenharmony_ci <field name="context_switch" start="24" end="24" type="bool"/> 108bf215546Sopenharmony_ci <field name="pres_stream_out_program" start="23" end="23" type="bool"/> 109bf215546Sopenharmony_ci <field name="pres_stream_out_size" start="22" end="22" type="bool"/> 110bf215546Sopenharmony_ci <field name="pres_ppp_ctrl" start="21" end="21" type="bool"/> 111bf215546Sopenharmony_ci <field name="pres_varying_word2" start="20" end="20" type="bool"/> 112bf215546Sopenharmony_ci <field name="pres_varying_word1" start="19" end="19" type="bool"/> 113bf215546Sopenharmony_ci <field name="pres_varying_word0" start="18" end="18" type="bool"/> 114bf215546Sopenharmony_ci <field name="pres_outselects" start="17" end="17" type="bool"/> 115bf215546Sopenharmony_ci <field name="pres_wclamp" start="16" end="16" type="bool"/> 116bf215546Sopenharmony_ci <field name="view_port_count" start="12" end="15" type="uint"/> 117bf215546Sopenharmony_ci <field name="pres_viewport" start="11" end="11" type="bool"/> 118bf215546Sopenharmony_ci <field name="pres_region_clip" start="10" end="10" type="bool"/> 119bf215546Sopenharmony_ci <field name="pres_pds_state_ptr3" start="9" end="9" type="bool"/> 120bf215546Sopenharmony_ci <field name="pres_pds_state_ptr2" start="8" end="8" type="bool"/> 121bf215546Sopenharmony_ci <field name="pres_pds_state_ptr1" start="7" end="7" type="bool"/> 122bf215546Sopenharmony_ci <field name="pres_pds_state_ptr0" start="6" end="6" type="bool"/> 123bf215546Sopenharmony_ci <field name="pres_ispctl_dbsc" start="5" end="5" type="bool"/> 124bf215546Sopenharmony_ci <field name="pres_ispctl_bb" start="4" end="4" type="bool"/> 125bf215546Sopenharmony_ci <field name="pres_ispctl_ba" start="3" end="3" type="bool"/> 126bf215546Sopenharmony_ci <field name="pres_ispctl_fb" start="2" end="2" type="bool"/> 127bf215546Sopenharmony_ci <field name="pres_ispctl_fa" start="1" end="1" type="bool"/> 128bf215546Sopenharmony_ci <field name="pres_ispctl" start="0" end="0" type="bool"/> 129bf215546Sopenharmony_ci </struct> 130bf215546Sopenharmony_ci 131bf215546Sopenharmony_ci <struct name="STATE_ISPCTL" length="1"> 132bf215546Sopenharmony_ci <field name="validid" start="26" end="31" type="uint"/> 133bf215546Sopenharmony_ci <field name="upass" start="22" end="25" type="uint"/> 134bf215546Sopenharmony_ci <field name="tagwritedisable" start="21" end="21" type="bool"/> 135bf215546Sopenharmony_ci <field name="ovgmtestdisable" start="20" end="20" type="bool"/> 136bf215546Sopenharmony_ci <field name="two_sided" start="19" end="19" type="bool"/> 137bf215546Sopenharmony_ci <field name="bpres" start="18" end="18" type="bool"/> 138bf215546Sopenharmony_ci <field name="dbenable" start="17" end="17" type="bool"/> 139bf215546Sopenharmony_ci <field name="scenable" start="16" end="16" type="bool"/> 140bf215546Sopenharmony_ci <field name="vistest" start="15" end="15" type="bool"/> 141bf215546Sopenharmony_ci <field name="visbool" start="14" end="14" type="bool"/> 142bf215546Sopenharmony_ci <field name="visreg" start="0" end="13" type="uint"/> 143bf215546Sopenharmony_ci </struct> 144bf215546Sopenharmony_ci 145bf215546Sopenharmony_ci <struct name="STATE_ISPA" length="1"> 146bf215546Sopenharmony_ci <field name="objtype" start="28" end="31" type="OBJTYPE"/> 147bf215546Sopenharmony_ci <field name="passtype" start="24" end="26" type="PASSTYPE"/> 148bf215546Sopenharmony_ci <field name="ovgvispassmaskop" start="23" end="23" type="bool"/> 149bf215546Sopenharmony_ci <field name="maskval" start="22" end="22" type="bool"/> 150bf215546Sopenharmony_ci <field name="dwritedisable" start="21" end="21" type="bool"/> 151bf215546Sopenharmony_ci <field name="dfbztestenable" start="20" end="20" type="bool"/> 152bf215546Sopenharmony_ci <field name="dcmpmode" start="17" end="19" type="CMPMODE"/> 153bf215546Sopenharmony_ci <field name="linefilllastpixel" start="16" end="16" type="bool"/> 154bf215546Sopenharmony_ci <field name="pointlinewidth" start="8" end="15" type="uint"> 155bf215546Sopenharmony_ci <define name="SIZE_MAX" value="255"/> 156bf215546Sopenharmony_ci </field> 157bf215546Sopenharmony_ci <field name="sref" start="0" end="7" type="uint"/> 158bf215546Sopenharmony_ci </struct> 159bf215546Sopenharmony_ci 160bf215546Sopenharmony_ci <struct name="STATE_ISPB" length="1"> 161bf215546Sopenharmony_ci <field name="scmpmode" start="25" end="27" type="CMPMODE"/> 162bf215546Sopenharmony_ci <field name="sop1" start="22" end="24" type="ISPB_STENCILOP"/> 163bf215546Sopenharmony_ci <field name="sop2" start="19" end="21" type="ISPB_STENCILOP"/> 164bf215546Sopenharmony_ci <field name="sop3" start="16" end="18" type="ISPB_STENCILOP"/> 165bf215546Sopenharmony_ci <field name="scmpmask" start="8" end="15" type="uint"/> 166bf215546Sopenharmony_ci <field name="swmask" start="0" end="7" type="uint"/> 167bf215546Sopenharmony_ci </struct> 168bf215546Sopenharmony_ci 169bf215546Sopenharmony_ci <struct name="REGION_CLIP0" length="1"> 170bf215546Sopenharmony_ci <field name="mode" start="31" end="31" type="REGION_CLIP_MODE"/> 171bf215546Sopenharmony_ci <field name="left" start="16" end="24" type="uint"/> 172bf215546Sopenharmony_ci <field name="right" start="0" end="8" type="uint"/> 173bf215546Sopenharmony_ci </struct> 174bf215546Sopenharmony_ci 175bf215546Sopenharmony_ci <struct name="REGION_CLIP1" length="1"> 176bf215546Sopenharmony_ci <field name="top" start="16" end="24" type="uint"/> 177bf215546Sopenharmony_ci <field name="bottom" start="0" end="8" type="uint"/> 178bf215546Sopenharmony_ci </struct> 179bf215546Sopenharmony_ci 180bf215546Sopenharmony_ci <struct name="STATE_ISPDBSC" length="1"> 181bf215546Sopenharmony_ci <field name="dbindex" start="16" end="31" type="uint"/> 182bf215546Sopenharmony_ci <field name="scindex" start="0" end="15" type="uint"/> 183bf215546Sopenharmony_ci </struct> 184bf215546Sopenharmony_ci 185bf215546Sopenharmony_ci <struct name="OUTPUT_SEL" length="1"> 186bf215546Sopenharmony_ci <field name="vtxsize" start="24" end="31" type="uint"/> 187bf215546Sopenharmony_ci <field name="tsp_unclamped_z_pres" start="21" end="21" type="bool"/> 188bf215546Sopenharmony_ci <field name="render_tgt_pres" start="20" end="20" type="bool"/> 189bf215546Sopenharmony_ci <field name="vpt_tgt_pres" start="19" end="19" type="bool"/> 190bf215546Sopenharmony_ci <field name="psprite_size_pres" start="18" end="18" type="bool"/> 191bf215546Sopenharmony_ci <field name="isp_position_depth_clamp_z" start="17" end="17" type="bool"/> 192bf215546Sopenharmony_ci <field name="rhw_pres" start="16" end="16" type="bool"/> 193bf215546Sopenharmony_ci <field name="cullplane7" start="15" end="15" type="bool"/> 194bf215546Sopenharmony_ci <field name="cullplane6" start="14" end="14" type="bool"/> 195bf215546Sopenharmony_ci <field name="cullplane5" start="13" end="13" type="bool"/> 196bf215546Sopenharmony_ci <field name="cullplane4" start="12" end="12" type="bool"/> 197bf215546Sopenharmony_ci <field name="cullplane3" start="11" end="11" type="bool"/> 198bf215546Sopenharmony_ci <field name="cullplane2" start="10" end="10" type="bool"/> 199bf215546Sopenharmony_ci <field name="cullplane1" start="9" end="9" type="bool"/> 200bf215546Sopenharmony_ci <field name="cullplane0" start="8" end="8" type="bool"/> 201bf215546Sopenharmony_ci <field name="plane7" start="7" end="7" type="bool"/> 202bf215546Sopenharmony_ci <field name="plane6" start="6" end="6" type="bool"/> 203bf215546Sopenharmony_ci <field name="plane5" start="5" end="5" type="bool"/> 204bf215546Sopenharmony_ci <field name="plane4" start="4" end="4" type="bool"/> 205bf215546Sopenharmony_ci <field name="plane3" start="3" end="3" type="bool"/> 206bf215546Sopenharmony_ci <field name="plane2" start="2" end="2" type="bool"/> 207bf215546Sopenharmony_ci <field name="plane1" start="1" end="1" type="bool"/> 208bf215546Sopenharmony_ci <field name="plane0" start="0" end="0" type="bool"/> 209bf215546Sopenharmony_ci </struct> 210bf215546Sopenharmony_ci 211bf215546Sopenharmony_ci <struct name="STATE_VARYING0" length="1"> 212bf215546Sopenharmony_ci <condition type="if" check="TEXTURE_WRAP_VARYING"/> 213bf215546Sopenharmony_ci <field name="f32_linear_wrap" start="24" end="31" type="uint"/> 214bf215546Sopenharmony_ci <condition type="endif" check="TEXTURE_WRAP_VARYING"/> 215bf215546Sopenharmony_ci <field name="f32_npc" start="16" end="23" type="uint"/> 216bf215546Sopenharmony_ci <field name="f32_flat" start="8" end="15" type="uint"/> 217bf215546Sopenharmony_ci <field name="f32_linear" start="0" end="7" type="uint"/> 218bf215546Sopenharmony_ci </struct> 219bf215546Sopenharmony_ci 220bf215546Sopenharmony_ci <struct name="STATE_VARYING1" length="1"> 221bf215546Sopenharmony_ci <field name="f16_npc" start="24" end="31" type="uint"/> 222bf215546Sopenharmony_ci <field name="f16_flat" start="16" end="23" type="uint"/> 223bf215546Sopenharmony_ci <field name="f16_linear" start="8" end="15" type="uint"/> 224bf215546Sopenharmony_ci <condition type="if" check="TEXTURE_WRAP_VARYING"/> 225bf215546Sopenharmony_ci <field name="f32_npc_wrap" start="0" end=" 7" type="uint"/> 226bf215546Sopenharmony_ci <condition type="endif" check="TEXTURE_WRAP_VARYING"/> 227bf215546Sopenharmony_ci </struct> 228bf215546Sopenharmony_ci 229bf215546Sopenharmony_ci <struct name="STATE_TERMINATE0" length="1"> 230bf215546Sopenharmony_ci <field name="clip_right" start="18" end="26" type="uint"> 231bf215546Sopenharmony_ci <define name="BLOCK_SIZE_IN_PIXELS" value="32"/> 232bf215546Sopenharmony_ci </field> 233bf215546Sopenharmony_ci <field name="clip_top" start="9" end="17" type="uint"> 234bf215546Sopenharmony_ci <define name="BLOCK_SIZE_IN_PIXELS" value="32"/> 235bf215546Sopenharmony_ci </field> 236bf215546Sopenharmony_ci <field name="clip_bottom" start="0" end="8" type="uint"> 237bf215546Sopenharmony_ci <define name="BLOCK_SIZE_IN_PIXELS" value="32"/> 238bf215546Sopenharmony_ci </field> 239bf215546Sopenharmony_ci </struct> 240bf215546Sopenharmony_ci 241bf215546Sopenharmony_ci <struct name="STATE_TERMINATE1" length="1"> 242bf215546Sopenharmony_ci <field name="clip_left" start="23" end="31" type="uint"> 243bf215546Sopenharmony_ci <define name="BLOCK_SIZE_IN_PIXELS" value="32"/> 244bf215546Sopenharmony_ci </field> 245bf215546Sopenharmony_ci <field name="render_target" start="0" end="10" type="uint"/> 246bf215546Sopenharmony_ci </struct> 247bf215546Sopenharmony_ci 248bf215546Sopenharmony_ci <struct name="STATE_STREAM_OUT1" length="1"> 249bf215546Sopenharmony_ci <field name="sync" start="10" end="10" type="bool"/> 250bf215546Sopenharmony_ci <field name="pds_data_size" start="4" end="9" type="uint"> 251bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="16"/> 252bf215546Sopenharmony_ci </field> 253bf215546Sopenharmony_ci <field name="pds_temp_size" start="0" end="3" type="uint"> 254bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="16"/> 255bf215546Sopenharmony_ci </field> 256bf215546Sopenharmony_ci </struct> 257bf215546Sopenharmony_ci 258bf215546Sopenharmony_ci <struct name="STATE_STREAM_OUT2" length="1"> 259bf215546Sopenharmony_ci <!-- This is an offset actually. Note for when we auto-generate the xmls. --> 260bf215546Sopenharmony_ci <field name="pds_data_addr" start="4" end="31" shift="4" type="address"/> 261bf215546Sopenharmony_ci </struct> 262bf215546Sopenharmony_ci 263bf215546Sopenharmony_ci <struct name="STATE_PDS_SHADERBASE" length="1"> 264bf215546Sopenharmony_ci <!-- This is an offset actually. Note for when we auto-generate the xmls. --> 265bf215546Sopenharmony_ci <field name="addr" start="4" end="31" shift="4" type="address"/> 266bf215546Sopenharmony_ci </struct> 267bf215546Sopenharmony_ci 268bf215546Sopenharmony_ci <struct name="STATE_PDS_TEXUNICODEBASE" length="1"> 269bf215546Sopenharmony_ci <field name="addr" start="4" end="31" shift="4" type="address"/> 270bf215546Sopenharmony_ci </struct> 271bf215546Sopenharmony_ci 272bf215546Sopenharmony_ci <struct name="STATE_PDS_VARYINGBASE" length="1"> 273bf215546Sopenharmony_ci <!-- This is an offset actually. Note for when we auto-generate the xmls. --> 274bf215546Sopenharmony_ci <field name="addr" start="4" end="31" shift="4" type="address"/> 275bf215546Sopenharmony_ci </struct> 276bf215546Sopenharmony_ci 277bf215546Sopenharmony_ci <struct name="STATE_PDS_TEXTUREDATABASE" length="1"> 278bf215546Sopenharmony_ci <field name="addr" start="4" end="31" shift="4" type="address"/> 279bf215546Sopenharmony_ci </struct> 280bf215546Sopenharmony_ci 281bf215546Sopenharmony_ci <struct name="STATE_PDS_UNIFORMDATABASE" length="1"> 282bf215546Sopenharmony_ci <!-- This is an offset actually. Note for when we auto-generate the xmls. --> 283bf215546Sopenharmony_ci <field name="addr" start="4" end="31" shift="4" type="address"/> 284bf215546Sopenharmony_ci </struct> 285bf215546Sopenharmony_ci 286bf215546Sopenharmony_ci <struct name="STATE_PDS_SIZEINFO1" length="1"> 287bf215546Sopenharmony_ci <field name="pds_uniformsize" start="23" end="31" type="uint"> 288bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="4"/> 289bf215546Sopenharmony_ci </field> 290bf215546Sopenharmony_ci <field name="pds_texturestatesize" start="16" end="22" type="uint"> 291bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="4"/> 292bf215546Sopenharmony_ci </field> 293bf215546Sopenharmony_ci <field name="pds_varyingsize" start="10" end="15" type="uint"> 294bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="4"/> 295bf215546Sopenharmony_ci </field> 296bf215546Sopenharmony_ci <field name="usc_varyingsize" start="4" end="9" type="uint"> 297bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="16"/> 298bf215546Sopenharmony_ci <define name="MAX_SIZE" value="63"/> 299bf215546Sopenharmony_ci </field> 300bf215546Sopenharmony_ci <field name="pds_tempsize" start="0" end="3" type="uint"> 301bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="4"/> 302bf215546Sopenharmony_ci </field> 303bf215546Sopenharmony_ci </struct> 304bf215546Sopenharmony_ci 305bf215546Sopenharmony_ci <struct name="STATE_PDS_SIZEINFO2" length="1"> 306bf215546Sopenharmony_ci <field name="usc_sharedsize" start="23" end="31" type="uint"> 307bf215546Sopenharmony_ci <define name="UNIT_SIZE" value="16"/> 308bf215546Sopenharmony_ci </field> 309bf215546Sopenharmony_ci <field name="pds_tri_merge_disable" start="14" end="14" type="bool"/> 310bf215546Sopenharmony_ci <field name="pds_batchnum" start="0" end="13" type="uint"/> 311bf215546Sopenharmony_ci </struct> 312bf215546Sopenharmony_ci 313bf215546Sopenharmony_ci <struct name="STATE_PPP_CTRL" length="1"> 314bf215546Sopenharmony_ci <field name="trp" start="16" end="16" type="bool"/> 315bf215546Sopenharmony_ci <field name="prim_msaa" start="15" end="15" type="bool"/> 316bf215546Sopenharmony_ci <field name="gs_output_topology" start="13" end="14" type="GS_OUTPUT_TOPOLOGY"/> 317bf215546Sopenharmony_ci <field name="pres_prim_id" start="12" end="12" type="bool"/> 318bf215546Sopenharmony_ci <field name="clip_mode" start="10" end="11" type="CLIP_MODE"/> 319bf215546Sopenharmony_ci <field name="drawclippededges" start="9" end="9" type="bool"/> 320bf215546Sopenharmony_ci <field name="flatshade_vtx" start="7" end="8" type="FLATSHADE"/> 321bf215546Sopenharmony_ci <field name="pretransform" start="6" end="6" type="bool"/> 322bf215546Sopenharmony_ci <field name="wclampen" start="5" end="5" type="bool"/> 323bf215546Sopenharmony_ci <field name="wbuffen" start="4" end="4" type="bool"/> 324bf215546Sopenharmony_ci <field name="resetbbox" start="3" end="3" type="bool"/> 325bf215546Sopenharmony_ci <field name="updatebbox" start="2" end="2" type="bool"/> 326bf215546Sopenharmony_ci <field name="cullmode" start="0" end="1" type="CULLMODE"/> 327bf215546Sopenharmony_ci </struct> 328bf215546Sopenharmony_ci 329bf215546Sopenharmony_ci</csbgen> 330