// ---- Created with 3Dmigoto v1.3.14 on Fri Feb 15 20:03:51 2019
Texture2D<float4> t0 : register(t0);

SamplerState s0_s : register(s0);

cbuffer cb0 : register(b0)
{
  float4 cb0[4];
}




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


void main(
  float4 v0 : SV_POSITION0,
  float4 v1 : TEXCOORD0,
  float2 v2 : TEXCOORD1,
  out float4 o0 : SV_Target0)
{
  const float4 icb[] = { { 0.020500, 0, 0, 0},
                              { 0.085500, 0, 0, 0},
                              { 0.232000, 0, 0, 0},
                              { 0.324000, 0, 0, 1.000000},
                              { 0.232000, 0, 0, 0},
                              { 0.085500, 0, 0, 0},
                              { 0.020500, 0, 0, 0} };
  float4 r0,r1,r2,r3;
  uint4 bitmask, uiDest;
  float4 fDest;

  r0.xy = -v2.xy * float2(3,3) + v1.xy;
  r1.xyzw = float4(0,0,0,0);
  r0.zw = r0.xy;
  r2.x = 0;
  while (true) {
    r2.y = cmp((int)r2.x >= 7);
    if (r2.y != 0) break;
    r2.yz = r0.zw * cb0[3].xy + cb0[3].zw;
    r3.xyzw = t0.Sample(s0_s, r2.yz).xyzw;
    r1.xyzw = r3.xyzw * icb[r2.x+0].xxxw + r1.xyzw;
    r0.zw = v2.xy + r0.zw;
    r2.x = (int)r2.x + 1;
  }
  o0.xyzw = r1.xyzw;
  return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.14 on Fri Feb 15 20:03:51 2019
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float
// TEXCOORD                 0   xyzw        1     NONE   float   xy
// TEXCOORD                 1   xy          2     NONE   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_4_0
dcl_immediateConstantBuffer { { 0.020500, 0, 0, 0},
                              { 0.085500, 0, 0, 0},
                              { 0.232000, 0, 0, 0},
                              { 0.324000, 0, 0, 1.000000},
                              { 0.232000, 0, 0, 0},
                              { 0.085500, 0, 0, 0},
                              { 0.020500, 0, 0, 0} }
dcl_constantbuffer cb0[4], immediateIndexed
dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_input_ps linear v1.xy
dcl_input_ps linear v2.xy
dcl_output o0.xyzw
dcl_temps 4
mad r0.xy, -v2.xyxx, l(3.000000, 3.000000, 0.000000, 0.000000), v1.xyxx
mov r1.xyzw, l(0,0,0,0)
mov r0.zw, r0.xxxy
mov r2.x, l(0)
loop
  ige r2.y, r2.x, l(7)
  breakc_nz r2.y
  mad r2.yz, r0.zzwz, cb0[3].xxyx, cb0[3].zzwz
  sample r3.xyzw, r2.yzyy, t0.xyzw, s0
  mad r1.xyzw, r3.xyzw, icb[r2.x + 0].xxxw, r1.xyzw
  add r0.zw, r0.zzzw, v2.xxxy
  iadd r2.x, r2.x, l(1)
endloop
mov o0.xyzw, r1.xyzw
ret
// Approximately 0 instruction slots used

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