flownoise_mini.cg
172 lines, 0 errors.
!!ARBfp1.0
OPTION NV_fragment_program2;
# cgc version 1.5.0006, build date Apr  3 2006 15:06:28
# command line args: -fx -profile fp40 -DMOD_N=abs(n)-0.15 -DDECORR_TEXEL_SIZE=0.015625 -DGRID_TEXEL_SIZE=0.015625 -DNOISE_SCALE=0.0625 -DNOISE_ROTATION=1,2,4,8 -DROTATION_FACTOR=0.25 -DHQ_INTERPOLATION -DOFFSET=0.92
# source file: flownoise_mini.cg
#vendor NVIDIA Corporation
#version 1.5.0.6
#profile fp40
#program fp_flownoise_basic
#semantic timeWeights
#semantic scaleWeights
#semantic noiseOffset
#semantic noiseFactor
#semantic maximumDensity
#semantic decorrTex
#semantic densTex
#semantic rotTex
#semantic texCoords1Tex
#semantic texCoords2Tex
#semantic texCoords3Tex
#var float2 uv : $vin.TEXCOORD0 : TEX0 : 0 : 1
#var float3 timeWeights :  : c[7] : -1 : 1
#var float4 scaleWeights :  : c[9] : -1 : 1
#var float noiseOffset :  : c[11] : -1 : 1
#var float noiseFactor :  : c[10] : -1 : 1
#var float maximumDensity :  : c[1] : -1 : 1
#var sampler2D decorrTex :  : texunit 2 : -1 : 1
#var sampler2D densTex :  : texunit 5 : -1 : 1
#var sampler2D rotTex :  : texunit 1 : -1 : 1
#var sampler2D texCoords1Tex :  : texunit 0 : -1 : 1
#var sampler2D texCoords2Tex :  : texunit 3 : -1 : 1
#var sampler2D texCoords3Tex :  : texunit 4 : -1 : 1
#var half4 fp_flownoise_basic : $vout.COLOR : COL : -1 : 1
#const c[0] = 0.5 -1 64 0.015625
#const c[2] = -0.5 0.5 0.0184 128
#const c[3] = 2 3 1 0
#const c[4] = 1.5 0.0078125 0.5 0.046
#const c[5] = 1 -1 0.1012 32
#const c[6] = 0.03125 16 0.0625 0.25
#const c[8] = 0.1500244
PARAM c[12] = { { 0.5, -1, 64, 0.015625 },
		program.local[1],
		{ -0.5, 0.5, 0.0184, 128 },
		{ 2, 3, 1, 0 },
		{ 1.5, 0.0078125, 0.5, 0.046 },
		{ 1, -1, 0.1012, 32 },
		{ 0.03125, 16, 0.0625, 0.25 },
		program.local[7],
		{ 0.15002441 },
		program.local[9..11] };
TEMP R0;
TEMP R1;
TEMP R2;
TEMP R3;
TEMP R4;
TEMP R5;
TEMP R6;
TEMP R7;
TEMP R8;
TEMP R9;
TEMP R10;
TEMP R11;
TEMP R12;
TEMP R13;
TEMP R14;
TEMP R15;
TEMP R16;
TEMP R17;
TEMP R18;
TEMP R19;
SHORT TEMP H0;
SHORT TEMP H1;
SHORT TEMP H2;
SHORT TEMP H3;
SHORT TEMP H4;
SHORT TEMP H5;
SHORT TEMP H6;
SHORT TEMP H7;
SHORT TEMP H8;
SHORT TEMP H9;
SHORT TEMP H10;
SHORT TEMP H11;
SHORT TEMP H12;
SHORT TEMP H13;
TEMP RC;
TEMP HC;
SHORT OUTPUT oCol = result.color;
MADR  R2.xy, fragment.texcoord[0], c[0].z, c[0].x;
FLRR  R2.zw, R2.xyxy;
ADDR  R0, R2.zwzw, c[2].xyyx;
MULR  R5, R0, c[0].w;
ADDR  R0.xy, R2.zwzw, c[0].x;
MULR  R15.zw, R0.xyxy, c[0].w;
ADDR  R15.xy, R2, -R2.zwzw;
TEX   R1.xy, R5.xwzw, texture[4], 2D;
TEX   R3.xy, R5.zwzw, texture[4], 2D;
ADDR  R1.zw, R3.xyxy, -R1.xyxy;
MADR  R1.xy, R15.x, R1.zwzw, R1;
TEX   R0.xy, R5, texture[4], 2D;
TEX   R3.xy, R15.zwzw, texture[4], 2D;
ADDR  R0.zw, R3.xyxy, -R0.xyxy;
MADR  R0.xy, R15.x, R0.zwzw, R0;
ADDR  R0.xy, R0, -R1;
MADR  R2.xy, R15.y, R0, R1;
MULR  R6.zw, R2.xyxy, c[6].y;
FLRR  R7.xy, R6.zwzw;
ADDR  R0, R7.xyyx, c[4].xxzz;
MULR  R1, R0, c[6].z;
TEX   R0.z, R1, texture[1], 2D;
MOVH  H1.w, R0.z;
TEX   R0.z, R1.xzzw, texture[1], 2D;
MULR  R2.zw, R7.xyxy, c[0].x;
ADDR  R0.x, R2.z, R2.w;
FRCR  H2.x, R0;
ADDR  R7.zw, R7.xyxy, c[0].x;
TEX   R1.z, R1.wyzw, texture[1], 2D;
MOVH  H1.z, R0;
MULR  R0.xy, R7.zwzw, c[6].z;
TEX   R0.z, R0, texture[1], 2D;
ADDR  R0.xy, R2, c[5].z;
MULR  R4.xy, R0, c[5].w;
FLRR  R4.zw, R4.xyxy;
MOVH  H1.x, R0.z;
MOVH  H1.y, R1.z;
ADDR  R0, R4.zwwz, c[4].xxzz;
MULR  R1, R0, c[6].x;
MULR  R2.zw, R4, c[0].x;
ADDR  R0.x, R2.z, R2.w;
MOVH  H0, H1;
MOVXC RC.x, H2;
MULR  H0(NE.x), H1, c[5].xyyx;
TEX   R0.z, R1, texture[1], 2D;
MOVH  H1.w, R0.z;
TEX   R0.z, R1.xzzw, texture[1], 2D;
TEX   R1.z, R1.wyzw, texture[1], 2D;
FRCR  H4.x, R0;
ADDR  R6.xy, R4.zwzw, c[0].x;
MOVH  H1.z, R0;
MULR  R0.xy, R6, c[6].x;
TEX   R0.z, R0, texture[1], 2D;
ADDR  R0.xy, R2, -c[4].w;
MULR  R2.zw, R0.xyxy, c[0].z;
FLRR  R3.xy, R2.zwzw;
MOVH  H1.x, R0.z;
ADDR  R0, R3.xyyx, c[4].xxzz;
MOVH  H1.y, R1.z;
MULR  R1, R0, c[0].w;
MULR  R3.zw, R3.xyxy, c[0].x;
MOVH  H3, H0;
SNEHC HC.x, H2, c[3].w;
MULR  H3(EQ.x), H0, c[5].yxxy;
MOVH  H0, H1;
MOVXC RC.x, H4;
MULR  H0(NE.x), H1, c[5].xyyx;
TEX   R0.z, R1, texture[1], 2D;
MOVH  H1.w, R0.z;
TEX   R0.z, R1.xzzw, texture[1], 2D;
TEX   R1.z, R1.wyzw, texture[1], 2D;
MOVH  H1.z, R0;
MOVH  H1.y, R1.z;
TEX   R1.xy, R5, texture[0], 2D;
MOVH  H2, H0;
SNEHC HC.x, H4, c[3].w;
ADDR  R0.x, R3.z, R3.w;
FRCR  H4.x, R0;
MULR  H2(EQ.x), H0, c[5].yxxy;
ADDR  R0.xy, R3, c[0].x;
MULR  R3.zw, R0.xyxy, c[0].w;
TEX   R0.z, R3.zwzw, texture[1], 2D;
MOVH  H1.x, R0.z;
ADDR  R0.xy, R2, c[2].z;
MULR  R0.zw, R0.xyxy, c[2].w;
FLRR  R1.zw, R0;
ADDR  R8, R1.zwwz, c[4].xxzz;
MULR  R9, R8, c[4].y;
MULR  R0.xy, R1.zwzw, c[0].x;
ADDR  R0.x, R0, R0.y;
MOVH  H0, H1;
MOVXC RC.x, H4;
MULR  H0(NE.x), H1, c[5].xyyx;
MOVH  H1, H0;
SNEHC HC.x, H4, c[3].w;
MULR  H1(EQ.x), H0, c[5].yxxy;
FRCR  H5.x, R0;
ADDR  R2.xy, R1.zwzw, c[0].x;
TEX   R8.z, R9, texture[1], 2D;
MOVH  H0.w, R8.z;
TEX   R8.z, R9.xzzw, texture[1], 2D;
TEX   R9.z, R9.wyzw, texture[1], 2D;
MOVH  H0.z, R8;
MULR  R0.xy, R2, c[4].y;
TEX   R8.z, R0, texture[1], 2D;
MOVH  H0.x, R8.z;
MOVH  H0.y, R9.z;
MOVH  H4, H0;
MOVXC RC.x, H5;
MULR  H4(NE.x), H0, c[5].xyyx;
MOVH  H0, H4;
SNEHC HC.x, H5, c[3].w;
MULR  H0(EQ.x), H4, c[5].yxxy;
TEX   R8.xy, R5.xwzw, texture[0], 2D;
TEX   R0.xy, R5.zwzw, texture[0], 2D;
ADDR  R8.zw, R0.xyxy, -R8.xyxy;
TEX   R0.xy, R15.zwzw, texture[0], 2D;
ADDR  R0.xy, R0, -R1;
MADR  R8.xy, R15.x, R8.zwzw, R8;
MADR  R0.xy, R15.x, R0, R1;
ADDR  R0.xy, R0, -R8;
MADR  R9.xy, R15.y, R0, R8;
MULR  R12.zw, R9.xyxy, c[6].y;
FLRR  R13.xy, R12.zwzw;
MULR  R0.xy, R13, c[0].x;
ADDR  R0.y, R0.x, R0;
FRCR  H6.x, R0.y;
ADDR  R13.zw, R13.xyxy, c[0].x;
ADDR  R8, R13.xyyx, c[4].xxzz;
MULR  R8, R8, c[6].z;
TEX   R0.x, R8, texture[1], 2D;
MOVH  H5.w, R0.x;
TEX   R0.x, R8.xzzw, texture[1], 2D;
MOVH  H5.z, R0.x;
MULR  R1.xy, R13.zwzw, c[6].z;
TEX   R0.x, R1, texture[1], 2D;
MOVH  H5.x, R0;
TEX   R1.x, R8.wyzw, texture[1], 2D;
MOVH  H5.y, R1.x;
ADDR  R0.xy, R9, c[5].z;
MULR  R11.xy, R0, c[5].w;
FLRR  R11.zw, R11.xyxy;
MULR  R0.xy, R11.zwzw, c[0].x;
ADDR  R0.y, R0.x, R0;
ADDR  R12.xy, R11.zwzw, c[0].x;
ADDR  R8, R11.zwwz, c[4].xxzz;
MULR  R8, R8, c[6].x;
MOVH  H4, H5;
MOVXC RC.x, H6;
MULR  H4(NE.x), H5, c[5].xyyx;
TEX   R0.x, R8, texture[1], 2D;
MOVH  H5.w, R0.x;
TEX   R0.x, R8.xzzw, texture[1], 2D;
FRCR  H8.x, R0.y;
MOVH  H5.z, R0.x;
MULR  R1.xy, R12, c[6].x;
TEX   R0.x, R1, texture[1], 2D;
MOVH  H5.x, R0;
TEX   R1.x, R8.wyzw, texture[1], 2D;
ADDR  R0.xy, R9, -c[4].w;
MULR  R9.zw, R0.xyxy, c[0].z;
FLRR  R10.xy, R9.zwzw;
MOVH  H5.y, R1.x;
ADDR  R1.xy, R10, c[0].x;
MULR  R0.xy, R10, c[0].x;
ADDR  R8, R10.xyyx, c[4].xxzz;
MULR  R8, R8, c[0].w;
MULR  R10.zw, R1.xyxy, c[0].w;
ADDR  R0.y, R0.x, R0;
TEX   R1.x, R8.wyzw, texture[1], 2D;
MOVH  H7, H4;
SNEHC HC.x, H6, c[3].w;
MULR  H7(EQ.x), H4, c[5].yxxy;
MOVH  H4, H5;
MOVXC RC.x, H8;
MULR  H4(NE.x), H5, c[5].xyyx;
SNEHC HC.x, H8, c[3].w;
MOVH  H6, H4;
TEX   R0.x, R8, texture[1], 2D;
MOVH  H5.w, R0.x;
TEX   R0.x, R8.xzzw, texture[1], 2D;
MOVH  H5.z, R0.x;
TEX   R0.x, R10.zwzw, texture[1], 2D;
FRCR  H8.x, R0.y;
MOVH  H5.x, R0;
MULR  H6(EQ.x), H4, c[5].yxxy;
MOVH  H5.y, R1.x;
ADDR  R0.xy, R9, c[2].z;
MULR  R8.xy, R0, c[2].w;
FLRR  R8.zw, R8.xyxy;
ADDR  R9.xy, R8.zwzw, c[0].x;
MULR  R0.xy, R8.zwzw, c[0].x;
ADDR  R0.y, R0.x, R0;
ADDR  R14, R8.zwwz, c[4].xxzz;
MULR  R14, R14, c[4].y;
MOVH  H4, H5;
MOVXC RC.x, H8;
MULR  H4(NE.x), H5, c[5].xyyx;
MOVH  H5, H4;
SNEHC HC.x, H8, c[3].w;
MULR  H5(EQ.x), H4, c[5].yxxy;
FRCR  H9.x, R0.y;
TEX   R0.x, R14, texture[1], 2D;
MOVH  H4.w, R0.x;
TEX   R0.x, R14.xzzw, texture[1], 2D;
MULR  R1.xy, R9, c[4].y;
MOVH  H4.z, R0.x;
TEX   R0.x, R1, texture[1], 2D;
TEX   R1.x, R14.wyzw, texture[1], 2D;
MOVH  H4.x, R0;
MOVH  H4.y, R1.x;
TEX   R0.xy, R5.xwzw, texture[3], 2D;
TEX   R1.xy, R5.zwzw, texture[3], 2D;
ADDR  R1.xy, R1, -R0;
MOVH  H8, H4;
MOVXC RC.x, H9;
MULR  H8(NE.x), H4, c[5].xyyx;
MADR  R0.xy, R15.x, R1, R0;
MOVH  H4, H8;
SNEHC HC.x, H9, c[3].w;
MULR  H4(EQ.x), H8, c[5].yxxy;
TEX   R5.xy, R5, texture[3], 2D;
TEX   R14.xy, R15.zwzw, texture[3], 2D;
ADDR  R5.zw, R14.xyxy, -R5.xyxy;
MADR  R1.xy, R15.x, R5.zwzw, R5;
ADDR  R1.xy, R1, -R0;
MADR  R17.xy, R15.y, R1, R0;
MULR  R15.zw, R17.xyxy, c[6].y;
FLRR  R16.xy, R15.zwzw;
ADDR  R0.xy, R17, c[5].z;
MULR  R14.xy, R0, c[5].w;
FLRR  R14.zw, R14.xyxy;
MULR  R0.xy, R14.zwzw, c[0].x;
ADDR  R0.x, R0, R0.y;
FRCR  H10.x, R0;
ADDR  R15.xy, R14.zwzw, c[0].x;
ADDR  R5, R14.zwwz, c[4].xxzz;
MULR  R5, R5, c[6].x;
TEX   R0.y, R5, texture[1], 2D;
MOVH  H9.w, R0.y;
TEX   R0.y, R5.xzzw, texture[1], 2D;
MOVH  H9.z, R0.y;
MULR  R1.xy, R15, c[6].x;
TEX   R0.y, R1, texture[1], 2D;
TEX   R1.y, R5.wyzw, texture[1], 2D;
MOVH  H9.x, R0.y;
MOVH  H9.y, R1;
MULR  R0.xy, R16, c[0].x;
ADDR  R16.zw, R16.xyxy, c[0].x;
ADDR  R5, R16.xyyx, c[4].xxzz;
MOVH  H8, H9;
MOVXC RC.x, H10;
MULR  H8(NE.x), H9, c[5].xyyx;
MULR  R5, R5, c[6].z;
ADDR  R0.x, R0, R0.y;
SNEHC HC.x, H10, c[3].w;
MOVH  H11, H8;
TEX   R0.y, R5, texture[1], 2D;
MOVH  H9.w, R0.y;
TEX   R0.y, R5.xzzw, texture[1], 2D;
FRCR  H10.x, R0;
MULR  H11(EQ.x), H8, c[5].yxxy;
MOVH  H9.z, R0.y;
MULR  R1.xy, R16.zwzw, c[6].z;
TEX   R0.y, R1, texture[1], 2D;
MOVH  H9.x, R0.y;
TEX   R1.y, R5.wyzw, texture[1], 2D;
MOVH  H9.y, R1;
ADDR  R0.xy, R17, -c[4].w;
MULR  R17.zw, R0.xyxy, c[0].z;
FLRR  R18.xy, R17.zwzw;
ADDR  R1.xy, R18, c[0].x;
MULR  R0.xy, R18, c[0].x;
ADDR  R0.x, R0, R0.y;
ADDR  R5, R18.xyyx, c[4].xxzz;
MULR  R5, R5, c[0].w;
MULR  R18.zw, R1.xyxy, c[0].w;
MOVH  H8, H9;
MOVXC RC.x, H10;
MULR  H8(NE.x), H9, c[5].xyyx;
TEX   R0.y, R5, texture[1], 2D;
MOVH  H9.w, R0.y;
TEX   R0.y, R5.xzzw, texture[1], 2D;
MOVH  H9.z, R0.y;
TEX   R1.y, R5.wyzw, texture[1], 2D;
TEX   R0.y, R18.zwzw, texture[1], 2D;
FRCR  H13.x, R0;
MOVH  H9.x, R0.y;
ADDR  R0.xy, R17, c[2].z;
MULR  R17.xy, R0, c[2].w;
FLRR  R19.xy, R17;
MULR  R0.xy, R19, c[0].x;
ADDR  R5, R19.xyyx, c[4].xxzz;
MOVH  H9.y, R1;
ADDR  R19.zw, R19.xyxy, c[0].x;
MULR  R5, R5, c[4].y;
ADDR  R0.x, R0, R0.y;
MOVH  H12, H8;
SNEHC HC.x, H10, c[3].w;
MULR  H12(EQ.x), H8, c[5].yxxy;
MOVH  H8, H9;
MOVXC RC.x, H13;
MULR  H8(NE.x), H9, c[5].xyyx;
SNEHC HC.x, H13, c[3].w;
MOVH  H10, H8;
MULR  H10(EQ.x), H8, c[5].yxxy;
TEX   R0.y, R5, texture[1], 2D;
MOVH  H8.w, R0.y;
FRCR  H13.x, R0;
TEX   R0.y, R5.xzzw, texture[1], 2D;
MOVH  H8.z, R0.y;
MULR  R1.xy, R19.zwzw, c[4].y;
TEX   R0.y, R1, texture[1], 2D;
MOVH  H8.x, R0.y;
TEX   R1.y, R5.wyzw, texture[1], 2D;
MOVH  H8.y, R1;
MULR  R0.xy, R19.zwzw, c[0].w;
TEX   R5, R0, texture[2], 2D;
ADDR  R0.xy, R17, -R19;
MOVH  H9, H8;
MOVXC RC.x, H13;
MULR  H9(NE.x), H8, c[5].xyyx;
MOVH  H8, H9;
SNEHC HC.x, H13, c[3].w;
MULR  H8(EQ.x), H9, c[5].yxxy;
ADDR  R5, H8, R5;
MULR  H8, R5, c[3].x;
ADDR  R1.xy, R0, -c[3].z;
COSH  H9.x, H8.y;
SINH  H9.y, H8.y;
SINH  H8.y, H8.x;
MOVR  R5.x, R0;
MOVR  R5.y, R1;
MULR  R5.xy, R5, H9;
ADDR  R17.x, R5, R5.y;
COSH  H8.x, H8.x;
MULR  R5.xy, R0, H8;
ADDR  R5.x, R5, R5.y;
SINH  H9.y, H8.w;
COSH  H9.x, H8.w;
MULR  R5.zw, R1.xyxy, H9.xyxy;
ADDR  R1.y, R5.z, R5.w;
ADDR  R5.z, R1.y, -R17.x;
MOVR  R1.y, R0;
COSH  H8.x, H8.z;
SINH  H8.y, H8.z;
MULR  R1.xy, R1, H8;
ADDR  R1.x, R1, R1.y;
ADDR  R5.y, R1.x, -R5.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H8.y, R0, R5, R5.x;
MADR  H8.x, R0.y, R5.z, R17;
ADDH  H8.z, H8.x, -H8.y;
MULR  H8.x, R0, R1;
ADDR  R0.xy, R17.zwzw, -R18;
ADDR  R1.xy, R0, -c[3].z;
TEX   R5, R18.zwzw, texture[2], 2D;
MADH  H9.w, H8.x, H8.z, H8.y;
ADDR  H8, H10, R5;
COSH  H9.x, H8.y;
SINH  H9.y, H8.y;
SINH  H8.y, H8.x;
MOVR  R5.x, R0;
MOVR  R5.y, R1;
MULR  R5.xy, R5, H9;
SINH  H9.y, H8.w;
COSH  H9.x, H8.w;
MULR  R5.zw, R1.xyxy, H9.xyxy;
ADDR  R1.y, R5.z, R5.w;
ADDR  R17.x, R5, R5.y;
ADDR  R5.z, R1.y, -R17.x;
COSH  H8.x, H8.x;
MULR  R5.xy, R0, H8;
MOVR  R1.y, R0;
ADDR  R5.x, R5, R5.y;
COSH  H8.x, H8.z;
SINH  H8.y, H8.z;
MULR  R1.xy, R1, H8;
ADDR  R1.x, R1, R1.y;
ADDR  R5.y, R1.x, -R5.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H8.y, R0, R5, R5.x;
MADR  H8.x, R0.y, R5.z, R17;
ADDH  H8.z, H8.x, -H8.y;
MULR  H8.x, R0, R1;
MULR  R0.xy, R16.zwzw, c[0].w;
TEX   R5, R0, texture[2], 2D;
ADDR  R0.xy, R15.zwzw, -R16;
ADDR  R5, H12, R5;
MADH  H9.z, H8.x, H8, H8.y;
MULR  H8, R5, c[6].w;
ADDR  R1.xy, R0, -c[3].z;
COSH  H9.x, H8.y;
SINH  H9.y, H8.y;
SINH  H8.y, H8.x;
MOVR  R5.x, R0;
MOVR  R5.y, R1;
MULR  R5.xy, R5, H9;
SINH  H9.y, H8.w;
COSH  H9.x, H8.w;
MULR  R5.zw, R1.xyxy, H9.xyxy;
ADDR  R1.y, R5.z, R5.w;
ADDR  R15.z, R5.x, R5.y;
ADDR  R5.z, R1.y, -R15;
COSH  H8.x, H8.x;
MULR  R5.xy, R0, H8;
MOVR  R1.y, R0;
ADDR  R5.x, R5, R5.y;
COSH  H8.x, H8.z;
SINH  H8.y, H8.z;
MULR  R1.xy, R1, H8;
ADDR  R1.x, R1, R1.y;
ADDR  R5.y, R1.x, -R5.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H8.y, R0, R5, R5.x;
MADR  H8.x, R0.y, R5.z, R15.z;
ADDH  H8.z, H8.x, -H8.y;
MULR  H8.x, R0, R1;
MULR  R0.xy, R15, c[0].w;
TEX   R5, R0, texture[2], 2D;
ADDR  R0.xy, R14, -R14.zwzw;
ADDR  R5, H11, R5;
MADH  H9.x, H8, H8.z, H8.y;
MULR  H8, R5, c[0].x;
ADDR  R1.xy, R0, -c[3].z;
COSH  H10.x, H8.y;
SINH  H10.y, H8.y;
SINH  H8.y, H8.x;
MOVR  R5.x, R0;
MOVR  R5.y, R1;
MULR  R5.xy, R5, H10;
ADDR  R14.x, R5, R5.y;
COSH  H8.x, H8.x;
MULR  R5.xy, R0, H8;
ADDR  R5.x, R5, R5.y;
COSH  H8.x, H8.z;
SINH  H8.y, H8.z;
SINH  H10.y, H8.w;
COSH  H10.x, H8.w;
MULR  R5.zw, R1.xyxy, H10.xyxy;
ADDR  R1.y, R5.z, R5.w;
ADDR  R5.z, R1.y, -R14.x;
MOVR  R1.y, R0;
MULR  R1.xy, R1, H8;
ADDR  R1.x, R1, R1.y;
ADDR  R5.y, R1.x, -R5.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H8.y, R0, R5, R5.x;
MADR  H8.x, R0.y, R5.z, R14;
ADDH  H8.z, H8.x, -H8.y;
MULR  H8.x, R0, R1;
MADH  H9.y, H8.x, H8.z, H8;
MULR  R0.xy, R9, c[0].w;
TEX   R14, R0, texture[2], 2D;
ADDR  R0.xy, R8, -R8.zwzw;
ADDR  R1.xy, R0, -c[3].z;
ADDR  R14, H4, R14;
MULR  H4, R14, c[3].x;
COSH  H8.x, H4.y;
SINH  H8.y, H4.y;
SINH  H4.y, H4.x;
MOVR  R8.x, R0;
MOVR  R8.y, R1;
MULR  R8.xy, R8, H8;
ADDR  R9.x, R8, R8.y;
COSH  H4.x, H4.x;
MULR  R8.xy, R0, H4;
ADDR  R8.x, R8, R8.y;
SINH  H8.y, H4.w;
COSH  H8.x, H4.w;
MULR  R8.zw, R1.xyxy, H8.xyxy;
ADDR  R1.y, R8.z, R8.w;
ADDR  R8.z, R1.y, -R9.x;
MOVR  R1.y, R0;
COSH  H4.x, H4.z;
SINH  H4.y, H4.z;
MULR  R1.xy, R1, H4;
ADDR  R1.x, R1, R1.y;
ADDR  R8.y, R1.x, -R8.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H4.y, R0, R8, R8.x;
MADR  H4.x, R0.y, R8.z, R9;
ADDH  H4.z, H4.x, -H4.y;
MULR  H4.x, R0, R1;
ADDR  R0.xy, R9.zwzw, -R10;
ADDR  R1.xy, R0, -c[3].z;
TEX   R8, R10.zwzw, texture[2], 2D;
MADH  H8.w, H4.x, H4.z, H4.y;
ADDR  H4, H5, R8;
COSH  H5.x, H4.y;
SINH  H5.y, H4.y;
SINH  H4.y, H4.x;
MOVR  R8.x, R0;
MOVR  R8.y, R1;
MULR  R8.xy, R8, H5;
ADDR  R9.x, R8, R8.y;
COSH  H4.x, H4.x;
MULR  R8.xy, R0, H4;
ADDR  R8.x, R8, R8.y;
SINH  H5.y, H4.w;
COSH  H5.x, H4.w;
MULR  R8.zw, R1.xyxy, H5.xyxy;
ADDR  R1.y, R8.z, R8.w;
ADDR  R8.z, R1.y, -R9.x;
MOVR  R1.y, R0;
COSH  H4.x, H4.z;
SINH  H4.y, H4.z;
MULR  R1.xy, R1, H4;
ADDR  R1.x, R1, R1.y;
ADDR  R8.y, R1.x, -R8.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H4.y, R0, R8, R8.x;
MADR  H4.x, R0.y, R8.z, R9;
ADDH  H4.z, H4.x, -H4.y;
MULR  H4.x, R0, R1;
MULR  R0.xy, R12, c[0].w;
TEX   R8, R0, texture[2], 2D;
ADDR  R0.xy, R11, -R11.zwzw;
ADDR  R8, H6, R8;
MADH  H8.z, H4.x, H4, H4.y;
MULR  H4, R8, c[0].x;
ADDR  R1.xy, R0, -c[3].z;
COSH  H5.x, H4.y;
SINH  H5.y, H4.y;
SINH  H4.y, H4.x;
MOVR  R8.x, R0;
MOVR  R8.y, R1;
MULR  R8.xy, R8, H5;
ADDR  R9.x, R8, R8.y;
COSH  H4.x, H4.x;
MULR  R8.xy, R0, H4;
ADDR  R8.x, R8, R8.y;
SINH  H5.y, H4.w;
COSH  H5.x, H4.w;
MULR  R8.zw, R1.xyxy, H5.xyxy;
ADDR  R1.y, R8.z, R8.w;
ADDR  R8.z, R1.y, -R9.x;
MOVR  R1.y, R0;
COSH  H4.x, H4.z;
SINH  H4.y, H4.z;
MULR  R1.xy, R1, H4;
ADDR  R1.x, R1, R1.y;
ADDR  R8.y, R1.x, -R8.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H4.y, R0, R8, R8.x;
MADR  H4.x, R0.y, R8.z, R9;
ADDH  H4.z, H4.x, -H4.y;
MULR  H4.x, R0, R1;
MULR  R0.xy, R13.zwzw, c[0].w;
TEX   R8, R0, texture[2], 2D;
ADDR  R0.xy, R12.zwzw, -R13;
ADDR  R8, H7, R8;
MADH  H8.y, H4.x, H4.z, H4;
MULR  H4, R8, c[6].w;
ADDR  R1.xy, R0, -c[3].z;
COSH  H5.x, H4.y;
SINH  H5.y, H4.y;
SINH  H4.y, H4.x;
MOVR  R8.x, R0;
MOVR  R8.y, R1;
MULR  R8.xy, R8, H5;
ADDR  R9.x, R8, R8.y;
COSH  H4.x, H4.x;
MULR  R8.xy, R0, H4;
ADDR  R8.x, R8, R8.y;
COSH  H4.x, H4.z;
SINH  H4.y, H4.z;
SINH  H5.y, H4.w;
COSH  H5.x, H4.w;
MULR  R8.zw, R1.xyxy, H5.xyxy;
ADDR  R1.y, R8.z, R8.w;
ADDR  R8.z, R1.y, -R9.x;
MOVR  R1.y, R0;
MULR  R1.xy, R1, H4;
ADDR  R1.x, R1, R1.y;
ADDR  R8.y, R1.x, -R8.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R1.xy, -R0, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R1;
MADR  H4.y, R0, R8, R8.x;
MADR  H4.x, R0.y, R8.z, R9;
ADDH  H4.z, H4.x, -H4.y;
MULR  H4.x, R0, R1;
MULR  R0.xy, R2, c[0].w;
TEX   R8, R0, texture[2], 2D;
ADDR  R0.xy, R0.zwzw, -R1.zwzw;
ADDR  R0.zw, R0.xyxy, -c[3].z;
ADDR  R8, H0, R8;
MULR  H0, R8, c[3].x;
MADH  H8.x, H4, H4.z, H4.y;
MULR  R5, H9, c[7].y;
COSH  H4.x, H0.y;
SINH  H4.y, H0.y;
SINH  H0.y, H0.x;
MOVR  R1.x, R0;
MOVR  R1.y, R0.w;
MULR  R1.xy, R1, H4;
ADDR  R2.x, R1, R1.y;
COSH  H0.x, H0.x;
MULR  R1.xy, R0, H0;
ADDR  R1.x, R1, R1.y;
SINH  H4.y, H0.w;
COSH  H4.x, H0.w;
MULR  R1.zw, R0, H4.xyxy;
ADDR  R0.w, R1.z, R1;
ADDR  R1.z, R0.w, -R2.x;
MOVR  R0.w, R0.y;
COSH  H0.x, H0.z;
SINH  H0.y, H0.z;
MULR  R0.zw, R0, H0.xyxy;
ADDR  R0.z, R0, R0.w;
ADDR  R1.y, R0.z, -R1.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R0.zw, -R0.xyxy, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R0.w;
MADR  H0.y, R0, R1, R1.x;
MADR  H0.x, R0.y, R1.z, R2;
ADDH  H0.z, H0.x, -H0.y;
MULR  H0.x, R0, R0.z;
TEX   R0, R3.zwzw, texture[2], 2D;
MADH  H4.w, H0.x, H0.z, H0.y;
ADDR  H0, H1, R0;
ADDR  R0.xy, R2.zwzw, -R3;
ADDR  R0.zw, R0.xyxy, -c[3].z;
COSH  H1.x, H0.y;
SINH  H1.y, H0.y;
SINH  H0.y, H0.x;
MOVR  R1.x, R0;
MOVR  R1.y, R0.w;
MULR  R1.xy, R1, H1;
ADDR  R2.x, R1, R1.y;
COSH  H0.x, H0.x;
MULR  R1.xy, R0, H0;
ADDR  R1.x, R1, R1.y;
SINH  H1.y, H0.w;
COSH  H1.x, H0.w;
MULR  R1.zw, R0, H1.xyxy;
ADDR  R0.w, R1.z, R1;
ADDR  R1.z, R0.w, -R2.x;
MOVR  R0.w, R0.y;
COSH  H0.x, H0.z;
SINH  H0.y, H0.z;
MULR  R0.zw, R0, H0.xyxy;
ADDR  R0.z, R0, R0.w;
ADDR  R1.y, R0.z, -R1.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R0.zw, -R0.xyxy, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R0.w;
MADR  H0.y, R0, R1, R1.x;
MADR  H0.x, R0.y, R1.z, R2;
ADDH  H0.z, H0.x, -H0.y;
MULR  H0.x, R0, R0.z;
MULR  R0.xy, R6, c[0].w;
TEX   R0, R0, texture[2], 2D;
ADDR  R0, H2, R0;
MADH  H4.z, H0.x, H0, H0.y;
MULR  H0, R0, c[0].x;
ADDR  R0.xy, R4, -R4.zwzw;
ADDR  R0.zw, R0.xyxy, -c[3].z;
COSH  H1.x, H0.y;
SINH  H1.y, H0.y;
SINH  H0.y, H0.x;
MOVR  R1.x, R0;
MOVR  R1.y, R0.w;
MULR  R1.xy, R1, H1;
ADDR  R2.x, R1, R1.y;
COSH  H0.x, H0.x;
MULR  R1.xy, R0, H0;
ADDR  R1.x, R1, R1.y;
SINH  H1.y, H0.w;
COSH  H1.x, H0.w;
MULR  R1.zw, R0, H1.xyxy;
ADDR  R0.w, R1.z, R1;
ADDR  R1.z, R0.w, -R2.x;
MOVR  R0.w, R0.y;
COSH  H0.x, H0.z;
SINH  H0.y, H0.z;
MULR  R0.zw, R0, H0.xyxy;
ADDR  R0.z, R0, R0.w;
ADDR  R1.y, R0.z, -R1.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R0.zw, -R0.xyxy, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R0.w;
MADR  H0.y, R0, R1, R1.x;
MADR  H0.x, R0.y, R1.z, R2;
ADDH  H0.z, H0.x, -H0.y;
MULR  H0.x, R0, R0.z;
MULR  R0.xy, R7.zwzw, c[0].w;
TEX   R0, R0, texture[2], 2D;
ADDR  R0, H3, R0;
MADH  H4.y, H0.x, H0.z, H0;
MULR  H0, R0, c[6].w;
ADDR  R0.xy, R6.zwzw, -R7;
ADDR  R0.zw, R0.xyxy, -c[3].z;
COSH  H1.x, H0.y;
SINH  H1.y, H0.y;
SINH  H0.y, H0.x;
MOVR  R1.x, R0;
MOVR  R1.y, R0.w;
MULR  R1.xy, R1, H1;
ADDR  R2.x, R1, R1.y;
COSH  H0.x, H0.x;
MULR  R1.xy, R0, H0;
COSH  H0.x, H0.z;
SINH  H0.y, H0.z;
ADDR  R1.x, R1, R1.y;
SINH  H1.y, H0.w;
COSH  H1.x, H0.w;
MULR  R1.zw, R0, H1.xyxy;
ADDR  R0.w, R1.z, R1;
ADDR  R1.z, R0.w, -R2.x;
MOVR  R0.w, R0.y;
MULR  R0.zw, R0, H0.xyxy;
ADDR  R0.z, R0, R0.w;
ADDR  R1.y, R0.z, -R1.x;
MOVR_SAT R0.xy, R0.yxzw;
MADR  R0.zw, -R0.xyxy, c[3].x, c[3].y;
MULR  R0.xy, R0, R0;
MULR  R0.y, R0, R0.w;
MADR  H0.y, R0, R1, R1.x;
MADR  H0.x, R0.y, R1.z, R2;
ADDH  H0.z, H0.x, -H0.y;
MULR  H0.x, R0, R0.z;
MADR  R5, H8, c[7].x, R5;
MADH  H4.x, H0, H0.z, H0.y;
MADR  H0, H4, c[7].z, R5;
ADDH  H0, |H0|, -c[8].x;
DP4H  H0.x, H0, c[9];
MULR  R0.x, H0, c[10];
MINR  R0.x, R0, c[3].z;
MAXR  R0.x, R0, c[0].y;
ADDR  R0.y, R0.x, c[11].x;
TEX   R0.x, fragment.texcoord[0], texture[5], 2D;
ADDR  R0.x, R0, -c[0];
MINR  R0.x, R0, c[1];
MAXR  R0.x, R0, c[0].y;
ADDR_SAT oCol.xyz, R0.x, R0.y;
MOVH  oCol.w, c[3].z;
END
# 763 instructions, 20 R-regs, 14 H-regs
