//lightshafts
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   sampler2D $ColorSampler;
//   float4 $Param;
//   float4 $ScreenLightPos;
//
//
// Registers:
//
//   Name            Reg   Size
//   --------------- ----- ----
//   $Param          c0       1
//   $ScreenLightPos c1       1
//   $ColorSampler   s0       1
//

    ps_3_0
    def c2, 0.125, 1, 0, 0
	def c223, 0, 1, 0.85, 2	// new
def c220, 0, 0.5, 0.0625, 0	
    dcl_texcoord v0.xy
    dcl_2d s0
dcl_2d s13		
    texld_pp r0, v0, s0	
// Push ScreenLightPos to depth
mov r7, c1
texldl r6, c220.z, s13
mad r7.x, r6.x, c220.y, r7.x
mov_sat r1.xy, r7
//  mov_sat r1.xy, c1
    lrp r2.xy, c2.x, r1, v0
    add r1.xy, r1, -v0
    texld_pp r3, r2, s0
    mad r1.zw, r1.xyxy, c2.x, r2.xyxy
    lrp_pp r2.xyz, c0.y, r3, r0
    mul_pp r0.x, c0.x, c0.y
    texld_pp r3, r1.zwzw, s0
    mad r0.yz, r1.xxyw, c2.x, r1.xzww
    lrp_pp r4.xyz, r0.x, r3, r2
    mul_pp r0.x, r0.x, c0.x
    texld_pp r2, r0.yzzw, s0
    mad r0.yz, r1.xxyw, c2.x, r0
    lrp_pp r3.xyz, r0.x, r2, r4
    mul_pp r0.x, r0.x, c0.x
    texld_pp r2, r0.yzzw, s0
    mad r0.yz, r1.xxyw, c2.x, r0
    lrp_pp r4.xyz, r0.x, r2, r3
    mul_pp r0.x, r0.x, c0.x
    texld_pp r2, r0.yzzw, s0
    mad r0.yz, r1.xxyw, c2.x, r0
    lrp_pp r3.xyz, r0.x, r2, r4
    mul_pp r0.x, r0.x, c0.x
    texld_pp r2, r0.yzzw, s0
    mad r0.yz, r1.xxyw, c2.x, r0
    mad r1.xy, r1, c2.x, r0.yzzw
    texld_pp r4, r0.yzzw, s0
    texld_pp r1, r1, s0
    lrp_pp r5.xyz, r0.x, r2, r3
    mul_pp r0.x, r0.x, c0.x
    lrp_pp r2.xyz, r0.x, r4, r5
    mul_pp r0.x, r0.x, c0.x
    add_pp r0.yzw, r1.xxyz, -r2.xxyz
// transperancy switch
	mov r30.x, c222.x
	if_eq r30.x, c223.y
		mul r2.x, r2.x,  c223.z
		mul r2.y, r2.y,  c223.z			
		mul r2.z, r2.z,  c223.z	
	endif			
    mad_pp oC0.xyz, r0.x, r0.yzww, r2
    mov_pp oC0.w, c2.y
	mov r30.x, c222.x	
	if_eq r30.x, c223.w
		mov oC0.xyzw, c223.xxxx	
	endif		
// approximately 36 instruction slots used (9 texture, 27 arithmetic)
 