// icon name PS

cbuffer _Globals : register(b0)
{
  float4 g_vStringPos : packoffset(c0);
  float4 cv1 : packoffset(c1);
  float4 g_vCellSize : packoffset(c2);
  float4 g_vRotation : packoffset(c3);
  float4 g_avChars[64] : packoffset(c4);
  float4 g_avOffsets[64] : packoffset(c68);
  float4 g_vColor : packoffset(c132) = {1,1,1,1};
  float4 g_avMask[4] : packoffset(c133) = {	{1,0,0,0},
											{0,1,0,0},
											{0,0,1,0},
											{0,0,0,1}
										};
}
SamplerState mySampler_s : register(s0);
Texture2D<float4> mySampler : register(t0);


// 3Dmigoto declarations
#define cmp -
Texture1D<float4> IniParams : register(t120);
Texture2D<float4> StereoParams : register(t125);
Texture2D<float4> t100 : register(t100);

void main( 
  float4 v0 : SV_Position0,
  float2 v1 : TEXCOORD0,
  out float4 o0 : SV_Target0)
{
  float4 r0;
  uint4 bitmask, uiDest;
  float4 fDest;
 
float2 tmp; 
float4 filter;

  r0.xyzw = mySampler.Sample(mySampler_s, v1.xy).xyzw;
  r0.x = cmp(0 >= r0.y);
  if (r0.x != 0) {
    if (-1 != 0) discard;
  }
  o0.w = g_vColor.w * r0.y;
  o0.xyz = g_vColor.xyz;
  
  tmp.x=v0.x;
  tmp.y=v0.y;
  filter = t100.Load(int3(tmp.xy, 0)); 
  
  if (filter.w == 1) o0.w=0.0;  
  
  return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
//   using 3Dmigoto v1.2.57 on Thu Jul 27 13:46:26 2017
//
//
// Buffer Definitions: 
//
// cbuffer $Globals
// {
//
//   float4 g_vStringPos;               // Offset:    0 Size:    16 [unused]
//   float4 cv1;                        // Offset:   16 Size:    16 [unused]
//   float4 g_vCellSize;                // Offset:   32 Size:    16 [unused]
//   float4 g_vRotation;                // Offset:   48 Size:    16 [unused]
//   float4 g_avChars[64];              // Offset:   64 Size:  1024 [unused]
//   float4 g_avOffsets[64];            // Offset: 1088 Size:  1024 [unused]
//   float4 g_vColor;                   // Offset: 2112 Size:    16
//      = 0x3f800000 0x3f800000 0x3f800000 0x3f800000 
//   float4 g_avMask[4];                // Offset: 2128 Size:    64 [unused]
//      = 0x3f800000 0x00000000 0x00000000 0x00000000 
//        0x00000000 0x3f800000 0x00000000 0x00000000 
//        0x00000000 0x00000000 0x3f800000 0x00000000 
//        0x00000000 0x00000000 0x00000000 0x3f800000 
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// mySampler                         sampler      NA          NA    0        1
// mySampler                         texture  float4          2d    0        1
// $Globals                          cbuffer      NA          NA    0        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
//
ps_4_0
dcl_constantbuffer cb0[133], 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
ge r0.x, l(0.000000), r0.y
if_nz r0.x
  discard_nz l(-1)
endif 
mul o0.w, r0.y, cb0[132].w
mov o0.xyz, cb0[132].xyzx
ret 
// Approximately 8 instruction slots used

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
 