1 /*========================== begin_copyright_notice ============================
2 
3 Copyright (C) 2017-2021 Intel Corporation
4 
5 SPDX-License-Identifier: MIT
6 
7 ============================= end_copyright_notice ===========================*/
8 
9 #pragma once
10 
11 #include "cmd_shared_enum_g8.h"
12 #include "cmd_shared_def_g8.h"
13 
14 namespace G6HWC
15 {
16 
17 /*****************************************************************************\
18 CONST: SSharedStateBindingTableState
19 \*****************************************************************************/
20 static const SSharedStateBindingTableState g_cInitSharedStateBindingTableState =
21 {
22     // DW0
23     {
24         {
25             0,                                          // _Unused
26             0                                           // SurfaceStatePointer
27         }
28     }
29 };
30 
31 /*****************************************************************************\
32 CONST: g_cInitGfxSamplerIndirectState
33 \*****************************************************************************/
34 static const SGfxSamplerIndirectState g_cInitGfxSamplerIndirectState =
35 {
36     0.0f, 0.0f, 0.0f, 0.0f, // Border Colors RGBA
37     0, 0, 0, 0, 0, 0, 0, 0  // Unused DWORDS 4-11
38 };
39 
40 /*****************************************************************************\
41 CONST: g_cInitSamplerState
42 \*****************************************************************************/
43 static const SSharedStateSamplerState g_cInitSharedStateSamplerState =
44 {
45     // DWORD 0
46     {
47         {
48             GFXSHAREDSTATE_PREFILTER_ALWAYS,                // ShadowFunction
49             0,                                              // TextureLODBias
50             GFXSHAREDSTATE_MAPFILTER_NEAREST,               // MinModeFilter
51             GFXSHAREDSTATE_MAPFILTER_NEAREST,               // MagModeFilter
52             GFXSHAREDSTATE_MIPFILTER_NONE,                  // MipModeFilter
53             0,                                              // BaseMipLevel
54             0,                                              // _Unused1
55             false,                                          // LODPreClampEnable
56             GFXSHAREDSTATE_DEFAULTCOLOR_R32G32B32A32_FLOAT, // TextureBorderColorMode
57             0,                                              // _Unused2
58             true                                            // SamplerDisable
59         }
60     },
61 
62     // DWORD 1
63     {
64         {
65             GFXSHAREDSTATE_TEXCOORDMODE_WRAP,               // TCZAddressControlMode
66             GFXSHAREDSTATE_TEXCOORDMODE_WRAP,               // TCYAddressControlMode
67             GFXSHAREDSTATE_TEXCOORDMODE_WRAP,               // TCXAddressControlMode
68             GFXSHAREDSTATE_CUBESURFACECONTROLMODE_OVERRIDE, // CubeSurfaceControlMode
69             0,                                              // _Unused
70             0,                                              // MaxLOD
71             0                                               // MinLOD
72         }
73     },
74 
75     // DWORD 2
76     {
77         {
78             0,                                              // _Unused
79             0                                               // BorderColorPointer
80         }
81     },
82 
83     // DWORD 3,
84     {
85         {
86             false,                                          // NonNormalizedCoordinatesEnable
87             0,                                              // _Unused1
88             false,                                          // RAddressMinFilterAddressRoundingEnable
89             false,                                          // RAddressMagFilterAddressRoundingEnable
90             false,                                          // VAddressMinFilterAddressRoundingEnable
91             false,                                          // VAddressMagFilterAddressRoundingEnable
92             false,                                          // UAddressMinFilterAddressRoundingEnable
93             false,                                          // UAddressMagFilterAddressRoundingEnable
94             GFXSHAREDSTATE_ANISORATIO_2,                    // MaximumAnisotropy
95             GFXSHAREDSTATE_CHROMAKEY_KILL_ON_ANY_MATCH,     // ChromaKeyMode
96             0,                                              // ChromaKeyIndex
97             false,                                          // ChromaKeyEnable
98             0                                               // _Unused2
99         }
100     }
101 };
102 
103 /*****************************************************************************\
104 CONST: g_cInitSamplerStateDW0Gen7
105 \*****************************************************************************/
106 static const SSharedStateSamplerState::_DW0::_Gen7 g_cInitSharedStateSamplerStateDW0Gen7 =
107 {
108     0,                                                  // _Unused1
109     0,                                                  // TextureLODBias
110     GFXSHAREDSTATE_MAPFILTER_NEAREST,                   // MinModeFilter
111     GFXSHAREDSTATE_MAPFILTER_NEAREST,                   // MagModeFilter
112     GFXSHAREDSTATE_MIPFILTER_NONE,                      // MipModeFilter
113     0,                                                  // BaseMipLevel
114     0,                                                  // _Unused2
115     false,                                              // LODPreClampEnable
116     GFXSHAREDSTATE_DEFAULTCOLOR_R32G32B32A32_FLOAT,     // TextureBorderColorMode
117     0,                                                  // _Unused3
118     true                                                // SamplerDisable
119 };
120 
121 /*****************************************************************************\
122 CONST: g_cInitSamplerStateDW0Gen9
123 \*****************************************************************************/
124 static const SSharedStateSamplerState::_DW0::_Gen9 g_cInitSharedStateSamplerStateDW0Gen9 =
125 {
126     GFXSHAREDSTATE_ANISOTROPIC_LEGACY,                  // AnisotropicAlgorithm
127     0,                                                  // TextureLODBias
128     GFXSHAREDSTATE_MAPFILTER_NEAREST,                   // MinModeFilter
129     GFXSHAREDSTATE_MAPFILTER_NEAREST,                   // MagModeFilter
130     GFXSHAREDSTATE_MIPFILTER_NONE,                      // MipModeFilter
131     0,                                                  // CoarseLODQualityMode
132     0,                                                  // _Unused1
133     false,                                              // LODPreClampEnable
134     GFXSHAREDSTATE_DEFAULTCOLOR_R32G32B32A32_FLOAT,     // TextureBorderColorMode
135     0,                                                  // _Unused2
136     true                                                // SamplerDisable
137 };
138 
139 /*****************************************************************************\
140 CONST: g_cInitSamplerStateDW1Gen7
141 \*****************************************************************************/
142 static const SSharedStateSamplerState::_DW1::_Gen7 g_cInitSharedStateSamplerStateDW1Gen7 =
143 {
144     GFXSHAREDSTATE_CUBESURFACECONTROLMODE_OVERRIDE,     // CubeSurfaceControlMode
145     GFXSHAREDSTATE_PREFILTER_ALWAYS,                    // ShadowFunction
146     0,                                                  // _Unused
147     0,                                                  // MaxLOD
148     0                                                   // MinLOD
149 };
150 
151 /*****************************************************************************\
152 CONST: g_cInitSamplerStateDW3Gen7
153 \*****************************************************************************/
154 static const SSharedStateSamplerState::_DW3::_Gen7 g_cInitSharedStateSamplerStateDW3Gen7 =
155 {
156     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                   // TCZAddressControlMode
157     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                   // TCYAddressControlMode
158     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                   // TCXAddressControlMode
159     0,                                                  // _Unused1
160     false,                                              // NonnormalizedCoordinateEnable
161     GFXSHAREDSTATE_TRILINEAR_QUALITY_LOW,               // TrilinearFilterQuality
162     false,                                              // RAddressMinFilterAddressRoundingEnable
163     false,                                              // RAddressMagFilterAddressRoundingEnable
164     false,                                              // VAddressMinFilterAddressRoundingEnable
165     false,                                              // VAddressMagFilterAddressRoundingEnable
166     false,                                              // UAddressMinFilterAddressRoundingEnable
167     false,                                              // UAddressMagFilterAddressRoundingEnable
168     GFXSHAREDSTATE_ANISORATIO_2,                        // MaximumAnisotropy
169     GFXSHAREDSTATE_CHROMAKEY_KILL_ON_ANY_MATCH,         // ChromaKeyMode
170     0,                                                  // ChromaKeyIndex
171     false,                                              // ChromaKeyEnable
172     0                                                   // _Unused2
173 };
174 
175 /*****************************************************************************\
176 CONST: g_cInitSamplerStateDW3Gen9
177 \*****************************************************************************/
178 static const SSharedStateSamplerState::_DW3::_Gen9 g_cInitSharedStateSamplerStateDW3Gen9 =
179 {
180     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                       // TCZAddressControlMode
181     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                       // TCYAddressControlMode
182     GFXSHAREDSTATE_TEXCOORDMODE_WRAP,                       // TCXAddressControlMode
183     false,                                                  // ReductionTypeEnable
184     false,                                                  // NonNormalizedCoordinateEnable
185     GFXSHAREDSTATE_TRILINEAR_QUALITY_LOW,                   // TrilinearFilterQuality
186     false,                                                  // RAddressMinFilterAddressRoundingEnable
187     false,                                                  // RAddressMagFilterAddressRoundingEnable
188     false,                                                  // VAddressMinFilterAddressRoundingEnable
189     false,                                                  // VAddressMagFilterAddressRoundingEnable
190     false,                                                  // UAddressMinFilterAddressRoundingEnable
191     false,                                                  // UAddressMagFilterAddressRoundingEnable
192     GFXSHAREDSTATE_ANISORATIO_2,                            // MaximumAnisotropy
193     GFXSHAREDSTATE_STD_FILTER,                              // ReductionType
194     0                                                       // NonSeparableFilterFootprintMask
195 };
196 
197 /*****************************************************************************\
198 CONST: g_cInitVmeState
199 \*****************************************************************************/
200 static const SSharedStateSearchPathLUTState::_DW0::_Byte g_cInitSharedSearchPathLUTStates[ g_cNumSearchPathStatesGen6 ] =
201 {
202     { 0x01,0x01,0x01,0x01 }, // 0
203     { 0x01,0x01,0x01,0x10 }, // 1
204     { 0x0F,0x0F,0x0F,0x0F }, // 2
205     { 0x0F,0x0F,0x0F,0x10 }, // 3
206     { 0x01,0x01,0x01,0x01 }, // 4
207     { 0x01,0x01,0x01,0x10 }, // 5
208     { 0x0F,0x0F,0x0F,0x0F }, // 6
209     { 0x0F,0x0F,0x0F,0x10 }, // 7
210     { 0x01,0x01,0x01,0x01 }, // 8
211     { 0x01,0x01,0x01,0x10 }, // 9
212     { 0x0F,0x0F,0x0F,0x0F }, // 10
213     { 0x0F,0x0F,0x0F,0x00 }, // 11
214     { 0x00,0x00,0x00,0x00 }, // 12
215     { 0x00,0x00,0x00,0x00 }  // 13
216 };
217 
218 /*****************************************************************************\
219 CONST: g_cInitSharedStateSurfaceState
220 \*****************************************************************************/
221 static const SSharedStateSurfaceState   g_cInitSharedStateSurfaceState =
222 {
223     // DWORD 0
224     {
225         {
226             0,                                              // CubeFaceEnablesPositiveZ
227             0,                                              // CubeFaceEnablesNegativeZ
228             0,                                              // CubeFaceEnablesPositiveY
229             0,                                              // CubeFaceEnablesNegativeY
230             0,                                              // CubeFaceEnablesPositiveX
231             0,                                              // CubeFaceEnablesNegativeX
232             GFXSHAREDSTATE_MEDIA_BOUNDARY_PIXEL_NORMAL,     // MediaBoundaryPixelMode
233             GFXSHAREDSTATE_RENDER_CACHE_WRITE_ONLY_ON_MISS, // RenderCacheReadWriteMode
234             GFXSHAREDSTATE_CUBECORNERMODE_REPLICATE,        // CubeMapCornerMode
235             GFXSHAREDSTATE_SURFACE_MIPMAPLAYOUT_BELOW,      // MipMapLayoutMode
236             0,                                              // VerticalLineStrideOffset
237             0,                                              // VerticalLineStride
238             0,                                              // _Unused1
239             GFXSHAREDSTATE_SURFACEFORMAT_R8G8B8A8_UNORM,    // SurfaceFormat
240             GFXSHAREDSTATE_SURFACERETURNFORMAT_FLOAT32,     // DataReturnFormat
241             0,                                              // _Unused2
242             GFXSHAREDSTATE_SURFACETYPE_NULL                 // SurfaceType
243         }
244     },
245 
246     // DWORD 1
247     {
248         {
249             0                                               // SurfaceBaseAddress
250         }
251     },
252 
253     // DWORD 2
254     {
255         {
256             GFXSHAREDSTATE_RENDERTARGET_ROTATE_0DEG,        // RenderTargetRotation
257             0,                                              // MipCount
258             0,                                              // Width
259             0                                               // Height
260         }
261     },
262 
263     // DWORD 3
264     {
265         {
266             GFXSHAREDSTATE_TILEWALK_YMAJOR,                 // TileWalk
267             false,                                          // TiledSurface
268             0,                                              // _Unused1
269             0,                                              // SurfacePitch
270             0,                                              // _Unused2
271             0                                               // Depth
272         }
273     },
274 
275     // DWORD 4
276     {
277         {
278             0,                                              // MultisamplePositionPaletteIndex
279             0,                                              // _Unused1
280             GFXSHAREDSTATE_NUMSAMPLES_1,                    // NumMultisamples
281             0,                                              // _Unused2
282             0,                                              // RenderTargetViewExtent
283             0,                                              // MinimumArrayElement
284             0                                               // SurfaceMinLOD
285         }
286     },
287 
288     // DWORD 5
289     {
290         {
291             0,                                              // _Unused
292             GFXSHAREDSTATE_CACHEABILITY_CONTROL_USE_GTT_ENTRY,  // SurfaceCacheabilityControl
293             GFXSHAREDSTATE_GRAPHICS_DATATYPE_SOURCE_GTT,    // SurfaceGraphicsDataType
294             false,                                          // SurfaceEncryptedDataEnable
295             0,                                              // YOffset
296             GFXSHAREDSTATE_SURFACE_VERTICAL_ALIGNMENT_2,    // SurfaceVerticalAlignment
297             0                                               // XOffset
298         }
299     },
300 
301     // DWORD 6
302     {
303         {
304             0                                               // Reserved
305         }
306     },
307 
308     // DWORD 7
309     {
310         {
311             0                                               // Reserved
312         }
313     },
314 
315     // DWORD 8
316     {
317         {
318             0                                               // Reserved
319         }
320     },
321 
322     // DWORD 9
323     {
324         {
325             0                                               // Reserved
326         }
327     },
328 
329     // DWORD 10
330     {
331         {
332             0                                               // Reserved
333         }
334     },
335 
336     // DWORD 11
337     {
338         {
339             0                                               // Reserved
340         }
341     },
342 
343     // DWORD 12
344     {
345         {
346             0                                               // Reserved
347         }
348     },
349 
350     // DWORD 13
351     {
352         {
353             0                                               // Reserved
354         }
355     },
356 
357     // DWORD 14
358     {
359         {
360             0                                               // Reserved
361         }
362     },
363 
364     // DWORD 15
365     {
366         {
367             0                                               // Reserved
368         }
369     }
370 };
371 
372 /*****************************************************************************\
373 CONST: g_cInitSharedStateSurfaceStateDW0Gen7
374 \*****************************************************************************/
375 static const SSharedStateSurfaceState::_DW0::_Gen7   g_cInitSharedStateSurfaceStateDW0Gen7 =
376 {
377     0,                                                  // CubeFaceEnablesPositiveZ
378     0,                                                  // CubeFaceEnablesNegativeZ
379     0,                                                  // CubeFaceEnablesPositiveY
380     0,                                                  // CubeFaceEnablesNegativeY
381     0,                                                  // CubeFaceEnablesPositiveX
382     0,                                                  // CubeFaceEnablesNegativeX
383     GFXSHAREDSTATE_MEDIA_BOUNDARY_PIXEL_NORMAL,         // MediaBoundaryPixelMode
384     GFXSHAREDSTATE_RENDER_CACHE_WRITE_ONLY_ON_MISS,     // RenderCacheReadWriteMode
385     0,                                                  // _Unused1
386     GFXSHAREDSTATE_SURFACE_ARRAY_SPACING_FULL,          // SurfaceArraySpacing
387     0,                                                  // VerticalLineStrideOffset
388     0,                                                  // VerticalLineStride
389     GFXSHAREDSTATE_TILEWALK_YMAJOR,                     // TileWalk
390     false,                                              // TiledSurface
391     0,                                                  // _Unused2
392     GFXSHAREDSTATE_SURFACEFORMAT_R8G8B8A8_UNORM,        // SurfaceFormat
393     0,                                                  // _Unused3
394     false,                                              // SurfaceArray
395     GFXSHAREDSTATE_SURFACETYPE_NULL                     // SurfaceType
396 };
397 
398 /*****************************************************************************\
399 CONST: g_cInitSharedStateSurfaceStateDW0Gen8
400 \*****************************************************************************/
401 static const SSharedStateSurfaceState::_DW0::_Gen8   g_cInitSharedStateSurfaceStateDW0Gen8 =
402 {
403     0,                                                  // CubeFaceEnablesPositiveZ
404     0,                                                  // CubeFaceEnablesNegativeZ
405     0,                                                  // CubeFaceEnablesPositiveY
406     0,                                                  // CubeFaceEnablesNegativeY
407     0,                                                  // CubeFaceEnablesPositiveX
408     0,                                                  // CubeFaceEnablesNegativeX
409     GFXSHAREDSTATE_MEDIA_BOUNDARY_PIXEL_NORMAL,         // MediaBoundaryPixelMode
410     GFXSHAREDSTATE_RENDER_CACHE_WRITE_ONLY_ON_MISS,     // RenderCacheReadWriteMode
411     0,                                                  // SurfaceArraySpace
412     0,                                                  // VerticalLineStrideOffset
413     0,                                                  // VerticalLineStride
414     GFXSHAREDSTATE_TILEMODE_YMAJOR,                     // TileMode
415     GFXSHAREDSTATE_SURFACE_HORIZONTAL_ALIGNMENT_16,     // SurfaceHorizontalAlignment
416     GFXSHAREDSTATE_SURFACE_VERTICAL_ALIGNMENT_16,       // SurfaceVerticalAlignment
417     GFXSHAREDSTATE_SURFACEFORMAT_R8G8B8A8_UNORM,        // SurfaceFormat
418     0,                                                  // _Unused
419     false,                                              // SurfaceArray
420     GFXSHAREDSTATE_SURFACETYPE_NULL                     // SurfaceType
421 };
422 
423 /*****************************************************************************\
424 CONST: g_cInitSharedStateSurfaceStateDW0Gen9
425 \*****************************************************************************/
426 static const SSharedStateSurfaceState::_DW0::_Gen9   g_cInitSharedStateSurfaceStateDW0Gen9 =
427 {
428     0,                                                  // CubeFaceEnablesPositiveZ
429     0,                                                  // CubeFaceEnablesNegativeZ
430     0,                                                  // CubeFaceEnablesPositiveY
431     0,                                                  // CubeFaceEnablesNegativeY
432     0,                                                  // CubeFaceEnablesPositiveX
433     0,                                                  // CubeFaceEnablesNegativeX
434     GFXSHAREDSTATE_MEDIA_BOUNDARY_PIXEL_NORMAL,         // MediaBoundaryPixelMode
435     GFXSHAREDSTATE_RENDER_CACHE_WRITE_ONLY_ON_MISS,     // RenderCacheReadWriteMode
436     0,                                                  // SurfaceArraySpace
437     0,                                                  // VerticalLineStrideOffset
438     0,                                                  // VerticalLineStride
439     GFXSHAREDSTATE_TILEMODE_YMAJOR,                     // TileMode
440     GFXSHAREDSTATE_SURFACE_HORIZONTAL_ALIGNMENT_16,     // SurfaceHorizontalAlignment
441     GFXSHAREDSTATE_SURFACE_VERTICAL_ALIGNMENT_16,       // SurfaceVerticalAlignment
442     GFXSHAREDSTATE_SURFACEFORMAT_R8G8B8A8_UNORM,        // SurfaceFormat
443     false,                                              // ASTCEnable
444     false,                                              // SurfaceArray
445     GFXSHAREDSTATE_SURFACETYPE_NULL                     // SurfaceType
446 };
447 
448 /*****************************************************************************\
449 CONST: g_cInitSharedStateSurfaceStateDW1Gen8
450 \*****************************************************************************/
451 static const SSharedStateSurfaceState::_DW1::_Gen8   g_cInitSharedStateSurfaceStateDW1Gen8 =
452 {
453     0,                                                  // SurfaceQPitch
454     0,                                                  // _Unused1
455     GFXSTATE_SOURCE_AGE_CONTROL_BEST_HIT_CHANCE,        // SurfaceObjectAgeControl
456     false,                                              // EncryptedData
457     GFXSTATE_TARGET_CACHE_ELLC_ONLY,                    // TargetCache
458     GFXSTATE_CACHEABILITY_CONTROL_USE_GTT_ENTRY,        // CacheabilityControl
459     0                                                   // _Unused2
460 };
461 
462 /*****************************************************************************\
463 CONST: g_cInitSharedStateSurfaceStateDW2Gen7
464 \*****************************************************************************/
465 static const SSharedStateSurfaceState::_DW2::_Gen7   g_cInitSharedStateSurfaceStateDW2Gen7 =
466 {
467     0,                                                  // Width
468     0,                                                  // _Unused1
469     0,                                                  // Height
470     0                                                   // _Unused2
471 };
472 
473 /*****************************************************************************\
474 CONST: g_cInitSharedStateSurfaceStateDW2AdvGen7
475 \*****************************************************************************/
476 static const SSharedStateSurfaceState::_DW2::_Gen7_Media g_cInitSharedStateSurfaceStateDW2AdvGen7 =
477 {
478     GFXSHAREDSTATE_TILEWALK_XMAJOR,                     // TileWalk
479     0,                                                  // TiledSurface
480     0,                                                  // HalfPitchforChroma
481     0,                                                  // SurfacePitch
482     0,                                                  // _Unused1
483     0,                                                  // SurfaceObjectControlState
484     0,                                                  // _Unused2
485     0,                                                  // InterleaveChroma
486     0 // MEDIASTATE_SURFACEFORMAT_YCRCB_NORMAL          // SurfaceFormat
487 };
488 
489 /*****************************************************************************\
490 CONST: g_cInitSharedStateSurfaceStateDW3Gen7
491 \*****************************************************************************/
492 static const SSharedStateSurfaceState::_DW3::_Gen7   g_cInitSharedStateSurfaceStateDW3Gen7 =
493 {
494     0,                                                  // SurfacePitch
495     0,                                                  // _Unused
496     0                                                   // Depth
497 };
498 
499 /*****************************************************************************\
500 CONST: g_cInitSharedStateSurfaceStateDW4Gen7
501 \*****************************************************************************/
502 static const SSharedStateSurfaceState::_DW4::_Gen7   g_cInitSharedStateSurfaceStateDW4Gen7 =
503 {
504     {
505         0,                                                  // MultisamplePositionPaletteIndex
506         GFXSHAREDSTATE_NUMSAMPLES_1,                        // NumMultisamples
507         GFXSHAREDSTATE_MSFMT_MSS,                           // MultisampledSurfaceStorageFormat
508         0,                                                  // RenderTargetViewExtent
509         0,                                                  // MinimumArrayElement
510         GFXSHAREDSTATE_RROTATE_0DEG,                        // RenderTargetRotation
511         0                                                   // _Unused
512     }
513 };
514 
515 /*****************************************************************************\
516 CONST: g_cInitSharedStateSurfaceStateDW5Gen7
517 \*****************************************************************************/
518 static const SSharedStateSurfaceState::_DW5::_Gen7   g_cInitSharedStateSurfaceStateDW5Gen7 =
519 {
520     0,                                                  // MIPCountLOD
521     0,                                                  // SurfaceMinLOD
522     0,                                                  // _Unused1
523     GFXSHAREDSTATE_L3_CACHEABILITY_CONTROL_NOT_CACHEABLE,// CacheabilityControlL3
524     GFXSHAREDSTATE_LLC_CACHEABILITY_CONTROL_USE_GTT_ENTRY,// CacheabilityControlLLC
525     GFXSTATE_GFDT_SOURCE_GTT,                           // SurfaceGraphicsDataType
526     false,                                              // SurfaceEncryptedDataEnable
527     0,                                                  // YOffset
528     0,                                                  // _Unused2
529     0                                                   // XOffset
530 };
531 
532 /*****************************************************************************\
533 CONST: g_cInitSharedStateSurfaceStateDW5Gen8
534 \*****************************************************************************/
535 static const SSharedStateSurfaceState::_DW5::_Gen8   g_cInitSharedStateSurfaceStateDW5Gen8 =
536 {
537     0,                                                  // MIPCountLOD
538     0,                                                  // SurfaceMinLOD
539     0,                                                  // _Unused1
540     0,                                                  // YOffset
541     0,                                                  // _Unused2
542     0                                                   // XOffset
543 };
544 
545 /*****************************************************************************\
546 CONST: g_cInitSharedStateSurfaceStateDW5Gen9
547 \*****************************************************************************/
548 static const SSharedStateSurfaceState::_DW5::_Gen9   g_cInitSharedStateSurfaceStateDW5Gen9 =
549 {
550     0,                                                      // MIPCountLOD
551     0,                                                      // SurfaceMinLOD
552     0,                                                      // MipTailStartLOD
553     0,                                                      // _Unused1
554     GFXSHAREDSTATE_NON_COHERENT,                            // GFXSHAREDSTATE_COHERENCY_TYPE
555     GFXSHAREDSTATE_TILED_RESOURCE_VERTICAL_ALIGNMENT_64,    // GFXSHAREDSTATE_TILED_RESOURCE_VERTICAL_ALIGNMENT
556     GFXSHAREDSTATE_TILED_RESOURCE_HORIZONTAL_ALIGNMENT_64,  // GFXSHAREDSTATE_TILED_RESOURCE_HORIZONTAL_ALIGNMENT
557     false,                                                  // TiledResourceEnable
558     0,                                                      // _Unused2
559     0,                                                      // YOffset
560     0,                                                      // _Unused3
561     0                                                       // XOffset
562 };
563 
564 /*****************************************************************************\
565 CONST: g_cInitSharedStateSurfaceStateDW6MCSGen7
566 \*****************************************************************************/
567 static const SSharedStateSurfaceState::_DW6::_Gen7::_SurfaceMCS
568     g_cInitSharedStateSurfaceStateDW6MCSGen7 =
569 {
570     false,                                              // MCSEnable
571     0,                                                  // _Unused
572     0,                                                  // MCSSurfacePitch
573     0                                                   // MCSBaseAddress
574 };
575 
576 /*****************************************************************************\
577 CONST: g_cInitSharedStateSurfaceStateDW6AppendCounterGen7
578 \*****************************************************************************/
579 static const SSharedStateSurfaceState::_DW6::_Gen7::_SurfaceAppendCounter
580     g_cInitSharedStateSurfaceStateDW6AppendCounterGen7 =
581 {
582     false,                                              // AppendCounterEnable
583     0,                                                  // _Unused
584     0                                                   // AppendCounterAddress
585 };
586 
587 /*****************************************************************************\
588 CONST: g_cInitSharedStateSurfaceStateDW6SurfacePlanarGen9
589 \*****************************************************************************/
590 static const SSharedStateSurfaceState::_DW6::_Gen9::_SurfacePlanar
591     g_cInitSharedStateSurfaceStateDW6SurfacePlanarGen9 =
592 {
593     0,                                                  // YOffset
594     0,                                                  // _Unused1
595     0,                                                  // XOffset
596     0                                                   // _Unused2
597 };
598 
599 /*****************************************************************************\
600 CONST: g_cInitSharedStateSurfaceStateDW6SurfaceOtherGen9
601 \*****************************************************************************/
602 static const SSharedStateSurfaceState::_DW6::_Gen9::_SurfaceOther
603     g_cInitSharedStateSurfaceStateDW6SurfaceOtherGen9 =
604 {
605     GFXSHAREDSTATE_AUX_NONE,                            // GFXSHAREDSTATE_AUXILIARY_SURFACE_MODE
606     false,                                              // RenderTargetCompressionEnable
607     0,                                                  // AuxiliarySurfacePitch
608     0,                                                  // _Unused1
609     0,                                                  // AuxilarySurfaceQPitch
610     0                                                   // _Unused2
611 };
612 
613 
614 /*****************************************************************************\
615 CONST: g_cInitSharedStateSurfaceStateDW7Gen7
616 \*****************************************************************************/
617 static const SSharedStateSurfaceState::_DW7::_Gen7   g_cInitSharedStateSurfaceStateDW7Gen7 =
618 {
619     0,                                                  // ResourceMinLOD
620     0,                                                  // _Unused
621     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // AlphaClearColor
622     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // BlueClearColor
623     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // GreenClearColor
624     GFXSHAREDSTATE_CLEARCOLOR_ZERO                      // RedClearColor
625 };
626 
627 /*****************************************************************************\
628 CONST: g_cInitSharedStateSurfaceStateDW7Gen7
629 \*****************************************************************************/
630 static const SSharedStateSurfaceState::_DW7::_Gen7_5    g_cInitSharedStateSurfaceStateDW7Gen7_5 =
631 {
632     0,                                                  // ResourceMinLOD
633     0,                                                  // _Unused
634     GFXSHAREDSTATE_SHADERCHANNELSELECT_ALPHA,           // ShaderChannelSelectA
635     GFXSHAREDSTATE_SHADERCHANNELSELECT_BLUE,            // ShaderChannelSelectB
636     GFXSHAREDSTATE_SHADERCHANNELSELECT_GREEN,           // ShaderChannelSelectG
637     GFXSHAREDSTATE_SHADERCHANNELSELECT_RED,             // ShaderChannelSelectR
638     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // AlphaClearColor
639     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // BlueClearColor
640     GFXSHAREDSTATE_CLEARCOLOR_ZERO,                     // GreenClearColor
641     GFXSHAREDSTATE_CLEARCOLOR_ZERO                      // RedClearColor
642 };
643 
644 /*****************************************************************************\
645 CONST: g_cInitSharedStateSurfaceStateDW7Gen9
646 \*****************************************************************************/
647 static const SSharedStateSurfaceState::_DW7::_Gen9    g_cInitSharedStateSurfaceStateDW7Gen9 =
648 {
649     0,                                                  // ResourceMinLOD
650     0,                                                  // _Unused1
651     GFXSHAREDSTATE_SHADERCHANNELSELECT_ALPHA,           // ShaderChannelSelectA
652     GFXSHAREDSTATE_SHADERCHANNELSELECT_BLUE,            // ShaderChannelSelectB
653     GFXSHAREDSTATE_SHADERCHANNELSELECT_GREEN,           // ShaderChannelSelectG
654     GFXSHAREDSTATE_SHADERCHANNELSELECT_RED,             // ShaderChannelSelectR
655     0                                                   // _Unused2
656 };
657 
658 /*****************************************************************************\
659 CONST: g_cInitSharedStateSurfaceStateDW8Gen8
660 \*****************************************************************************/
661 static const SSharedStateSurfaceState::_DW8::_Gen8    g_cInitSharedStateSurfaceStateDW8Gen8 =
662 {
663     0                                                   // SurfaceBaseAddress
664 };
665 
666 /*****************************************************************************\
667 CONST: g_cInitSharedStateSurfaceStateDW9Gen8
668 \*****************************************************************************/
669 static const SSharedStateSurfaceState::_DW9::_Gen8    g_cInitSharedStateSurfaceStateDW9Gen8 =
670 {
671     0,                                                  // Surface64bitBaseAddress
672     0                                                   // _Unused
673 };
674 
675 /*****************************************************************************\
676 CONST: g_cInitSharedStateSurfaceStateDW10Gen8
677 \*****************************************************************************/
678 static const SSharedStateSurfaceState::_DW10::_Gen8    g_cInitSharedStateSurfaceStateDW10Gen8 =
679 {
680     0                                                   // AuxiliarySurfaceBaseAddress
681 };
682 
683 /*****************************************************************************\
684 CONST: g_cInitSharedStateSurfaceStateDW10Gen8
685 \*****************************************************************************/
686 static const SSharedStateSurfaceState::_DW10::_Gen9::_SurfaceOther    g_cInitSharedStateSurfaceStateDW10SurfaceOtherGen9 =
687 {
688     0,                                                  // QuiltWidth
689     0,                                                  // QuiltHeight
690     0,                                                  // _Unused
691     0                                                   // AuxiliarySurfaceBaseAddress
692 };
693 static const SSharedStateSurfaceState::_DW10::_Gen9::_SurfacePlanar    g_cInitSharedStateSurfaceStateDW10SurfacePlanarGen9 =
694 {
695     0,                                                  // QuiltWidth
696     0,                                                  // QuiltHeight
697     0                                                  // _Unused
698 };
699 
700 /*****************************************************************************\
701 CONST: g_cInitSharedStateSurfaceStateDW11Gen8
702 \*****************************************************************************/
703 static const SSharedStateSurfaceState::_DW11::_Gen8    g_cInitSharedStateSurfaceStateDW11Gen8 =
704 {
705     0,                                                  // Auxiliary64bitBaseAddress
706     0                                                   // _Unused
707 };
708 
709 /*****************************************************************************\
710 CONST: g_cInitSharedStateSurfaceStateDW12Gen8
711 \*****************************************************************************/
712 static const SSharedStateSurfaceState::_DW12::_Gen8    g_cInitSharedStateSurfaceStateDW12Gen8 =
713 {
714     0                                                   // HierarchicalDepthClearValue
715 };
716 
717 /*****************************************************************************\
718 CONST: g_cInitSharedStateSurfaceStateDW12Gen9
719 \*****************************************************************************/
720 static const SSharedStateSurfaceState::_DW12::_Gen9    g_cInitSharedStateSurfaceStateDW12Gen9 =
721 {
722     GFXSHAREDSTATE_CLEARCOLOR_ZERO                     // RedClearColor
723 };
724 
725 /*****************************************************************************\
726 CONST: g_cInitSharedStateSurfaceStateDW13Gen9
727 \*****************************************************************************/
728 static const SSharedStateSurfaceState::_DW13::_Gen9    g_cInitSharedStateSurfaceStateDW13Gen9 =
729 {
730     GFXSHAREDSTATE_CLEARCOLOR_ZERO                     // GreenClearColor
731 };
732 
733 /*****************************************************************************\
734 CONST: g_cInitSharedStateSurfaceStateDW14Gen9
735 \*****************************************************************************/
736 static const SSharedStateSurfaceState::_DW14::_Gen9    g_cInitSharedStateSurfaceStateDW14Gen9 =
737 {
738     GFXSHAREDSTATE_CLEARCOLOR_ZERO                     // BlueClearColor;
739 };
740 
741 /*****************************************************************************\
742 CONST: g_cInitSharedStateSurfaceStateDW15Gen9
743 \*****************************************************************************/
744 static const SSharedStateSurfaceState::_DW15::_Gen9    g_cInitSharedStateSurfaceStateDW15Gen9 =
745 {
746     GFXSHAREDSTATE_CLEARCOLOR_ZERO                     // AlphaClearColor
747 };
748 
749 /*****************************************************************************\
750 CONST: g_cInitSSurfaceStateBufferLength
751 \*****************************************************************************/
752 static const SSurfaceStateBufferLength g_cInitSurfaceStateBufferLength =
753 {
754     //DWORD 0
755     {
756         0,                                              // Width
757         0,                                              // Height
758         0,                                              // Depth
759         0                                               // _Unused
760     }
761 };
762 
763 } // namespace G6HWC
764