Bug 1323791 - Part 4: Add recompiled D3D11 shaders r=bas
authorMiko Mynttinen <mikokm@gmail.com>
Thu, 09 Feb 2017 21:41:27 +0100
changeset 346082 88dd8c893e26601e45bc0da7bb88cc9ab596d483
parent 346081 63608bcf9f431378aec0a0e9cd7000d50ced5071
child 346083 5bf82944a61738b8ae61f3693fa72d4c6367e821
push id31459
push usercbook@mozilla.com
push dateTue, 07 Mar 2017 14:05:14 +0000
treeherdermozilla-central@1fb56ba248d5 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbas
bugs1323791
milestone54.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1323791 - Part 4: Add recompiled D3D11 shaders r=bas MozReview-Commit-ID: 3tnY1wwDmqM
gfx/layers/d3d11/CompositorD3D11Shaders.h
--- a/gfx/layers/d3d11/CompositorD3D11Shaders.h
+++ b/gfx/layers/d3d11/CompositorD3D11Shaders.h
@@ -1,9434 +1,11413 @@
 struct ShaderBytes { const void* mData; size_t mLength; };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
-//   float4x4 mProjection;              // Offset:   64 Size:    64
-//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
-//   float4 vTextureCoords;             // Offset:  144 Size:    16
-//   float4 vLayerQuad;                 // Offset:  160 Size:    16
-//   float4 vMaskQuad;                  // Offset:  176 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
-//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
-//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// POSITION                 0   xy          0     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float   xyzw
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
-// c3         cb0             3         8  ( FLT, FLT, FLT, FLT)
-//
-//
-// Runtime generated constant mappings:
-//
-// Target Reg                               Constant Description
-// ---------- --------------------------------------------------
-// c0                              Vertex Shader position offset
-//
-//
-// Level9 shader bytecode:
-//
-    vs_2_x
-    dcl_texcoord v0
-    mad oT0.xy, v0, c9.zwzw, c9
-    mad r0.xy, v0, c10.zwzw, c10
-    mul r1, r0.y, c2
-    mad r0, c1, r0.x, r1
-    add r0, r0, c3
-    rcp r1.x, r0.w
-    mul r0.xyz, r0, r1.x
-    add r0, r0, -c8
-    mul r0.xyz, r0.w, r0
-    mul r1, r0.y, c5
-    mad r1, c4, r0.x, r1
-    mad r1, c6, r0.z, r1
-    mad r0, c7, r0.w, r1
-    mad oPos.xy, r0.w, c0, r0
-    mov oPos.zw, r0
-
-// approximately 15 instruction slots used
-vs_4_0
-dcl_constantbuffer CB0[11], immediateIndexed
-dcl_input v0.xy
-dcl_output_siv o0.xyzw, position
-dcl_output o1.xy
-dcl_temps 2
-mad r0.xy, v0.xyxx, cb0[10].zwzz, cb0[10].xyxx
-mul r1.xyzw, r0.yyyy, cb0[1].xyzw
-mad r0.xyzw, cb0[0].xyzw, r0.xxxx, r1.xyzw
-add r0.xyzw, r0.xyzw, cb0[3].xyzw
-div r0.xyz, r0.xyzx, r0.wwww
-add r0.xyzw, r0.xyzw, -cb0[8].xyzw
-mul r0.xyz, r0.wwww, r0.xyzx
-mul r1.xyzw, r0.yyyy, cb0[5].xyzw
-mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw
-mad r1.xyzw, cb0[6].xyzw, r0.zzzz, r1.xyzw
-mad o0.xyzw, cb0[7].xyzw, r0.wwww, r1.xyzw
-mad o1.xy, v0.xyxx, cb0[9].zwzz, cb0[9].xyxx
-ret 
-// Approximately 13 instruction slots used
-#endif
-
-const BYTE LayerQuadVS[] =
-{
-     68,  88,  66,  67, 250,  65, 
-     94, 205, 254, 155,  52,  90, 
-     43, 147, 203, 201, 141,  74, 
-     80, 143,   1,   0,   0,   0, 
-     68,   7,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    152,   1,   0,   0, 160,   3, 
-      0,   0,  28,   4,   0,   0, 
-    184,   6,   0,   0, 236,   6, 
-      0,   0,  65, 111, 110,  57, 
-     88,   1,   0,   0,  88,   1, 
-      0,   0,   0,   2, 254, 255, 
-     24,   1,   0,   0,  64,   0, 
-      0,   0,   2,   0,  36,   0, 
-      0,   0,  60,   0,   0,   0, 
-     60,   0,   0,   0,  36,   0, 
-      1,   0,  60,   0,   0,   0, 
-      0,   0,   2,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   8,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   2, 254, 255, 
-     31,   0,   0,   2,   5,   0, 
-      0, 128,   0,   0,  15, 144, 
-      4,   0,   0,   4,   0,   0, 
-      3, 224,   0,   0, 228, 144, 
-      9,   0, 238, 160,   9,   0, 
-    228, 160,   4,   0,   0,   4, 
-      0,   0,   3, 128,   0,   0, 
-    228, 144,  10,   0, 238, 160, 
-     10,   0, 228, 160,   5,   0, 
-      0,   3,   1,   0,  15, 128, 
-      0,   0,  85, 128,   2,   0, 
-    228, 160,   4,   0,   0,   4, 
-      0,   0,  15, 128,   1,   0, 
-    228, 160,   0,   0,   0, 128, 
-      1,   0, 228, 128,   2,   0, 
-      0,   3,   0,   0,  15, 128, 
-      0,   0, 228, 128,   3,   0, 
-    228, 160,   6,   0,   0,   2, 
-      1,   0,   1, 128,   0,   0, 
-    255, 128,   5,   0,   0,   3, 
-      0,   0,   7, 128,   0,   0, 
-    228, 128,   1,   0,   0, 128, 
-      2,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 128, 
-      8,   0, 228, 161,   5,   0, 
-      0,   3,   0,   0,   7, 128, 
-      0,   0, 255, 128,   0,   0, 
-    228, 128,   5,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-     85, 128,   5,   0, 228, 160, 
-      4,   0,   0,   4,   1,   0, 
-     15, 128,   4,   0, 228, 160, 
-      0,   0,   0, 128,   1,   0, 
-    228, 128,   4,   0,   0,   4, 
-      1,   0,  15, 128,   6,   0, 
-    228, 160,   0,   0, 170, 128, 
-      1,   0, 228, 128,   4,   0, 
-      0,   4,   0,   0,  15, 128, 
-      7,   0, 228, 160,   0,   0, 
-    255, 128,   1,   0, 228, 128, 
-      4,   0,   0,   4,   0,   0, 
-      3, 192,   0,   0, 255, 128, 
-      0,   0, 228, 160,   0,   0, 
-    228, 128,   1,   0,   0,   2, 
-      0,   0,  12, 192,   0,   0, 
-    228, 128, 255, 255,   0,   0, 
-     83,  72,  68,  82,   0,   2, 
-      0,   0,  64,   0,   1,   0, 
-    128,   0,   0,   0,  89,   0, 
-      0,   4,  70, 142,  32,   0, 
-      0,   0,   0,   0,  11,   0, 
-      0,   0,  95,   0,   0,   3, 
-     50,  16,  16,   0,   0,   0, 
-      0,   0, 103,   0,   0,   4, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-    101,   0,   0,   3,  50,  32, 
-     16,   0,   1,   0,   0,   0, 
-    104,   0,   0,   2,   2,   0, 
-      0,   0,  50,   0,   0,  11, 
-     50,   0,  16,   0,   0,   0, 
-      0,   0,  70,  16,  16,   0, 
-      0,   0,   0,   0, 230, 138, 
-     32,   0,   0,   0,   0,   0, 
-     10,   0,   0,   0,  70, 128, 
-     32,   0,   0,   0,   0,   0, 
-     10,   0,   0,   0,  56,   0, 
-      0,   8, 242,   0,  16,   0, 
-      1,   0,   0,   0,  86,   5, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     50,   0,   0,  10, 242,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      6,   0,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   8, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-     14,   0,   0,   7, 114,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,   2,  16,   0,   0,   0, 
-      0,   0, 246,  15,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   9, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32, 128,  65,   0, 
-      0,   0,   0,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   7, 114,   0,  16,   0, 
-      0,   0,   0,   0, 246,  15, 
-     16,   0,   0,   0,   0,   0, 
-     70,   2,  16,   0,   0,   0, 
-      0,   0,  56,   0,   0,   8, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  86,   5,  16,   0, 
-      0,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      5,   0,   0,   0,  50,   0, 
-      0,  10, 242,   0,  16,   0, 
-      1,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      4,   0,   0,   0,   6,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   1,   0, 
-      0,   0,  50,   0,   0,  10, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  70, 142,  32,   0, 
-      0,   0,   0,   0,   6,   0, 
-      0,   0, 166,  10,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   1,   0,   0,   0, 
-     50,   0,   0,  10, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   7,   0,   0,   0, 
-    246,  15,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,  50,   0, 
-      0,  11,  50,  32,  16,   0, 
-      1,   0,   0,   0,  70,  16, 
-     16,   0,   0,   0,   0,   0, 
-    230, 138,  32,   0,   0,   0, 
-      0,   0,   9,   0,   0,   0, 
-     70, 128,  32,   0,   0,   0, 
-      0,   0,   9,   0,   0,   0, 
-     62,   0,   0,   1,  83,  84, 
-     65,  84, 116,   0,   0,   0, 
-     13,   0,   0,   0,   2,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,  12,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  82,  68,  69,  70, 
-    148,   2,   0,   0,   1,   0, 
-      0,   0,  72,   0,   0,   0, 
-      1,   0,   0,   0,  28,   0, 
-      0,   0,   0,   4, 254, 255, 
-      0,   1,   0,   0, 108,   2, 
-      0,   0,  60,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,  36,  71, 
-    108, 111,  98,  97, 108, 115, 
-      0, 171, 171, 171,  60,   0, 
-      0,   0,  11,   0,   0,   0, 
-     96,   0,   0,   0,  96,   1, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 104,   1, 
-      0,   0,   0,   0,   0,   0, 
-     64,   0,   0,   0,   2,   0, 
-      0,   0, 120,   1,   0,   0, 
-      0,   0,   0,   0, 136,   1, 
-      0,   0,  64,   0,   0,   0, 
-     64,   0,   0,   0,   2,   0, 
-      0,   0, 120,   1,   0,   0, 
-      0,   0,   0,   0, 148,   1, 
-      0,   0, 128,   0,   0,   0, 
-     16,   0,   0,   0,   2,   0, 
-      0,   0, 168,   1,   0,   0, 
-      0,   0,   0,   0, 184,   1, 
-      0,   0, 144,   0,   0,   0, 
-     16,   0,   0,   0,   2,   0, 
-      0,   0, 200,   1,   0,   0, 
-      0,   0,   0,   0, 216,   1, 
-      0,   0, 160,   0,   0,   0, 
-     16,   0,   0,   0,   2,   0, 
-      0,   0, 200,   1,   0,   0, 
-      0,   0,   0,   0, 227,   1, 
-      0,   0, 176,   0,   0,   0, 
-     16,   0,   0,   0,   0,   0, 
-      0,   0, 200,   1,   0,   0, 
-      0,   0,   0,   0, 237,   1, 
-      0,   0, 192,   0,   0,   0, 
-     64,   0,   0,   0,   0,   0, 
-      0,   0, 120,   1,   0,   0, 
-      0,   0,   0,   0,   0,   2, 
-      0,   0,   0,   1,   0,   0, 
-     16,   0,   0,   0,   0,   0, 
-      0,   0, 168,   1,   0,   0, 
-      0,   0,   0,   0,  12,   2, 
-      0,   0,  16,   1,   0,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,  28,   2,   0,   0, 
-      0,   0,   0,   0,  44,   2, 
-      0,   0,  32,   1,   0,   0, 
-     16,   0,   0,   0,   0,   0, 
-      0,   0,  60,   2,   0,   0, 
-      0,   0,   0,   0,  76,   2, 
-      0,   0,  48,   1,   0,   0, 
-     44,   0,   0,   0,   0,   0, 
-      0,   0,  92,   2,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    118,  84, 101, 120, 116, 117, 
-    114, 101,  67, 111, 111, 114, 
-    100, 115,   0, 171,   1,   0, 
-      3,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 118,  76,  97, 121, 
-    101, 114,  81, 117,  97, 100, 
-      0, 118,  77,  97, 115, 107, 
-     81, 117,  97, 100,   0, 109, 
-     66,  97,  99, 107, 100, 114, 
-    111, 112,  84, 114,  97, 110, 
-    115, 102, 111, 114, 109,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-    102,  76,  97, 121, 101, 114, 
-     79, 112,  97,  99, 105, 116, 
-    121,   0, 171, 171,   0,   0, 
-      3,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 105,  66, 108, 101, 
-    110, 100,  67, 111, 110, 102, 
-    105, 103,   0, 171, 171, 171, 
-      1,   0,  19,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  89, 
-    117, 118,  67, 111, 108, 111, 
-    114,  77,  97, 116, 114, 105, 
-    120,   0,   2,   0,   3,   0, 
-      3,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     77, 105,  99, 114, 111, 115, 
-    111, 102, 116,  32,  40,  82, 
-     41,  32,  72,  76,  83,  76, 
-     32,  83, 104,  97, 100, 101, 
-    114,  32,  67, 111, 109, 112, 
-    105, 108, 101, 114,  32,  49, 
-     48,  46,  49,   0,  73,  83, 
-     71,  78,  44,   0,   0,   0, 
-      1,   0,   0,   0,   8,   0, 
-      0,   0,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   3,   3, 
-      0,   0,  80,  79,  83,  73, 
-     84,  73,  79,  78,   0, 171, 
-    171, 171,  79,  83,  71,  78, 
-     80,   0,   0,   0,   2,   0, 
-      0,   0,   8,   0,   0,   0, 
-     56,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,  15,   0,   0,   0, 
-     68,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   1,   0, 
-      0,   0,   3,  12,   0,   0, 
-     83,  86,  95,  80, 111, 115, 
-    105, 116, 105, 111, 110,   0, 
-     84,  69,  88,  67,  79,  79, 
-     82,  68,   0, 171, 171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
+//   float4x4 mProjection;              // Offset:   64 Size:    64
+//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
+//   float4 vTextureCoords;             // Offset:  144 Size:    16
+//   float4 vLayerQuad;                 // Offset:  160 Size:    16
+//   float4 vMaskQuad;                  // Offset:  176 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
+//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// POSITION                 0   xy          0     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float   xyzw
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
+// c3         cb0             3         8  ( FLT, FLT, FLT, FLT)
+//
+//
+// Runtime generated constant mappings:
+//
+// Target Reg                               Constant Description
+// ---------- --------------------------------------------------
+// c0                              Vertex Shader position offset
+//
+//
+// Level9 shader bytecode:
+//
+    vs_2_x
+    dcl_texcoord v0
+    mad oT0.xy, v0, c9.zwzw, c9
+    mad r0.xy, v0, c10.zwzw, c10
+    mul r1, r0.y, c2
+    mad r0, c1, r0.x, r1
+    add r0, r0, c3
+    rcp r1.x, r0.w
+    mul r0.xyz, r0, r1.x
+    add r0, r0, -c8
+    mul r0.xyz, r0.w, r0
+    mul r1, r0.y, c5
+    mad r1, c4, r0.x, r1
+    mad r1, c6, r0.z, r1
+    mad r0, c7, r0.w, r1
+    mad oPos.xy, r0.w, c0, r0
+    mov oPos.zw, r0
+
+// approximately 15 instruction slots used
+vs_4_0
+dcl_constantbuffer CB0[11], immediateIndexed
+dcl_input v0.xy
+dcl_output_siv o0.xyzw, position
+dcl_output o1.xy
+dcl_temps 2
+mad r0.xy, v0.xyxx, cb0[10].zwzz, cb0[10].xyxx
+mul r1.xyzw, r0.yyyy, cb0[1].xyzw
+mad r0.xyzw, cb0[0].xyzw, r0.xxxx, r1.xyzw
+add r0.xyzw, r0.xyzw, cb0[3].xyzw
+div r0.xyz, r0.xyzx, r0.wwww
+add r0.xyzw, r0.xyzw, -cb0[8].xyzw
+mul r0.xyz, r0.wwww, r0.xyzx
+mul r1.xyzw, r0.yyyy, cb0[5].xyzw
+mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw
+mad r1.xyzw, cb0[6].xyzw, r0.zzzz, r1.xyzw
+mad o0.xyzw, cb0[7].xyzw, r0.wwww, r1.xyzw
+mad o1.xy, v0.xyxx, cb0[9].zwzz, cb0[9].xyxx
+ret 
+// Approximately 13 instruction slots used
+#endif
+
+const BYTE LayerQuadVS[] =
+{
+     68,  88,  66,  67, 250,  65, 
+     94, 205, 254, 155,  52,  90, 
+     43, 147, 203, 201, 141,  74, 
+     80, 143,   1,   0,   0,   0, 
+     68,   7,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    152,   1,   0,   0, 160,   3, 
+      0,   0,  28,   4,   0,   0, 
+    184,   6,   0,   0, 236,   6, 
+      0,   0,  65, 111, 110,  57, 
+     88,   1,   0,   0,  88,   1, 
+      0,   0,   0,   2, 254, 255, 
+     24,   1,   0,   0,  64,   0, 
+      0,   0,   2,   0,  36,   0, 
+      0,   0,  60,   0,   0,   0, 
+     60,   0,   0,   0,  36,   0, 
+      1,   0,  60,   0,   0,   0, 
+      0,   0,   2,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   8,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 254, 255, 
+     31,   0,   0,   2,   5,   0, 
+      0, 128,   0,   0,  15, 144, 
+      4,   0,   0,   4,   0,   0, 
+      3, 224,   0,   0, 228, 144, 
+      9,   0, 238, 160,   9,   0, 
+    228, 160,   4,   0,   0,   4, 
+      0,   0,   3, 128,   0,   0, 
+    228, 144,  10,   0, 238, 160, 
+     10,   0, 228, 160,   5,   0, 
+      0,   3,   1,   0,  15, 128, 
+      0,   0,  85, 128,   2,   0, 
+    228, 160,   4,   0,   0,   4, 
+      0,   0,  15, 128,   1,   0, 
+    228, 160,   0,   0,   0, 128, 
+      1,   0, 228, 128,   2,   0, 
+      0,   3,   0,   0,  15, 128, 
+      0,   0, 228, 128,   3,   0, 
+    228, 160,   6,   0,   0,   2, 
+      1,   0,   1, 128,   0,   0, 
+    255, 128,   5,   0,   0,   3, 
+      0,   0,   7, 128,   0,   0, 
+    228, 128,   1,   0,   0, 128, 
+      2,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 128, 
+      8,   0, 228, 161,   5,   0, 
+      0,   3,   0,   0,   7, 128, 
+      0,   0, 255, 128,   0,   0, 
+    228, 128,   5,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+     85, 128,   5,   0, 228, 160, 
+      4,   0,   0,   4,   1,   0, 
+     15, 128,   4,   0, 228, 160, 
+      0,   0,   0, 128,   1,   0, 
+    228, 128,   4,   0,   0,   4, 
+      1,   0,  15, 128,   6,   0, 
+    228, 160,   0,   0, 170, 128, 
+      1,   0, 228, 128,   4,   0, 
+      0,   4,   0,   0,  15, 128, 
+      7,   0, 228, 160,   0,   0, 
+    255, 128,   1,   0, 228, 128, 
+      4,   0,   0,   4,   0,   0, 
+      3, 192,   0,   0, 255, 128, 
+      0,   0, 228, 160,   0,   0, 
+    228, 128,   1,   0,   0,   2, 
+      0,   0,  12, 192,   0,   0, 
+    228, 128, 255, 255,   0,   0, 
+     83,  72,  68,  82,   0,   2, 
+      0,   0,  64,   0,   1,   0, 
+    128,   0,   0,   0,  89,   0, 
+      0,   4,  70, 142,  32,   0, 
+      0,   0,   0,   0,  11,   0, 
+      0,   0,  95,   0,   0,   3, 
+     50,  16,  16,   0,   0,   0, 
+      0,   0, 103,   0,   0,   4, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3,  50,  32, 
+     16,   0,   1,   0,   0,   0, 
+    104,   0,   0,   2,   2,   0, 
+      0,   0,  50,   0,   0,  11, 
+     50,   0,  16,   0,   0,   0, 
+      0,   0,  70,  16,  16,   0, 
+      0,   0,   0,   0, 230, 138, 
+     32,   0,   0,   0,   0,   0, 
+     10,   0,   0,   0,  70, 128, 
+     32,   0,   0,   0,   0,   0, 
+     10,   0,   0,   0,  56,   0, 
+      0,   8, 242,   0,  16,   0, 
+      1,   0,   0,   0,  86,   5, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     50,   0,   0,  10, 242,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      6,   0,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   8, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+     14,   0,   0,   7, 114,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0, 246,  15,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   9, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32, 128,  65,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   7, 114,   0,  16,   0, 
+      0,   0,   0,   0, 246,  15, 
+     16,   0,   0,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  86,   5,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      1,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,   6,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
+      0,   0,  50,   0,   0,  10, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  70, 142,  32,   0, 
+      0,   0,   0,   0,   6,   0, 
+      0,   0, 166,  10,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   1,   0,   0,   0, 
+     50,   0,   0,  10, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   7,   0,   0,   0, 
+    246,  15,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      1,   0,   0,   0,  50,   0, 
+      0,  11,  50,  32,  16,   0, 
+      1,   0,   0,   0,  70,  16, 
+     16,   0,   0,   0,   0,   0, 
+    230, 138,  32,   0,   0,   0, 
+      0,   0,   9,   0,   0,   0, 
+     70, 128,  32,   0,   0,   0, 
+      0,   0,   9,   0,   0,   0, 
+     62,   0,   0,   1,  83,  84, 
+     65,  84, 116,   0,   0,   0, 
+     13,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,  12,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  82,  68,  69,  70, 
+    148,   2,   0,   0,   1,   0, 
+      0,   0,  72,   0,   0,   0, 
+      1,   0,   0,   0,  28,   0, 
+      0,   0,   0,   4, 254, 255, 
+      0,   1,   0,   0, 108,   2, 
+      0,   0,  60,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,  36,  71, 
+    108, 111,  98,  97, 108, 115, 
+      0, 171, 171, 171,  60,   0, 
+      0,   0,  11,   0,   0,   0, 
+     96,   0,   0,   0,  96,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 104,   1, 
+      0,   0,   0,   0,   0,   0, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0, 136,   1, 
+      0,   0,  64,   0,   0,   0, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0, 148,   1, 
+      0,   0, 128,   0,   0,   0, 
+     16,   0,   0,   0,   2,   0, 
+      0,   0, 168,   1,   0,   0, 
+      0,   0,   0,   0, 184,   1, 
+      0,   0, 144,   0,   0,   0, 
+     16,   0,   0,   0,   2,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 216,   1, 
+      0,   0, 160,   0,   0,   0, 
+     16,   0,   0,   0,   2,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 227,   1, 
+      0,   0, 176,   0,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 237,   1, 
+      0,   0, 192,   0,   0,   0, 
+     64,   0,   0,   0,   0,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0,   0,   2, 
+      0,   0,   0,   1,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 168,   1,   0,   0, 
+      0,   0,   0,   0,  12,   2, 
+      0,   0,  16,   1,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,  28,   2,   0,   0, 
+      0,   0,   0,   0,  44,   2, 
+      0,   0,  32,   1,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0,  60,   2,   0,   0, 
+      0,   0,   0,   0,  76,   2, 
+      0,   0,  48,   1,   0,   0, 
+     44,   0,   0,   0,   0,   0, 
+      0,   0,  92,   2,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  84, 101, 120, 116, 117, 
+    114, 101,  67, 111, 111, 114, 
+    100, 115,   0, 171,   1,   0, 
+      3,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 118,  76,  97, 121, 
+    101, 114,  81, 117,  97, 100, 
+      0, 118,  77,  97, 115, 107, 
+     81, 117,  97, 100,   0, 109, 
+     66,  97,  99, 107, 100, 114, 
+    111, 112,  84, 114,  97, 110, 
+    115, 102, 111, 114, 109,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     77, 105,  99, 114, 111, 115, 
+    111, 102, 116,  32,  40,  82, 
+     41,  32,  72,  76,  83,  76, 
+     32,  83, 104,  97, 100, 101, 
+    114,  32,  67, 111, 109, 112, 
+    105, 108, 101, 114,  32,  49, 
+     48,  46,  49,   0,  73,  83, 
+     71,  78,  44,   0,   0,   0, 
+      1,   0,   0,   0,   8,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   3,   3, 
+      0,   0,  80,  79,  83,  73, 
+     84,  73,  79,  78,   0, 171, 
+    171, 171,  79,  83,  71,  78, 
+     80,   0,   0,   0,   2,   0, 
+      0,   0,   8,   0,   0,   0, 
+     56,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     68,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   3,  12,   0,   0, 
+     83,  86,  95,  80, 111, 115, 
+    105, 116, 105, 111, 110,   0, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,   0, 171, 171, 171
+};
 ShaderBytes sLayerQuadVS = { LayerQuadVS, sizeof(LayerQuadVS) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16
-//   float fLayerOpacity;               // Offset:   16 Size:     4 [unused]
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float       
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             0         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    mov oC0, c0
-
-// approximately 1 instruction slot used
-ps_4_0
-dcl_constantbuffer CB0[1], immediateIndexed
-dcl_output o0.xyzw
-mov o0.xyzw, cb0[0].xyzw
-ret 
-// Approximately 2 instruction slots used
-#endif
-
-const BYTE SolidColorShader[] =
-{
-     68,  88,  66,  67, 181,   3, 
-     20,   0, 202,  78, 164,  59, 
-    210, 171, 118, 253, 118, 104, 
-    133, 184,   1,   0,   0,   0, 
-    112,   4,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    132,   0,   0,   0, 204,   0, 
-      0,   0,  72,   1,   0,   0, 
-    228,   3,   0,   0,  60,   4, 
-      0,   0,  65, 111, 110,  57, 
-     68,   0,   0,   0,  68,   0, 
-      0,   0,   0,   2, 255, 255, 
-     20,   0,   0,   0,  48,   0, 
-      0,   0,   1,   0,  36,   0, 
-      0,   0,  48,   0,   0,   0, 
-     48,   0,   0,   0,  36,   0, 
-      0,   0,  48,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   1,   2, 
-    255, 255,   1,   0,   0,   2, 
-      0,   8,  15, 128,   0,   0, 
-    228, 160, 255, 255,   0,   0, 
-     83,  72,  68,  82,  64,   0, 
-      0,   0,  64,   0,   0,   0, 
-     16,   0,   0,   0,  89,   0, 
-      0,   4,  70, 142,  32,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0,  54,   0,   0,   6, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0,  70, 142,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,   2,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70, 148,   2,   0,   0, 
-      1,   0,   0,   0,  72,   0, 
-      0,   0,   1,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    255, 255,   0,   1,   0,   0, 
-    108,   2,   0,   0,  60,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-     36,  71, 108, 111,  98,  97, 
-    108, 115,   0, 171, 171, 171, 
-     60,   0,   0,   0,  11,   0, 
-      0,   0,  96,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   1,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      2,   0,   0,   0, 116,   1, 
-      0,   0,   0,   0,   0,   0, 
-    132,   1,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0, 148,   1, 
-      0,   0,   0,   0,   0,   0, 
-    164,   1,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 180,   1, 
-      0,   0,   0,   0,   0,   0, 
-    196,   1,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0, 212,   1, 
-      0,   0,   0,   0,   0,   0, 
-    228,   1,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 244,   1, 
-      0,   0,   0,   0,   0,   0, 
-      4,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 244,   1, 
-      0,   0,   0,   0,   0,   0, 
-     16,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 116,   1, 
-      0,   0,   0,   0,   0,   0, 
-     36,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  52,   2, 
-      0,   0,   0,   0,   0,   0, 
-     68,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  52,   2, 
-      0,   0,   0,   0,   0,   0, 
-     79,   2,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  52,   2, 
-      0,   0,   0,   0,   0,   0, 
-     89,   2,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 244,   1, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78,  80,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  68,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,  83,  86, 
-     95,  80, 111, 115, 105, 116, 
-    105, 111, 110,   0,  84,  69, 
-     88,  67,  79,  79,  82,  68, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78,  44,   0,   0,   0, 
-      1,   0,   0,   0,   8,   0, 
-      0,   0,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  83,  86,  95,  84, 
-     97, 114, 103, 101, 116,   0, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
+//   float4x4 mProjection;              // Offset:   64 Size:    64
+//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
+//   float4 vTextureCoords;             // Offset:  144 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  160 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  176 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
+//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// POSITION                 0   xy          0     NONE   float   xy  
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float   xyzw
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
+// c3         cb0             3         6  ( FLT, FLT, FLT, FLT)
+//
+//
+// Runtime generated constant mappings:
+//
+// Target Reg                               Constant Description
+// ---------- --------------------------------------------------
+// c0                              Vertex Shader position offset
+//
+//
+// Level9 shader bytecode:
+//
+    vs_2_x
+    dcl_texcoord v0
+    dcl_texcoord1 v1
+    mul r0, v0.y, c2
+    mad r0, c1, v0.x, r0
+    add r0, r0, c3
+    rcp r1.x, r0.w
+    mul r0.xyz, r0, r1.x
+    add r0, r0, -c8
+    mul r0.xyz, r0.w, r0
+    mul r1, r0.y, c5
+    mad r1, c4, r0.x, r1
+    mad r1, c6, r0.z, r1
+    mad r0, c7, r0.w, r1
+    mad oPos.xy, r0.w, c0, r0
+    mov oPos.zw, r0
+    mov oT0.xy, v1
+
+// approximately 14 instruction slots used
+vs_4_0
+dcl_constantbuffer CB0[9], immediateIndexed
+dcl_input v0.xy
+dcl_input v1.xy
+dcl_output_siv o0.xyzw, position
+dcl_output o1.xy
+dcl_temps 2
+mul r0.xyzw, v0.yyyy, cb0[1].xyzw
+mad r0.xyzw, cb0[0].xyzw, v0.xxxx, r0.xyzw
+add r0.xyzw, r0.xyzw, cb0[3].xyzw
+div r0.xyz, r0.xyzx, r0.wwww
+add r0.xyzw, r0.xyzw, -cb0[8].xyzw
+mul r0.xyz, r0.wwww, r0.xyzx
+mul r1.xyzw, r0.yyyy, cb0[5].xyzw
+mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw
+mad r1.xyzw, cb0[6].xyzw, r0.zzzz, r1.xyzw
+mad o0.xyzw, cb0[7].xyzw, r0.wwww, r1.xyzw
+mov o1.xy, v1.xyxx
+ret 
+// Approximately 12 instruction slots used
+#endif
+
+const BYTE LayerDynamicVS[] =
+{
+     68,  88,  66,  67, 139,  89, 
+    202,  51, 215,  17, 235, 234, 
+    105,  39,  39, 230, 117, 232, 
+    111, 184,   1,   0,   0,   0, 
+     28,   7,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    136,   1,   0,   0,  88,   3, 
+      0,   0, 212,   3,   0,   0, 
+    112,   6,   0,   0, 196,   6, 
+      0,   0,  65, 111, 110,  57, 
+     72,   1,   0,   0,  72,   1, 
+      0,   0,   0,   2, 254, 255, 
+      8,   1,   0,   0,  64,   0, 
+      0,   0,   2,   0,  36,   0, 
+      0,   0,  60,   0,   0,   0, 
+     60,   0,   0,   0,  36,   0, 
+      1,   0,  60,   0,   0,   0, 
+      0,   0,   2,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   6,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 254, 255, 
+     31,   0,   0,   2,   5,   0, 
+      0, 128,   0,   0,  15, 144, 
+     31,   0,   0,   2,   5,   0, 
+      1, 128,   1,   0,  15, 144, 
+      5,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0,  85, 144, 
+      2,   0, 228, 160,   4,   0, 
+      0,   4,   0,   0,  15, 128, 
+      1,   0, 228, 160,   0,   0, 
+      0, 144,   0,   0, 228, 128, 
+      2,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 128, 
+      3,   0, 228, 160,   6,   0, 
+      0,   2,   1,   0,   1, 128, 
+      0,   0, 255, 128,   5,   0, 
+      0,   3,   0,   0,   7, 128, 
+      0,   0, 228, 128,   1,   0, 
+      0, 128,   2,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+    228, 128,   8,   0, 228, 161, 
+      5,   0,   0,   3,   0,   0, 
+      7, 128,   0,   0, 255, 128, 
+      0,   0, 228, 128,   5,   0, 
+      0,   3,   1,   0,  15, 128, 
+      0,   0,  85, 128,   5,   0, 
+    228, 160,   4,   0,   0,   4, 
+      1,   0,  15, 128,   4,   0, 
+    228, 160,   0,   0,   0, 128, 
+      1,   0, 228, 128,   4,   0, 
+      0,   4,   1,   0,  15, 128, 
+      6,   0, 228, 160,   0,   0, 
+    170, 128,   1,   0, 228, 128, 
+      4,   0,   0,   4,   0,   0, 
+     15, 128,   7,   0, 228, 160, 
+      0,   0, 255, 128,   1,   0, 
+    228, 128,   4,   0,   0,   4, 
+      0,   0,   3, 192,   0,   0, 
+    255, 128,   0,   0, 228, 160, 
+      0,   0, 228, 128,   1,   0, 
+      0,   2,   0,   0,  12, 192, 
+      0,   0, 228, 128,   1,   0, 
+      0,   2,   0,   0,   3, 224, 
+      1,   0, 228, 144, 255, 255, 
+      0,   0,  83,  72,  68,  82, 
+    200,   1,   0,   0,  64,   0, 
+      1,   0, 114,   0,   0,   0, 
+     89,   0,   0,   4,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      9,   0,   0,   0,  95,   0, 
+      0,   3,  50,  16,  16,   0, 
+      0,   0,   0,   0,  95,   0, 
+      0,   3,  50,  16,  16,   0, 
+      1,   0,   0,   0, 103,   0, 
+      0,   4, 242,  32,  16,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0, 101,   0,   0,   3, 
+     50,  32,  16,   0,   1,   0, 
+      0,   0, 104,   0,   0,   2, 
+      2,   0,   0,   0,  56,   0, 
+      0,   8, 242,   0,  16,   0, 
+      0,   0,   0,   0,  86,  21, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     50,   0,   0,  10, 242,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      6,  16,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   8, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+     14,   0,   0,   7, 114,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0, 246,  15,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   9, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32, 128,  65,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   7, 114,   0,  16,   0, 
+      0,   0,   0,   0, 246,  15, 
+     16,   0,   0,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  86,   5,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      1,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,   6,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
+      0,   0,  50,   0,   0,  10, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  70, 142,  32,   0, 
+      0,   0,   0,   0,   6,   0, 
+      0,   0, 166,  10,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   1,   0,   0,   0, 
+     50,   0,   0,  10, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   7,   0,   0,   0, 
+    246,  15,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      1,   0,   0,   0,  54,   0, 
+      0,   5,  50,  32,  16,   0, 
+      1,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+     62,   0,   0,   1,  83,  84, 
+     65,  84, 116,   0,   0,   0, 
+     12,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,  10,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  82,  68,  69,  70, 
+    148,   2,   0,   0,   1,   0, 
+      0,   0,  72,   0,   0,   0, 
+      1,   0,   0,   0,  28,   0, 
+      0,   0,   0,   4, 254, 255, 
+      0,   1,   0,   0, 108,   2, 
+      0,   0,  60,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,  36,  71, 
+    108, 111,  98,  97, 108, 115, 
+      0, 171, 171, 171,  60,   0, 
+      0,   0,  11,   0,   0,   0, 
+     96,   0,   0,   0,  96,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 104,   1, 
+      0,   0,   0,   0,   0,   0, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0, 136,   1, 
+      0,   0,  64,   0,   0,   0, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0, 148,   1, 
+      0,   0, 128,   0,   0,   0, 
+     16,   0,   0,   0,   2,   0, 
+      0,   0, 168,   1,   0,   0, 
+      0,   0,   0,   0, 184,   1, 
+      0,   0, 144,   0,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 216,   1, 
+      0,   0, 160,   0,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 227,   1, 
+      0,   0, 176,   0,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 200,   1,   0,   0, 
+      0,   0,   0,   0, 237,   1, 
+      0,   0, 192,   0,   0,   0, 
+     64,   0,   0,   0,   0,   0, 
+      0,   0, 120,   1,   0,   0, 
+      0,   0,   0,   0,   0,   2, 
+      0,   0,   0,   1,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0, 168,   1,   0,   0, 
+      0,   0,   0,   0,  12,   2, 
+      0,   0,  16,   1,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,  28,   2,   0,   0, 
+      0,   0,   0,   0,  44,   2, 
+      0,   0,  32,   1,   0,   0, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0,  60,   2,   0,   0, 
+      0,   0,   0,   0,  76,   2, 
+      0,   0,  48,   1,   0,   0, 
+     44,   0,   0,   0,   0,   0, 
+      0,   0,  92,   2,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  84, 101, 120, 116, 117, 
+    114, 101,  67, 111, 111, 114, 
+    100, 115,   0, 171,   1,   0, 
+      3,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 118,  76,  97, 121, 
+    101, 114,  81, 117,  97, 100, 
+      0, 118,  77,  97, 115, 107, 
+     81, 117,  97, 100,   0, 109, 
+     66,  97,  99, 107, 100, 114, 
+    111, 112,  84, 114,  97, 110, 
+    115, 102, 111, 114, 109,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     77, 105,  99, 114, 111, 115, 
+    111, 102, 116,  32,  40,  82, 
+     41,  32,  72,  76,  83,  76, 
+     32,  83, 104,  97, 100, 101, 
+    114,  32,  67, 111, 109, 112, 
+    105, 108, 101, 114,  32,  49, 
+     48,  46,  49,   0,  73,  83, 
+     71,  78,  76,   0,   0,   0, 
+      2,   0,   0,   0,   8,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   3,   3, 
+      0,   0,  65,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,   3,   3, 
+      0,   0,  80,  79,  83,  73, 
+     84,  73,  79,  78,   0,  84, 
+     69,  88,  67,  79,  79,  82, 
+     68,   0, 171, 171,  79,  83, 
+     71,  78,  80,   0,   0,   0, 
+      2,   0,   0,   0,   8,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  68,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,   3,  12, 
+      0,   0,  83,  86,  95,  80, 
+    111, 115, 105, 116, 105, 111, 
+    110,   0,  84,  69,  88,  67, 
+     79,  79,  82,  68,   0, 171, 
+    171, 171
+};
+ShaderBytes sLayerDynamicVS = { LayerDynamicVS, sizeof(LayerDynamicVS) };
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16
+//   float fLayerOpacity;               // Offset:   16 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float       
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             0         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    mov oC0, c0
+
+// approximately 1 instruction slot used
+ps_4_0
+dcl_constantbuffer CB0[1], immediateIndexed
+dcl_output o0.xyzw
+mov o0.xyzw, cb0[0].xyzw
+ret 
+// Approximately 2 instruction slots used
+#endif
+
+const BYTE SolidColorShader[] =
+{
+     68,  88,  66,  67, 181,   3, 
+     20,   0, 202,  78, 164,  59, 
+    210, 171, 118, 253, 118, 104, 
+    133, 184,   1,   0,   0,   0, 
+    112,   4,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    132,   0,   0,   0, 204,   0, 
+      0,   0,  72,   1,   0,   0, 
+    228,   3,   0,   0,  60,   4, 
+      0,   0,  65, 111, 110,  57, 
+     68,   0,   0,   0,  68,   0, 
+      0,   0,   0,   2, 255, 255, 
+     20,   0,   0,   0,  48,   0, 
+      0,   0,   1,   0,  36,   0, 
+      0,   0,  48,   0,   0,   0, 
+     48,   0,   0,   0,  36,   0, 
+      0,   0,  48,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   1,   2, 
+    255, 255,   1,   0,   0,   2, 
+      0,   8,  15, 128,   0,   0, 
+    228, 160, 255, 255,   0,   0, 
+     83,  72,  68,  82,  64,   0, 
+      0,   0,  64,   0,   0,   0, 
+     16,   0,   0,   0,  89,   0, 
+      0,   4,  70, 142,  32,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0, 101,   0,   0,   3, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,  54,   0,   0,   6, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,  70, 142,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,   2,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70, 148,   2,   0,   0, 
+      1,   0,   0,   0,  72,   0, 
+      0,   0,   1,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    255, 255,   0,   1,   0,   0, 
+    108,   2,   0,   0,  60,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+     36,  71, 108, 111,  98,  97, 
+    108, 115,   0, 171, 171, 171, 
+     60,   0,   0,   0,  11,   0, 
+      0,   0,  96,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   1,   0,   0,   0,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 116,   1, 
+      0,   0,   0,   0,   0,   0, 
+    132,   1,   0,   0,  16,   0, 
+      0,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0, 148,   1, 
+      0,   0,   0,   0,   0,   0, 
+    164,   1,   0,   0,  32,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 180,   1, 
+      0,   0,   0,   0,   0,   0, 
+    196,   1,   0,   0,  48,   0, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0, 212,   1, 
+      0,   0,   0,   0,   0,   0, 
+    228,   1,   0,   0,  96,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 244,   1, 
+      0,   0,   0,   0,   0,   0, 
+      4,   2,   0,   0, 160,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 244,   1, 
+      0,   0,   0,   0,   0,   0, 
+     16,   2,   0,   0, 224,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 116,   1, 
+      0,   0,   0,   0,   0,   0, 
+     36,   2,   0,   0, 240,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  52,   2, 
+      0,   0,   0,   0,   0,   0, 
+     68,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  52,   2, 
+      0,   0,   0,   0,   0,   0, 
+     79,   2,   0,   0,  16,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  52,   2, 
+      0,   0,   0,   0,   0,   0, 
+     89,   2,   0,   0,  32,   1, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 244,   1, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 102,  76, 
+     97, 121, 101, 114,  79, 112, 
+     97,  99, 105, 116, 121,   0, 
+    171, 171,   0,   0,   3,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    105,  66, 108, 101, 110, 100, 
+     67, 111, 110, 102, 105, 103, 
+      0, 171, 171, 171,   1,   0, 
+     19,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  89, 117, 118, 
+     67, 111, 108, 111, 114,  77, 
+     97, 116, 114, 105, 120,   0, 
+      2,   0,   3,   0,   3,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  80,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  68,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78,  44,   0,   0,   0, 
+      1,   0,   0,   0,   8,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  83,  86,  95,  84, 
+     97, 114, 103, 101, 116,   0, 
+    171, 171
+};
 ShaderBytes sSolidColorShader = { SolidColorShader, sizeof(SolidColorShader) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    dcl t0.xy
-    dcl_2d s0
-    texld r0, t0, s0
-    mul r0.xyz, r0, c0.x
-    mov r0.w, c0.x
-    mov oC0, r0
-
-// approximately 4 instruction slots used (1 texture, 3 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_input_ps linear v1.xy
-dcl_output o0.xyzw
-dcl_temps 1
-sample r0.xyzw, v1.xyxx, t0.xyzw, s0
-mul o0.xyz, r0.xyzx, cb0[1].xxxx
-mov o0.w, cb0[1].x
-ret 
-// Approximately 4 instruction slots used
-#endif
-
-const BYTE RGBShader[] =
-{
-     68,  88,  66,  67, 181,  57, 
-    113, 191, 104, 206, 206,  65, 
-    235, 158,  87, 241, 179, 224, 
-     69, 235,   1,   0,   0,   0, 
-    120,   5,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    204,   0,   0,   0, 136,   1, 
-      0,   0,   4,   2,   0,   0, 
-    236,   4,   0,   0,  68,   5, 
-      0,   0,  65, 111, 110,  57, 
-    140,   0,   0,   0, 140,   0, 
-      0,   0,   0,   2, 255, 255, 
-     88,   0,   0,   0,  52,   0, 
-      0,   0,   1,   0,  40,   0, 
-      0,   0,  52,   0,   0,   0, 
-     52,   0,   1,   0,  36,   0, 
-      0,   0,  52,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   1,   2, 255, 255, 
-     31,   0,   0,   2,   0,   0, 
-      0, 128,   0,   0,   3, 176, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   0,   8,  15, 160, 
-     66,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 176, 
-      0,   8, 228, 160,   5,   0, 
-      0,   3,   0,   0,   7, 128, 
-      0,   0, 228, 128,   0,   0, 
-      0, 160,   1,   0,   0,   2, 
-      0,   0,   8, 128,   0,   0, 
-      0, 160,   1,   0,   0,   2, 
-      0,   8,  15, 128,   0,   0, 
-    228, 128, 255, 255,   0,   0, 
-     83,  72,  68,  82, 180,   0, 
-      0,   0,  64,   0,   0,   0, 
-     45,   0,   0,   0,  89,   0, 
-      0,   4,  70, 142,  32,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,  90,   0,   0,   3, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   0,   0, 
-      0,   0,  85,  85,   0,   0, 
-     98,  16,   0,   3,  50,  16, 
-     16,   0,   1,   0,   0,   0, 
-    101,   0,   0,   3, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-    104,   0,   0,   2,   1,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   0,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  56,   0,   0,   8, 
-    114,  32,  16,   0,   0,   0, 
-      0,   0,  70,   2,  16,   0, 
-      0,   0,   0,   0,   6, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  54,   0, 
-      0,   6, 130,  32,  16,   0, 
-      0,   0,   0,   0,  10, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  62,   0, 
-      0,   1,  83,  84,  65,  84, 
-    116,   0,   0,   0,   4,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     82,  68,  69,  70, 224,   2, 
-      0,   0,   1,   0,   0,   0, 
-    148,   0,   0,   0,   3,   0, 
-      0,   0,  28,   0,   0,   0, 
-      0,   4, 255, 255,   0,   1, 
-      0,   0, 184,   2,   0,   0, 
-    124,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   1,   0, 
-      0,   0, 133,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 138,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  82,  71, 
-     66,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    138,   0,   0,   0,  11,   0, 
-      0,   0, 172,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    180,   1,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 192,   1, 
-      0,   0,   0,   0,   0,   0, 
-    208,   1,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      2,   0,   0,   0, 224,   1, 
-      0,   0,   0,   0,   0,   0, 
-    240,   1,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,   0,   2, 
-      0,   0,   0,   0,   0,   0, 
-     16,   2,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0,  32,   2, 
-      0,   0,   0,   0,   0,   0, 
-     48,   2,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-     80,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-     92,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 192,   1, 
-      0,   0,   0,   0,   0,   0, 
-    112,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    144,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    155,   2,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    165,   2,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78,  80,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  68,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   3,   0,   0,  83,  86, 
-     95,  80, 111, 115, 105, 116, 
-    105, 111, 110,   0,  84,  69, 
-     88,  67,  79,  79,  82,  68, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78,  44,   0,   0,   0, 
-      1,   0,   0,   0,   8,   0, 
-      0,   0,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  83,  86,  95,  84, 
-     97, 114, 103, 101, 116,   0, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tRGB                              texture  float4          2d             t0      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t0               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    dcl t0.xy
+    dcl_2d s0
+    texld r0, t0, s0
+    mul r0.xyz, r0, c0.x
+    mov r0.w, c0.x
+    mov oC0, r0
+
+// approximately 4 instruction slots used (1 texture, 3 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[2], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_input_ps linear v1.xy
+dcl_output o0.xyzw
+dcl_temps 1
+sample r0.xyzw, v1.xyxx, t0.xyzw, s0
+mul o0.xyz, r0.xyzx, cb0[1].xxxx
+mov o0.w, cb0[1].x
+ret 
+// Approximately 4 instruction slots used
+#endif
+
+const BYTE RGBShader[] =
+{
+     68,  88,  66,  67, 181,  57, 
+    113, 191, 104, 206, 206,  65, 
+    235, 158,  87, 241, 179, 224, 
+     69, 235,   1,   0,   0,   0, 
+    120,   5,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    204,   0,   0,   0, 136,   1, 
+      0,   0,   4,   2,   0,   0, 
+    236,   4,   0,   0,  68,   5, 
+      0,   0,  65, 111, 110,  57, 
+    140,   0,   0,   0, 140,   0, 
+      0,   0,   0,   2, 255, 255, 
+     88,   0,   0,   0,  52,   0, 
+      0,   0,   1,   0,  40,   0, 
+      0,   0,  52,   0,   0,   0, 
+     52,   0,   1,   0,  36,   0, 
+      0,   0,  52,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 255, 255, 
+     31,   0,   0,   2,   0,   0, 
+      0, 128,   0,   0,   3, 176, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   0,   8,  15, 160, 
+     66,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 176, 
+      0,   8, 228, 160,   5,   0, 
+      0,   3,   0,   0,   7, 128, 
+      0,   0, 228, 128,   0,   0, 
+      0, 160,   1,   0,   0,   2, 
+      0,   0,   8, 128,   0,   0, 
+      0, 160,   1,   0,   0,   2, 
+      0,   8,  15, 128,   0,   0, 
+    228, 128, 255, 255,   0,   0, 
+     83,  72,  68,  82, 180,   0, 
+      0,   0,  64,   0,   0,   0, 
+     45,   0,   0,   0,  89,   0, 
+      0,   4,  70, 142,  32,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,  90,   0,   0,   3, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   0,   0, 
+      0,   0,  85,  85,   0,   0, 
+     98,  16,   0,   3,  50,  16, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+    104,   0,   0,   2,   1,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   0,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  56,   0,   0,   8, 
+    114,  32,  16,   0,   0,   0, 
+      0,   0,  70,   2,  16,   0, 
+      0,   0,   0,   0,   6, 128, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  54,   0, 
+      0,   6, 130,  32,  16,   0, 
+      0,   0,   0,   0,  10, 128, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  62,   0, 
+      0,   1,  83,  84,  65,  84, 
+    116,   0,   0,   0,   4,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     82,  68,  69,  70, 224,   2, 
+      0,   0,   1,   0,   0,   0, 
+    148,   0,   0,   0,   3,   0, 
+      0,   0,  28,   0,   0,   0, 
+      0,   4, 255, 255,   0,   1, 
+      0,   0, 184,   2,   0,   0, 
+    124,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0, 133,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 138,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  82,  71, 
+     66,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    138,   0,   0,   0,  11,   0, 
+      0,   0, 172,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    180,   1,   0,   0,   0,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 192,   1, 
+      0,   0,   0,   0,   0,   0, 
+    208,   1,   0,   0,  16,   0, 
+      0,   0,   4,   0,   0,   0, 
+      2,   0,   0,   0, 224,   1, 
+      0,   0,   0,   0,   0,   0, 
+    240,   1,   0,   0,  32,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   2, 
+      0,   0,   0,   0,   0,   0, 
+     16,   2,   0,   0,  48,   0, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0,  32,   2, 
+      0,   0,   0,   0,   0,   0, 
+     48,   2,   0,   0,  96,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+     80,   2,   0,   0, 160,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+     92,   2,   0,   0, 224,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 192,   1, 
+      0,   0,   0,   0,   0,   0, 
+    112,   2,   0,   0, 240,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    144,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    155,   2,   0,   0,  16,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    165,   2,   0,   0,  32,   1, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 102,  76, 
+     97, 121, 101, 114,  79, 112, 
+     97,  99, 105, 116, 121,   0, 
+    171, 171,   0,   0,   3,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    105,  66, 108, 101, 110, 100, 
+     67, 111, 110, 102, 105, 103, 
+      0, 171, 171, 171,   1,   0, 
+     19,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  89, 117, 118, 
+     67, 111, 108, 111, 114,  77, 
+     97, 116, 114, 105, 120,   0, 
+      2,   0,   3,   0,   3,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  80,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  68,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78,  44,   0,   0,   0, 
+      1,   0,   0,   0,   8,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  83,  86,  95,  84, 
+     97, 114, 103, 101, 116,   0, 
+    171, 171
+};
 ShaderBytes sRGBShader = { RGBShader, sizeof(RGBShader) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    dcl t0.xy
-    dcl_2d s0
-    texld r0, t0, s0
-    mul r0, r0, c0.x
-    mov oC0, r0
-
-// approximately 3 instruction slots used (1 texture, 2 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_input_ps linear v1.xy
-dcl_output o0.xyzw
-dcl_temps 1
-sample r0.xyzw, v1.xyxx, t0.xyzw, s0
-mul o0.xyzw, r0.xyzw, cb0[1].xxxx
-ret 
-// Approximately 3 instruction slots used
-#endif
-
-const BYTE RGBAShader[] =
-{
-     68,  88,  66,  67,   0,  64, 
-     93, 222,  73, 216, 128,  20, 
-     42,  69,  82, 179, 209, 122, 
-    136, 190,   1,   0,   0,   0, 
-     84,   5,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    192,   0,   0,   0, 100,   1, 
-      0,   0, 224,   1,   0,   0, 
-    200,   4,   0,   0,  32,   5, 
-      0,   0,  65, 111, 110,  57, 
-    128,   0,   0,   0, 128,   0, 
-      0,   0,   0,   2, 255, 255, 
-     76,   0,   0,   0,  52,   0, 
-      0,   0,   1,   0,  40,   0, 
-      0,   0,  52,   0,   0,   0, 
-     52,   0,   1,   0,  36,   0, 
-      0,   0,  52,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   1,   2, 255, 255, 
-     31,   0,   0,   2,   0,   0, 
-      0, 128,   0,   0,   3, 176, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   0,   8,  15, 160, 
-     66,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 176, 
-      0,   8, 228, 160,   5,   0, 
-      0,   3,   0,   0,  15, 128, 
-      0,   0, 228, 128,   0,   0, 
-      0, 160,   1,   0,   0,   2, 
-      0,   8,  15, 128,   0,   0, 
-    228, 128, 255, 255,   0,   0, 
-     83,  72,  68,  82, 156,   0, 
-      0,   0,  64,   0,   0,   0, 
-     39,   0,   0,   0,  89,   0, 
-      0,   4,  70, 142,  32,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,  90,   0,   0,   3, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   0,   0, 
-      0,   0,  85,  85,   0,   0, 
-     98,  16,   0,   3,  50,  16, 
-     16,   0,   1,   0,   0,   0, 
-    101,   0,   0,   3, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-    104,   0,   0,   2,   1,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   0,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  56,   0,   0,   8, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      0,   0,   0,   0,   6, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  62,   0, 
-      0,   1,  83,  84,  65,  84, 
-    116,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     82,  68,  69,  70, 224,   2, 
-      0,   0,   1,   0,   0,   0, 
-    148,   0,   0,   0,   3,   0, 
-      0,   0,  28,   0,   0,   0, 
-      0,   4, 255, 255,   0,   1, 
-      0,   0, 184,   2,   0,   0, 
-    124,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   1,   0, 
-      0,   0, 133,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 138,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  82,  71, 
-     66,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    138,   0,   0,   0,  11,   0, 
-      0,   0, 172,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    180,   1,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 192,   1, 
-      0,   0,   0,   0,   0,   0, 
-    208,   1,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      2,   0,   0,   0, 224,   1, 
-      0,   0,   0,   0,   0,   0, 
-    240,   1,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,   0,   2, 
-      0,   0,   0,   0,   0,   0, 
-     16,   2,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0,  32,   2, 
-      0,   0,   0,   0,   0,   0, 
-     48,   2,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-     80,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-     92,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 192,   1, 
-      0,   0,   0,   0,   0,   0, 
-    112,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    144,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    155,   2,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 128,   2, 
-      0,   0,   0,   0,   0,   0, 
-    165,   2,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0,  64,   2, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78,  80,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  68,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   3,   0,   0,  83,  86, 
-     95,  80, 111, 115, 105, 116, 
-    105, 111, 110,   0,  84,  69, 
-     88,  67,  79,  79,  82,  68, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78,  44,   0,   0,   0, 
-      1,   0,   0,   0,   8,   0, 
-      0,   0,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  83,  86,  95,  84, 
-     97, 114, 103, 101, 116,   0, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tRGB                              texture  float4          2d             t0      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t0               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    dcl t0.xy
+    dcl_2d s0
+    texld r0, t0, s0
+    mul r0, r0, c0.x
+    mov oC0, r0
+
+// approximately 3 instruction slots used (1 texture, 2 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[2], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_input_ps linear v1.xy
+dcl_output o0.xyzw
+dcl_temps 1
+sample r0.xyzw, v1.xyxx, t0.xyzw, s0
+mul o0.xyzw, r0.xyzw, cb0[1].xxxx
+ret 
+// Approximately 3 instruction slots used
+#endif
+
+const BYTE RGBAShader[] =
+{
+     68,  88,  66,  67,   0,  64, 
+     93, 222,  73, 216, 128,  20, 
+     42,  69,  82, 179, 209, 122, 
+    136, 190,   1,   0,   0,   0, 
+     84,   5,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    192,   0,   0,   0, 100,   1, 
+      0,   0, 224,   1,   0,   0, 
+    200,   4,   0,   0,  32,   5, 
+      0,   0,  65, 111, 110,  57, 
+    128,   0,   0,   0, 128,   0, 
+      0,   0,   0,   2, 255, 255, 
+     76,   0,   0,   0,  52,   0, 
+      0,   0,   1,   0,  40,   0, 
+      0,   0,  52,   0,   0,   0, 
+     52,   0,   1,   0,  36,   0, 
+      0,   0,  52,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 255, 255, 
+     31,   0,   0,   2,   0,   0, 
+      0, 128,   0,   0,   3, 176, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   0,   8,  15, 160, 
+     66,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 176, 
+      0,   8, 228, 160,   5,   0, 
+      0,   3,   0,   0,  15, 128, 
+      0,   0, 228, 128,   0,   0, 
+      0, 160,   1,   0,   0,   2, 
+      0,   8,  15, 128,   0,   0, 
+    228, 128, 255, 255,   0,   0, 
+     83,  72,  68,  82, 156,   0, 
+      0,   0,  64,   0,   0,   0, 
+     39,   0,   0,   0,  89,   0, 
+      0,   4,  70, 142,  32,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,  90,   0,   0,   3, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   0,   0, 
+      0,   0,  85,  85,   0,   0, 
+     98,  16,   0,   3,  50,  16, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+    104,   0,   0,   2,   1,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   0,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      0,   0,   0,   0,   6, 128, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  62,   0, 
+      0,   1,  83,  84,  65,  84, 
+    116,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     82,  68,  69,  70, 224,   2, 
+      0,   0,   1,   0,   0,   0, 
+    148,   0,   0,   0,   3,   0, 
+      0,   0,  28,   0,   0,   0, 
+      0,   4, 255, 255,   0,   1, 
+      0,   0, 184,   2,   0,   0, 
+    124,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0, 133,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 138,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  82,  71, 
+     66,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    138,   0,   0,   0,  11,   0, 
+      0,   0, 172,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    180,   1,   0,   0,   0,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 192,   1, 
+      0,   0,   0,   0,   0,   0, 
+    208,   1,   0,   0,  16,   0, 
+      0,   0,   4,   0,   0,   0, 
+      2,   0,   0,   0, 224,   1, 
+      0,   0,   0,   0,   0,   0, 
+    240,   1,   0,   0,  32,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   2, 
+      0,   0,   0,   0,   0,   0, 
+     16,   2,   0,   0,  48,   0, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0,  32,   2, 
+      0,   0,   0,   0,   0,   0, 
+     48,   2,   0,   0,  96,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+     80,   2,   0,   0, 160,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+     92,   2,   0,   0, 224,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 192,   1, 
+      0,   0,   0,   0,   0,   0, 
+    112,   2,   0,   0, 240,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    144,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    155,   2,   0,   0,  16,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 128,   2, 
+      0,   0,   0,   0,   0,   0, 
+    165,   2,   0,   0,  32,   1, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0,  64,   2, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 102,  76, 
+     97, 121, 101, 114,  79, 112, 
+     97,  99, 105, 116, 121,   0, 
+    171, 171,   0,   0,   3,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    105,  66, 108, 101, 110, 100, 
+     67, 111, 110, 102, 105, 103, 
+      0, 171, 171, 171,   1,   0, 
+     19,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  89, 117, 118, 
+     67, 111, 108, 111, 114,  77, 
+     97, 116, 114, 105, 120,   0, 
+      2,   0,   3,   0,   3,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  80,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  68,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78,  44,   0,   0,   0, 
+      1,   0,   0,   0,   8,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  83,  86,  95,  84, 
+     97, 114, 103, 101, 116,   0, 
+    171, 171
+};
 ShaderBytes sRGBAShader = { RGBAShader, sizeof(RGBAShader) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// tRGBWhite                         texture  float4          2d             t4      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-// SV_Target                1   xyzw        1   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-// s1             s0              t4               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    def c1, 1, 0, 0, 0
-    dcl t0.xy
-    dcl_2d s0
-    dcl_2d s1
-    texld r0, t0, s0
-    texld r1, t0, s1
-    add r1, r0, -r1
-    add r1, r1, c1.x
-    mov r0.w, r1.y
-    mul r1, r1, c0.x
-    mov oC1, r1
-    mul r0, r0, c0.x
-    mov oC0, r0
-
-// approximately 9 instruction slots used (2 texture, 7 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t4
-dcl_input_ps linear v1.xy
-dcl_output o0.xyzw
-dcl_output o1.xyzw
-dcl_temps 2
-sample r0.xyzw, v1.xyxx, t4.xyzw, s0
-sample r1.xyzw, v1.xyxx, t0.xyzw, s0
-add r0.xyzw, -r0.xyzw, r1.xyzw
-add r0.xyzw, r0.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
-mov r1.w, r0.y
-mul o1.xyzw, r0.xyzw, cb0[1].xxxx
-mul o0.xyzw, r1.xyzw, cb0[1].xxxx
-ret 
-// Approximately 8 instruction slots used
-#endif
-
-const BYTE ComponentAlphaShader[] =
-{
-     68,  88,  66,  67, 168, 127, 
-    203,  56, 125, 182, 211,  23, 
-    166, 215, 189, 218, 181,  48, 
-    227,  73,   1,   0,   0,   0, 
-    212,   6,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-     64,   1,   0,   0, 160,   2, 
-      0,   0,  28,   3,   0,   0, 
-     48,   6,   0,   0, 136,   6, 
-      0,   0,  65, 111, 110,  57, 
-      0,   1,   0,   0,   0,   1, 
-      0,   0,   0,   2, 255, 255, 
-    200,   0,   0,   0,  56,   0, 
-      0,   0,   1,   0,  44,   0, 
-      0,   0,  56,   0,   0,   0, 
-     56,   0,   2,   0,  36,   0, 
-      0,   0,  56,   0,   0,   0, 
-      0,   0,   4,   0,   1,   0, 
-      0,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   2, 255, 255,  81,   0, 
-      0,   5,   1,   0,  15, 160, 
-      0,   0, 128,  63,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  31,   0, 
-      0,   2,   0,   0,   0, 128, 
-      0,   0,   3, 176,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      0,   8,  15, 160,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      1,   8,  15, 160,  66,   0, 
-      0,   3,   0,   0,  15, 128, 
-      0,   0, 228, 176,   0,   8, 
-    228, 160,  66,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-    228, 176,   1,   8, 228, 160, 
-      2,   0,   0,   3,   1,   0, 
-     15, 128,   0,   0, 228, 128, 
-      1,   0, 228, 129,   2,   0, 
-      0,   3,   1,   0,  15, 128, 
-      1,   0, 228, 128,   1,   0, 
-      0, 160,   1,   0,   0,   2, 
-      0,   0,   8, 128,   1,   0, 
-     85, 128,   5,   0,   0,   3, 
-      1,   0,  15, 128,   1,   0, 
-    228, 128,   0,   0,   0, 160, 
-      1,   0,   0,   2,   1,   8, 
-     15, 128,   1,   0, 228, 128, 
-      5,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 128, 
-      0,   0,   0, 160,   1,   0, 
-      0,   2,   0,   8,  15, 128, 
-      0,   0, 228, 128, 255, 255, 
-      0,   0,  83,  72,  68,  82, 
-     88,   1,   0,   0,  64,   0, 
-      0,   0,  86,   0,   0,   0, 
-     89,   0,   0,   4,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      2,   0,   0,   0,  90,   0, 
-      0,   3,   0,  96,  16,   0, 
-      0,   0,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      0,   0,   0,   0,  85,  85, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   4,   0, 
-      0,   0,  85,  85,   0,   0, 
-     98,  16,   0,   3,  50,  16, 
-     16,   0,   1,   0,   0,   0, 
-    101,   0,   0,   3, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-    101,   0,   0,   3, 242,  32, 
-     16,   0,   1,   0,   0,   0, 
-    104,   0,   0,   2,   2,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   4,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   0,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,   0,   0,   0,   8, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16, 128, 
-     65,   0,   0,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,  10, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-      2,  64,   0,   0,   0,   0, 
-    128,  63,   0,   0, 128,  63, 
-      0,   0, 128,  63,   0,   0, 
-    128,  63,  54,   0,   0,   5, 
-    130,   0,  16,   0,   1,   0, 
-      0,   0,  26,   0,  16,   0, 
-      0,   0,   0,   0,  56,   0, 
-      0,   8, 242,  32,  16,   0, 
-      1,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-      6, 128,  32,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     56,   0,   0,   8, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   1,   0, 
-      0,   0,   6, 128,  32,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,   8,   0,   0,   0, 
-      2,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70,  12,   3,   0,   0, 
-      1,   0,   0,   0, 192,   0, 
-      0,   0,   4,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    255, 255,   0,   1,   0,   0, 
-    228,   2,   0,   0, 156,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-    165,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   0,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 170,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   4,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 180,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  82,  71, 
-     66,   0, 116,  82,  71,  66, 
-     87, 104, 105, 116, 101,   0, 
-     36,  71, 108, 111,  98,  97, 
-    108, 115,   0, 171, 171, 171, 
-    180,   0,   0,   0,  11,   0, 
-      0,   0, 216,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    224,   1,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 236,   1, 
-      0,   0,   0,   0,   0,   0, 
-    252,   1,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      2,   0,   0,   0,  12,   2, 
-      0,   0,   0,   0,   0,   0, 
-     28,   2,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  44,   2, 
-      0,   0,   0,   0,   0,   0, 
-     60,   2,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0,  76,   2, 
-      0,   0,   0,   0,   0,   0, 
-     92,   2,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 108,   2, 
-      0,   0,   0,   0,   0,   0, 
-    124,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 108,   2, 
-      0,   0,   0,   0,   0,   0, 
-    136,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 236,   1, 
-      0,   0,   0,   0,   0,   0, 
-    156,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    188,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    199,   2,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    209,   2,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 108,   2, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78,  80,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  68,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   3,   0,   0,  83,  86, 
-     95,  80, 111, 115, 105, 116, 
-    105, 111, 110,   0,  84,  69, 
-     88,  67,  79,  79,  82,  68, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78,  68,   0,   0,   0, 
-      2,   0,   0,   0,   8,   0, 
-      0,   0,  56,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  56,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      1,   0,   0,   0,  15,   0, 
-      0,   0,  83,  86,  95,  84, 
-     97, 114, 103, 101, 116,   0, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tRGB                              texture  float4          2d             t0      1 
+// tRGBWhite                         texture  float4          2d             t4      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+// SV_Target                1   xyzw        1   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t0               
+// s1             s0              t4               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    def c1, 1, 0, 0, 0
+    dcl t0.xy
+    dcl_2d s0
+    dcl_2d s1
+    texld r0, t0, s0
+    texld r1, t0, s1
+    add r1, r0, -r1
+    add r1, r1, c1.x
+    mov r0.w, r1.y
+    mul r1, r1, c0.x
+    mov oC1, r1
+    mul r0, r0, c0.x
+    mov oC0, r0
+
+// approximately 9 instruction slots used (2 texture, 7 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[2], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_resource_texture2d (float,float,float,float) t4
+dcl_input_ps linear v1.xy
+dcl_output o0.xyzw
+dcl_output o1.xyzw
+dcl_temps 2
+sample r0.xyzw, v1.xyxx, t4.xyzw, s0
+sample r1.xyzw, v1.xyxx, t0.xyzw, s0
+add r0.xyzw, -r0.xyzw, r1.xyzw
+add r0.xyzw, r0.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
+mov r1.w, r0.y
+mul o1.xyzw, r0.xyzw, cb0[1].xxxx
+mul o0.xyzw, r1.xyzw, cb0[1].xxxx
+ret 
+// Approximately 8 instruction slots used
+#endif
+
+const BYTE ComponentAlphaShader[] =
+{
+     68,  88,  66,  67, 168, 127, 
+    203,  56, 125, 182, 211,  23, 
+    166, 215, 189, 218, 181,  48, 
+    227,  73,   1,   0,   0,   0, 
+    212,   6,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     64,   1,   0,   0, 160,   2, 
+      0,   0,  28,   3,   0,   0, 
+     48,   6,   0,   0, 136,   6, 
+      0,   0,  65, 111, 110,  57, 
+      0,   1,   0,   0,   0,   1, 
+      0,   0,   0,   2, 255, 255, 
+    200,   0,   0,   0,  56,   0, 
+      0,   0,   1,   0,  44,   0, 
+      0,   0,  56,   0,   0,   0, 
+     56,   0,   2,   0,  36,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   4,   0,   1,   0, 
+      0,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   2, 255, 255,  81,   0, 
+      0,   5,   1,   0,  15, 160, 
+      0,   0, 128,  63,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  31,   0, 
+      0,   2,   0,   0,   0, 128, 
+      0,   0,   3, 176,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      0,   8,  15, 160,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      1,   8,  15, 160,  66,   0, 
+      0,   3,   0,   0,  15, 128, 
+      0,   0, 228, 176,   0,   8, 
+    228, 160,  66,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+    228, 176,   1,   8, 228, 160, 
+      2,   0,   0,   3,   1,   0, 
+     15, 128,   0,   0, 228, 128, 
+      1,   0, 228, 129,   2,   0, 
+      0,   3,   1,   0,  15, 128, 
+      1,   0, 228, 128,   1,   0, 
+      0, 160,   1,   0,   0,   2, 
+      0,   0,   8, 128,   1,   0, 
+     85, 128,   5,   0,   0,   3, 
+      1,   0,  15, 128,   1,   0, 
+    228, 128,   0,   0,   0, 160, 
+      1,   0,   0,   2,   1,   8, 
+     15, 128,   1,   0, 228, 128, 
+      5,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 128, 
+      0,   0,   0, 160,   1,   0, 
+      0,   2,   0,   8,  15, 128, 
+      0,   0, 228, 128, 255, 255, 
+      0,   0,  83,  72,  68,  82, 
+     88,   1,   0,   0,  64,   0, 
+      0,   0,  86,   0,   0,   0, 
+     89,   0,   0,   4,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,  90,   0, 
+      0,   3,   0,  96,  16,   0, 
+      0,   0,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      0,   0,   0,   0,  85,  85, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   4,   0, 
+      0,   0,  85,  85,   0,   0, 
+     98,  16,   0,   3,  50,  16, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   1,   0,   0,   0, 
+    104,   0,   0,   2,   2,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   4,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   0,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   8, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16, 128, 
+     65,   0,   0,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,  10, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+      2,  64,   0,   0,   0,   0, 
+    128,  63,   0,   0, 128,  63, 
+      0,   0, 128,  63,   0,   0, 
+    128,  63,  54,   0,   0,   5, 
+    130,   0,  16,   0,   1,   0, 
+      0,   0,  26,   0,  16,   0, 
+      0,   0,   0,   0,  56,   0, 
+      0,   8, 242,  32,  16,   0, 
+      1,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+      6, 128,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     56,   0,   0,   8, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
+      0,   0,   6, 128,  32,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,   8,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70,  12,   3,   0,   0, 
+      1,   0,   0,   0, 192,   0, 
+      0,   0,   4,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    255, 255,   0,   1,   0,   0, 
+    228,   2,   0,   0, 156,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+    165,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+      1,   0,   0,   0,  13,   0, 
+      0,   0, 170,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   4,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 180,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  82,  71, 
+     66,   0, 116,  82,  71,  66, 
+     87, 104, 105, 116, 101,   0, 
+     36,  71, 108, 111,  98,  97, 
+    108, 115,   0, 171, 171, 171, 
+    180,   0,   0,   0,  11,   0, 
+      0,   0, 216,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    224,   1,   0,   0,   0,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 236,   1, 
+      0,   0,   0,   0,   0,   0, 
+    252,   1,   0,   0,  16,   0, 
+      0,   0,   4,   0,   0,   0, 
+      2,   0,   0,   0,  12,   2, 
+      0,   0,   0,   0,   0,   0, 
+     28,   2,   0,   0,  32,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  44,   2, 
+      0,   0,   0,   0,   0,   0, 
+     60,   2,   0,   0,  48,   0, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0,  76,   2, 
+      0,   0,   0,   0,   0,   0, 
+     92,   2,   0,   0,  96,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 108,   2, 
+      0,   0,   0,   0,   0,   0, 
+    124,   2,   0,   0, 160,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 108,   2, 
+      0,   0,   0,   0,   0,   0, 
+    136,   2,   0,   0, 224,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 236,   1, 
+      0,   0,   0,   0,   0,   0, 
+    156,   2,   0,   0, 240,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    188,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    199,   2,   0,   0,  16,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    209,   2,   0,   0,  32,   1, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 108,   2, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 102,  76, 
+     97, 121, 101, 114,  79, 112, 
+     97,  99, 105, 116, 121,   0, 
+    171, 171,   0,   0,   3,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    105,  66, 108, 101, 110, 100, 
+     67, 111, 110, 102, 105, 103, 
+      0, 171, 171, 171,   1,   0, 
+     19,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  89, 117, 118, 
+     67, 111, 108, 111, 114,  77, 
+     97, 116, 114, 105, 120,   0, 
+      2,   0,   3,   0,   3,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  80,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  68,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78,  68,   0,   0,   0, 
+      2,   0,   0,   0,   8,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  56,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,  15,   0, 
+      0,   0,  83,  86,  95,  84, 
+     97, 114, 103, 101, 116,   0, 
+    171, 171
+};
 ShaderBytes sComponentAlphaShader = { ComponentAlphaShader, sizeof(ComponentAlphaShader) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tY                                texture  float4          2d             t1      1 
-// tCb                               texture  float4          2d             t2      1 
-// tCr                               texture  float4          2d             t3      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-// c1         cb0             3         3  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t1               
-// s1             s0              t2               
-// s2             s0              t3               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    def c4, -0.0627499968, -0.50195998, 1, 0
-    dcl t0.xy
-    dcl_2d s0
-    dcl_2d s1
-    dcl_2d s2
-    mov r0.w, c4.z
-    texld r1, t0, s1
-    texld r2, t0, s0
-    add r2.x, r2.x, c4.x
-    add r2.y, r1.x, c4.y
-    texld r1, t0, s2
-    add r2.z, r1.x, c4.y
-    dp3 r0.x, c1, r2
-    dp3 r0.y, c2, r2
-    dp3 r0.z, c3, r2
-    mul r0, r0, c0.x
-    mov oC0, r0
-
-// approximately 12 instruction slots used (3 texture, 9 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[6], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t1
-dcl_resource_texture2d (float,float,float,float) t2
-dcl_resource_texture2d (float,float,float,float) t3
-dcl_input_ps linear v1.xy
-dcl_output o0.xyzw
-dcl_temps 3
-mov r0.w, l(1.000000)
-sample r1.xyzw, v1.xyxx, t1.xyzw, s0
-add r1.x, r1.x, l(-0.062750)
-sample r2.xyzw, v1.xyxx, t2.xyzw, s0
-add r1.y, r2.x, l(-0.501960)
-sample r2.xyzw, v1.xyxx, t3.xyzw, s0
-add r1.z, r2.x, l(-0.501960)
-dp3 r0.x, cb0[3].xyzx, r1.xyzx
-dp3 r0.y, cb0[4].xyzx, r1.xyzx
-dp3 r0.z, cb0[5].xyzx, r1.xyzx
-mul o0.xyzw, r0.xyzw, cb0[1].xxxx
-ret 
-// Approximately 12 instruction slots used
-#endif
-
-const BYTE YCbCrShader[] =
-{
-     68,  88,  66,  67,  56, 199, 
-     91,   5, 215, 233, 204,  14, 
-    193, 166, 163,  11, 246, 123, 
-    165,  88,   1,   0,   0,   0, 
-    156,   7,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    144,   1,   0,   0, 100,   3, 
-      0,   0, 224,   3,   0,   0, 
-     16,   7,   0,   0, 104,   7, 
-      0,   0,  65, 111, 110,  57, 
-     80,   1,   0,   0,  80,   1, 
-      0,   0,   0,   2, 255, 255, 
-      8,   1,   0,   0,  72,   0, 
-      0,   0,   2,   0,  48,   0, 
-      0,   0,  72,   0,   0,   0, 
-     72,   0,   3,   0,  36,   0, 
-      0,   0,  72,   0,   1,   0, 
-      0,   0,   2,   0,   1,   0, 
-      3,   0,   2,   0,   0,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   3,   0,   1,   0, 
-      0,   0,   0,   0,   1,   2, 
-    255, 255,  81,   0,   0,   5, 
-      4,   0,  15, 160,  18, 131, 
-    128, 189, 115, 128,   0, 191, 
-      0,   0, 128,  63,   0,   0, 
-      0,   0,  31,   0,   0,   2, 
-      0,   0,   0, 128,   0,   0, 
-      3, 176,  31,   0,   0,   2, 
-      0,   0,   0, 144,   0,   8, 
-     15, 160,  31,   0,   0,   2, 
-      0,   0,   0, 144,   1,   8, 
-     15, 160,  31,   0,   0,   2, 
-      0,   0,   0, 144,   2,   8, 
-     15, 160,   1,   0,   0,   2, 
-      0,   0,   8, 128,   4,   0, 
-    170, 160,  66,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-    228, 176,   1,   8, 228, 160, 
-     66,   0,   0,   3,   2,   0, 
-     15, 128,   0,   0, 228, 176, 
-      0,   8, 228, 160,   2,   0, 
-      0,   3,   2,   0,   1, 128, 
-      2,   0,   0, 128,   4,   0, 
-      0, 160,   2,   0,   0,   3, 
-      2,   0,   2, 128,   1,   0, 
-      0, 128,   4,   0,  85, 160, 
-     66,   0,   0,   3,   1,   0, 
-     15, 128,   0,   0, 228, 176, 
-      2,   8, 228, 160,   2,   0, 
-      0,   3,   2,   0,   4, 128, 
-      1,   0,   0, 128,   4,   0, 
-     85, 160,   8,   0,   0,   3, 
-      0,   0,   1, 128,   1,   0, 
-    228, 160,   2,   0, 228, 128, 
-      8,   0,   0,   3,   0,   0, 
-      2, 128,   2,   0, 228, 160, 
-      2,   0, 228, 128,   8,   0, 
-      0,   3,   0,   0,   4, 128, 
-      3,   0, 228, 160,   2,   0, 
-    228, 128,   5,   0,   0,   3, 
-      0,   0,  15, 128,   0,   0, 
-    228, 128,   0,   0,   0, 160, 
-      1,   0,   0,   2,   0,   8, 
-     15, 128,   0,   0, 228, 128, 
-    255, 255,   0,   0,  83,  72, 
-     68,  82, 204,   1,   0,   0, 
-     64,   0,   0,   0, 115,   0, 
-      0,   0,  89,   0,   0,   4, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   6,   0,   0,   0, 
-     90,   0,   0,   3,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   1,   0,   0,   0, 
-     85,  85,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      2,   0,   0,   0,  85,  85, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   3,   0, 
-      0,   0,  85,  85,   0,   0, 
-     98,  16,   0,   3,  50,  16, 
-     16,   0,   1,   0,   0,   0, 
-    101,   0,   0,   3, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-    104,   0,   0,   2,   3,   0, 
-      0,   0,  54,   0,   0,   5, 
-    130,   0,  16,   0,   0,   0, 
-      0,   0,   1,  64,   0,   0, 
-      0,   0, 128,  63,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      1,   0,   0,   0,  70,  16, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   1,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   7,  18,   0,  16,   0, 
-      1,   0,   0,   0,  10,   0, 
-     16,   0,   1,   0,   0,   0, 
-      1,  64,   0,   0,  18, 131, 
-    128, 189,  69,   0,   0,   9, 
-    242,   0,  16,   0,   2,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   2,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,   0,   0,   0,   7, 
-     34,   0,  16,   0,   1,   0, 
-      0,   0,  10,   0,  16,   0, 
-      2,   0,   0,   0,   1,  64, 
-      0,   0, 115, 128,   0, 191, 
-     69,   0,   0,   9, 242,   0, 
-     16,   0,   2,   0,   0,   0, 
-     70,  16,  16,   0,   1,   0, 
-      0,   0,  70, 126,  16,   0, 
-      3,   0,   0,   0,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-      0,   0,   0,   7,  66,   0, 
-     16,   0,   1,   0,   0,   0, 
-     10,   0,  16,   0,   2,   0, 
-      0,   0,   1,  64,   0,   0, 
-    115, 128,   0, 191,  16,   0, 
-      0,   8,  18,   0,  16,   0, 
-      0,   0,   0,   0,  70, 130, 
-     32,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,  70,   2, 
-     16,   0,   1,   0,   0,   0, 
-     16,   0,   0,   8,  34,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70, 130,  32,   0,   0,   0, 
-      0,   0,   4,   0,   0,   0, 
-     70,   2,  16,   0,   1,   0, 
-      0,   0,  16,   0,   0,   8, 
-     66,   0,  16,   0,   0,   0, 
-      0,   0,  70, 130,  32,   0, 
-      0,   0,   0,   0,   5,   0, 
-      0,   0,  70,   2,  16,   0, 
-      1,   0,   0,   0,  56,   0, 
-      0,   8, 242,  32,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-      6, 128,  32,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     62,   0,   0,   1,  83,  84, 
-     65,  84, 116,   0,   0,   0, 
-     12,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      2,   0,   0,   0,   7,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  82,  68,  69,  70, 
-     40,   3,   0,   0,   1,   0, 
-      0,   0, 220,   0,   0,   0, 
-      5,   0,   0,   0,  28,   0, 
-      0,   0,   0,   4, 255, 255, 
-      0,   1,   0,   0,   0,   3, 
-      0,   0, 188,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      1,   0,   0,   0, 197,   0, 
-      0,   0,   2,   0,   0,   0, 
-      5,   0,   0,   0,   4,   0, 
-      0,   0, 255, 255, 255, 255, 
-      1,   0,   0,   0,   1,   0, 
-      0,   0,  13,   0,   0,   0, 
-    200,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   2,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 204,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 208,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  89,   0, 
-    116,  67,  98,   0, 116,  67, 
-    114,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    171, 171, 208,   0,   0,   0, 
-     11,   0,   0,   0, 244,   0, 
-      0,   0,  96,   1,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 252,   1,   0,   0, 
-      0,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      8,   2,   0,   0,   0,   0, 
-      0,   0,  24,   2,   0,   0, 
-     16,   0,   0,   0,   4,   0, 
-      0,   0,   2,   0,   0,   0, 
-     40,   2,   0,   0,   0,   0, 
-      0,   0,  56,   2,   0,   0, 
-     32,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-     72,   2,   0,   0,   0,   0, 
-      0,   0,  88,   2,   0,   0, 
-     48,   0,   0,   0,  44,   0, 
-      0,   0,   2,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 120,   2,   0,   0, 
-     96,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    136,   2,   0,   0,   0,   0, 
-      0,   0, 152,   2,   0,   0, 
-    160,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    136,   2,   0,   0,   0,   0, 
-      0,   0, 164,   2,   0,   0, 
-    224,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      8,   2,   0,   0,   0,   0, 
-      0,   0, 184,   2,   0,   0, 
-    240,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    200,   2,   0,   0,   0,   0, 
-      0,   0, 216,   2,   0,   0, 
-      0,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    200,   2,   0,   0,   0,   0, 
-      0,   0, 227,   2,   0,   0, 
-     16,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    200,   2,   0,   0,   0,   0, 
-      0,   0, 237,   2,   0,   0, 
-     32,   1,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    136,   2,   0,   0,   0,   0, 
-      0,   0, 102,  76,  97, 121, 
-    101, 114,  67, 111, 108, 111, 
-    114,   0,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     79, 112,  97,  99, 105, 116, 
-    121,   0, 171, 171,   0,   0, 
-      3,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 105,  66, 108, 101, 
-    110, 100,  67, 111, 110, 102, 
-    105, 103,   0, 171, 171, 171, 
-      1,   0,  19,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  89, 
-    117, 118,  67, 111, 108, 111, 
-    114,  77,  97, 116, 114, 105, 
-    120,   0,   2,   0,   3,   0, 
-      3,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  76,  97, 121, 101, 114, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,   3,   0, 
-      3,   0,   4,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  80, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,   0, 118,  82, 101, 110, 
-    100, 101, 114,  84,  97, 114, 
-    103, 101, 116,  79, 102, 102, 
-    115, 101, 116,   0, 118,  84, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 111, 114, 100, 115, 
-      0, 171,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    118,  76,  97, 121, 101, 114, 
-     81, 117,  97, 100,   0, 118, 
-     77,  97, 115, 107,  81, 117, 
-     97, 100,   0, 109,  66,  97, 
-     99, 107, 100, 114, 111, 112, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,  77, 105, 
-     99, 114, 111, 115, 111, 102, 
-    116,  32,  40,  82,  41,  32, 
-     72,  76,  83,  76,  32,  83, 
-    104,  97, 100, 101, 114,  32, 
-     67, 111, 109, 112, 105, 108, 
-    101, 114,  32,  49,  48,  46, 
-     49,   0,  73,  83,  71,  78, 
-     80,   0,   0,   0,   2,   0, 
-      0,   0,   8,   0,   0,   0, 
-     56,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,  15,   0,   0,   0, 
-     68,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   1,   0, 
-      0,   0,   3,   3,   0,   0, 
-     83,  86,  95,  80, 111, 115, 
-    105, 116, 105, 111, 110,   0, 
-     84,  69,  88,  67,  79,  79, 
-     82,  68,   0, 171, 171, 171, 
-     79,  83,  71,  78,  44,   0, 
-      0,   0,   1,   0,   0,   0, 
-      8,   0,   0,   0,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  83,  86, 
-     95,  84,  97, 114, 103, 101, 
-    116,   0, 171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tY                                texture  float4          2d             t1      1 
+// tCb                               texture  float4          2d             t2      1 
+// tCr                               texture  float4          2d             t3      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+// c1         cb0             3         3  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t1               
+// s1             s0              t2               
+// s2             s0              t3               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    def c4, -0.0627499968, -0.50195998, 1, 0
+    dcl t0.xy
+    dcl_2d s0
+    dcl_2d s1
+    dcl_2d s2
+    mov r0.w, c4.z
+    texld r1, t0, s1
+    texld r2, t0, s0
+    add r2.x, r2.x, c4.x
+    add r2.y, r1.x, c4.y
+    texld r1, t0, s2
+    add r2.z, r1.x, c4.y
+    dp3 r0.x, c1, r2
+    dp3 r0.y, c2, r2
+    dp3 r0.z, c3, r2
+    mul r0, r0, c0.x
+    mov oC0, r0
+
+// approximately 12 instruction slots used (3 texture, 9 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[6], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t1
+dcl_resource_texture2d (float,float,float,float) t2
+dcl_resource_texture2d (float,float,float,float) t3
+dcl_input_ps linear v1.xy
+dcl_output o0.xyzw
+dcl_temps 3
+mov r0.w, l(1.000000)
+sample r1.xyzw, v1.xyxx, t1.xyzw, s0
+add r1.x, r1.x, l(-0.062750)
+sample r2.xyzw, v1.xyxx, t2.xyzw, s0
+add r1.y, r2.x, l(-0.501960)
+sample r2.xyzw, v1.xyxx, t3.xyzw, s0
+add r1.z, r2.x, l(-0.501960)
+dp3 r0.x, cb0[3].xyzx, r1.xyzx
+dp3 r0.y, cb0[4].xyzx, r1.xyzx
+dp3 r0.z, cb0[5].xyzx, r1.xyzx
+mul o0.xyzw, r0.xyzw, cb0[1].xxxx
+ret 
+// Approximately 12 instruction slots used
+#endif
+
+const BYTE YCbCrShader[] =
+{
+     68,  88,  66,  67,  56, 199, 
+     91,   5, 215, 233, 204,  14, 
+    193, 166, 163,  11, 246, 123, 
+    165,  88,   1,   0,   0,   0, 
+    156,   7,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    144,   1,   0,   0, 100,   3, 
+      0,   0, 224,   3,   0,   0, 
+     16,   7,   0,   0, 104,   7, 
+      0,   0,  65, 111, 110,  57, 
+     80,   1,   0,   0,  80,   1, 
+      0,   0,   0,   2, 255, 255, 
+      8,   1,   0,   0,  72,   0, 
+      0,   0,   2,   0,  48,   0, 
+      0,   0,  72,   0,   0,   0, 
+     72,   0,   3,   0,  36,   0, 
+      0,   0,  72,   0,   1,   0, 
+      0,   0,   2,   0,   1,   0, 
+      3,   0,   2,   0,   0,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   3,   0,   1,   0, 
+      0,   0,   0,   0,   1,   2, 
+    255, 255,  81,   0,   0,   5, 
+      4,   0,  15, 160,  18, 131, 
+    128, 189, 115, 128,   0, 191, 
+      0,   0, 128,  63,   0,   0, 
+      0,   0,  31,   0,   0,   2, 
+      0,   0,   0, 128,   0,   0, 
+      3, 176,  31,   0,   0,   2, 
+      0,   0,   0, 144,   0,   8, 
+     15, 160,  31,   0,   0,   2, 
+      0,   0,   0, 144,   1,   8, 
+     15, 160,  31,   0,   0,   2, 
+      0,   0,   0, 144,   2,   8, 
+     15, 160,   1,   0,   0,   2, 
+      0,   0,   8, 128,   4,   0, 
+    170, 160,  66,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+    228, 176,   1,   8, 228, 160, 
+     66,   0,   0,   3,   2,   0, 
+     15, 128,   0,   0, 228, 176, 
+      0,   8, 228, 160,   2,   0, 
+      0,   3,   2,   0,   1, 128, 
+      2,   0,   0, 128,   4,   0, 
+      0, 160,   2,   0,   0,   3, 
+      2,   0,   2, 128,   1,   0, 
+      0, 128,   4,   0,  85, 160, 
+     66,   0,   0,   3,   1,   0, 
+     15, 128,   0,   0, 228, 176, 
+      2,   8, 228, 160,   2,   0, 
+      0,   3,   2,   0,   4, 128, 
+      1,   0,   0, 128,   4,   0, 
+     85, 160,   8,   0,   0,   3, 
+      0,   0,   1, 128,   1,   0, 
+    228, 160,   2,   0, 228, 128, 
+      8,   0,   0,   3,   0,   0, 
+      2, 128,   2,   0, 228, 160, 
+      2,   0, 228, 128,   8,   0, 
+      0,   3,   0,   0,   4, 128, 
+      3,   0, 228, 160,   2,   0, 
+    228, 128,   5,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+    228, 128,   0,   0,   0, 160, 
+      1,   0,   0,   2,   0,   8, 
+     15, 128,   0,   0, 228, 128, 
+    255, 255,   0,   0,  83,  72, 
+     68,  82, 204,   1,   0,   0, 
+     64,   0,   0,   0, 115,   0, 
+      0,   0,  89,   0,   0,   4, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   6,   0,   0,   0, 
+     90,   0,   0,   3,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+     88,  24,   0,   4,   0, 112, 
+     16,   0,   1,   0,   0,   0, 
+     85,  85,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      2,   0,   0,   0,  85,  85, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   3,   0, 
+      0,   0,  85,  85,   0,   0, 
+     98,  16,   0,   3,  50,  16, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+    104,   0,   0,   2,   3,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   0,   0, 
+      0,   0,   1,  64,   0,   0, 
+      0,   0, 128,  63,  69,   0, 
+      0,   9, 242,   0,  16,   0, 
+      1,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+     70, 126,  16,   0,   1,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   7,  18,   0,  16,   0, 
+      1,   0,   0,   0,  10,   0, 
+     16,   0,   1,   0,   0,   0, 
+      1,  64,   0,   0,  18, 131, 
+    128, 189,  69,   0,   0,   9, 
+    242,   0,  16,   0,   2,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   2,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   7, 
+     34,   0,  16,   0,   1,   0, 
+      0,   0,  10,   0,  16,   0, 
+      2,   0,   0,   0,   1,  64, 
+      0,   0, 115, 128,   0, 191, 
+     69,   0,   0,   9, 242,   0, 
+     16,   0,   2,   0,   0,   0, 
+     70,  16,  16,   0,   1,   0, 
+      0,   0,  70, 126,  16,   0, 
+      3,   0,   0,   0,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0,   0,   7,  66,   0, 
+     16,   0,   1,   0,   0,   0, 
+     10,   0,  16,   0,   2,   0, 
+      0,   0,   1,  64,   0,   0, 
+    115, 128,   0, 191,  16,   0, 
+      0,   8,  18,   0,  16,   0, 
+      0,   0,   0,   0,  70, 130, 
+     32,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,  70,   2, 
+     16,   0,   1,   0,   0,   0, 
+     16,   0,   0,   8,  34,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 130,  32,   0,   0,   0, 
+      0,   0,   4,   0,   0,   0, 
+     70,   2,  16,   0,   1,   0, 
+      0,   0,  16,   0,   0,   8, 
+     66,   0,  16,   0,   0,   0, 
+      0,   0,  70, 130,  32,   0, 
+      0,   0,   0,   0,   5,   0, 
+      0,   0,  70,   2,  16,   0, 
+      1,   0,   0,   0,  56,   0, 
+      0,   8, 242,  32,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+      6, 128,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     62,   0,   0,   1,  83,  84, 
+     65,  84, 116,   0,   0,   0, 
+     12,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,   7,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  82,  68,  69,  70, 
+     40,   3,   0,   0,   1,   0, 
+      0,   0, 220,   0,   0,   0, 
+      5,   0,   0,   0,  28,   0, 
+      0,   0,   0,   4, 255, 255, 
+      0,   1,   0,   0,   0,   3, 
+      0,   0, 188,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0, 197,   0, 
+      0,   0,   2,   0,   0,   0, 
+      5,   0,   0,   0,   4,   0, 
+      0,   0, 255, 255, 255, 255, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0,  13,   0,   0,   0, 
+    200,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   2,   0,   0,   0, 
+      1,   0,   0,   0,  13,   0, 
+      0,   0, 204,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 208,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  89,   0, 
+    116,  67,  98,   0, 116,  67, 
+    114,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    171, 171, 208,   0,   0,   0, 
+     11,   0,   0,   0, 244,   0, 
+      0,   0,  96,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 252,   1,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   2,   0,   0,   0,   0, 
+      0,   0,  24,   2,   0,   0, 
+     16,   0,   0,   0,   4,   0, 
+      0,   0,   2,   0,   0,   0, 
+     40,   2,   0,   0,   0,   0, 
+      0,   0,  56,   2,   0,   0, 
+     32,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+     72,   2,   0,   0,   0,   0, 
+      0,   0,  88,   2,   0,   0, 
+     48,   0,   0,   0,  44,   0, 
+      0,   0,   2,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 120,   2,   0,   0, 
+     96,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    136,   2,   0,   0,   0,   0, 
+      0,   0, 152,   2,   0,   0, 
+    160,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    136,   2,   0,   0,   0,   0, 
+      0,   0, 164,   2,   0,   0, 
+    224,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   2,   0,   0,   0,   0, 
+      0,   0, 184,   2,   0,   0, 
+    240,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    200,   2,   0,   0,   0,   0, 
+      0,   0, 216,   2,   0,   0, 
+      0,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    200,   2,   0,   0,   0,   0, 
+      0,   0, 227,   2,   0,   0, 
+     16,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    200,   2,   0,   0,   0,   0, 
+      0,   0, 237,   2,   0,   0, 
+     32,   1,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    136,   2,   0,   0,   0,   0, 
+      0,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0, 118,  84, 
+    101, 120, 116, 117, 114, 101, 
+     67, 111, 111, 114, 100, 115, 
+      0, 171,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  76,  97, 121, 101, 114, 
+     81, 117,  97, 100,   0, 118, 
+     77,  97, 115, 107,  81, 117, 
+     97, 100,   0, 109,  66,  97, 
+     99, 107, 100, 114, 111, 112, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  40,  82,  41,  32, 
+     72,  76,  83,  76,  32,  83, 
+    104,  97, 100, 101, 114,  32, 
+     67, 111, 109, 112, 105, 108, 
+    101, 114,  32,  49,  48,  46, 
+     49,   0,  73,  83,  71,  78, 
+     80,   0,   0,   0,   2,   0, 
+      0,   0,   8,   0,   0,   0, 
+     56,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     68,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   3,   3,   0,   0, 
+     83,  86,  95,  80, 111, 115, 
+    105, 116, 105, 111, 110,   0, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,   0, 171, 171, 171, 
+     79,  83,  71,  78,  44,   0, 
+      0,   0,   1,   0,   0,   0, 
+      8,   0,   0,   0,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  83,  86, 
+     95,  84,  97, 114, 103, 101, 
+    116,   0, 171, 171
+};
 ShaderBytes sYCbCrShader = { YCbCrShader, sizeof(YCbCrShader) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
-//   float4x4 mProjection;              // Offset:   64 Size:    64
-//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
-//   float4 vTextureCoords;             // Offset:  144 Size:    16
-//   float4 vLayerQuad;                 // Offset:  160 Size:    16
-//   float4 vMaskQuad;                  // Offset:  176 Size:    16
-//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
-//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
-//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// POSITION                 0   xy          0     NONE   float   xy  
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float   xyzw
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
-// c3         cb0             3         9  ( FLT, FLT, FLT, FLT)
-//
-//
-// Runtime generated constant mappings:
-//
-// Target Reg                               Constant Description
-// ---------- --------------------------------------------------
-// c0                              Vertex Shader position offset
-//
-//
-// Level9 shader bytecode:
-//
-    vs_2_x
-    def c12, 1, 0, 0, 0
-    dcl_texcoord v0
-    mov r0.z, c12.x
-    rcp r0.w, c11.z
-    mad r1.xy, v0, c10.zwzw, c10
-    mul r2, r1.y, c2
-    mad r1, c1, r1.x, r2
-    add r1, r1, c3
-    add r2.xy, r1, -c11
-    mul r0.x, r0.w, r2.x
-    rcp r0.w, c11.w
-    mul r0.y, r0.w, r2.y
-    mul oT1.xyz, r0, r1.w
-    mad oT0.xy, v0, c9.zwzw, c9
-    rcp r0.x, r1.w
-    mul r1.xyz, r0.x, r1
-    add r0, r1, -c8
-    mul r0.xyz, r0.w, r0
-    mul r1, r0.y, c5
-    mad r1, c4, r0.x, r1
-    mad r1, c6, r0.z, r1
-    mad r0, c7, r0.w, r1
-    mad oPos.xy, r0.w, c0, r0
-    mov oPos.zw, r0
-
-// approximately 22 instruction slots used
-vs_4_0
-dcl_constantbuffer CB0[12], immediateIndexed
-dcl_input v0.xy
-dcl_output_siv o0.xyzw, position
-dcl_output o1.xy
-dcl_output o2.xyz
-dcl_temps 4
-mad r0.xy, v0.xyxx, cb0[10].zwzz, cb0[10].xyxx
-mul r1.xyzw, r0.yyyy, cb0[1].xyzw
-mad r0.xyzw, cb0[0].xyzw, r0.xxxx, r1.xyzw
-add r0.xyzw, r0.xyzw, cb0[3].xyzw
-div r1.xyz, r0.xyzx, r0.wwww
-mov r1.w, r0.w
-add r2.xyzw, r1.xyzw, -cb0[8].xyzw
-mul r1.xyz, r2.wwww, r2.xyzx
-mul r3.xyzw, r1.yyyy, cb0[5].xyzw
-mad r3.xyzw, cb0[4].xyzw, r1.xxxx, r3.xyzw
-mad r3.xyzw, cb0[6].xyzw, r1.zzzz, r3.xyzw
-mad o0.xyzw, cb0[7].xyzw, r2.wwww, r3.xyzw
-mad o1.xy, v0.xyxx, cb0[9].zwzz, cb0[9].xyxx
-add r0.xy, r0.xyxx, -cb0[11].xyxx
-div r0.xy, r0.xyxx, cb0[11].zwzz
-mov r0.z, l(1.000000)
-mul o2.xyz, r1.wwww, r0.xyzx
-ret 
-// Approximately 18 instruction slots used
-#endif
-
-const BYTE LayerQuadMaskVS[] =
-{
-     68,  88,  66,  67,  47,  28, 
-    196, 228,  98,  79,  27, 152, 
-    192,  25, 215, 128,  59, 234, 
-    245, 240,   1,   0,   0,   0, 
-    108,   8,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-     20,   2,   0,   0, 176,   4, 
-      0,   0,  44,   5,   0,   0, 
-    200,   7,   0,   0, 252,   7, 
-      0,   0,  65, 111, 110,  57, 
-    212,   1,   0,   0, 212,   1, 
-      0,   0,   0,   2, 254, 255, 
-    148,   1,   0,   0,  64,   0, 
-      0,   0,   2,   0,  36,   0, 
-      0,   0,  60,   0,   0,   0, 
-     60,   0,   0,   0,  36,   0, 
-      1,   0,  60,   0,   0,   0, 
-      0,   0,   2,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   9,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   2, 254, 255, 
-     81,   0,   0,   5,  12,   0, 
-     15, 160,   0,   0, 128,  63, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     31,   0,   0,   2,   5,   0, 
-      0, 128,   0,   0,  15, 144, 
-      1,   0,   0,   2,   0,   0, 
-      4, 128,  12,   0,   0, 160, 
-      6,   0,   0,   2,   0,   0, 
-      8, 128,  11,   0, 170, 160, 
-      4,   0,   0,   4,   1,   0, 
-      3, 128,   0,   0, 228, 144, 
-     10,   0, 238, 160,  10,   0, 
-    228, 160,   5,   0,   0,   3, 
-      2,   0,  15, 128,   1,   0, 
-     85, 128,   2,   0, 228, 160, 
-      4,   0,   0,   4,   1,   0, 
-     15, 128,   1,   0, 228, 160, 
-      1,   0,   0, 128,   2,   0, 
-    228, 128,   2,   0,   0,   3, 
-      1,   0,  15, 128,   1,   0, 
-    228, 128,   3,   0, 228, 160, 
-      2,   0,   0,   3,   2,   0, 
-      3, 128,   1,   0, 228, 128, 
-     11,   0, 228, 161,   5,   0, 
-      0,   3,   0,   0,   1, 128, 
-      0,   0, 255, 128,   2,   0, 
-      0, 128,   6,   0,   0,   2, 
-      0,   0,   8, 128,  11,   0, 
-    255, 160,   5,   0,   0,   3, 
-      0,   0,   2, 128,   0,   0, 
-    255, 128,   2,   0,  85, 128, 
-      5,   0,   0,   3,   1,   0, 
-      7, 224,   0,   0, 228, 128, 
-      1,   0, 255, 128,   4,   0, 
-      0,   4,   0,   0,   3, 224, 
-      0,   0, 228, 144,   9,   0, 
-    238, 160,   9,   0, 228, 160, 
-      6,   0,   0,   2,   0,   0, 
-      1, 128,   1,   0, 255, 128, 
-      5,   0,   0,   3,   1,   0, 
-      7, 128,   0,   0,   0, 128, 
-      1,   0, 228, 128,   2,   0, 
-      0,   3,   0,   0,  15, 128, 
-      1,   0, 228, 128,   8,   0, 
-    228, 161,   5,   0,   0,   3, 
-      0,   0,   7, 128,   0,   0, 
-    255, 128,   0,   0, 228, 128, 
-      5,   0,   0,   3,   1,   0, 
-     15, 128,   0,   0,  85, 128, 
-      5,   0, 228, 160,   4,   0, 
-      0,   4,   1,   0,  15, 128, 
-      4,   0, 228, 160,   0,   0, 
-      0, 128,   1,   0, 228, 128, 
-      4,   0,   0,   4,   1,   0, 
-     15, 128,   6,   0, 228, 160, 
-      0,   0, 170, 128,   1,   0, 
-    228, 128,   4,   0,   0,   4, 
-      0,   0,  15, 128,   7,   0, 
-    228, 160,   0,   0, 255, 128, 
-      1,   0, 228, 128,   4,   0, 
-      0,   4,   0,   0,   3, 192, 
-      0,   0, 255, 128,   0,   0, 
-    228, 160,   0,   0, 228, 128, 
-      1,   0,   0,   2,   0,   0, 
-     12, 192,   0,   0, 228, 128, 
-    255, 255,   0,   0,  83,  72, 
-     68,  82, 148,   2,   0,   0, 
-     64,   0,   1,   0, 165,   0, 
-      0,   0,  89,   0,   0,   4, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,  12,   0,   0,   0, 
-     95,   0,   0,   3,  50,  16, 
-     16,   0,   0,   0,   0,   0, 
-    103,   0,   0,   4, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0, 101,   0, 
-      0,   3,  50,  32,  16,   0, 
-      1,   0,   0,   0, 101,   0, 
-      0,   3, 114,  32,  16,   0, 
-      2,   0,   0,   0, 104,   0, 
-      0,   2,   4,   0,   0,   0, 
-     50,   0,   0,  11,  50,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  16,  16,   0,   0,   0, 
-      0,   0, 230, 138,  32,   0, 
-      0,   0,   0,   0,  10,   0, 
-      0,   0,  70, 128,  32,   0, 
-      0,   0,   0,   0,  10,   0, 
-      0,   0,  56,   0,   0,   8, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  86,   5,  16,   0, 
-      0,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  50,   0, 
-      0,  10, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   6,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   1,   0, 
-      0,   0,   0,   0,   0,   8, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      0,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,  14,   0, 
-      0,   7, 114,   0,  16,   0, 
-      1,   0,   0,   0,  70,   2, 
-     16,   0,   0,   0,   0,   0, 
-    246,  15,  16,   0,   0,   0, 
-      0,   0,  54,   0,   0,   5, 
-    130,   0,  16,   0,   1,   0, 
-      0,   0,  58,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   9, 242,   0,  16,   0, 
-      2,   0,   0,   0,  70,  14, 
-     16,   0,   1,   0,   0,   0, 
-     70, 142,  32, 128,  65,   0, 
-      0,   0,   0,   0,   0,   0, 
-      8,   0,   0,   0,  56,   0, 
-      0,   7, 114,   0,  16,   0, 
-      1,   0,   0,   0, 246,  15, 
-     16,   0,   2,   0,   0,   0, 
-     70,   2,  16,   0,   2,   0, 
-      0,   0,  56,   0,   0,   8, 
-    242,   0,  16,   0,   3,   0, 
-      0,   0,  86,   5,  16,   0, 
-      1,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      5,   0,   0,   0,  50,   0, 
-      0,  10, 242,   0,  16,   0, 
-      3,   0,   0,   0,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      4,   0,   0,   0,   6,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70,  14,  16,   0,   3,   0, 
-      0,   0,  50,   0,   0,  10, 
-    242,   0,  16,   0,   3,   0, 
-      0,   0,  70, 142,  32,   0, 
-      0,   0,   0,   0,   6,   0, 
-      0,   0, 166,  10,  16,   0, 
-      1,   0,   0,   0,  70,  14, 
-     16,   0,   3,   0,   0,   0, 
-     50,   0,   0,  10, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   7,   0,   0,   0, 
-    246,  15,  16,   0,   2,   0, 
-      0,   0,  70,  14,  16,   0, 
-      3,   0,   0,   0,  50,   0, 
-      0,  11,  50,  32,  16,   0, 
-      1,   0,   0,   0,  70,  16, 
-     16,   0,   0,   0,   0,   0, 
-    230, 138,  32,   0,   0,   0, 
-      0,   0,   9,   0,   0,   0, 
-     70, 128,  32,   0,   0,   0, 
-      0,   0,   9,   0,   0,   0, 
-      0,   0,   0,   9,  50,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,   0,  16,   0,   0,   0, 
-      0,   0,  70, 128,  32, 128, 
-     65,   0,   0,   0,   0,   0, 
-      0,   0,  11,   0,   0,   0, 
-     14,   0,   0,   8,  50,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,   0,  16,   0,   0,   0, 
-      0,   0, 230, 138,  32,   0, 
-      0,   0,   0,   0,  11,   0, 
-      0,   0,  54,   0,   0,   5, 
-     66,   0,  16,   0,   0,   0, 
-      0,   0,   1,  64,   0,   0, 
-      0,   0, 128,  63,  56,   0, 
-      0,   7, 114,  32,  16,   0, 
-      2,   0,   0,   0, 246,  15, 
-     16,   0,   1,   0,   0,   0, 
-     70,   2,  16,   0,   0,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,  18,   0,   0,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   4,   0,   0,   0, 
-     15,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      2,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70, 148,   2,   0,   0, 
-      1,   0,   0,   0,  72,   0, 
-      0,   0,   1,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    254, 255,   0,   1,   0,   0, 
-    108,   2,   0,   0,  60,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-     36,  71, 108, 111,  98,  97, 
-    108, 115,   0, 171, 171, 171, 
-     60,   0,   0,   0,  11,   0, 
-      0,   0,  96,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   1,   0,   0,   0,   0, 
-      0,   0,  64,   0,   0,   0, 
-      2,   0,   0,   0, 120,   1, 
-      0,   0,   0,   0,   0,   0, 
-    136,   1,   0,   0,  64,   0, 
-      0,   0,  64,   0,   0,   0, 
-      2,   0,   0,   0, 120,   1, 
-      0,   0,   0,   0,   0,   0, 
-    148,   1,   0,   0, 128,   0, 
-      0,   0,  16,   0,   0,   0, 
-      2,   0,   0,   0, 168,   1, 
-      0,   0,   0,   0,   0,   0, 
-    184,   1,   0,   0, 144,   0, 
-      0,   0,  16,   0,   0,   0, 
-      2,   0,   0,   0, 200,   1, 
-      0,   0,   0,   0,   0,   0, 
-    216,   1,   0,   0, 160,   0, 
-      0,   0,  16,   0,   0,   0, 
-      2,   0,   0,   0, 200,   1, 
-      0,   0,   0,   0,   0,   0, 
-    227,   1,   0,   0, 176,   0, 
-      0,   0,  16,   0,   0,   0, 
-      2,   0,   0,   0, 200,   1, 
-      0,   0,   0,   0,   0,   0, 
-    237,   1,   0,   0, 192,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 120,   1, 
-      0,   0,   0,   0,   0,   0, 
-      0,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 168,   1, 
-      0,   0,   0,   0,   0,   0, 
-     12,   2,   0,   0,  16,   1, 
-      0,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,  28,   2, 
-      0,   0,   0,   0,   0,   0, 
-     44,   2,   0,   0,  32,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  60,   2, 
-      0,   0,   0,   0,   0,   0, 
-     76,   2,   0,   0,  48,   1, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0,  92,   2, 
-      0,   0,   0,   0,   0,   0, 
-    109,  76,  97, 121, 101, 114, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,   3,   0, 
-      3,   0,   4,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  80, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,   0, 118,  82, 101, 110, 
-    100, 101, 114,  84,  97, 114, 
-    103, 101, 116,  79, 102, 102, 
-    115, 101, 116,   0,   1,   0, 
-      3,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0, 102,  76,  97, 121, 
-    101, 114,  67, 111, 108, 111, 
-    114,   0, 102,  76,  97, 121, 
-    101, 114,  79, 112,  97,  99, 
-    105, 116, 121,   0, 171, 171, 
-      0,   0,   3,   0,   1,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 105,  66, 
-    108, 101, 110, 100,  67, 111, 
-    110, 102, 105, 103,   0, 171, 
-    171, 171,   1,   0,  19,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  89, 117, 118,  67, 111, 
-    108, 111, 114,  77,  97, 116, 
-    114, 105, 120,   0,   2,   0, 
-      3,   0,   3,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78,  44,   0, 
-      0,   0,   1,   0,   0,   0, 
-      8,   0,   0,   0,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   3,   0,   0,  80,  79, 
-     83,  73,  84,  73,  79,  78, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78, 104,   0,   0,   0, 
-      3,   0,   0,   0,   8,   0, 
-      0,   0,  80,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  92,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      1,   0,   0,   0,   3,  12, 
-      0,   0,  92,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      2,   0,   0,   0,   7,   8, 
-      0,   0,  83,  86,  95,  80, 
-    111, 115, 105, 116, 105, 111, 
-    110,   0,  84,  69,  88,  67, 
-     79,  79,  82,  68,   0, 171, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
+//   float4x4 mProjection;              // Offset:   64 Size:    64
+//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
+//   float4 vTextureCoords;             // Offset:  144 Size:    16
+//   float4 vLayerQuad;                 // Offset:  160 Size:    16
+//   float4 vMaskQuad;                  // Offset:  176 Size:    16
+//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
+//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// POSITION                 0   xy          0     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float   xyzw
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
+// c3         cb0             3         9  ( FLT, FLT, FLT, FLT)
+//
+//
+// Runtime generated constant mappings:
+//
+// Target Reg                               Constant Description
+// ---------- --------------------------------------------------
+// c0                              Vertex Shader position offset
+//
+//
+// Level9 shader bytecode:
+//
+    vs_2_x
+    def c12, 1, 0, 0, 0
+    dcl_texcoord v0
+    mov r0.z, c12.x
+    rcp r0.w, c11.z
+    mad r1.xy, v0, c10.zwzw, c10
+    mul r2, r1.y, c2
+    mad r1, c1, r1.x, r2
+    add r1, r1, c3
+    add r2.xy, r1, -c11
+    mul r0.x, r0.w, r2.x
+    rcp r0.w, c11.w
+    mul r0.y, r0.w, r2.y
+    mul oT1.xyz, r0, r1.w
+    mad oT0.xy, v0, c9.zwzw, c9
+    rcp r0.x, r1.w
+    mul r1.xyz, r0.x, r1
+    add r0, r1, -c8
+    mul r0.xyz, r0.w, r0
+    mul r1, r0.y, c5
+    mad r1, c4, r0.x, r1
+    mad r1, c6, r0.z, r1
+    mad r0, c7, r0.w, r1
+    mad oPos.xy, r0.w, c0, r0
+    mov oPos.zw, r0
+
+// approximately 22 instruction slots used
+vs_4_0
+dcl_constantbuffer CB0[12], immediateIndexed
+dcl_input v0.xy
+dcl_output_siv o0.xyzw, position
+dcl_output o1.xy
+dcl_output o2.xyz
+dcl_temps 4
+mad r0.xy, v0.xyxx, cb0[10].zwzz, cb0[10].xyxx
+mul r1.xyzw, r0.yyyy, cb0[1].xyzw
+mad r0.xyzw, cb0[0].xyzw, r0.xxxx, r1.xyzw
+add r0.xyzw, r0.xyzw, cb0[3].xyzw
+div r1.xyz, r0.xyzx, r0.wwww
+mov r1.w, r0.w
+add r2.xyzw, r1.xyzw, -cb0[8].xyzw
+mul r1.xyz, r2.wwww, r2.xyzx
+mul r3.xyzw, r1.yyyy, cb0[5].xyzw
+mad r3.xyzw, cb0[4].xyzw, r1.xxxx, r3.xyzw
+mad r3.xyzw, cb0[6].xyzw, r1.zzzz, r3.xyzw
+mad o0.xyzw, cb0[7].xyzw, r2.wwww, r3.xyzw
+mad o1.xy, v0.xyxx, cb0[9].zwzz, cb0[9].xyxx
+add r0.xy, r0.xyxx, -cb0[11].xyxx
+div r0.xy, r0.xyxx, cb0[11].zwzz
+mov r0.z, l(1.000000)
+mul o2.xyz, r1.wwww, r0.xyzx
+ret 
+// Approximately 18 instruction slots used
+#endif
+
+const BYTE LayerQuadMaskVS[] =
+{
+     68,  88,  66,  67,  47,  28, 
+    196, 228,  98,  79,  27, 152, 
+    192,  25, 215, 128,  59, 234, 
+    245, 240,   1,   0,   0,   0, 
+    108,   8,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     20,   2,   0,   0, 176,   4, 
+      0,   0,  44,   5,   0,   0, 
+    200,   7,   0,   0, 252,   7, 
+      0,   0,  65, 111, 110,  57, 
+    212,   1,   0,   0, 212,   1, 
+      0,   0,   0,   2, 254, 255, 
+    148,   1,   0,   0,  64,   0, 
+      0,   0,   2,   0,  36,   0, 
+      0,   0,  60,   0,   0,   0, 
+     60,   0,   0,   0,  36,   0, 
+      1,   0,  60,   0,   0,   0, 
+      0,   0,   2,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   9,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 254, 255, 
+     81,   0,   0,   5,  12,   0, 
+     15, 160,   0,   0, 128,  63, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     31,   0,   0,   2,   5,   0, 
+      0, 128,   0,   0,  15, 144, 
+      1,   0,   0,   2,   0,   0, 
+      4, 128,  12,   0,   0, 160, 
+      6,   0,   0,   2,   0,   0, 
+      8, 128,  11,   0, 170, 160, 
+      4,   0,   0,   4,   1,   0, 
+      3, 128,   0,   0, 228, 144, 
+     10,   0, 238, 160,  10,   0, 
+    228, 160,   5,   0,   0,   3, 
+      2,   0,  15, 128,   1,   0, 
+     85, 128,   2,   0, 228, 160, 
+      4,   0,   0,   4,   1,   0, 
+     15, 128,   1,   0, 228, 160, 
+      1,   0,   0, 128,   2,   0, 
+    228, 128,   2,   0,   0,   3, 
+      1,   0,  15, 128,   1,   0, 
+    228, 128,   3,   0, 228, 160, 
+      2,   0,   0,   3,   2,   0, 
+      3, 128,   1,   0, 228, 128, 
+     11,   0, 228, 161,   5,   0, 
+      0,   3,   0,   0,   1, 128, 
+      0,   0, 255, 128,   2,   0, 
+      0, 128,   6,   0,   0,   2, 
+      0,   0,   8, 128,  11,   0, 
+    255, 160,   5,   0,   0,   3, 
+      0,   0,   2, 128,   0,   0, 
+    255, 128,   2,   0,  85, 128, 
+      5,   0,   0,   3,   1,   0, 
+      7, 224,   0,   0, 228, 128, 
+      1,   0, 255, 128,   4,   0, 
+      0,   4,   0,   0,   3, 224, 
+      0,   0, 228, 144,   9,   0, 
+    238, 160,   9,   0, 228, 160, 
+      6,   0,   0,   2,   0,   0, 
+      1, 128,   1,   0, 255, 128, 
+      5,   0,   0,   3,   1,   0, 
+      7, 128,   0,   0,   0, 128, 
+      1,   0, 228, 128,   2,   0, 
+      0,   3,   0,   0,  15, 128, 
+      1,   0, 228, 128,   8,   0, 
+    228, 161,   5,   0,   0,   3, 
+      0,   0,   7, 128,   0,   0, 
+    255, 128,   0,   0, 228, 128, 
+      5,   0,   0,   3,   1,   0, 
+     15, 128,   0,   0,  85, 128, 
+      5,   0, 228, 160,   4,   0, 
+      0,   4,   1,   0,  15, 128, 
+      4,   0, 228, 160,   0,   0, 
+      0, 128,   1,   0, 228, 128, 
+      4,   0,   0,   4,   1,   0, 
+     15, 128,   6,   0, 228, 160, 
+      0,   0, 170, 128,   1,   0, 
+    228, 128,   4,   0,   0,   4, 
+      0,   0,  15, 128,   7,   0, 
+    228, 160,   0,   0, 255, 128, 
+      1,   0, 228, 128,   4,   0, 
+      0,   4,   0,   0,   3, 192, 
+      0,   0, 255, 128,   0,   0, 
+    228, 160,   0,   0, 228, 128, 
+      1,   0,   0,   2,   0,   0, 
+     12, 192,   0,   0, 228, 128, 
+    255, 255,   0,   0,  83,  72, 
+     68,  82, 148,   2,   0,   0, 
+     64,   0,   1,   0, 165,   0, 
+      0,   0,  89,   0,   0,   4, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,  12,   0,   0,   0, 
+     95,   0,   0,   3,  50,  16, 
+     16,   0,   0,   0,   0,   0, 
+    103,   0,   0,   4, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0, 101,   0, 
+      0,   3,  50,  32,  16,   0, 
+      1,   0,   0,   0, 101,   0, 
+      0,   3, 114,  32,  16,   0, 
+      2,   0,   0,   0, 104,   0, 
+      0,   2,   4,   0,   0,   0, 
+     50,   0,   0,  11,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  16,  16,   0,   0,   0, 
+      0,   0, 230, 138,  32,   0, 
+      0,   0,   0,   0,  10,   0, 
+      0,   0,  70, 128,  32,   0, 
+      0,   0,   0,   0,  10,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  86,   5,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   6,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
+      0,   0,   0,   0,   0,   8, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,  14,   0, 
+      0,   7, 114,   0,  16,   0, 
+      1,   0,   0,   0,  70,   2, 
+     16,   0,   0,   0,   0,   0, 
+    246,  15,  16,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   1,   0, 
+      0,   0,  58,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   9, 242,   0,  16,   0, 
+      2,   0,   0,   0,  70,  14, 
+     16,   0,   1,   0,   0,   0, 
+     70, 142,  32, 128,  65,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   7, 114,   0,  16,   0, 
+      1,   0,   0,   0, 246,  15, 
+     16,   0,   2,   0,   0,   0, 
+     70,   2,  16,   0,   2,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   3,   0, 
+      0,   0,  86,   5,  16,   0, 
+      1,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      3,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,   6,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,  14,  16,   0,   3,   0, 
+      0,   0,  50,   0,   0,  10, 
+    242,   0,  16,   0,   3,   0, 
+      0,   0,  70, 142,  32,   0, 
+      0,   0,   0,   0,   6,   0, 
+      0,   0, 166,  10,  16,   0, 
+      1,   0,   0,   0,  70,  14, 
+     16,   0,   3,   0,   0,   0, 
+     50,   0,   0,  10, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   7,   0,   0,   0, 
+    246,  15,  16,   0,   2,   0, 
+      0,   0,  70,  14,  16,   0, 
+      3,   0,   0,   0,  50,   0, 
+      0,  11,  50,  32,  16,   0, 
+      1,   0,   0,   0,  70,  16, 
+     16,   0,   0,   0,   0,   0, 
+    230, 138,  32,   0,   0,   0, 
+      0,   0,   9,   0,   0,   0, 
+     70, 128,  32,   0,   0,   0, 
+      0,   0,   9,   0,   0,   0, 
+      0,   0,   0,   9,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   0,  16,   0,   0,   0, 
+      0,   0,  70, 128,  32, 128, 
+     65,   0,   0,   0,   0,   0, 
+      0,   0,  11,   0,   0,   0, 
+     14,   0,   0,   8,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   0,  16,   0,   0,   0, 
+      0,   0, 230, 138,  32,   0, 
+      0,   0,   0,   0,  11,   0, 
+      0,   0,  54,   0,   0,   5, 
+     66,   0,  16,   0,   0,   0, 
+      0,   0,   1,  64,   0,   0, 
+      0,   0, 128,  63,  56,   0, 
+      0,   7, 114,  32,  16,   0, 
+      2,   0,   0,   0, 246,  15, 
+     16,   0,   1,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,  18,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   4,   0,   0,   0, 
+     15,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70, 148,   2,   0,   0, 
+      1,   0,   0,   0,  72,   0, 
+      0,   0,   1,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    254, 255,   0,   1,   0,   0, 
+    108,   2,   0,   0,  60,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+     36,  71, 108, 111,  98,  97, 
+    108, 115,   0, 171, 171, 171, 
+     60,   0,   0,   0,  11,   0, 
+      0,   0,  96,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   1,   0,   0,   0,   0, 
+      0,   0,  64,   0,   0,   0, 
+      2,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+    136,   1,   0,   0,  64,   0, 
+      0,   0,  64,   0,   0,   0, 
+      2,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+    148,   1,   0,   0, 128,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 168,   1, 
+      0,   0,   0,   0,   0,   0, 
+    184,   1,   0,   0, 144,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    216,   1,   0,   0, 160,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    227,   1,   0,   0, 176,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    237,   1,   0,   0, 192,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 168,   1, 
+      0,   0,   0,   0,   0,   0, 
+     12,   2,   0,   0,  16,   1, 
+      0,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,  28,   2, 
+      0,   0,   0,   0,   0,   0, 
+     44,   2,   0,   0,  32,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  60,   2, 
+      0,   0,   0,   0,   0,   0, 
+     76,   2,   0,   0,  48,   1, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0,  92,   2, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0,   1,   0, 
+      3,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0, 102,  76,  97, 121, 
+    101, 114,  79, 112,  97,  99, 
+    105, 116, 121,   0, 171, 171, 
+      0,   0,   3,   0,   1,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 105,  66, 
+    108, 101, 110, 100,  67, 111, 
+    110, 102, 105, 103,   0, 171, 
+    171, 171,   1,   0,  19,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  89, 117, 118,  67, 111, 
+    108, 111, 114,  77,  97, 116, 
+    114, 105, 120,   0,   2,   0, 
+      3,   0,   3,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  44,   0, 
+      0,   0,   1,   0,   0,   0, 
+      8,   0,   0,   0,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   3,   0,   0,  80,  79, 
+     83,  73,  84,  73,  79,  78, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78, 104,   0,   0,   0, 
+      3,   0,   0,   0,   8,   0, 
+      0,   0,  80,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  92,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,   3,  12, 
+      0,   0,  92,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      2,   0,   0,   0,   7,   8, 
+      0,   0,  83,  86,  95,  80, 
+    111, 115, 105, 116, 105, 111, 
+    110,   0,  84,  69,  88,  67, 
+     79,  79,  82,  68,   0, 171, 
+    171, 171
+};
 ShaderBytes sLayerQuadMaskVS = { LayerQuadMaskVS, sizeof(LayerQuadMaskVS) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16
-//   float fLayerOpacity;               // Offset:   16 Size:     4 [unused]
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tMask                             texture  float4          2d             t5      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float       
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             0         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t5               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    dcl t1.xyz
-    dcl_2d s0
-    rcp r0.w, t1.z
-    mul r0.xy, r0.w, t1
-    texld r0, r0, s0
-    mul r0, r0.x, c0
-    mov oC0, r0
-
-// approximately 5 instruction slots used (1 texture, 4 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[1], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t5
-dcl_input_ps linear v2.xyz
-dcl_output o0.xyzw
-dcl_temps 1
-div r0.xy, v2.xyxx, v2.zzzz
-sample r0.xyzw, r0.xyxx, t5.xyzw, s0
-mul o0.xyzw, r0.xxxx, cb0[0].xyzw
-ret 
-// Approximately 4 instruction slots used
-#endif
-
-const BYTE SolidColorShaderMask[] =
-{
-     68,  88,  66,  67,  11,   0, 
-     43, 127, 123,  42, 253, 228, 
-      4, 220,   7, 130,  11,  94, 
-    213, 177,   1,   0,   0,   0, 
-    164,   5,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    220,   0,   0,   0, 156,   1, 
-      0,   0,  24,   2,   0,   0, 
-      0,   5,   0,   0, 112,   5, 
-      0,   0,  65, 111, 110,  57, 
-    156,   0,   0,   0, 156,   0, 
-      0,   0,   0,   2, 255, 255, 
-    104,   0,   0,   0,  52,   0, 
-      0,   0,   1,   0,  40,   0, 
-      0,   0,  52,   0,   0,   0, 
-     52,   0,   1,   0,  36,   0, 
-      0,   0,  52,   0,   5,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   1,   2, 255, 255, 
-     31,   0,   0,   2,   0,   0, 
-      0, 128,   1,   0,   7, 176, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   0,   8,  15, 160, 
-      6,   0,   0,   2,   0,   0, 
-      8, 128,   1,   0, 170, 176, 
-      5,   0,   0,   3,   0,   0, 
-      3, 128,   0,   0, 255, 128, 
-      1,   0, 228, 176,  66,   0, 
-      0,   3,   0,   0,  15, 128, 
-      0,   0, 228, 128,   0,   8, 
-    228, 160,   5,   0,   0,   3, 
-      0,   0,  15, 128,   0,   0, 
-      0, 128,   0,   0, 228, 160, 
-      1,   0,   0,   2,   0,   8, 
-     15, 128,   0,   0, 228, 128, 
-    255, 255,   0,   0,  83,  72, 
-     68,  82, 184,   0,   0,   0, 
-     64,   0,   0,   0,  46,   0, 
-      0,   0,  89,   0,   0,   4, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     90,   0,   0,   3,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   5,   0,   0,   0, 
-     85,  85,   0,   0,  98,  16, 
-      0,   3, 114,  16,  16,   0, 
-      2,   0,   0,   0, 101,   0, 
-      0,   3, 242,  32,  16,   0, 
-      0,   0,   0,   0, 104,   0, 
-      0,   2,   1,   0,   0,   0, 
-     14,   0,   0,   7,  50,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  16,  16,   0,   2,   0, 
-      0,   0, 166,  26,  16,   0, 
-      2,   0,   0,   0,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70, 126,  16,   0,   5,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,  56,   0, 
-      0,   8, 242,  32,  16,   0, 
-      0,   0,   0,   0,   6,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     62,   0,   0,   1,  83,  84, 
-     65,  84, 116,   0,   0,   0, 
-      4,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      2,   0,   0,   0,   2,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  82,  68,  69,  70, 
-    224,   2,   0,   0,   1,   0, 
-      0,   0, 148,   0,   0,   0, 
-      3,   0,   0,   0,  28,   0, 
-      0,   0,   0,   4, 255, 255, 
-      0,   1,   0,   0, 184,   2, 
-      0,   0, 124,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      1,   0,   0,   0, 133,   0, 
-      0,   0,   2,   0,   0,   0, 
-      5,   0,   0,   0,   4,   0, 
-      0,   0, 255, 255, 255, 255, 
-      5,   0,   0,   0,   1,   0, 
-      0,   0,  13,   0,   0,   0, 
-    139,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0, 115,  83,  97, 109, 
-    112, 108, 101, 114,   0, 116, 
-     77,  97, 115, 107,   0,  36, 
-     71, 108, 111,  98,  97, 108, 
-    115,   0, 139,   0,   0,   0, 
-     11,   0,   0,   0, 172,   0, 
-      0,   0,  96,   1,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 180,   1,   0,   0, 
-      0,   0,   0,   0,  16,   0, 
-      0,   0,   2,   0,   0,   0, 
-    192,   1,   0,   0,   0,   0, 
-      0,   0, 208,   1,   0,   0, 
-     16,   0,   0,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-    224,   1,   0,   0,   0,   0, 
-      0,   0, 240,   1,   0,   0, 
-     32,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   2,   0,   0,   0,   0, 
-      0,   0,  16,   2,   0,   0, 
-     48,   0,   0,   0,  44,   0, 
-      0,   0,   0,   0,   0,   0, 
-     32,   2,   0,   0,   0,   0, 
-      0,   0,  48,   2,   0,   0, 
-     96,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-     64,   2,   0,   0,   0,   0, 
-      0,   0,  80,   2,   0,   0, 
-    160,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-     64,   2,   0,   0,   0,   0, 
-      0,   0,  92,   2,   0,   0, 
-    224,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    192,   1,   0,   0,   0,   0, 
-      0,   0, 112,   2,   0,   0, 
-    240,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    128,   2,   0,   0,   0,   0, 
-      0,   0, 144,   2,   0,   0, 
-      0,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    128,   2,   0,   0,   0,   0, 
-      0,   0, 155,   2,   0,   0, 
-     16,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    128,   2,   0,   0,   0,   0, 
-      0,   0, 165,   2,   0,   0, 
-     32,   1,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-     64,   2,   0,   0,   0,   0, 
-      0,   0, 102,  76,  97, 121, 
-    101, 114,  67, 111, 108, 111, 
-    114,   0,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     79, 112,  97,  99, 105, 116, 
-    121,   0, 171, 171,   0,   0, 
-      3,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 105,  66, 108, 101, 
-    110, 100,  67, 111, 110, 102, 
-    105, 103,   0, 171, 171, 171, 
-      1,   0,  19,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  89, 
-    117, 118,  67, 111, 108, 111, 
-    114,  77,  97, 116, 114, 105, 
-    120,   0,   2,   0,   3,   0, 
-      3,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  76,  97, 121, 101, 114, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,   3,   0, 
-      3,   0,   4,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  80, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,   0, 118,  82, 101, 110, 
-    100, 101, 114,  84,  97, 114, 
-    103, 101, 116,  79, 102, 102, 
-    115, 101, 116,   0, 118,  84, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 111, 114, 100, 115, 
-      0, 171,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    118,  76,  97, 121, 101, 114, 
-     81, 117,  97, 100,   0, 118, 
-     77,  97, 115, 107,  81, 117, 
-     97, 100,   0, 109,  66,  97, 
-     99, 107, 100, 114, 111, 112, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,  77, 105, 
-     99, 114, 111, 115, 111, 102, 
-    116,  32,  40,  82,  41,  32, 
-     72,  76,  83,  76,  32,  83, 
-    104,  97, 100, 101, 114,  32, 
-     67, 111, 109, 112, 105, 108, 
-    101, 114,  32,  49,  48,  46, 
-     49,   0,  73,  83,  71,  78, 
-    104,   0,   0,   0,   3,   0, 
-      0,   0,   8,   0,   0,   0, 
-     80,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,  15,   0,   0,   0, 
-     92,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   1,   0, 
-      0,   0,   3,   0,   0,   0, 
-     92,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   2,   0, 
-      0,   0,   7,   7,   0,   0, 
-     83,  86,  95,  80, 111, 115, 
-    105, 116, 105, 111, 110,   0, 
-     84,  69,  88,  67,  79,  79, 
-     82,  68,   0, 171, 171, 171, 
-     79,  83,  71,  78,  44,   0, 
-      0,   0,   1,   0,   0,   0, 
-      8,   0,   0,   0,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  83,  86, 
-     95,  84,  97, 114, 103, 101, 
-    116,   0, 171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4x4 mLayerTransform;          // Offset:    0 Size:    64
+//   float4x4 mProjection;              // Offset:   64 Size:    64
+//   float4 vRenderTargetOffset;        // Offset:  128 Size:    16
+//   float4 vTextureCoords;             // Offset:  144 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  160 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  176 Size:    16
+//   float4x4 mBackdropTransform;       // Offset:  192 Size:    64 [unused]
+//   float4 fLayerColor;                // Offset:  256 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:  272 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:  288 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:  304 Size:    44 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// POSITION                 0   xy          0     NONE   float   xy  
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float   xyzw
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c1         cb0             0         2  ( FLT, FLT, FLT, FLT)
+// c3         cb0             3         6  ( FLT, FLT, FLT, FLT)
+// c9         cb0            11         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Runtime generated constant mappings:
+//
+// Target Reg                               Constant Description
+// ---------- --------------------------------------------------
+// c0                              Vertex Shader position offset
+//
+//
+// Level9 shader bytecode:
+//
+    vs_2_x
+    def c10, 1, 0, 0, 0
+    dcl_texcoord v0
+    dcl_texcoord1 v1
+    mov r0.z, c10.x
+    rcp r0.w, c9.z
+    mul r1, v0.y, c2
+    mad r1, c1, v0.x, r1
+    add r1, r1, c3
+    add r2.xy, r1, -c9
+    mul r0.x, r0.w, r2.x
+    rcp r0.w, c9.w
+    mul r0.y, r0.w, r2.y
+    mul oT1.xyz, r0, r1.w
+    rcp r0.x, r1.w
+    mul r1.xyz, r0.x, r1
+    add r0, r1, -c8
+    mul r0.xyz, r0.w, r0
+    mul r1, r0.y, c5
+    mad r1, c4, r0.x, r1
+    mad r1, c6, r0.z, r1
+    mad r0, c7, r0.w, r1
+    mad oPos.xy, r0.w, c0, r0
+    mov oPos.zw, r0
+    mov oT0.xy, v1
+
+// approximately 21 instruction slots used
+vs_4_0
+dcl_constantbuffer CB0[12], immediateIndexed
+dcl_input v0.xy
+dcl_input v1.xy
+dcl_output_siv o0.xyzw, position
+dcl_output o1.xy
+dcl_output o2.xyz
+dcl_temps 4
+mul r0.xyzw, v0.yyyy, cb0[1].xyzw
+mad r0.xyzw, cb0[0].xyzw, v0.xxxx, r0.xyzw
+add r0.xyzw, r0.xyzw, cb0[3].xyzw
+div r1.xyz, r0.xyzx, r0.wwww
+mov r1.w, r0.w
+add r2.xyzw, r1.xyzw, -cb0[8].xyzw
+mul r1.xyz, r2.wwww, r2.xyzx
+mul r3.xyzw, r1.yyyy, cb0[5].xyzw
+mad r3.xyzw, cb0[4].xyzw, r1.xxxx, r3.xyzw
+mad r3.xyzw, cb0[6].xyzw, r1.zzzz, r3.xyzw
+mad o0.xyzw, cb0[7].xyzw, r2.wwww, r3.xyzw
+mov o1.xy, v1.xyxx
+add r0.xy, r0.xyxx, -cb0[11].xyxx
+div r0.xy, r0.xyxx, cb0[11].zwzz
+mov r0.z, l(1.000000)
+mul o2.xyz, r1.wwww, r0.xyzx
+ret 
+// Approximately 17 instruction slots used
+#endif
+
+const BYTE LayerDynamicMaskVS[] =
+{
+     68,  88,  66,  67,  79, 185, 
+     28, 146,  97,  84, 184, 108, 
+    120,  34,  45,  31, 188, 119, 
+     78, 218,   1,   0,   0,   0, 
+     80,   8,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     16,   2,   0,   0, 116,   4, 
+      0,   0, 240,   4,   0,   0, 
+    140,   7,   0,   0, 224,   7, 
+      0,   0,  65, 111, 110,  57, 
+    208,   1,   0,   0, 208,   1, 
+      0,   0,   0,   2, 254, 255, 
+    132,   1,   0,   0,  76,   0, 
+      0,   0,   3,   0,  36,   0, 
+      0,   0,  72,   0,   0,   0, 
+     72,   0,   0,   0,  36,   0, 
+      1,   0,  72,   0,   0,   0, 
+      0,   0,   2,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   6,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     11,   0,   1,   0,   9,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 254, 255, 
+     81,   0,   0,   5,  10,   0, 
+     15, 160,   0,   0, 128,  63, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     31,   0,   0,   2,   5,   0, 
+      0, 128,   0,   0,  15, 144, 
+     31,   0,   0,   2,   5,   0, 
+      1, 128,   1,   0,  15, 144, 
+      1,   0,   0,   2,   0,   0, 
+      4, 128,  10,   0,   0, 160, 
+      6,   0,   0,   2,   0,   0, 
+      8, 128,   9,   0, 170, 160, 
+      5,   0,   0,   3,   1,   0, 
+     15, 128,   0,   0,  85, 144, 
+      2,   0, 228, 160,   4,   0, 
+      0,   4,   1,   0,  15, 128, 
+      1,   0, 228, 160,   0,   0, 
+      0, 144,   1,   0, 228, 128, 
+      2,   0,   0,   3,   1,   0, 
+     15, 128,   1,   0, 228, 128, 
+      3,   0, 228, 160,   2,   0, 
+      0,   3,   2,   0,   3, 128, 
+      1,   0, 228, 128,   9,   0, 
+    228, 161,   5,   0,   0,   3, 
+      0,   0,   1, 128,   0,   0, 
+    255, 128,   2,   0,   0, 128, 
+      6,   0,   0,   2,   0,   0, 
+      8, 128,   9,   0, 255, 160, 
+      5,   0,   0,   3,   0,   0, 
+      2, 128,   0,   0, 255, 128, 
+      2,   0,  85, 128,   5,   0, 
+      0,   3,   1,   0,   7, 224, 
+      0,   0, 228, 128,   1,   0, 
+    255, 128,   6,   0,   0,   2, 
+      0,   0,   1, 128,   1,   0, 
+    255, 128,   5,   0,   0,   3, 
+      1,   0,   7, 128,   0,   0, 
+      0, 128,   1,   0, 228, 128, 
+      2,   0,   0,   3,   0,   0, 
+     15, 128,   1,   0, 228, 128, 
+      8,   0, 228, 161,   5,   0, 
+      0,   3,   0,   0,   7, 128, 
+      0,   0, 255, 128,   0,   0, 
+    228, 128,   5,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+     85, 128,   5,   0, 228, 160, 
+      4,   0,   0,   4,   1,   0, 
+     15, 128,   4,   0, 228, 160, 
+      0,   0,   0, 128,   1,   0, 
+    228, 128,   4,   0,   0,   4, 
+      1,   0,  15, 128,   6,   0, 
+    228, 160,   0,   0, 170, 128, 
+      1,   0, 228, 128,   4,   0, 
+      0,   4,   0,   0,  15, 128, 
+      7,   0, 228, 160,   0,   0, 
+    255, 128,   1,   0, 228, 128, 
+      4,   0,   0,   4,   0,   0, 
+      3, 192,   0,   0, 255, 128, 
+      0,   0, 228, 160,   0,   0, 
+    228, 128,   1,   0,   0,   2, 
+      0,   0,  12, 192,   0,   0, 
+    228, 128,   1,   0,   0,   2, 
+      0,   0,   3, 224,   1,   0, 
+    228, 144, 255, 255,   0,   0, 
+     83,  72,  68,  82,  92,   2, 
+      0,   0,  64,   0,   1,   0, 
+    151,   0,   0,   0,  89,   0, 
+      0,   4,  70, 142,  32,   0, 
+      0,   0,   0,   0,  12,   0, 
+      0,   0,  95,   0,   0,   3, 
+     50,  16,  16,   0,   0,   0, 
+      0,   0,  95,   0,   0,   3, 
+     50,  16,  16,   0,   1,   0, 
+      0,   0, 103,   0,   0,   4, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3,  50,  32, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 114,  32, 
+     16,   0,   2,   0,   0,   0, 
+    104,   0,   0,   2,   4,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  86,  21,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   6,  16, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   8, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,  14,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,  14,   0, 
+      0,   7, 114,   0,  16,   0, 
+      1,   0,   0,   0,  70,   2, 
+     16,   0,   0,   0,   0,   0, 
+    246,  15,  16,   0,   0,   0, 
+      0,   0,  54,   0,   0,   5, 
+    130,   0,  16,   0,   1,   0, 
+      0,   0,  58,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   9, 242,   0,  16,   0, 
+      2,   0,   0,   0,  70,  14, 
+     16,   0,   1,   0,   0,   0, 
+     70, 142,  32, 128,  65,   0, 
+      0,   0,   0,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   7, 114,   0,  16,   0, 
+      1,   0,   0,   0, 246,  15, 
+     16,   0,   2,   0,   0,   0, 
+     70,   2,  16,   0,   2,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   3,   0, 
+      0,   0,  86,   5,  16,   0, 
+      1,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  50,   0, 
+      0,  10, 242,   0,  16,   0, 
+      3,   0,   0,   0,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,   6,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,  14,  16,   0,   3,   0, 
+      0,   0,  50,   0,   0,  10, 
+    242,   0,  16,   0,   3,   0, 
+      0,   0,  70, 142,  32,   0, 
+      0,   0,   0,   0,   6,   0, 
+      0,   0, 166,  10,  16,   0, 
+      1,   0,   0,   0,  70,  14, 
+     16,   0,   3,   0,   0,   0, 
+     50,   0,   0,  10, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   7,   0,   0,   0, 
+    246,  15,  16,   0,   2,   0, 
+      0,   0,  70,  14,  16,   0, 
+      3,   0,   0,   0,  54,   0, 
+      0,   5,  50,  32,  16,   0, 
+      1,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+      0,   0,   0,   9,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   0,  16,   0,   0,   0, 
+      0,   0,  70, 128,  32, 128, 
+     65,   0,   0,   0,   0,   0, 
+      0,   0,  11,   0,   0,   0, 
+     14,   0,   0,   8,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,   0,  16,   0,   0,   0, 
+      0,   0, 230, 138,  32,   0, 
+      0,   0,   0,   0,  11,   0, 
+      0,   0,  54,   0,   0,   5, 
+     66,   0,  16,   0,   0,   0, 
+      0,   0,   1,  64,   0,   0, 
+      0,   0, 128,  63,  56,   0, 
+      0,   7, 114,  32,  16,   0, 
+      2,   0,   0,   0, 246,  15, 
+     16,   0,   1,   0,   0,   0, 
+     70,   2,  16,   0,   0,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,  17,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   5,   0,   0,   0, 
+     13,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70, 148,   2,   0,   0, 
+      1,   0,   0,   0,  72,   0, 
+      0,   0,   1,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    254, 255,   0,   1,   0,   0, 
+    108,   2,   0,   0,  60,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+     36,  71, 108, 111,  98,  97, 
+    108, 115,   0, 171, 171, 171, 
+     60,   0,   0,   0,  11,   0, 
+      0,   0,  96,   0,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   1,   0,   0,   0,   0, 
+      0,   0,  64,   0,   0,   0, 
+      2,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+    136,   1,   0,   0,  64,   0, 
+      0,   0,  64,   0,   0,   0, 
+      2,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+    148,   1,   0,   0, 128,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 168,   1, 
+      0,   0,   0,   0,   0,   0, 
+    184,   1,   0,   0, 144,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    216,   1,   0,   0, 160,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    227,   1,   0,   0, 176,   0, 
+      0,   0,  16,   0,   0,   0, 
+      2,   0,   0,   0, 200,   1, 
+      0,   0,   0,   0,   0,   0, 
+    237,   1,   0,   0, 192,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 120,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 168,   1, 
+      0,   0,   0,   0,   0,   0, 
+     12,   2,   0,   0,  16,   1, 
+      0,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,  28,   2, 
+      0,   0,   0,   0,   0,   0, 
+     44,   2,   0,   0,  32,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  60,   2, 
+      0,   0,   0,   0,   0,   0, 
+     76,   2,   0,   0,  48,   1, 
+      0,   0,  44,   0,   0,   0, 
+      0,   0,   0,   0,  92,   2, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0,   1,   0, 
+      3,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0, 102,  76,  97, 121, 
+    101, 114,  79, 112,  97,  99, 
+    105, 116, 121,   0, 171, 171, 
+      0,   0,   3,   0,   1,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 105,  66, 
+    108, 101, 110, 100,  67, 111, 
+    110, 102, 105, 103,   0, 171, 
+    171, 171,   1,   0,  19,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  89, 117, 118,  67, 111, 
+    108, 111, 114,  77,  97, 116, 
+    114, 105, 120,   0,   2,   0, 
+      3,   0,   3,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78,  76,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   3,   0,   0,  65,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  80,  79, 
+     83,  73,  84,  73,  79,  78, 
+      0,  84,  69,  88,  67,  79, 
+     79,  82,  68,   0, 171, 171, 
+     79,  83,  71,  78, 104,   0, 
+      0,   0,   3,   0,   0,   0, 
+      8,   0,   0,   0,  80,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  92,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,  12,   0,   0,  92,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   2,   0,   0,   0, 
+      7,   8,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171
+};
+ShaderBytes sLayerDynamicMaskVS = { LayerDynamicMaskVS, sizeof(LayerDynamicMaskVS) };
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16
+//   float fLayerOpacity;               // Offset:   16 Size:     4 [unused]
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tMask                             texture  float4          2d             t5      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float       
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             0         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t5               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    dcl t1.xyz
+    dcl_2d s0
+    rcp r0.w, t1.z
+    mul r0.xy, r0.w, t1
+    texld r0, r0, s0
+    mul r0, r0.x, c0
+    mov oC0, r0
+
+// approximately 5 instruction slots used (1 texture, 4 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[1], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t5
+dcl_input_ps linear v2.xyz
+dcl_output o0.xyzw
+dcl_temps 1
+div r0.xy, v2.xyxx, v2.zzzz
+sample r0.xyzw, r0.xyxx, t5.xyzw, s0
+mul o0.xyzw, r0.xxxx, cb0[0].xyzw
+ret 
+// Approximately 4 instruction slots used
+#endif
+
+const BYTE SolidColorShaderMask[] =
+{
+     68,  88,  66,  67,  11,   0, 
+     43, 127, 123,  42, 253, 228, 
+      4, 220,   7, 130,  11,  94, 
+    213, 177,   1,   0,   0,   0, 
+    164,   5,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    220,   0,   0,   0, 156,   1, 
+      0,   0,  24,   2,   0,   0, 
+      0,   5,   0,   0, 112,   5, 
+      0,   0,  65, 111, 110,  57, 
+    156,   0,   0,   0, 156,   0, 
+      0,   0,   0,   2, 255, 255, 
+    104,   0,   0,   0,  52,   0, 
+      0,   0,   1,   0,  40,   0, 
+      0,   0,  52,   0,   0,   0, 
+     52,   0,   1,   0,  36,   0, 
+      0,   0,  52,   0,   5,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   1,   2, 255, 255, 
+     31,   0,   0,   2,   0,   0, 
+      0, 128,   1,   0,   7, 176, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   0,   8,  15, 160, 
+      6,   0,   0,   2,   0,   0, 
+      8, 128,   1,   0, 170, 176, 
+      5,   0,   0,   3,   0,   0, 
+      3, 128,   0,   0, 255, 128, 
+      1,   0, 228, 176,  66,   0, 
+      0,   3,   0,   0,  15, 128, 
+      0,   0, 228, 128,   0,   8, 
+    228, 160,   5,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+      0, 128,   0,   0, 228, 160, 
+      1,   0,   0,   2,   0,   8, 
+     15, 128,   0,   0, 228, 128, 
+    255, 255,   0,   0,  83,  72, 
+     68,  82, 184,   0,   0,   0, 
+     64,   0,   0,   0,  46,   0, 
+      0,   0,  89,   0,   0,   4, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     90,   0,   0,   3,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+     88,  24,   0,   4,   0, 112, 
+     16,   0,   5,   0,   0,   0, 
+     85,  85,   0,   0,  98,  16, 
+      0,   3, 114,  16,  16,   0, 
+      2,   0,   0,   0, 101,   0, 
+      0,   3, 242,  32,  16,   0, 
+      0,   0,   0,   0, 104,   0, 
+      0,   2,   1,   0,   0,   0, 
+     14,   0,   0,   7,  50,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  16,  16,   0,   2,   0, 
+      0,   0, 166,  26,  16,   0, 
+      2,   0,   0,   0,  69,   0, 
+      0,   9, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 126,  16,   0,   5,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,  56,   0, 
+      0,   8, 242,  32,  16,   0, 
+      0,   0,   0,   0,   6,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     62,   0,   0,   1,  83,  84, 
+     65,  84, 116,   0,   0,   0, 
+      4,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  82,  68,  69,  70, 
+    224,   2,   0,   0,   1,   0, 
+      0,   0, 148,   0,   0,   0, 
+      3,   0,   0,   0,  28,   0, 
+      0,   0,   0,   4, 255, 255, 
+      0,   1,   0,   0, 184,   2, 
+      0,   0, 124,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0, 133,   0, 
+      0,   0,   2,   0,   0,   0, 
+      5,   0,   0,   0,   4,   0, 
+      0,   0, 255, 255, 255, 255, 
+      5,   0,   0,   0,   1,   0, 
+      0,   0,  13,   0,   0,   0, 
+    139,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0, 115,  83,  97, 109, 
+    112, 108, 101, 114,   0, 116, 
+     77,  97, 115, 107,   0,  36, 
+     71, 108, 111,  98,  97, 108, 
+    115,   0, 139,   0,   0,   0, 
+     11,   0,   0,   0, 172,   0, 
+      0,   0,  96,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 180,   1,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   2,   0,   0,   0, 
+    192,   1,   0,   0,   0,   0, 
+      0,   0, 208,   1,   0,   0, 
+     16,   0,   0,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+    224,   1,   0,   0,   0,   0, 
+      0,   0, 240,   1,   0,   0, 
+     32,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   2,   0,   0,   0,   0, 
+      0,   0,  16,   2,   0,   0, 
+     48,   0,   0,   0,  44,   0, 
+      0,   0,   0,   0,   0,   0, 
+     32,   2,   0,   0,   0,   0, 
+      0,   0,  48,   2,   0,   0, 
+     96,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+     64,   2,   0,   0,   0,   0, 
+      0,   0,  80,   2,   0,   0, 
+    160,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+     64,   2,   0,   0,   0,   0, 
+      0,   0,  92,   2,   0,   0, 
+    224,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    192,   1,   0,   0,   0,   0, 
+      0,   0, 112,   2,   0,   0, 
+    240,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    128,   2,   0,   0,   0,   0, 
+      0,   0, 144,   2,   0,   0, 
+      0,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    128,   2,   0,   0,   0,   0, 
+      0,   0, 155,   2,   0,   0, 
+     16,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    128,   2,   0,   0,   0,   0, 
+      0,   0, 165,   2,   0,   0, 
+     32,   1,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+     64,   2,   0,   0,   0,   0, 
+      0,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0, 118,  84, 
+    101, 120, 116, 117, 114, 101, 
+     67, 111, 111, 114, 100, 115, 
+      0, 171,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  76,  97, 121, 101, 114, 
+     81, 117,  97, 100,   0, 118, 
+     77,  97, 115, 107,  81, 117, 
+     97, 100,   0, 109,  66,  97, 
+     99, 107, 100, 114, 111, 112, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  40,  82,  41,  32, 
+     72,  76,  83,  76,  32,  83, 
+    104,  97, 100, 101, 114,  32, 
+     67, 111, 109, 112, 105, 108, 
+    101, 114,  32,  49,  48,  46, 
+     49,   0,  73,  83,  71,  78, 
+    104,   0,   0,   0,   3,   0, 
+      0,   0,   8,   0,   0,   0, 
+     80,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     92,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   3,   0,   0,   0, 
+     92,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   2,   0, 
+      0,   0,   7,   7,   0,   0, 
+     83,  86,  95,  80, 111, 115, 
+    105, 116, 105, 111, 110,   0, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,   0, 171, 171, 171, 
+     79,  83,  71,  78,  44,   0, 
+      0,   0,   1,   0,   0,   0, 
+      8,   0,   0,   0,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  83,  86, 
+     95,  84,  97, 114, 103, 101, 
+    116,   0, 171, 171
+};
 ShaderBytes sSolidColorShaderMask = { SolidColorShaderMask, sizeof(SolidColorShaderMask) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// tMask                             texture  float4          2d             t5      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-// s1             s0              t5               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    dcl t0.xy
-    dcl t1.xyz
-    dcl_2d s0
-    dcl_2d s1
-    rcp r0.w, t1.z
-    mul r0.xy, r0.w, t1
-    texld r1, t0, s0
-    texld r0, r0, s1
-    mul r1.xyz, r1, c0.x
-    mov r1.w, c0.x
-    mul r0, r0.x, r1
-    mov oC0, r0
-
-// approximately 8 instruction slots used (2 texture, 6 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t5
-dcl_input_ps linear v1.xy
-dcl_input_ps linear v2.xyz
-dcl_output o0.xyzw
-dcl_temps 2
-sample r0.xyzw, v1.xyxx, t0.xyzw, s0
-mul r0.xyz, r0.xyzx, cb0[1].xxxx
-div r1.xy, v2.xyxx, v2.zzzz
-sample r1.xyzw, r1.xyxx, t5.xyzw, s0
-mov r0.w, cb0[1].x
-mul o0.xyzw, r0.xyzw, r1.xxxx
-ret 
-// Approximately 7 instruction slots used
-#endif
-
-const BYTE RGBShaderMask[] =
-{
-     68,  88,  66,  67,  89, 221, 
-     15,  22, 232, 140, 114, 122, 
-    200,  15, 217, 125, 153,  18, 
-    224,   0,   1,   0,   0,   0, 
-    136,   6,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-     36,   1,   0,   0,  88,   2, 
-      0,   0, 212,   2,   0,   0, 
-    228,   5,   0,   0,  84,   6, 
-      0,   0,  65, 111, 110,  57, 
-    228,   0,   0,   0, 228,   0, 
-      0,   0,   0,   2, 255, 255, 
-    172,   0,   0,   0,  56,   0, 
-      0,   0,   1,   0,  44,   0, 
-      0,   0,  56,   0,   0,   0, 
-     56,   0,   2,   0,  36,   0, 
-      0,   0,  56,   0,   0,   0, 
-      0,   0,   5,   0,   1,   0, 
-      0,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   2, 255, 255,  31,   0, 
-      0,   2,   0,   0,   0, 128, 
-      0,   0,   3, 176,  31,   0, 
-      0,   2,   0,   0,   0, 128, 
-      1,   0,   7, 176,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      0,   8,  15, 160,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      1,   8,  15, 160,   6,   0, 
-      0,   2,   0,   0,   8, 128, 
-      1,   0, 170, 176,   5,   0, 
-      0,   3,   0,   0,   3, 128, 
-      0,   0, 255, 128,   1,   0, 
-    228, 176,  66,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-    228, 176,   0,   8, 228, 160, 
-     66,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 128, 
-      1,   8, 228, 160,   5,   0, 
-      0,   3,   1,   0,   7, 128, 
-      1,   0, 228, 128,   0,   0, 
-      0, 160,   1,   0,   0,   2, 
-      1,   0,   8, 128,   0,   0, 
-      0, 160,   5,   0,   0,   3, 
-      0,   0,  15, 128,   0,   0, 
-      0, 128,   1,   0, 228, 128, 
-      1,   0,   0,   2,   0,   8, 
-     15, 128,   0,   0, 228, 128, 
-    255, 255,   0,   0,  83,  72, 
-     68,  82,  44,   1,   0,   0, 
-     64,   0,   0,   0,  75,   0, 
-      0,   0,  89,   0,   0,   4, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   2,   0,   0,   0, 
-     90,   0,   0,   3,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   0,   0,   0,   0, 
-     85,  85,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      5,   0,   0,   0,  85,  85, 
-      0,   0,  98,  16,   0,   3, 
-     50,  16,  16,   0,   1,   0, 
-      0,   0,  98,  16,   0,   3, 
-    114,  16,  16,   0,   2,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0, 104,   0,   0,   2, 
-      2,   0,   0,   0,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      0,   0,   0,   0,  70,  16, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   0,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,  56,   0, 
-      0,   8, 114,   0,  16,   0, 
-      0,   0,   0,   0,  70,   2, 
-     16,   0,   0,   0,   0,   0, 
-      6, 128,  32,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-     14,   0,   0,   7,  50,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70,  16,  16,   0,   2,   0, 
-      0,   0, 166,  26,  16,   0, 
-      2,   0,   0,   0,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      1,   0,   0,   0,  70,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   5,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,  54,   0, 
-      0,   6, 130,   0,  16,   0, 
-      0,   0,   0,   0,  10, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  56,   0, 
-      0,   7, 242,  32,  16,   0, 
-      0,   0,   0,   0,  70,  14, 
-     16,   0,   0,   0,   0,   0, 
-      6,   0,  16,   0,   1,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,   7,   0,   0,   0, 
-      2,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70,   8,   3,   0,   0, 
-      1,   0,   0,   0, 188,   0, 
-      0,   0,   4,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    255, 255,   0,   1,   0,   0, 
-    224,   2,   0,   0, 156,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-    165,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   0,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 170,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   5,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 176,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  82,  71, 
-     66,   0, 116,  77,  97, 115, 
-    107,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    171, 171, 176,   0,   0,   0, 
-     11,   0,   0,   0, 212,   0, 
-      0,   0,  96,   1,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 220,   1,   0,   0, 
-      0,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    232,   1,   0,   0,   0,   0, 
-      0,   0, 248,   1,   0,   0, 
-     16,   0,   0,   0,   4,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   2,   0,   0,   0,   0, 
-      0,   0,  24,   2,   0,   0, 
-     32,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-     40,   2,   0,   0,   0,   0, 
-      0,   0,  56,   2,   0,   0, 
-     48,   0,   0,   0,  44,   0, 
-      0,   0,   0,   0,   0,   0, 
-     72,   2,   0,   0,   0,   0, 
-      0,   0,  88,   2,   0,   0, 
-     96,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 120,   2,   0,   0, 
-    160,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 132,   2,   0,   0, 
-    224,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    232,   1,   0,   0,   0,   0, 
-      0,   0, 152,   2,   0,   0, 
-    240,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 184,   2,   0,   0, 
-      0,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 195,   2,   0,   0, 
-     16,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 205,   2,   0,   0, 
-     32,   1,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 102,  76,  97, 121, 
-    101, 114,  67, 111, 108, 111, 
-    114,   0,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     79, 112,  97,  99, 105, 116, 
-    121,   0, 171, 171,   0,   0, 
-      3,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 105,  66, 108, 101, 
-    110, 100,  67, 111, 110, 102, 
-    105, 103,   0, 171, 171, 171, 
-      1,   0,  19,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  89, 
-    117, 118,  67, 111, 108, 111, 
-    114,  77,  97, 116, 114, 105, 
-    120,   0,   2,   0,   3,   0, 
-      3,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  76,  97, 121, 101, 114, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,   3,   0, 
-      3,   0,   4,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  80, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,   0, 118,  82, 101, 110, 
-    100, 101, 114,  84,  97, 114, 
-    103, 101, 116,  79, 102, 102, 
-    115, 101, 116,   0, 118,  84, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 111, 114, 100, 115, 
-      0, 171,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    118,  76,  97, 121, 101, 114, 
-     81, 117,  97, 100,   0, 118, 
-     77,  97, 115, 107,  81, 117, 
-     97, 100,   0, 109,  66,  97, 
-     99, 107, 100, 114, 111, 112, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,  77, 105, 
-     99, 114, 111, 115, 111, 102, 
-    116,  32,  40,  82,  41,  32, 
-     72,  76,  83,  76,  32,  83, 
-    104,  97, 100, 101, 114,  32, 
-     67, 111, 109, 112, 105, 108, 
-    101, 114,  32,  49,  48,  46, 
-     49,   0,  73,  83,  71,  78, 
-    104,   0,   0,   0,   3,   0, 
-      0,   0,   8,   0,   0,   0, 
-     80,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,  15,   0,   0,   0, 
-     92,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   1,   0, 
-      0,   0,   3,   3,   0,   0, 
-     92,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   2,   0, 
-      0,   0,   7,   7,   0,   0, 
-     83,  86,  95,  80, 111, 115, 
-    105, 116, 105, 111, 110,   0, 
-     84,  69,  88,  67,  79,  79, 
-     82,  68,   0, 171, 171, 171, 
-     79,  83,  71,  78,  44,   0, 
-      0,   0,   1,   0,   0,   0, 
-      8,   0,   0,   0,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  83,  86, 
-     95,  84,  97, 114, 103, 101, 
-    116,   0, 171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tRGB                              texture  float4          2d             t0      1 
+// tMask                             texture  float4          2d             t5      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t0               
+// s1             s0              t5               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    dcl t0.xy
+    dcl t1.xyz
+    dcl_2d s0
+    dcl_2d s1
+    rcp r0.w, t1.z
+    mul r0.xy, r0.w, t1
+    texld r1, t0, s0
+    texld r0, r0, s1
+    mul r1.xyz, r1, c0.x
+    mov r1.w, c0.x
+    mul r0, r0.x, r1
+    mov oC0, r0
+
+// approximately 8 instruction slots used (2 texture, 6 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[2], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_resource_texture2d (float,float,float,float) t5
+dcl_input_ps linear v1.xy
+dcl_input_ps linear v2.xyz
+dcl_output o0.xyzw
+dcl_temps 2
+sample r0.xyzw, v1.xyxx, t0.xyzw, s0
+mul r0.xyz, r0.xyzx, cb0[1].xxxx
+div r1.xy, v2.xyxx, v2.zzzz
+sample r1.xyzw, r1.xyxx, t5.xyzw, s0
+mov r0.w, cb0[1].x
+mul o0.xyzw, r0.xyzw, r1.xxxx
+ret 
+// Approximately 7 instruction slots used
+#endif
+
+const BYTE RGBShaderMask[] =
+{
+     68,  88,  66,  67,  89, 221, 
+     15,  22, 232, 140, 114, 122, 
+    200,  15, 217, 125, 153,  18, 
+    224,   0,   1,   0,   0,   0, 
+    136,   6,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     36,   1,   0,   0,  88,   2, 
+      0,   0, 212,   2,   0,   0, 
+    228,   5,   0,   0,  84,   6, 
+      0,   0,  65, 111, 110,  57, 
+    228,   0,   0,   0, 228,   0, 
+      0,   0,   0,   2, 255, 255, 
+    172,   0,   0,   0,  56,   0, 
+      0,   0,   1,   0,  44,   0, 
+      0,   0,  56,   0,   0,   0, 
+     56,   0,   2,   0,  36,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   5,   0,   1,   0, 
+      0,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   2, 255, 255,  31,   0, 
+      0,   2,   0,   0,   0, 128, 
+      0,   0,   3, 176,  31,   0, 
+      0,   2,   0,   0,   0, 128, 
+      1,   0,   7, 176,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      0,   8,  15, 160,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      1,   8,  15, 160,   6,   0, 
+      0,   2,   0,   0,   8, 128, 
+      1,   0, 170, 176,   5,   0, 
+      0,   3,   0,   0,   3, 128, 
+      0,   0, 255, 128,   1,   0, 
+    228, 176,  66,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+    228, 176,   0,   8, 228, 160, 
+     66,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 128, 
+      1,   8, 228, 160,   5,   0, 
+      0,   3,   1,   0,   7, 128, 
+      1,   0, 228, 128,   0,   0, 
+      0, 160,   1,   0,   0,   2, 
+      1,   0,   8, 128,   0,   0, 
+      0, 160,   5,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+      0, 128,   1,   0, 228, 128, 
+      1,   0,   0,   2,   0,   8, 
+     15, 128,   0,   0, 228, 128, 
+    255, 255,   0,   0,  83,  72, 
+     68,  82,  44,   1,   0,   0, 
+     64,   0,   0,   0,  75,   0, 
+      0,   0,  89,   0,   0,   4, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   2,   0,   0,   0, 
+     90,   0,   0,   3,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+     88,  24,   0,   4,   0, 112, 
+     16,   0,   0,   0,   0,   0, 
+     85,  85,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      5,   0,   0,   0,  85,  85, 
+      0,   0,  98,  16,   0,   3, 
+     50,  16,  16,   0,   1,   0, 
+      0,   0,  98,  16,   0,   3, 
+    114,  16,  16,   0,   2,   0, 
+      0,   0, 101,   0,   0,   3, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0, 104,   0,   0,   2, 
+      2,   0,   0,   0,  69,   0, 
+      0,   9, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+     70, 126,  16,   0,   0,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,  56,   0, 
+      0,   8, 114,   0,  16,   0, 
+      0,   0,   0,   0,  70,   2, 
+     16,   0,   0,   0,   0,   0, 
+      6, 128,  32,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+     14,   0,   0,   7,  50,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,  16,  16,   0,   2,   0, 
+      0,   0, 166,  26,  16,   0, 
+      2,   0,   0,   0,  69,   0, 
+      0,   9, 242,   0,  16,   0, 
+      1,   0,   0,   0,  70,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70, 126,  16,   0,   5,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,  54,   0, 
+      0,   6, 130,   0,  16,   0, 
+      0,   0,   0,   0,  10, 128, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  56,   0, 
+      0,   7, 242,  32,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+      6,   0,  16,   0,   1,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,   7,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70,   8,   3,   0,   0, 
+      1,   0,   0,   0, 188,   0, 
+      0,   0,   4,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    255, 255,   0,   1,   0,   0, 
+    224,   2,   0,   0, 156,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+    165,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+      1,   0,   0,   0,  13,   0, 
+      0,   0, 170,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   5,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 176,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  82,  71, 
+     66,   0, 116,  77,  97, 115, 
+    107,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    171, 171, 176,   0,   0,   0, 
+     11,   0,   0,   0, 212,   0, 
+      0,   0,  96,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 220,   1,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    232,   1,   0,   0,   0,   0, 
+      0,   0, 248,   1,   0,   0, 
+     16,   0,   0,   0,   4,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   2,   0,   0,   0,   0, 
+      0,   0,  24,   2,   0,   0, 
+     32,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+     40,   2,   0,   0,   0,   0, 
+      0,   0,  56,   2,   0,   0, 
+     48,   0,   0,   0,  44,   0, 
+      0,   0,   0,   0,   0,   0, 
+     72,   2,   0,   0,   0,   0, 
+      0,   0,  88,   2,   0,   0, 
+     96,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 120,   2,   0,   0, 
+    160,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 132,   2,   0,   0, 
+    224,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    232,   1,   0,   0,   0,   0, 
+      0,   0, 152,   2,   0,   0, 
+    240,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 184,   2,   0,   0, 
+      0,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 195,   2,   0,   0, 
+     16,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 205,   2,   0,   0, 
+     32,   1,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0, 118,  84, 
+    101, 120, 116, 117, 114, 101, 
+     67, 111, 111, 114, 100, 115, 
+      0, 171,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  76,  97, 121, 101, 114, 
+     81, 117,  97, 100,   0, 118, 
+     77,  97, 115, 107,  81, 117, 
+     97, 100,   0, 109,  66,  97, 
+     99, 107, 100, 114, 111, 112, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  40,  82,  41,  32, 
+     72,  76,  83,  76,  32,  83, 
+    104,  97, 100, 101, 114,  32, 
+     67, 111, 109, 112, 105, 108, 
+    101, 114,  32,  49,  48,  46, 
+     49,   0,  73,  83,  71,  78, 
+    104,   0,   0,   0,   3,   0, 
+      0,   0,   8,   0,   0,   0, 
+     80,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     92,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   3,   3,   0,   0, 
+     92,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   2,   0, 
+      0,   0,   7,   7,   0,   0, 
+     83,  86,  95,  80, 111, 115, 
+    105, 116, 105, 111, 110,   0, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,   0, 171, 171, 171, 
+     79,  83,  71,  78,  44,   0, 
+      0,   0,   1,   0,   0,   0, 
+      8,   0,   0,   0,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  83,  86, 
+     95,  84,  97, 114, 103, 101, 
+    116,   0, 171, 171
+};
 ShaderBytes sRGBShaderMask = { RGBShaderMask, sizeof(RGBShaderMask) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// tMask                             texture  float4          2d             t5      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-// s1             s0              t5               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    dcl t0.xy
-    dcl t1.xyz
-    dcl_2d s0
-    dcl_2d s1
-    rcp r0.w, t1.z
-    mul r0.xy, r0.w, t1
-    texld r1, t0, s0
-    texld r0, r0, s1
-    mul r1, r1, c0.x
-    mul r0, r0.x, r1
-    mov oC0, r0
-
-// approximately 7 instruction slots used (2 texture, 5 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t5
-dcl_input_ps linear v1.xy
-dcl_input_ps linear v2.xyz
-dcl_output o0.xyzw
-dcl_temps 2
-div r0.xy, v2.xyxx, v2.zzzz
-sample r0.xyzw, r0.xyxx, t5.xyzw, s0
-sample r1.xyzw, v1.xyxx, t0.xyzw, s0
-mul r1.xyzw, r1.xyzw, cb0[1].xxxx
-mul o0.xyzw, r0.xxxx, r1.xyzw
-ret 
-// Approximately 6 instruction slots used
-#endif
-
-const BYTE RGBAShaderMask[] =
-{
-     68,  88,  66,  67, 195, 236, 
-    129, 118, 244,  48, 247, 117, 
-    155, 208,   5,  31,   9, 224, 
-     75,  19,   1,   0,   0,   0, 
-    100,   6,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-     24,   1,   0,   0,  52,   2, 
-      0,   0, 176,   2,   0,   0, 
-    192,   5,   0,   0,  48,   6, 
-      0,   0,  65, 111, 110,  57, 
-    216,   0,   0,   0, 216,   0, 
-      0,   0,   0,   2, 255, 255, 
-    160,   0,   0,   0,  56,   0, 
-      0,   0,   1,   0,  44,   0, 
-      0,   0,  56,   0,   0,   0, 
-     56,   0,   2,   0,  36,   0, 
-      0,   0,  56,   0,   0,   0, 
-      0,   0,   5,   0,   1,   0, 
-      0,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   2, 255, 255,  31,   0, 
-      0,   2,   0,   0,   0, 128, 
-      0,   0,   3, 176,  31,   0, 
-      0,   2,   0,   0,   0, 128, 
-      1,   0,   7, 176,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      0,   8,  15, 160,  31,   0, 
-      0,   2,   0,   0,   0, 144, 
-      1,   8,  15, 160,   6,   0, 
-      0,   2,   0,   0,   8, 128, 
-      1,   0, 170, 176,   5,   0, 
-      0,   3,   0,   0,   3, 128, 
-      0,   0, 255, 128,   1,   0, 
-    228, 176,  66,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-    228, 176,   0,   8, 228, 160, 
-     66,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 128, 
-      1,   8, 228, 160,   5,   0, 
-      0,   3,   1,   0,  15, 128, 
-      1,   0, 228, 128,   0,   0, 
-      0, 160,   5,   0,   0,   3, 
-      0,   0,  15, 128,   0,   0, 
-      0, 128,   1,   0, 228, 128, 
-      1,   0,   0,   2,   0,   8, 
-     15, 128,   0,   0, 228, 128, 
-    255, 255,   0,   0,  83,  72, 
-     68,  82,  20,   1,   0,   0, 
-     64,   0,   0,   0,  69,   0, 
-      0,   0,  89,   0,   0,   4, 
-     70, 142,  32,   0,   0,   0, 
-      0,   0,   2,   0,   0,   0, 
-     90,   0,   0,   3,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   0,   0,   0,   0, 
-     85,  85,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      5,   0,   0,   0,  85,  85, 
-      0,   0,  98,  16,   0,   3, 
-     50,  16,  16,   0,   1,   0, 
-      0,   0,  98,  16,   0,   3, 
-    114,  16,  16,   0,   2,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0, 104,   0,   0,   2, 
-      2,   0,   0,   0,  14,   0, 
-      0,   7,  50,   0,  16,   0, 
-      0,   0,   0,   0,  70,  16, 
-     16,   0,   2,   0,   0,   0, 
-    166,  26,  16,   0,   2,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,   0,  16,   0, 
-      0,   0,   0,   0,  70, 126, 
-     16,   0,   5,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   0,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  56,   0,   0,   8, 
-    242,   0,  16,   0,   1,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,   6, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  56,   0, 
-      0,   7, 242,  32,  16,   0, 
-      0,   0,   0,   0,   6,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   1,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,   6,   0,   0,   0, 
-      2,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70,   8,   3,   0,   0, 
-      1,   0,   0,   0, 188,   0, 
-      0,   0,   4,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    255, 255,   0,   1,   0,   0, 
-    224,   2,   0,   0, 156,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-    165,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   0,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 170,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   5,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 176,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  82,  71, 
-     66,   0, 116,  77,  97, 115, 
-    107,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    171, 171, 176,   0,   0,   0, 
-     11,   0,   0,   0, 212,   0, 
-      0,   0,  96,   1,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 220,   1,   0,   0, 
-      0,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    232,   1,   0,   0,   0,   0, 
-      0,   0, 248,   1,   0,   0, 
-     16,   0,   0,   0,   4,   0, 
-      0,   0,   2,   0,   0,   0, 
-      8,   2,   0,   0,   0,   0, 
-      0,   0,  24,   2,   0,   0, 
-     32,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-     40,   2,   0,   0,   0,   0, 
-      0,   0,  56,   2,   0,   0, 
-     48,   0,   0,   0,  44,   0, 
-      0,   0,   0,   0,   0,   0, 
-     72,   2,   0,   0,   0,   0, 
-      0,   0,  88,   2,   0,   0, 
-     96,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 120,   2,   0,   0, 
-    160,   0,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 132,   2,   0,   0, 
-    224,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    232,   1,   0,   0,   0,   0, 
-      0,   0, 152,   2,   0,   0, 
-    240,   0,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 184,   2,   0,   0, 
-      0,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 195,   2,   0,   0, 
-     16,   1,   0,   0,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-    168,   2,   0,   0,   0,   0, 
-      0,   0, 205,   2,   0,   0, 
-     32,   1,   0,   0,  64,   0, 
-      0,   0,   0,   0,   0,   0, 
-    104,   2,   0,   0,   0,   0, 
-      0,   0, 102,  76,  97, 121, 
-    101, 114,  67, 111, 108, 111, 
-    114,   0,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     79, 112,  97,  99, 105, 116, 
-    121,   0, 171, 171,   0,   0, 
-      3,   0,   1,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 105,  66, 108, 101, 
-    110, 100,  67, 111, 110, 102, 
-    105, 103,   0, 171, 171, 171, 
-      1,   0,  19,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  89, 
-    117, 118,  67, 111, 108, 111, 
-    114,  77,  97, 116, 114, 105, 
-    120,   0,   2,   0,   3,   0, 
-      3,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  76,  97, 121, 101, 114, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,   3,   0, 
-      3,   0,   4,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  80, 114, 111, 
-    106, 101,  99, 116, 105, 111, 
-    110,   0, 118,  82, 101, 110, 
-    100, 101, 114,  84,  97, 114, 
-    103, 101, 116,  79, 102, 102, 
-    115, 101, 116,   0, 118,  84, 
-    101, 120, 116, 117, 114, 101, 
-     67, 111, 111, 114, 100, 115, 
-      0, 171,   1,   0,   3,   0, 
-      1,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    118,  76,  97, 121, 101, 114, 
-     81, 117,  97, 100,   0, 118, 
-     77,  97, 115, 107,  81, 117, 
-     97, 100,   0, 109,  66,  97, 
-     99, 107, 100, 114, 111, 112, 
-     84, 114,  97, 110, 115, 102, 
-    111, 114, 109,   0,  77, 105, 
-     99, 114, 111, 115, 111, 102, 
-    116,  32,  40,  82,  41,  32, 
-     72,  76,  83,  76,  32,  83, 
-    104,  97, 100, 101, 114,  32, 
-     67, 111, 109, 112, 105, 108, 
-    101, 114,  32,  49,  48,  46, 
-     49,   0,  73,  83,  71,  78, 
-    104,   0,   0,   0,   3,   0, 
-      0,   0,   8,   0,   0,   0, 
-     80,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,  15,   0,   0,   0, 
-     92,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   1,   0, 
-      0,   0,   3,   3,   0,   0, 
-     92,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-      3,   0,   0,   0,   2,   0, 
-      0,   0,   7,   7,   0,   0, 
-     83,  86,  95,  80, 111, 115, 
-    105, 116, 105, 111, 110,   0, 
-     84,  69,  88,  67,  79,  79, 
-     82,  68,   0, 171, 171, 171, 
-     79,  83,  71,  78,  44,   0, 
-      0,   0,   1,   0,   0,   0, 
-      8,   0,   0,   0,  32,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  83,  86, 
-     95,  84,  97, 114, 103, 101, 
-    116,   0, 171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tRGB                              texture  float4          2d             t0      1 
+// tMask                             texture  float4          2d             t5      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t0               
+// s1             s0              t5               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    dcl t0.xy
+    dcl t1.xyz
+    dcl_2d s0
+    dcl_2d s1
+    rcp r0.w, t1.z
+    mul r0.xy, r0.w, t1
+    texld r1, t0, s0
+    texld r0, r0, s1
+    mul r1, r1, c0.x
+    mul r0, r0.x, r1
+    mov oC0, r0
+
+// approximately 7 instruction slots used (2 texture, 5 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[2], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_resource_texture2d (float,float,float,float) t5
+dcl_input_ps linear v1.xy
+dcl_input_ps linear v2.xyz
+dcl_output o0.xyzw
+dcl_temps 2
+div r0.xy, v2.xyxx, v2.zzzz
+sample r0.xyzw, r0.xyxx, t5.xyzw, s0
+sample r1.xyzw, v1.xyxx, t0.xyzw, s0
+mul r1.xyzw, r1.xyzw, cb0[1].xxxx
+mul o0.xyzw, r0.xxxx, r1.xyzw
+ret 
+// Approximately 6 instruction slots used
+#endif
+
+const BYTE RGBAShaderMask[] =
+{
+     68,  88,  66,  67, 195, 236, 
+    129, 118, 244,  48, 247, 117, 
+    155, 208,   5,  31,   9, 224, 
+     75,  19,   1,   0,   0,   0, 
+    100,   6,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     24,   1,   0,   0,  52,   2, 
+      0,   0, 176,   2,   0,   0, 
+    192,   5,   0,   0,  48,   6, 
+      0,   0,  65, 111, 110,  57, 
+    216,   0,   0,   0, 216,   0, 
+      0,   0,   0,   2, 255, 255, 
+    160,   0,   0,   0,  56,   0, 
+      0,   0,   1,   0,  44,   0, 
+      0,   0,  56,   0,   0,   0, 
+     56,   0,   2,   0,  36,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   5,   0,   1,   0, 
+      0,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   2, 255, 255,  31,   0, 
+      0,   2,   0,   0,   0, 128, 
+      0,   0,   3, 176,  31,   0, 
+      0,   2,   0,   0,   0, 128, 
+      1,   0,   7, 176,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      0,   8,  15, 160,  31,   0, 
+      0,   2,   0,   0,   0, 144, 
+      1,   8,  15, 160,   6,   0, 
+      0,   2,   0,   0,   8, 128, 
+      1,   0, 170, 176,   5,   0, 
+      0,   3,   0,   0,   3, 128, 
+      0,   0, 255, 128,   1,   0, 
+    228, 176,  66,   0,   0,   3, 
+      1,   0,  15, 128,   0,   0, 
+    228, 176,   0,   8, 228, 160, 
+     66,   0,   0,   3,   0,   0, 
+     15, 128,   0,   0, 228, 128, 
+      1,   8, 228, 160,   5,   0, 
+      0,   3,   1,   0,  15, 128, 
+      1,   0, 228, 128,   0,   0, 
+      0, 160,   5,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+      0, 128,   1,   0, 228, 128, 
+      1,   0,   0,   2,   0,   8, 
+     15, 128,   0,   0, 228, 128, 
+    255, 255,   0,   0,  83,  72, 
+     68,  82,  20,   1,   0,   0, 
+     64,   0,   0,   0,  69,   0, 
+      0,   0,  89,   0,   0,   4, 
+     70, 142,  32,   0,   0,   0, 
+      0,   0,   2,   0,   0,   0, 
+     90,   0,   0,   3,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+     88,  24,   0,   4,   0, 112, 
+     16,   0,   0,   0,   0,   0, 
+     85,  85,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      5,   0,   0,   0,  85,  85, 
+      0,   0,  98,  16,   0,   3, 
+     50,  16,  16,   0,   1,   0, 
+      0,   0,  98,  16,   0,   3, 
+    114,  16,  16,   0,   2,   0, 
+      0,   0, 101,   0,   0,   3, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0, 104,   0,   0,   2, 
+      2,   0,   0,   0,  14,   0, 
+      0,   7,  50,   0,  16,   0, 
+      0,   0,   0,   0,  70,  16, 
+     16,   0,   2,   0,   0,   0, 
+    166,  26,  16,   0,   2,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   0,   0, 
+      0,   0,  70,   0,  16,   0, 
+      0,   0,   0,   0,  70, 126, 
+     16,   0,   5,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  69,   0,   0,   9, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   0,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  56,   0,   0,   8, 
+    242,   0,  16,   0,   1,   0, 
+      0,   0,  70,  14,  16,   0, 
+      1,   0,   0,   0,   6, 128, 
+     32,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,  56,   0, 
+      0,   7, 242,  32,  16,   0, 
+      0,   0,   0,   0,   6,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   1,   0, 
+      0,   0,  62,   0,   0,   1, 
+     83,  84,  65,  84, 116,   0, 
+      0,   0,   6,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  82,  68, 
+     69,  70,   8,   3,   0,   0, 
+      1,   0,   0,   0, 188,   0, 
+      0,   0,   4,   0,   0,   0, 
+     28,   0,   0,   0,   0,   4, 
+    255, 255,   0,   1,   0,   0, 
+    224,   2,   0,   0, 156,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+    165,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+      1,   0,   0,   0,  13,   0, 
+      0,   0, 170,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   5,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 176,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  82,  71, 
+     66,   0, 116,  77,  97, 115, 
+    107,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    171, 171, 176,   0,   0,   0, 
+     11,   0,   0,   0, 212,   0, 
+      0,   0,  96,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 220,   1,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    232,   1,   0,   0,   0,   0, 
+      0,   0, 248,   1,   0,   0, 
+     16,   0,   0,   0,   4,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   2,   0,   0,   0,   0, 
+      0,   0,  24,   2,   0,   0, 
+     32,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+     40,   2,   0,   0,   0,   0, 
+      0,   0,  56,   2,   0,   0, 
+     48,   0,   0,   0,  44,   0, 
+      0,   0,   0,   0,   0,   0, 
+     72,   2,   0,   0,   0,   0, 
+      0,   0,  88,   2,   0,   0, 
+     96,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 120,   2,   0,   0, 
+    160,   0,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 132,   2,   0,   0, 
+    224,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    232,   1,   0,   0,   0,   0, 
+      0,   0, 152,   2,   0,   0, 
+    240,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 184,   2,   0,   0, 
+      0,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 195,   2,   0,   0, 
+     16,   1,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+    168,   2,   0,   0,   0,   0, 
+      0,   0, 205,   2,   0,   0, 
+     32,   1,   0,   0,  64,   0, 
+      0,   0,   0,   0,   0,   0, 
+    104,   2,   0,   0,   0,   0, 
+      0,   0, 102,  76,  97, 121, 
+    101, 114,  67, 111, 108, 111, 
+    114,   0,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     79, 112,  97,  99, 105, 116, 
+    121,   0, 171, 171,   0,   0, 
+      3,   0,   1,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 105,  66, 108, 101, 
+    110, 100,  67, 111, 110, 102, 
+    105, 103,   0, 171, 171, 171, 
+      1,   0,  19,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  89, 
+    117, 118,  67, 111, 108, 111, 
+    114,  77,  97, 116, 114, 105, 
+    120,   0,   2,   0,   3,   0, 
+      3,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  76,  97, 121, 101, 114, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,   3,   0, 
+      3,   0,   4,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  80, 114, 111, 
+    106, 101,  99, 116, 105, 111, 
+    110,   0, 118,  82, 101, 110, 
+    100, 101, 114,  84,  97, 114, 
+    103, 101, 116,  79, 102, 102, 
+    115, 101, 116,   0, 118,  84, 
+    101, 120, 116, 117, 114, 101, 
+     67, 111, 111, 114, 100, 115, 
+      0, 171,   1,   0,   3,   0, 
+      1,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    118,  76,  97, 121, 101, 114, 
+     81, 117,  97, 100,   0, 118, 
+     77,  97, 115, 107,  81, 117, 
+     97, 100,   0, 109,  66,  97, 
+     99, 107, 100, 114, 111, 112, 
+     84, 114,  97, 110, 115, 102, 
+    111, 114, 109,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  40,  82,  41,  32, 
+     72,  76,  83,  76,  32,  83, 
+    104,  97, 100, 101, 114,  32, 
+     67, 111, 109, 112, 105, 108, 
+    101, 114,  32,  49,  48,  46, 
+     49,   0,  73,  83,  71,  78, 
+    104,   0,   0,   0,   3,   0, 
+      0,   0,   8,   0,   0,   0, 
+     80,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     92,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   3,   3,   0,   0, 
+     92,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   2,   0, 
+      0,   0,   7,   7,   0,   0, 
+     83,  86,  95,  80, 111, 115, 
+    105, 116, 105, 111, 110,   0, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,   0, 171, 171, 171, 
+     79,  83,  71,  78,  44,   0, 
+      0,   0,   1,   0,   0,   0, 
+      8,   0,   0,   0,  32,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  83,  86, 
+     95,  84,  97, 114, 103, 101, 
+    116,   0, 171, 171
+};
 ShaderBytes sRGBAShaderMask = { RGBAShaderMask, sizeof(RGBAShaderMask) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tY                                texture  float4          2d             t1      1 
-// tCb                               texture  float4          2d             t2      1 
-// tCr                               texture  float4          2d             t3      1 
-// tMask                             texture  float4          2d             t5      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-// c1         cb0             3         3  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t1               
-// s1             s0              t2               
-// s2             s0              t3               
-// s3             s0              t5               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    def c4, -0.0627499968, -0.50195998, 1, 0
-    dcl t0.xy
-    dcl t1.xyz
-    dcl_2d s0
-    dcl_2d s1
-    dcl_2d s2
-    dcl_2d s3
-    mov r0.w, c4.z
-    texld r1, t0, s1
-    texld r2, t0, s0
-    add r2.x, r2.x, c4.x
-    add r2.y, r1.x, c4.y
-    rcp r2.w, t1.z
-    mul r1.xy, r2.w, t1
-    texld r3, t0, s2
-    texld r1, r1, s3
-    add r2.z, r3.x, c4.y
-    dp3 r0.x, c1, r2
-    dp3 r0.y, c2, r2
-    dp3 r0.z, c3, r2
-    mul r0, r0, c0.x
-    mul r0, r1.x, r0
-    mov oC0, r0
-
-// approximately 16 instruction slots used (4 texture, 12 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[6], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t1
-dcl_resource_texture2d (float,float,float,float) t2
-dcl_resource_texture2d (float,float,float,float) t3
-dcl_resource_texture2d (float,float,float,float) t5
-dcl_input_ps linear v1.xy
-dcl_input_ps linear v2.xyz
-dcl_output o0.xyzw
-dcl_temps 3
-mov r0.w, l(1.000000)
-sample r1.xyzw, v1.xyxx, t1.xyzw, s0
-add r1.x, r1.x, l(-0.062750)
-sample r2.xyzw, v1.xyxx, t2.xyzw, s0
-add r1.y, r2.x, l(-0.501960)
-sample r2.xyzw, v1.xyxx, t3.xyzw, s0
-add r1.z, r2.x, l(-0.501960)
-dp3 r0.x, cb0[3].xyzx, r1.xyzx
-dp3 r0.y, cb0[4].xyzx, r1.xyzx
-dp3 r0.z, cb0[5].xyzx, r1.xyzx
-mul r0.xyzw, r0.xyzw, cb0[1].xxxx
-div r1.xy, v2.xyxx, v2.zzzz
-sample r1.xyzw, r1.xyxx, t5.xyzw, s0
-mul o0.xyzw, r0.xyzw, r1.xxxx
-ret 
-// Approximately 15 instruction slots used
-#endif
-
-const BYTE YCbCrShaderMask[] =
-{
-     68,  88,  66,  67, 239, 174, 
-    189, 163,  31,  16, 244, 108, 
-     86, 227,  23,   8,  28, 147, 
-     43,  62,   1,   0,   0,   0, 
-    168,   8,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    232,   1,   0,   0,  52,   4, 
-      0,   0, 176,   4,   0,   0, 
-      4,   8,   0,   0, 116,   8, 
-      0,   0,  65, 111, 110,  57, 
-    168,   1,   0,   0, 168,   1, 
-      0,   0,   0,   2, 255, 255, 
-     92,   1,   0,   0,  76,   0, 
-      0,   0,   2,   0,  52,   0, 
-      0,   0,  76,   0,   0,   0, 
-     76,   0,   4,   0,  36,   0, 
-      0,   0,  76,   0,   1,   0, 
-      0,   0,   2,   0,   1,   0, 
-      3,   0,   2,   0,   5,   0, 
-      3,   0,   0,   0,   1,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      3,   0,   1,   0,   0,   0, 
-      0,   0,   1,   2, 255, 255, 
-     81,   0,   0,   5,   4,   0, 
-     15, 160,  18, 131, 128, 189, 
-    115, 128,   0, 191,   0,   0, 
-    128,  63,   0,   0,   0,   0, 
-     31,   0,   0,   2,   0,   0, 
-      0, 128,   0,   0,   3, 176, 
-     31,   0,   0,   2,   0,   0, 
-      0, 128,   1,   0,   7, 176, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   0,   8,  15, 160, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   1,   8,  15, 160, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   2,   8,  15, 160, 
-     31,   0,   0,   2,   0,   0, 
-      0, 144,   3,   8,  15, 160, 
-      1,   0,   0,   2,   0,   0, 
-      8, 128,   4,   0, 170, 160, 
-     66,   0,   0,   3,   1,   0, 
-     15, 128,   0,   0, 228, 176, 
-      1,   8, 228, 160,  66,   0, 
-      0,   3,   2,   0,  15, 128, 
-      0,   0, 228, 176,   0,   8, 
-    228, 160,   2,   0,   0,   3, 
-      2,   0,   1, 128,   2,   0, 
-      0, 128,   4,   0,   0, 160, 
-      2,   0,   0,   3,   2,   0, 
-      2, 128,   1,   0,   0, 128, 
-      4,   0,  85, 160,   6,   0, 
-      0,   2,   2,   0,   8, 128, 
-      1,   0, 170, 176,   5,   0, 
-      0,   3,   1,   0,   3, 128, 
-      2,   0, 255, 128,   1,   0, 
-    228, 176,  66,   0,   0,   3, 
-      3,   0,  15, 128,   0,   0, 
-    228, 176,   2,   8, 228, 160, 
-     66,   0,   0,   3,   1,   0, 
-     15, 128,   1,   0, 228, 128, 
-      3,   8, 228, 160,   2,   0, 
-      0,   3,   2,   0,   4, 128, 
-      3,   0,   0, 128,   4,   0, 
-     85, 160,   8,   0,   0,   3, 
-      0,   0,   1, 128,   1,   0, 
-    228, 160,   2,   0, 228, 128, 
-      8,   0,   0,   3,   0,   0, 
-      2, 128,   2,   0, 228, 160, 
-      2,   0, 228, 128,   8,   0, 
-      0,   3,   0,   0,   4, 128, 
-      3,   0, 228, 160,   2,   0, 
-    228, 128,   5,   0,   0,   3, 
-      0,   0,  15, 128,   0,   0, 
-    228, 128,   0,   0,   0, 160, 
-      5,   0,   0,   3,   0,   0, 
-     15, 128,   1,   0,   0, 128, 
-      0,   0, 228, 128,   1,   0, 
-      0,   2,   0,   8,  15, 128, 
-      0,   0, 228, 128, 255, 255, 
-      0,   0,  83,  72,  68,  82, 
-     68,   2,   0,   0,  64,   0, 
-      0,   0, 145,   0,   0,   0, 
-     89,   0,   0,   4,  70, 142, 
-     32,   0,   0,   0,   0,   0, 
-      6,   0,   0,   0,  90,   0, 
-      0,   3,   0,  96,  16,   0, 
-      0,   0,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      1,   0,   0,   0,  85,  85, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   2,   0, 
-      0,   0,  85,  85,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   3,   0,   0,   0, 
-     85,  85,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      5,   0,   0,   0,  85,  85, 
-      0,   0,  98,  16,   0,   3, 
-     50,  16,  16,   0,   1,   0, 
-      0,   0,  98,  16,   0,   3, 
-    114,  16,  16,   0,   2,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0, 104,   0,   0,   2, 
-      3,   0,   0,   0,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
-      0,   0,   0,   0,   1,  64, 
-      0,   0,   0,   0, 128,  63, 
-     69,   0,   0,   9, 242,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70,  16,  16,   0,   1,   0, 
-      0,   0,  70, 126,  16,   0, 
-      1,   0,   0,   0,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-      0,   0,   0,   7,  18,   0, 
-     16,   0,   1,   0,   0,   0, 
-     10,   0,  16,   0,   1,   0, 
-      0,   0,   1,  64,   0,   0, 
-     18, 131, 128, 189,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      2,   0,   0,   0,  70,  16, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   2,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   7,  34,   0,  16,   0, 
-      1,   0,   0,   0,  10,   0, 
-     16,   0,   2,   0,   0,   0, 
-      1,  64,   0,   0, 115, 128, 
-      0, 191,  69,   0,   0,   9, 
-    242,   0,  16,   0,   2,   0, 
-      0,   0,  70,  16,  16,   0, 
-      1,   0,   0,   0,  70, 126, 
-     16,   0,   3,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,   0,   0,   0,   7, 
-     66,   0,  16,   0,   1,   0, 
-      0,   0,  10,   0,  16,   0, 
-      2,   0,   0,   0,   1,  64, 
-      0,   0, 115, 128,   0, 191, 
-     16,   0,   0,   8,  18,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70, 130,  32,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-     70,   2,  16,   0,   1,   0, 
-      0,   0,  16,   0,   0,   8, 
-     34,   0,  16,   0,   0,   0, 
-      0,   0,  70, 130,  32,   0, 
-      0,   0,   0,   0,   4,   0, 
-      0,   0,  70,   2,  16,   0, 
-      1,   0,   0,   0,  16,   0, 
-      0,   8,  66,   0,  16,   0, 
-      0,   0,   0,   0,  70, 130, 
-     32,   0,   0,   0,   0,   0, 
-      5,   0,   0,   0,  70,   2, 
-     16,   0,   1,   0,   0,   0, 
-     56,   0,   0,   8, 242,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   0,   0, 
-      0,   0,   6, 128,  32,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,  14,   0,   0,   7, 
-     50,   0,  16,   0,   1,   0, 
-      0,   0,  70,  16,  16,   0, 
-      2,   0,   0,   0, 166,  26, 
-     16,   0,   2,   0,   0,   0, 
-     69,   0,   0,   9, 242,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70,   0,  16,   0,   1,   0, 
-      0,   0,  70, 126,  16,   0, 
-      5,   0,   0,   0,   0,  96, 
-     16,   0,   0,   0,   0,   0, 
-     56,   0,   0,   7, 242,  32, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   0,   0, 
-      0,   0,   6,   0,  16,   0, 
-      1,   0,   0,   0,  62,   0, 
-      0,   1,  83,  84,  65,  84, 
-    116,   0,   0,   0,  15,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   9,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     82,  68,  69,  70,  76,   3, 
-      0,   0,   1,   0,   0,   0, 
-      0,   1,   0,   0,   6,   0, 
-      0,   0,  28,   0,   0,   0, 
-      0,   4, 255, 255,   0,   1, 
-      0,   0,  36,   3,   0,   0, 
-    220,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   1,   0, 
-      0,   0, 229,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 232,   0, 
-      0,   0,   2,   0,   0,   0, 
-      5,   0,   0,   0,   4,   0, 
-      0,   0, 255, 255, 255, 255, 
-      2,   0,   0,   0,   1,   0, 
-      0,   0,  13,   0,   0,   0, 
-    236,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   3,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 240,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   5,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 246,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   0,   0,   0,   0, 
-    115,  83,  97, 109, 112, 108, 
-    101, 114,   0, 116,  89,   0, 
-    116,  67,  98,   0, 116,  67, 
-    114,   0, 116,  77,  97, 115, 
-    107,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    246,   0,   0,   0,  11,   0, 
-      0,   0,  24,   1,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-     32,   2,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  44,   2, 
-      0,   0,   0,   0,   0,   0, 
-     60,   2,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      2,   0,   0,   0,  76,   2, 
-      0,   0,   0,   0,   0,   0, 
-     92,   2,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 108,   2, 
-      0,   0,   0,   0,   0,   0, 
-    124,   2,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      2,   0,   0,   0, 140,   2, 
-      0,   0,   0,   0,   0,   0, 
-    156,   2,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    188,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    200,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  44,   2, 
-      0,   0,   0,   0,   0,   0, 
-    220,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 236,   2, 
-      0,   0,   0,   0,   0,   0, 
-    252,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 236,   2, 
-      0,   0,   0,   0,   0,   0, 
-      7,   3,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 236,   2, 
-      0,   0,   0,   0,   0,   0, 
-     17,   3,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 172,   2, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 109,  76, 
-     97, 121, 101, 114,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,   3,   0,   3,   0, 
-      4,   0,   4,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    109,  80, 114, 111, 106, 101, 
-     99, 116, 105, 111, 110,   0, 
-    118,  82, 101, 110, 100, 101, 
-    114,  84,  97, 114, 103, 101, 
-    116,  79, 102, 102, 115, 101, 
-    116,   0, 118,  84, 101, 120, 
-    116, 117, 114, 101,  67, 111, 
-    111, 114, 100, 115,   0, 171, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 118,  76, 
-     97, 121, 101, 114,  81, 117, 
-     97, 100,   0, 118,  77,  97, 
-    115, 107,  81, 117,  97, 100, 
-      0, 109,  66,  97,  99, 107, 
-    100, 114, 111, 112,  84, 114, 
-     97, 110, 115, 102, 111, 114, 
-    109,   0,  77, 105,  99, 114, 
-    111, 115, 111, 102, 116,  32, 
-     40,  82,  41,  32,  72,  76, 
-     83,  76,  32,  83, 104,  97, 
-    100, 101, 114,  32,  67, 111, 
-    109, 112, 105, 108, 101, 114, 
-     32,  49,  48,  46,  49,   0, 
-     73,  83,  71,  78, 104,   0, 
-      0,   0,   3,   0,   0,   0, 
-      8,   0,   0,   0,  80,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-     15,   0,   0,   0,  92,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   1,   0,   0,   0, 
-      3,   3,   0,   0,  92,   0, 
-      0,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   2,   0,   0,   0, 
-      7,   7,   0,   0,  83,  86, 
-     95,  80, 111, 115, 105, 116, 
-    105, 111, 110,   0,  84,  69, 
-     88,  67,  79,  79,  82,  68, 
-      0, 171, 171, 171,  79,  83, 
-     71,  78,  44,   0,   0,   0, 
-      1,   0,   0,   0,   8,   0, 
-      0,   0,  32,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,  15,   0, 
-      0,   0,  83,  86,  95,  84, 
-     97, 114, 103, 101, 116,   0, 
-    171, 171
-};
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer $Globals
+// {
+//
+//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
+//   float fLayerOpacity;               // Offset:   16 Size:     4
+//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
+//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44
+//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
+//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
+//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
+//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
+//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
+//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
+//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// sSampler                          sampler      NA          NA             s0      1 
+// tY                                texture  float4          2d             t1      1 
+// tCb                               texture  float4          2d             t2      1 
+// tCr                               texture  float4          2d             t3      1 
+// tMask                             texture  float4          2d             t5      1 
+// $Globals                          cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// TEXCOORD                 1   xyz         2     NONE   float   xyz 
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Target                0   xyzw        0   TARGET   float   xyzw
+//
+//
+// Constant buffer to DX9 shader constant mappings:
+//
+// Target Reg Buffer  Start Reg # of Regs        Data Conversion
+// ---------- ------- --------- --------- ----------------------
+// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
+// c1         cb0             3         3  ( FLT, FLT, FLT, FLT)
+//
+//
+// Sampler/Resource to DX9 shader sampler mappings:
+//
+// Target Sampler Source Sampler  Source Resource
+// -------------- --------------- ----------------
+// s0             s0              t1               
+// s1             s0              t2               
+// s2             s0              t3               
+// s3             s0              t5               
+//
+//
+// Level9 shader bytecode:
+//
+    ps_2_x
+    def c4, -0.0627499968, -0.50195998, 1, 0
+    dcl t0.xy
+    dcl t1.xyz
+    dcl_2d s0
+    dcl_2d s1
+    dcl_2d s2
+    dcl_2d s3
+    mov r0.w, c4.z
+    texld r1, t0, s1
+    texld r2, t0, s0
+    add r2.x, r2.x, c4.x
+    add r2.y, r1.x, c4.y
+    rcp r2.w, t1.z
+    mul r1.xy, r2.w, t1
+    texld r3, t0, s2
+    texld r1, r1, s3
+    add r2.z, r3.x, c4.y
+    dp3 r0.x, c1, r2
+    dp3 r0.y, c2, r2
+    dp3 r0.z, c3, r2
+    mul r0, r0, c0.x
+    mul r0, r1.x, r0
+    mov oC0, r0
+
+// approximately 16 instruction slots used (4 texture, 12 arithmetic)
+ps_4_0
+dcl_constantbuffer CB0[6], immediateIndexed
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t1
+dcl_resource_texture2d (float,float,float,float) t2
+dcl_resource_texture2d (float,float,float,float) t3
+dcl_resource_texture2d (float,float,float,float) t5
+dcl_input_ps linear v1.xy
+dcl_input_ps linear v2.xyz
+dcl_output o0.xyzw
+dcl_temps 3
+mov r0.w, l(1.000000)
+sample r1.xyzw, v1.xyxx, t1.xyzw, s0
+add r1.x, r1.x, l(-0.062750)
+sample r2.xyzw, v1.xyxx, t2.xyzw, s0
+add r1.y, r2.x, l(-0.501960)
+sample r2.xyzw, v1.xyxx, t3.xyzw, s0
+add r1.z, r2.x, l(-0.501960)
+dp3 r0.x, cb0[3].xyzx, r1.xyzx
+dp3 r0.y, cb0[4].xyzx, r1.xyzx
+dp3 r0.z, cb0[5].xyzx, r1.xyzx
+mul r0.xyzw, r0.xyzw, cb0[1].xxxx
+div r1.xy, v2.xyxx, v2.zzzz
+sample r1.xyzw, r1.xyxx, t5.xyzw, s0
+mul o0.xyzw, r0.xyzw, r1.xxxx
+ret 
+// Approximately 15 instruction slots used
+#endif
+
+const BYTE YCbCrShaderMask[] =
+{
+     68,  88,  66,  67, 239, 174, 
+    189, 163,  31,  16, 244, 108, 
+     86, 227,  23,   8,  28, 147, 
+     43,  62,   1,   0,   0,   0, 
+    168,   8,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+    232,   1,   0,   0,  52,   4, 
+      0,   0, 176,   4,   0,   0, 
+      4,   8,   0,   0, 116,   8, 
+      0,   0,  65, 111, 110,  57, 
+    168,   1,   0,   0, 168,   1, 
+      0,   0,   0,   2, 255, 255, 
+     92,   1,   0,   0,  76,   0, 
+      0,   0,   2,   0,  52,   0, 
+      0,   0,  76,   0,   0,   0, 
+     76,   0,   4,   0,  36,   0, 
+      0,   0,  76,   0,   1,   0, 
+      0,   0,   2,   0,   1,   0, 
+      3,   0,   2,   0,   5,   0, 
+      3,   0,   0,   0,   1,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      3,   0,   1,   0,   0,   0, 
+      0,   0,   1,   2, 255, 255, 
+     81,   0,   0,   5,   4,   0, 
+     15, 160,  18, 131, 128, 189, 
+    115, 128,   0, 191,   0,   0, 
+    128,  63,   0,   0,   0,   0, 
+     31,   0,   0,   2,   0,   0, 
+      0, 128,   0,   0,   3, 176, 
+     31,   0,   0,   2,   0,   0, 
+      0, 128,   1,   0,   7, 176, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   0,   8,  15, 160, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   1,   8,  15, 160, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   2,   8,  15, 160, 
+     31,   0,   0,   2,   0,   0, 
+      0, 144,   3,   8,  15, 160, 
+      1,   0,   0,   2,   0,   0, 
+      8, 128,   4,   0, 170, 160, 
+     66,   0,   0,   3,   1,   0, 
+     15, 128,   0,   0, 228, 176, 
+      1,   8, 228, 160,  66,   0, 
+      0,   3,   2,   0,  15, 128, 
+      0,   0, 228, 176,   0,   8, 
+    228, 160,   2,   0,   0,   3, 
+      2,   0,   1, 128,   2,   0, 
+      0, 128,   4,   0,   0, 160, 
+      2,   0,   0,   3,   2,   0, 
+      2, 128,   1,   0,   0, 128, 
+      4,   0,  85, 160,   6,   0, 
+      0,   2,   2,   0,   8, 128, 
+      1,   0, 170, 176,   5,   0, 
+      0,   3,   1,   0,   3, 128, 
+      2,   0, 255, 128,   1,   0, 
+    228, 176,  66,   0,   0,   3, 
+      3,   0,  15, 128,   0,   0, 
+    228, 176,   2,   8, 228, 160, 
+     66,   0,   0,   3,   1,   0, 
+     15, 128,   1,   0, 228, 128, 
+      3,   8, 228, 160,   2,   0, 
+      0,   3,   2,   0,   4, 128, 
+      3,   0,   0, 128,   4,   0, 
+     85, 160,   8,   0,   0,   3, 
+      0,   0,   1, 128,   1,   0, 
+    228, 160,   2,   0, 228, 128, 
+      8,   0,   0,   3,   0,   0, 
+      2, 128,   2,   0, 228, 160, 
+      2,   0, 228, 128,   8,   0, 
+      0,   3,   0,   0,   4, 128, 
+      3,   0, 228, 160,   2,   0, 
+    228, 128,   5,   0,   0,   3, 
+      0,   0,  15, 128,   0,   0, 
+    228, 128,   0,   0,   0, 160, 
+      5,   0,   0,   3,   0,   0, 
+     15, 128,   1,   0,   0, 128, 
+      0,   0, 228, 128,   1,   0, 
+      0,   2,   0,   8,  15, 128, 
+      0,   0, 228, 128, 255, 255, 
+      0,   0,  83,  72,  68,  82, 
+     68,   2,   0,   0,  64,   0, 
+      0,   0, 145,   0,   0,   0, 
+     89,   0,   0,   4,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      6,   0,   0,   0,  90,   0, 
+      0,   3,   0,  96,  16,   0, 
+      0,   0,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      1,   0,   0,   0,  85,  85, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   2,   0, 
+      0,   0,  85,  85,   0,   0, 
+     88,  24,   0,   4,   0, 112, 
+     16,   0,   3,   0,   0,   0, 
+     85,  85,   0,   0,  88,  24, 
+      0,   4,   0, 112,  16,   0, 
+      5,   0,   0,   0,  85,  85, 
+      0,   0,  98,  16,   0,   3, 
+     50,  16,  16,   0,   1,   0, 
+      0,   0,  98,  16,   0,   3, 
+    114,  16,  16,   0,   2,   0, 
+      0,   0, 101,   0,   0,   3, 
+    242,  32,  16,   0,   0,   0, 
+      0,   0, 104,   0,   0,   2, 
+      3,   0,   0,   0,  54,   0, 
+      0,   5, 130,   0,  16,   0, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   0,   0, 128,  63, 
+     69,   0,   0,   9, 242,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,  16,  16,   0,   1,   0, 
+      0,   0,  70, 126,  16,   0, 
+      1,   0,   0,   0,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+      0,   0,   0,   7,  18,   0, 
+     16,   0,   1,   0,   0,   0, 
+     10,   0,  16,   0,   1,   0, 
+      0,   0,   1,  64,   0,   0, 
+     18, 131, 128, 189,  69,   0, 
+      0,   9, 242,   0,  16,   0, 
+      2,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+     70, 126,  16,   0,   2,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   7,  34,   0,  16,   0, 
+      1,   0,   0,   0,  10,   0, 
+     16,   0,   2,   0,   0,   0, 
+      1,  64,   0,   0, 115, 128, 
+      0, 191,  69,   0,   0,   9, 
+    242,   0,  16,   0,   2,   0, 
+      0,   0,  70,  16,  16,   0, 
+      1,   0,   0,   0,  70, 126, 
+     16,   0,   3,   0,   0,   0, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,   0,   0,   0,   7, 
+     66,   0,  16,   0,   1,   0, 
+      0,   0,  10,   0,  16,   0, 
+      2,   0,   0,   0,   1,  64, 
+      0,   0, 115, 128,   0, 191, 
+     16,   0,   0,   8,  18,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70, 130,  32,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+     70,   2,  16,   0,   1,   0, 
+      0,   0,  16,   0,   0,   8, 
+     34,   0,  16,   0,   0,   0, 
+      0,   0,  70, 130,  32,   0, 
+      0,   0,   0,   0,   4,   0, 
+      0,   0,  70,   2,  16,   0, 
+      1,   0,   0,   0,  16,   0, 
+      0,   8,  66,   0,  16,   0, 
+      0,   0,   0,   0,  70, 130, 
+     32,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  70,   2, 
+     16,   0,   1,   0,   0,   0, 
+     56,   0,   0,   8, 242,   0, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   0,   0, 
+      0,   0,   6, 128,  32,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,  14,   0,   0,   7, 
+     50,   0,  16,   0,   1,   0, 
+      0,   0,  70,  16,  16,   0, 
+      2,   0,   0,   0, 166,  26, 
+     16,   0,   2,   0,   0,   0, 
+     69,   0,   0,   9, 242,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,   0,  16,   0,   1,   0, 
+      0,   0,  70, 126,  16,   0, 
+      5,   0,   0,   0,   0,  96, 
+     16,   0,   0,   0,   0,   0, 
+     56,   0,   0,   7, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   0,   0, 
+      0,   0,   6,   0,  16,   0, 
+      1,   0,   0,   0,  62,   0, 
+      0,   1,  83,  84,  65,  84, 
+    116,   0,   0,   0,  15,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   9,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     82,  68,  69,  70,  76,   3, 
+      0,   0,   1,   0,   0,   0, 
+      0,   1,   0,   0,   6,   0, 
+      0,   0,  28,   0,   0,   0, 
+      0,   4, 255, 255,   0,   1, 
+      0,   0,  36,   3,   0,   0, 
+    220,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0, 229,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 232,   0, 
+      0,   0,   2,   0,   0,   0, 
+      5,   0,   0,   0,   4,   0, 
+      0,   0, 255, 255, 255, 255, 
+      2,   0,   0,   0,   1,   0, 
+      0,   0,  13,   0,   0,   0, 
+    236,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   3,   0,   0,   0, 
+      1,   0,   0,   0,  13,   0, 
+      0,   0, 240,   0,   0,   0, 
+      2,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+    255, 255, 255, 255,   5,   0, 
+      0,   0,   1,   0,   0,   0, 
+     13,   0,   0,   0, 246,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    115,  83,  97, 109, 112, 108, 
+    101, 114,   0, 116,  89,   0, 
+    116,  67,  98,   0, 116,  67, 
+    114,   0, 116,  77,  97, 115, 
+    107,   0,  36,  71, 108, 111, 
+     98,  97, 108, 115,   0, 171, 
+    246,   0,   0,   0,  11,   0, 
+      0,   0,  24,   1,   0,   0, 
+     96,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     32,   2,   0,   0,   0,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  44,   2, 
+      0,   0,   0,   0,   0,   0, 
+     60,   2,   0,   0,  16,   0, 
+      0,   0,   4,   0,   0,   0, 
+      2,   0,   0,   0,  76,   2, 
+      0,   0,   0,   0,   0,   0, 
+     92,   2,   0,   0,  32,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 108,   2, 
+      0,   0,   0,   0,   0,   0, 
+    124,   2,   0,   0,  48,   0, 
+      0,   0,  44,   0,   0,   0, 
+      2,   0,   0,   0, 140,   2, 
+      0,   0,   0,   0,   0,   0, 
+    156,   2,   0,   0,  96,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    188,   2,   0,   0, 160,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    200,   2,   0,   0, 224,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0,  44,   2, 
+      0,   0,   0,   0,   0,   0, 
+    220,   2,   0,   0, 240,   0, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 236,   2, 
+      0,   0,   0,   0,   0,   0, 
+    252,   2,   0,   0,   0,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 236,   2, 
+      0,   0,   0,   0,   0,   0, 
+      7,   3,   0,   0,  16,   1, 
+      0,   0,  16,   0,   0,   0, 
+      0,   0,   0,   0, 236,   2, 
+      0,   0,   0,   0,   0,   0, 
+     17,   3,   0,   0,  32,   1, 
+      0,   0,  64,   0,   0,   0, 
+      0,   0,   0,   0, 172,   2, 
+      0,   0,   0,   0,   0,   0, 
+    102,  76,  97, 121, 101, 114, 
+     67, 111, 108, 111, 114,   0, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 102,  76, 
+     97, 121, 101, 114,  79, 112, 
+     97,  99, 105, 116, 121,   0, 
+    171, 171,   0,   0,   3,   0, 
+      1,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    105,  66, 108, 101, 110, 100, 
+     67, 111, 110, 102, 105, 103, 
+      0, 171, 171, 171,   1,   0, 
+     19,   0,   1,   0,   4,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 109,  89, 117, 118, 
+     67, 111, 108, 111, 114,  77, 
+     97, 116, 114, 105, 120,   0, 
+      2,   0,   3,   0,   3,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 109,  76, 
+     97, 121, 101, 114,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,   3,   0,   3,   0, 
+      4,   0,   4,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    109,  80, 114, 111, 106, 101, 
+     99, 116, 105, 111, 110,   0, 
+    118,  82, 101, 110, 100, 101, 
+    114,  84,  97, 114, 103, 101, 
+    116,  79, 102, 102, 115, 101, 
+    116,   0, 118,  84, 101, 120, 
+    116, 117, 114, 101,  67, 111, 
+    111, 114, 100, 115,   0, 171, 
+      1,   0,   3,   0,   1,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 118,  76, 
+     97, 121, 101, 114,  81, 117, 
+     97, 100,   0, 118,  77,  97, 
+    115, 107,  81, 117,  97, 100, 
+      0, 109,  66,  97,  99, 107, 
+    100, 114, 111, 112,  84, 114, 
+     97, 110, 115, 102, 111, 114, 
+    109,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78, 104,   0, 
+      0,   0,   3,   0,   0,   0, 
+      8,   0,   0,   0,  80,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  92,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  92,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   2,   0,   0,   0, 
+      7,   7,   0,   0,  83,  86, 
+     95,  80, 111, 115, 105, 116, 
+    105, 111, 110,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  79,  83, 
+     71,  78,  44,   0,   0,   0, 
+      1,   0,   0,   0,   8,   0, 
+      0,   0,  32,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  83,  86,  95,  84, 
+     97, 114, 103, 101, 116,   0, 
+    171, 171
+};
 ShaderBytes sYCbCrShaderMask = { YCbCrShaderMask, sizeof(YCbCrShaderMask) };
-#if 0
-//
-// Generated by Microsoft (R) HLSL Shader Compiler 10.1
-//
-//
-// Buffer Definitions: 
-//
-// cbuffer $Globals
-// {
-//
-//   float4 fLayerColor;                // Offset:    0 Size:    16 [unused]
-//   float fLayerOpacity;               // Offset:   16 Size:     4
-//   uint4 iBlendConfig;                // Offset:   32 Size:    16 [unused]
-//   row_major float3x3 mYuvColorMatrix;// Offset:   48 Size:    44 [unused]
-//   float4x4 mLayerTransform;          // Offset:   96 Size:    64 [unused]
-//   float4x4 mProjection;              // Offset:  160 Size:    64 [unused]
-//   float4 vRenderTargetOffset;        // Offset:  224 Size:    16 [unused]
-//   float4 vTextureCoords;             // Offset:  240 Size:    16 [unused]
-//   float4 vLayerQuad;                 // Offset:  256 Size:    16 [unused]
-//   float4 vMaskQuad;                  // Offset:  272 Size:    16 [unused]
-//   float4x4 mBackdropTransform;       // Offset:  288 Size:    64 [unused]
-//
-// }
-//
-//
-// Resource Bindings:
-//
-// Name                                 Type  Format         Dim      HLSL Bind  Count
-// ------------------------------ ---------- ------- ----------- -------------- ------
-// sSampler                          sampler      NA          NA             s0      1 
-// tRGB                              texture  float4          2d             t0      1 
-// tRGBWhite                         texture  float4          2d             t4      1 
-// tMask                             texture  float4          2d             t5      1 
-// $Globals                          cbuffer      NA          NA            cb0      1 
-//
-//
-//
-// Input signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Position              0   xyzw        0      POS   float       
-// TEXCOORD                 0   xy          1     NONE   float   xy  
-// TEXCOORD                 1   xyz         2     NONE   float   xyz 
-//
-//
-// Output signature:
-//
-// Name                 Index   Mask Register SysValue  Format   Used
-// -------------------- ----- ------ -------- -------- ------- ------
-// SV_Target                0   xyzw        0   TARGET   float   xyzw
-// SV_Target                1   xyzw        1   TARGET   float   xyzw
-//
-//
-// Constant buffer to DX9 shader constant mappings:
-//
-// Target Reg Buffer  Start Reg # of Regs        Data Conversion
-// ---------- ------- --------- --------- ----------------------
-// c0         cb0             1         1  ( FLT, FLT, FLT, FLT)
-//
-//
-// Sampler/Resource to DX9 shader sampler mappings:
-//
-// Target Sampler Source Sampler  Source Resource
-// -------------- --------------- ----------------
-// s0             s0              t0               
-// s1             s0              t4               
-// s2             s0              t5               
-//
-//
-// Level9 shader bytecode:
-//
-    ps_2_x
-    def c1, 1, 0, 0, 0
-    dcl t0.xy
-    dcl t1.xyz
-    dcl_2d s0
-    dcl_2d s1
-    dcl_2d s2
-    rcp r0.w, t1.z
-    mul r0.xy, r0.w, t1
-    texld r0, r0, s2
-    mul r0.x, r0.x, c0.x
-    texld r1, t0, s0
-    texld r2, t0, s1
-    add r2, r1, -r2
-    add r2, r2, c1.x
-    mov r1.w, r2.y
-    mul r2, r0.x, r2
-    mul r0, r0.x, r1
-    mov oC0, r0
-    mov oC1, r2
-
-// approximately 13 instruction slots used (3 texture, 10 arithmetic)
-ps_4_0
-dcl_constantbuffer CB0[2], immediateIndexed
-dcl_sampler s0, mode_default
-dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t4
-dcl_resource_texture2d (float,float,float,float) t5
-dcl_input_ps linear v1.xy
-dcl_input_ps linear v2.xyz
-dcl_output o0.xyzw
-dcl_output o1.xyzw
-dcl_temps 3
-div r0.xy, v2.xyxx, v2.zzzz
-sample r0.xyzw, r0.xyxx, t5.xyzw, s0
-mul r0.x, r0.x, cb0[1].x
-sample r1.xyzw, v1.xyxx, t4.xyzw, s0
-sample r2.xyzw, v1.xyxx, t0.xyzw, s0
-add r1.xyzw, -r1.xyzw, r2.xyzw
-add r1.xyzw, r1.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
-mov r2.w, r1.y
-mul o1.xyzw, r0.xxxx, r1.xyzw
-mul o0.xyzw, r0.xxxx, r2.xyzw
-ret 
-// Approximately 11 instruction slots used
-#endif
-
-const BYTE ComponentAlphaShaderMask[] =
-{
-     68,  88,  66,  67,  53,   1, 
-    100, 182,   2, 181, 247, 136, 
-     91, 215, 208, 183, 243,   6, 
-     78,  16,   1,   0,   0,   0, 
-    220,   7,   0,   0,   6,   0, 
-      0,   0,  56,   0,   0,   0, 
-    152,   1,   0,   0, 108,   3, 
-      0,   0, 232,   3,   0,   0, 
-     32,   7,   0,   0, 144,   7, 
-      0,   0,  65, 111, 110,  57, 
-     88,   1,   0,   0,  88,   1, 
-      0,   0,   0,   2, 255, 255, 
-     28,   1,   0,   0,  60,   0, 
-      0,   0,   1,   0,  48,   0, 
-      0,   0,  60,   0,   0,   0, 
-     60,   0,   3,   0,  36,   0, 
-      0,   0,  60,   0,   0,   0, 
-      0,   0,   4,   0,   1,   0, 
-      5,   0,   2,   0,   0,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   1,   2, 
-    255, 255,  81,   0,   0,   5, 
-      1,   0,  15, 160,   0,   0, 
-    128,  63,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,  31,   0,   0,   2, 
-      0,   0,   0, 128,   0,   0, 
-      3, 176,  31,   0,   0,   2, 
-      0,   0,   0, 128,   1,   0, 
-      7, 176,  31,   0,   0,   2, 
-      0,   0,   0, 144,   0,   8, 
-     15, 160,  31,   0,   0,   2, 
-      0,   0,   0, 144,   1,   8, 
-     15, 160,  31,   0,   0,   2, 
-      0,   0,   0, 144,   2,   8, 
-     15, 160,   6,   0,   0,   2, 
-      0,   0,   8, 128,   1,   0, 
-    170, 176,   5,   0,   0,   3, 
-      0,   0,   3, 128,   0,   0, 
-    255, 128,   1,   0, 228, 176, 
-     66,   0,   0,   3,   0,   0, 
-     15, 128,   0,   0, 228, 128, 
-      2,   8, 228, 160,   5,   0, 
-      0,   3,   0,   0,   1, 128, 
-      0,   0,   0, 128,   0,   0, 
-      0, 160,  66,   0,   0,   3, 
-      1,   0,  15, 128,   0,   0, 
-    228, 176,   0,   8, 228, 160, 
-     66,   0,   0,   3,   2,   0, 
-     15, 128,   0,   0, 228, 176, 
-      1,   8, 228, 160,   2,   0, 
-      0,   3,   2,   0,  15, 128, 
-      1,   0, 228, 128,   2,   0, 
-    228, 129,   2,   0,   0,   3, 
-      2,   0,  15, 128,   2,   0, 
-    228, 128,   1,   0,   0, 160, 
-      1,   0,   0,   2,   1,   0, 
-      8, 128,   2,   0,  85, 128, 
-      5,   0,   0,   3,   2,   0, 
-     15, 128,   0,   0,   0, 128, 
-      2,   0, 228, 128,   5,   0, 
-      0,   3,   0,   0,  15, 128, 
-      0,   0,   0, 128,   1,   0, 
-    228, 128,   1,   0,   0,   2, 
-      0,   8,  15, 128,   0,   0, 
-    228, 128,   1,   0,   0,   2, 
-      1,   8,  15, 128,   2,   0, 
-    228, 128, 255, 255,   0,   0, 
-     83,  72,  68,  82, 204,   1, 
-      0,   0,  64,   0,   0,   0, 
-    115,   0,   0,   0,  89,   0, 
-      0,   4,  70, 142,  32,   0, 
-      0,   0,   0,   0,   2,   0, 
-      0,   0,  90,   0,   0,   3, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  88,  24,   0,   4, 
-      0, 112,  16,   0,   0,   0, 
-      0,   0,  85,  85,   0,   0, 
-     88,  24,   0,   4,   0, 112, 
-     16,   0,   4,   0,   0,   0, 
-     85,  85,   0,   0,  88,  24, 
-      0,   4,   0, 112,  16,   0, 
-      5,   0,   0,   0,  85,  85, 
-      0,   0,  98,  16,   0,   3, 
-     50,  16,  16,   0,   1,   0, 
-      0,   0,  98,  16,   0,   3, 
-    114,  16,  16,   0,   2,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   0,   0, 
-      0,   0, 101,   0,   0,   3, 
-    242,  32,  16,   0,   1,   0, 
-      0,   0, 104,   0,   0,   2, 
-      3,   0,   0,   0,  14,   0, 
-      0,   7,  50,   0,  16,   0, 
-      0,   0,   0,   0,  70,  16, 
-     16,   0,   2,   0,   0,   0, 
-    166,  26,  16,   0,   2,   0, 
-      0,   0,  69,   0,   0,   9, 
-    242,   0,  16,   0,   0,   0, 
-      0,   0,  70,   0,  16,   0, 
-      0,   0,   0,   0,  70, 126, 
-     16,   0,   5,   0,   0,   0, 
-      0,  96,  16,   0,   0,   0, 
-      0,   0,  56,   0,   0,   8, 
-     18,   0,  16,   0,   0,   0, 
-      0,   0,  10,   0,  16,   0, 
-      0,   0,   0,   0,  10, 128, 
-     32,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      1,   0,   0,   0,  70,  16, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   4,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,  69,   0, 
-      0,   9, 242,   0,  16,   0, 
-      2,   0,   0,   0,  70,  16, 
-     16,   0,   1,   0,   0,   0, 
-     70, 126,  16,   0,   0,   0, 
-      0,   0,   0,  96,  16,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   8, 242,   0,  16,   0, 
-      1,   0,   0,   0,  70,  14, 
-     16, 128,  65,   0,   0,   0, 
-      1,   0,   0,   0,  70,  14, 
-     16,   0,   2,   0,   0,   0, 
-      0,   0,   0,  10, 242,   0, 
-     16,   0,   1,   0,   0,   0, 
-     70,  14,  16,   0,   1,   0, 
-      0,   0,   2,  64,   0,   0, 
-      0,   0, 128,  63,   0,   0, 
-    128,  63,   0,   0, 128,  63, 
-      0,   0, 128,  63,  54,   0, 
-      0,   5, 130,   0,  16,   0, 
-      2,   0,   0,   0,  26,   0, 
-     16,   0,   1,   0,   0,   0, 
-     56,   0,   0,   7, 242,  32, 
-     16,   0,   1,   0,   0,   0, 
-      6,   0,  16,   0,   0,   0, 
-      0,   0,  70,  14,  16,   0, 
-      1,   0,   0,   0,  56,   0, 
-      0,   7, 242,  32,  16,   0, 
-      0,   0,   0,   0,   6,   0, 
-     16,   0,   0,   0,   0,   0, 
-     70,  14,  16,   0,   2,   0, 
-      0,   0,  62,   0,   0,   1, 
-     83,  84,  65,  84, 116,   0, 
-      0,   0,  11,   0,   0,   0, 
-      3,   0,   0,   0,   0,   0, 
-      0,   0,   4,   0,   0,   0, 
-      6,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   3,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,  82,  68, 
-     69,  70,  48,   3,   0,   0, 
-      1,   0,   0,   0, 228,   0, 
-      0,   0,   5,   0,   0,   0, 
-     28,   0,   0,   0,   0,   4, 
-    255, 255,   0,   1,   0,   0, 
-      8,   3,   0,   0, 188,   0, 
-      0,   0,   3,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   1,   0, 
-      0,   0,   1,   0,   0,   0, 
-    197,   0,   0,   0,   2,   0, 
-      0,   0,   5,   0,   0,   0, 
-      4,   0,   0,   0, 255, 255, 
-    255, 255,   0,   0,   0,   0, 
-      1,   0,   0,   0,  13,   0, 
-      0,   0, 202,   0,   0,   0, 
-      2,   0,   0,   0,   5,   0, 
-      0,   0,   4,   0,   0,   0, 
-    255, 255, 255, 255,   4,   0, 
-      0,   0,   1,   0,   0,   0, 
-     13,   0,   0,   0, 212,   0, 
-      0,   0,   2,   0,   0,   0, 
-      5,   0,   0,   0,   4,   0, 
-      0,   0, 255, 255, 255, 255, 
-      5,   0,   0,   0,   1,   0, 
-      0,   0,  13,   0,   0,   0, 
-    218,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      1,   0,   0,   0,   0,   0, 
-      0,   0, 115,  83,  97, 109, 
-    112, 108, 101, 114,   0, 116, 
-     82,  71,  66,   0, 116,  82, 
-     71,  66,  87, 104, 105, 116, 
-    101,   0, 116,  77,  97, 115, 
-    107,   0,  36,  71, 108, 111, 
-     98,  97, 108, 115,   0, 171, 
-    218,   0,   0,   0,  11,   0, 
-      0,   0, 252,   0,   0,   0, 
-     96,   1,   0,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-      4,   2,   0,   0,   0,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  16,   2, 
-      0,   0,   0,   0,   0,   0, 
-     32,   2,   0,   0,  16,   0, 
-      0,   0,   4,   0,   0,   0, 
-      2,   0,   0,   0,  48,   2, 
-      0,   0,   0,   0,   0,   0, 
-     64,   2,   0,   0,  32,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  80,   2, 
-      0,   0,   0,   0,   0,   0, 
-     96,   2,   0,   0,  48,   0, 
-      0,   0,  44,   0,   0,   0, 
-      0,   0,   0,   0, 112,   2, 
-      0,   0,   0,   0,   0,   0, 
-    128,   2,   0,   0,  96,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 144,   2, 
-      0,   0,   0,   0,   0,   0, 
-    160,   2,   0,   0, 160,   0, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 144,   2, 
-      0,   0,   0,   0,   0,   0, 
-    172,   2,   0,   0, 224,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0,  16,   2, 
-      0,   0,   0,   0,   0,   0, 
-    192,   2,   0,   0, 240,   0, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 208,   2, 
-      0,   0,   0,   0,   0,   0, 
-    224,   2,   0,   0,   0,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 208,   2, 
-      0,   0,   0,   0,   0,   0, 
-    235,   2,   0,   0,  16,   1, 
-      0,   0,  16,   0,   0,   0, 
-      0,   0,   0,   0, 208,   2, 
-      0,   0,   0,   0,   0,   0, 
-    245,   2,   0,   0,  32,   1, 
-      0,   0,  64,   0,   0,   0, 
-      0,   0,   0,   0, 144,   2, 
-      0,   0,   0,   0,   0,   0, 
-    102,  76,  97, 121, 101, 114, 
-     67, 111, 108, 111, 114,   0, 
-      1,   0,   3,   0,   1,   0, 
-      4,   0,   0,   0,   0,   0, 
-      0,   0,   0,   0, 102,  76, 
-     97, 121, 101, 114,  79, 112, 
-     97,  99, 105, 116, 121,   0, 
-    171, 171,   0,   0,   3,   0, 
-      1,   0,   1,   0,   0,   0, 
-      0,   0,   0,   0,   0,   0, 
-    105,  66, 108, 101, 110, 100, 
-     67, 111, 110, 102, 105, 103, 
-      0, 171, 171, 171,   1,   0, 
-     19,   0,   1,   0,   4,   0, 
-      0,   0,   0,   0,   0,   0, 
-      0,   0, 109,  89, 117, 118, 
-     67, 111, 108, 111, 114,  77, 
-     97, 116, 114, 105, 120,   0, 
-      2,   0,   3,   0,   3,   0, 
-      3,   0,   0,   0,   0,   0,