//
    ps_3_0
def c220, 1, 1.145, 0.0625, 0.5		//FOV 75.5 outdoors
dcl_2d s13
    dcl_2d s0
    dcl_2d s1
    def c24, 1, 0, 255, 0.00392156979
    dcl_texcoord v0.xy
    dcl_texcoord1 v1.xyz
	
    texld r0, v0, s0
    mad r0.x, r0, c20, c20.y
    rcp r0.x, r0.x
    mul r1.xyz, r0.x, v1
    add r2, r1.z, -c21
    add r3, r1.z, -c22
    cmp r3, r3, c24.y, c24.x
    cmp r2, r2, c24.x, c24.y
    mul r2, r2, r3
    mov r1.w, c24.x

mov r21.x, c180.x
mov r21.y, c181.x
mov r21.z, c182.x
mov r21.w, c183.x
dp4 r20.x, r21, c190
rcp r20.x, r20.x	
texldl r24, c220.z, s13
add r24.y, r1.z, -r24.y
mul r24.x, r24.x, r24.y
mul r24.x, r24.x, r20.x
add r1.x, r1.x, -r24.x	

    dp4 r3.w, r1, c19
    dp4 r3.z, r1, c18
    dp4 r3.x, r1, c16
    dp4 r3.y, r1, c17
    dp4 r1.z, r3, c6
    dp4 r1.x, r3, c4
    dp4 r1.y, r3, c5
    mul r4.xyz, r2.y, r1
    dp4 r1.z, r3, c2
    dp4 r1.y, r3, c1
    dp4 r1.x, r3, c0
    mad r4.xyz, r2.x, r1, r4
    add r0.x, -r0, c24
    dp4 r1.z, r3, c10
    dp4 r1.y, r3, c9
    dp4 r1.x, r3, c8
    mad r1.xyz, r2.z, r1, r4
    dp4 r2.z, r3, c14
    dp4 r2.y, r3, c13
    dp4 r2.x, r3, c12
    mad r2.xyz, r2, r2.w, r1
    mov r0.y, c24.x
    texld r1, r2, s1
    add r1.x, r1, -r2.z
    mov r2.y, c24.z
    mov r2.x, c24
    mul r2.xy, r0.x, r2
    frc r2.xy, r2
    mov r0.x, c23
    cmp r0.x, r1, c24, r0
    mov r1.y, r2
    mad r1.x, -r2.y, c24.w, r2
    mov r0.w, r1.y
    mov r0.z, r1.x
    mov_pp oC0, r0

// approximately 45 instruction slots used (2 texture, 43 arithmetic)
 