// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//   using 3Dmigoto v0.6.181 on Sat Nov 11 18:15:56 2023
//
//
// Buffer Definitions:
//
// cbuffer _Globals
// {
//
//   row_major float4x4 gVS_Projection; // Index:  300 301 302 303    Components:    16 [unused]
//   int gPs_AlphaTestEnable;           // Index:  304.x              Components:     1 [unused]
//   int gPs_AlphaTestType;             // Index:  305.x              Components:     1 [unused]
//   float gPs_AlphaTestRefValue;       // Index:  306.x              Components:     1 [unused]
//   float gPs_AlphaTestThreshold;      // Index:  307.x              Components:     1 [unused]
//   int gPs_MultiSampleMaskEnable;     // Index:  308.x              Components:     1 [unused]
//   int gPs_MultiSampleMask;           // Index:  309.x              Components:     1 [unused]
//   float4 gVS_FogColor;               // Index:    0.xyzw           Components:     4 [unused]
//   float4 gVS_FogParam;               // Index:    1.xyzw           Components:     4 [unused]
//   row_major float4x4 gVS_LightDir;   // Index:    2 3 4 5          Components:    16 [unused]
//   row_major float4x4 gVS_LightCol;   // Index:    6 7 8 9          Components:    16 [unused]
//   float4 gVS_Sampler0Info;           // Index:   10.xyzw           Components:     4 [unused]
//   float4 gVS_EnvmapParams;           // Index:   11.xyzw           Components:     4 [unused]
//   row_major float4x4 gVS_Screen;     // Index:   16 17 18 19       Components:    16
//   row_major float4x4 gVS_Pers;       // Index:   20 21 22 23       Components:    16
//   float4 gVS_UVScaleOffset;          // Index:   24.xyzw           Components:     4
//   row_major float4x4 g_View;         // Index:  310 311 312 313    Components:    16 [unused]
//   row_major float4x4 g_ViewProjection;// Index:  314 315 316 317    Components:    16 [unused]
//   row_major float4x4 g_World;        // Index:  318 319 320 321    Components:    16 [unused]
//   row_major float4x4 g_WorldViewProjection;// Index:  322 323 324 325    Components:    16 [unused]
//   row_major float4x3 g_JointWorld[32];// Index:  326-453.z          Components:   511 [unused]
//   float4 g_RenderTargetDimensions;   // Index:  454.xyzw           Components:     4 [unused]
//   float4 g_RenderTargetNearFar;      // Index:  455.xyzw           Components:     4 [unused]
//   float4 g_RenderTargetDepthRange;   // Index:  456.xyzw           Components:     4 [unused]
//   float4 g_AdditiveColor;            // Index:  457.xyzw           Components:     4 [unused]
//   float4 g_ModulateColor;            // Index:  458.xyzw           Components:     4 [unused]
//   float4 g_EyePosition;              // Index:  459.xyzw           Components:     4 [unused]
//   float4 g_ExternalShaderParam;      // Index:  460.xyzw           Components:     4 [unused]
//   float4 g_LightColor0;              // Index:  461.xyzw           Components:     4 [unused]
//   float4 g_LightPosition0;           // Index:  462.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation0;        // Index:  463.xyzw           Components:     4 [unused]
//   float4 g_LightColor1;              // Index:  464.xyzw           Components:     4 [unused]
//   float4 g_LightPosition1;           // Index:  465.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation1;        // Index:  466.xyzw           Components:     4 [unused]
//   float4 g_LightColor2;              // Index:  467.xyzw           Components:     4 [unused]
//   float4 g_LightPosition2;           // Index:  468.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation2;        // Index:  469.xyzw           Components:     4 [unused]
//   float4 g_LightColor3;              // Index:  470.xyzw           Components:     4 [unused]
//   float4 g_LightPosition3;           // Index:  471.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation3;        // Index:  472.xyzw           Components:     4 [unused]
//   float4 g_LightColor4;              // Index:  473.xyzw           Components:     4 [unused]
//   float4 g_LightPosition4;           // Index:  474.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation4;        // Index:  475.xyzw           Components:     4 [unused]
//   float4 g_LightColor5;              // Index:  476.xyzw           Components:     4 [unused]
//   float4 g_LightPosition5;           // Index:  477.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation5;        // Index:  478.xyzw           Components:     4 [unused]
//   float4 g_LightColor6;              // Index:  479.xyzw           Components:     4 [unused]
//   float4 g_LightPosition6;           // Index:  480.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation6;        // Index:  481.xyzw           Components:     4 [unused]
//   float4 g_LightColor7;              // Index:  482.xyzw           Components:     4 [unused]
//   float4 g_LightPosition7;           // Index:  483.xyzw           Components:     4 [unused]
//   float4 g_LightAttenuation7;        // Index:  484.xyzw           Components:     4 [unused]
//   float4 gPS_FogColor;               // Index:  485.xyzw           Components:     4 [unused]
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// IniParams                         texture  float4          1d  120        1
// StereoParams                      texture  float4          2d  125        1
// _Globals                          cbuffer      NA          NA    0        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xyzw        0     NONE   float   xyz
// TEXCOORD                 0   xyzw        1     NONE     int   xyz
// TEXCOORD                 1   xyzw        2     NONE   float   xyzw
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xyzw
// TEXCOORD                 0   xyzw        1     NONE   float   xyzw
// TEXCOORD                 1   xyzw        2     NONE   float   xyzw
// P                        0   x           3  RTINDEX    uint   x
//
vs_5_0
dcl_output_siv o3.x, rendertarget_array_index
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[25], immediateIndexed
dcl_resource_texture1d (float,float,float,float) t120
dcl_resource_buffer (float,float,float,float) t125
dcl_input v0.xyz
dcl_input v1.xyz
dcl_input v2.xyzw
dcl_output_siv o0.xyzw, position
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_temps 6
ld_indexable(buffer)(float,float,float,float) r5.xyzw, l(0, 0, 0, 0), t125.xyzw
mov o3.x, r5.z
ld_indexable(texture1d)(float,float,float,float) r0.x, l(3, 0, 0, 0), t120.xyzw
eq r0.xy, r0.xxxx, l(20.000000, 21.000000, 0.000000, 0.000000)
mov r1.xyz, v0.xyzx
mov r1.w, l(1.000000)
dp4 r2.x, cb0[16].xyzw, r1.xyzw
dp4 r2.y, cb0[17].xyzw, r1.xyzw
dp4 r2.z, cb0[18].xyzw, r1.xyzw
dp4 r2.w, cb0[19].xyzw, r1.xyzw
dp4 r0.z, cb0[23].xyzw, r2.xyzw
eq r1.xy, r0.zzzz, l(1000.000000, 51.000000, 0.000000, 0.000000)
and r0.yw, r0.yyyy, r1.xxxy
ld_indexable(buffer)(float,float,float,float) r1.xy, l(0, 0, 0, 0), t125.xyzw
dp4 r1.z, cb0[20].xyzw, r2.xyzw
mad r1.w, r1.x, r1.y, r1.z
mul r1.x, r1.y, r1.x
mad r1.x, r1.x, l(0.800000), r1.z
movc r0.w, r0.w, r1.w, r1.z
movc r0.y, r0.y, r1.x, r0.w
ne r0.w, r0.z, l(1.000000)
mov r3.w, r0.z
and r0.x, r0.x, r0.w
movc r3.x, r0.x, r1.z, r0.y
dp4 r3.y, cb0[21].xyzw, r2.xyzw
dp4 r3.z, cb0[22].xyzw, r2.xyzw
itof r0.xyz, v1.xyzx
div r0.xy, r0.xyxx, r0.zzzz
mad o1.xy, r0.xyxx, cb0[24].xyxx, cb0[24].zwzz
mov o1.zw, l(0,0,0,0)
add o2.xyzw, v2.xyzw, v2.xyzw
add r4.x, -r5.y, r3.w
mul r4.y, r5.x, r5.w
mad r4.x, r4.x, r4.y, r3.x
ne r4.y, l(1.000000), r3.w
movc r3.x, r4.y, r4.x, r3.x
mov o0.xyzw, r3.xyzw
ret
// Approximately 30 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with 3Dmigoto v0.6.181 on Sat Nov 11 18:15:56 2023
//
// cbuffer _Globals : register(b0)
// {
//   row_major float4x4 gVS_Projection : packoffset(c300);
//   int gPs_AlphaTestEnable : packoffset(c304);
//   int gPs_AlphaTestType : packoffset(c305);
//   float gPs_AlphaTestRefValue : packoffset(c306);
//   float gPs_AlphaTestThreshold : packoffset(c307);
//   int gPs_MultiSampleMaskEnable : packoffset(c308);
//   int gPs_MultiSampleMask : packoffset(c309);
//   float4 gVS_FogColor : packoffset(c0);
//   float4 gVS_FogParam : packoffset(c1);
//   row_major float4x4 gVS_LightDir : packoffset(c2);
//   row_major float4x4 gVS_LightCol : packoffset(c6);
//   float4 gVS_Sampler0Info : packoffset(c10);
//   float4 gVS_EnvmapParams : packoffset(c11);
//   row_major float4x4 gVS_Screen : packoffset(c16);
//   row_major float4x4 gVS_Pers : packoffset(c20);
//   float4 gVS_UVScaleOffset : packoffset(c24);
//   row_major float4x4 g_View : packoffset(c310);
//   row_major float4x4 g_ViewProjection : packoffset(c314);
//   row_major float4x4 g_World : packoffset(c318);
//   row_major float4x4 g_WorldViewProjection : packoffset(c322);
//   row_major float4x3 g_JointWorld[32] : packoffset(c326);
//   float4 g_RenderTargetDimensions : packoffset(c454);
//   float4 g_RenderTargetNearFar : packoffset(c455);
//   float4 g_RenderTargetDepthRange : packoffset(c456);
//   float4 g_AdditiveColor : packoffset(c457);
//   float4 g_ModulateColor : packoffset(c458);
//   float4 g_EyePosition : packoffset(c459);
//   float4 g_ExternalShaderParam : packoffset(c460);
//   float4 g_LightColor0 : packoffset(c461);
//   float4 g_LightPosition0 : packoffset(c462);
//   float4 g_LightAttenuation0 : packoffset(c463);
//   float4 g_LightColor1 : packoffset(c464);
//   float4 g_LightPosition1 : packoffset(c465);
//   float4 g_LightAttenuation1 : packoffset(c466);
//   float4 g_LightColor2 : packoffset(c467);
//   float4 g_LightPosition2 : packoffset(c468);
//   float4 g_LightAttenuation2 : packoffset(c469);
//   float4 g_LightColor3 : packoffset(c470);
//   float4 g_LightPosition3 : packoffset(c471);
//   float4 g_LightAttenuation3 : packoffset(c472);
//   float4 g_LightColor4 : packoffset(c473);
//   float4 g_LightPosition4 : packoffset(c474);
//   float4 g_LightAttenuation4 : packoffset(c475);
//   float4 g_LightColor5 : packoffset(c476);
//   float4 g_LightPosition5 : packoffset(c477);
//   float4 g_LightAttenuation5 : packoffset(c478);
//   float4 g_LightColor6 : packoffset(c479);
//   float4 g_LightPosition6 : packoffset(c480);
//   float4 g_LightAttenuation6 : packoffset(c481);
//   float4 g_LightColor7 : packoffset(c482);
//   float4 g_LightPosition7 : packoffset(c483);
//   float4 g_LightAttenuation7 : packoffset(c484);
//   float4 gPS_FogColor : packoffset(c485);
// }
//
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Buffer<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : POSITION0,
//   int4 v1 : TEXCOORD0,
//   float4 v2 : TEXCOORD1,
//   out float4 o0 : SV_POSITION0,
//   out float4 o1 : TEXCOORD0,
//   out float4 o2 : TEXCOORD1,
//   out uint o3 : P0)
// {
//   float4 r0,r1,r2,r3,r4,r5;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   r5.xyzw = StereoParams.Load(float4(0,0,0,0)).xyzw;
//   o3.x = r5.z;
//   r0.x = IniParams.Load(float4(3,0,0,0)).x;
//   r0.xy = cmp(r0.xx == float2(20,21));
//   r1.xyz = v0.xyz;
//   r1.w = 1;
//   r2.x = dot(gVS_Screen._m00_m01_m02_m03, r1.xyzw);
//   r2.y = dot(gVS_Screen._m10_m11_m12_m13, r1.xyzw);
//   r2.z = dot(gVS_Screen._m20_m21_m22_m23, r1.xyzw);
//   r2.w = dot(gVS_Screen._m30_m31_m32_m33, r1.xyzw);
//   r0.z = dot(gVS_Pers._m30_m31_m32_m33, r2.xyzw);
//   r1.xy = cmp(r0.zz == float2(1000,51));
//   r0.yw = r0.yy ? r1.xy : 0;
//   r1.xy = StereoParams.Load(float4(0,0,0,0)).xy;
//   r1.z = dot(gVS_Pers._m00_m01_m02_m03, r2.xyzw);
//   r1.w = r1.x * r1.y + r1.z;
//   r1.x = r1.x * r1.y;
//   r1.x = r1.x * 0.800000012 + r1.z;
//   r0.w = r0.w ? r1.w : r1.z;
//   r0.y = r0.y ? r1.x : r0.w;
//   r0.w = cmp(r0.z != 1.000000);
//   r3.w = r0.z;
//   r0.x = r0.x ? r0.w : 0;
//   r3.x = r0.x ? r1.z : r0.y;
//   r3.y = dot(gVS_Pers._m10_m11_m12_m13, r2.xyzw);
//   r3.z = dot(gVS_Pers._m20_m21_m22_m23, r2.xyzw);
//   r0.xyz = (int3)v1.xyz;
//   r0.xy = r0.xy / r0.zz;
//   o1.xy = r0.xy * gVS_UVScaleOffset.xy + gVS_UVScaleOffset.zw;
//   o1.zw = float2(0,0);
//   o2.xyzw = v2.xyzw + v2.xyzw;
//   r4.x = r3.w + -r5.y;
//   r4.y = r5.w * r5.x;
//   r4.x = r4.x * r4.y + r3.x;
//   r4.y = cmp(1.000000 != r3.w);
//   r3.x = r4.y ? r4.x : r3.x;
//   o0.xyzw = r3.xyzw;
//   return;
// }
/////////////////////////////////////////////////////////////////////////////
