// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//   using 3Dmigoto v0.6.198 on Sun Apr 12 22:56:59 2026
//
//
// Buffer Definitions:
//
// cbuffer cb1
// {
//
//   float4 cb1[162];                   // Index:    0-161            Components:   648
//
// }
//
// cbuffer cb0
// {
//
//   float4 cb0[19];                    // Index:    0-18             Components:    76
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// s0_s                              sampler      NA          NA    0        1
// s1_s                              sampler      NA          NA    1        1
// t0                                texture  float4          2d    0        1
// t1                                texture  float4          2d    1        1
// t2                                texture  float4          2d    2        1
// StereoParams                      texture  float4          2d  125        1
// cb0                               cbuffer      NA          NA    0        1
// cb1                               cbuffer      NA          NA    1        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                 0   xyzw        0     NONE   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB1[162], immediateIndexed
dcl_constantbuffer CB0[19], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (float,float,float,float) t2
dcl_resource_buffer (float,float,float,float) t125
dcl_input_ps linear v0.xy
dcl_output o0.xyzw
dcl_temps 4
ld_indexable(buffer)(float,float,float,float) r0.x, l(0, 0, 0, 0), t125.xyzw
mad r0.x, r0.x, l(0.500000), v0.x
ne r0.w, cb0[18].y, l(0.000000)
if_nz r0.w
  mov r0.y, v0.y
  mad r1.xyzw, cb0[0].zwzw, l(-0.500000, 0.500000, 0.500000, -0.500000), r0.xyxy
  sample_l_indexable(texture2d)(float,float,float,float) r0.y, r1.xyxx, t0.xwyz, s0, l(0.000000)
  mul r0.y, r0.y, l(65536.000000)
  round_z r0.y, r0.y
  ftoi r0.y, r0.y
  and r0.y, r0.y, l(512)
  itof r0.y, r0.y
  sample_indexable(texture2d)(float,float,float,float) r2.xyz, r1.xyxx, t1.xyzw, s1
  eq r0.y, r0.y, l(0.000000)
  mov r2.w, l(1.000000)
  and r2.xyzw, r0.yyyy, r2.xyzw
  sample_l_indexable(texture2d)(float,float,float,float) r0.y, r1.zyzz, t0.xwyz, s0, l(0.000000)
  mul r0.y, r0.y, l(65536.000000)
  round_z r0.y, r0.y
  ftoi r0.y, r0.y
  and r0.y, r0.y, l(512)
  itof r0.y, r0.y
  sample_indexable(texture2d)(float,float,float,float) r3.xyz, r1.zyzz, t1.xyzw, s1
  eq r0.y, r0.y, l(0.000000)
  mov r3.w, l(1.000000)
  add r3.xyzw, r2.xyzw, r3.xyzw
  movc r2.xyzw, r0.yyyy, r3.xyzw, r2.xyzw
  sample_l_indexable(texture2d)(float,float,float,float) r0.y, r1.zwzz, t0.xwyz, s0, l(0.000000)
  mul r0.y, r0.y, l(65536.000000)
  round_z r0.y, r0.y
  ftoi r0.y, r0.y
  and r0.y, r0.y, l(512)
  itof r0.y, r0.y
  sample_indexable(texture2d)(float,float,float,float) r3.xyz, r1.zwzz, t1.xyzw, s1
  eq r0.y, r0.y, l(0.000000)
  mov r3.w, l(1.000000)
  add r3.xyzw, r2.xyzw, r3.xyzw
  movc r2.xyzw, r0.yyyy, r3.xyzw, r2.xyzw
  sample_l_indexable(texture2d)(float,float,float,float) r0.y, r1.xwxx, t0.xwyz, s0, l(0.000000)
  mul r0.y, r0.y, l(65536.000000)
  round_z r0.y, r0.y
  ftoi r0.y, r0.y
  and r0.y, r0.y, l(512)
  itof r0.y, r0.y
  sample_indexable(texture2d)(float,float,float,float) r1.xyz, r1.xwxx, t1.xyzw, s1
  eq r0.y, r0.y, l(0.000000)
  mov r1.w, l(1.000000)
  add r1.xyzw, r1.xyzw, r2.xyzw
  movc r1.xyzw, r0.yyyy, r1.xyzw, r2.xyzw
  lt r0.y, l(0.000000), r1.w
  div r2.xyzw, r1.xyzw, r1.wwww
  mov r1.w, l(0)
  movc r1.xyzw, r0.yyyy, r2.xyzw, r1.xyzw
  mov o0.w, r1.w
else
  mov r0.z, v0.y
  mad r0.xyzw, cb0[0].zwzw, l(-0.500000, 0.500000, 0.500000, -0.500000), r0.xzxz
  sample_indexable(texture2d)(float,float,float,float) r2.xyz, r0.xyxx, t1.xyzw, s1
  sample_indexable(texture2d)(float,float,float,float) r3.xyz, r0.zyzz, t1.xyzw, s1
  add r2.xyz, r2.xyzx, r3.xyzx
  sample_indexable(texture2d)(float,float,float,float) r3.xyz, r0.zwzz, t1.xyzw, s1
  add r2.xyz, r2.xyzx, r3.xyzx
  sample_indexable(texture2d)(float,float,float,float) r0.xyz, r0.xwxx, t1.xyzw, s1
  add r0.xyz, r2.xyzx, r0.xyzx
  mul r1.xyz, r0.xyzx, l(0.250000, 0.250000, 0.250000, 0.000000)
  mov o0.w, l(1.000000)
endif
ne r0.x, cb1[161].x, l(0.000000)
if_z r0.x
  ld_indexable(texture2d)(float,float,float,float) r0.x, l(0, 0, 0, 0), t2.xyzw
else
  mov r0.x, cb1[161].y
endif
div r0.x, cb0[18].x, r0.x
add r0.xyz, -r0.xxxx, r1.xyzx
max o0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
ret
// Approximately 77 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with geo-11 v0.6.198 on Sun Apr 12 22:56:59 2026
//
// cbuffer cb1 : register(b1)
// {
//   float4 cb1[162] : packoffset(c0);
// }
//
// cbuffer cb0 : register(b0)
// {
//   float4 cb0[19] : packoffset(c0);
// }
//
// SamplerState s0_s_s : register(s0);
// SamplerState s1_s_s : register(s1);
// Texture2D<float4> t0 : register(t0);
// Texture2D<float4> t1 : register(t1);
// Texture2D<float4> t2 : register(t2);
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Buffer<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : TEXCOORD0,
//   out float4 o0 : SV_Target0)
// {
//   float4 r0,r1,r2,r3;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   r0.x = StereoParams.Load(float4(0,0,0,0)).x;
//   r0.x = r0.x * 0.5 + v0.x;
//   r0.w = cmp(cb0[18].y != 0.000000);
//   if (r0.w != 0) {
//     r0.y = v0.y;
//     r1.xyzw = cb0[0].zwzw * float4(-0.5,0.5,0.5,-0.5) + r0.xyxy;
//     r0.y = t0.SampleLevel(s0_s_s, r1.xy, 0).w;
//     r0.y = 65536 * r0.y;
//     r0.y = trunc(r0.y);
//     r0.y = (int)r0.y;
//     r0.y = (int)r0.y & 512;
//     r0.y = (int)r0.y;
//     r2.xyz = t1.Sample(s1_s_s, r1.xy).xyz;
//     r0.y = cmp(r0.y == 0.000000);
//     r2.w = 1;
//     r2.xyzw = r0.yyyy ? r2.xyzw : 0;
//     r0.y = t0.SampleLevel(s0_s_s, r1.zy, 0).w;
//     r0.y = 65536 * r0.y;
//     r0.y = trunc(r0.y);
//     r0.y = (int)r0.y;
//     r0.y = (int)r0.y & 512;
//     r0.y = (int)r0.y;
//     r3.xyz = t1.Sample(s1_s_s, r1.zy).xyz;
//     r0.y = cmp(r0.y == 0.000000);
//     r3.w = 1;
//     r3.xyzw = r3.xyzw + r2.xyzw;
//     r2.xyzw = r0.yyyy ? r3.xyzw : r2.xyzw;
//     r0.y = t0.SampleLevel(s0_s_s, r1.zw, 0).w;
//     r0.y = 65536 * r0.y;
//     r0.y = trunc(r0.y);
//     r0.y = (int)r0.y;
//     r0.y = (int)r0.y & 512;
//     r0.y = (int)r0.y;
//     r3.xyz = t1.Sample(s1_s_s, r1.zw).xyz;
//     r0.y = cmp(r0.y == 0.000000);
//     r3.w = 1;
//     r3.xyzw = r3.xyzw + r2.xyzw;
//     r2.xyzw = r0.yyyy ? r3.xyzw : r2.xyzw;
//     r0.y = t0.SampleLevel(s0_s_s, r1.xw, 0).w;
//     r0.y = 65536 * r0.y;
//     r0.y = trunc(r0.y);
//     r0.y = (int)r0.y;
//     r0.y = (int)r0.y & 512;
//     r0.y = (int)r0.y;
//     r1.xyz = t1.Sample(s1_s_s, r1.xw).xyz;
//     r0.y = cmp(r0.y == 0.000000);
//     r1.w = 1;
//     r1.xyzw = r2.xyzw + r1.xyzw;
//     r1.xyzw = r0.yyyy ? r1.xyzw : r2.xyzw;
//     r0.y = cmp(0 < r1.w);
//     r2.xyzw = r1.xyzw / r1.wwww;
//     r1.w = 0;
//     r1.xyzw = r0.yyyy ? r2.xyzw : r1.xyzw;
//     o0.w = r1.w;
//   } else {
//     r0.z = v0.y;
//     r0.xyzw = cb0[0].zwzw * float4(-0.5,0.5,0.5,-0.5) + r0.xzxz;
//     r2.xyz = t1.Sample(s1_s_s, r0.xy).xyz;
//     r3.xyz = t1.Sample(s1_s_s, r0.zy).xyz;
//     r2.xyz = r3.xyz + r2.xyz;
//     r3.xyz = t1.Sample(s1_s_s, r0.zw).xyz;
//     r2.xyz = r3.xyz + r2.xyz;
//     r0.xyz = t1.Sample(s1_s_s, r0.xw).xyz;
//     r0.xyz = r0.xyz + r2.xyz;
//     r1.xyz = float3(0.25,0.25,0.25) * r0.xyz;
//     o0.w = 1;
//   }
//   r0.x = cmp(cb1[161].x != 0.000000);
//   if (r0.x == 0) {
//     r0.x = t2.Load(float4(0,0,0,0)).x;
//   } else {
//     r0.x = cb1[161].y;
//   }
//   r0.x = cb0[18].x / r0.x;
//   r0.xyz = r1.xyz + -r0.xxx;
//   o0.xyz = max(float3(0,0,0), r0.xyz);
//   return;
// }
/////////////////////////////////////////////////////////////////////////////
