VERT DCL IN[0] DCL IN[1] DCL IN[2] DCL IN[3] DCL OUT[0], POSITION DCL OUT[1], GENERIC[20] DCL OUT[2], GENERIC[21] DCL OUT[3], GENERIC[22] DCL CONST[0..7] DCL TEMP[0..5], LOCAL IMM[0] FLT32 { 1.0000, 0.0000, 0.0000, 0.0000} IMM[1] FLT32 { 0.0000, 1.0000, 128.0000, 0.0000} DCL TEMP[6] 0: MUL TEMP[0], CONST[4], IN[2].xxxx 1: MAD TEMP[0], CONST[5], IN[2].yyyy, TEMP[0] 2: MAD TEMP[0], CONST[6], IN[2].zzzz, TEMP[0] 3: ADD TEMP[0].xyz, TEMP[0], CONST[7] 4: MUL TEMP[6].x, TEMP[0].xxxx, TEMP[0].xxxx 5: MAD TEMP[6].x, TEMP[0].yyyy, TEMP[0].yyyy, TEMP[6].xxxx 6: MAD TEMP[1].x, TEMP[0].zzzz, TEMP[0].zzzz, TEMP[6].xxxx 7: RSQ TEMP[1].x, TEMP[1].xxxx 8: MUL TEMP[0].xyz, TEMP[0].xyzz, TEMP[1].xxxx 9: MUL TEMP[1], CONST[4], IN[3].xxxx 10: MAD TEMP[1], CONST[5], IN[3].yyyy, TEMP[1] 11: MAD TEMP[1], CONST[6], IN[3].zzzz, TEMP[1] 12: ADD TEMP[1].xyz, TEMP[1], CONST[7] 13: MUL TEMP[2].xyz, IN[2].zxyy, IN[3].yzxx 14: MAD TEMP[2].xyz, IN[2].yzxx, IN[3].zxyy, -TEMP[2].xyzz 15: MUL TEMP[3], CONST[4], TEMP[2].xxxx 16: MAD TEMP[3], CONST[5], TEMP[2].yyyy, TEMP[3] 17: MAD TEMP[2], CONST[6], TEMP[2].zzzz, TEMP[3] 18: ADD TEMP[2].xyz, TEMP[2], CONST[7] 19: MUL TEMP[3], CONST[0], IN[0].xxxx 20: MAD TEMP[3], CONST[1], IN[0].yyyy, TEMP[3] 21: MAD TEMP[3], CONST[2], IN[0].zzzz, TEMP[3] 22: ADD TEMP[3], TEMP[3], CONST[3] 23: MOV TEMP[4].xy, IN[1].xyxx 24: MOV TEMP[4].zw, TEMP[0].yyxy 25: MOV TEMP[0].x, TEMP[0].zzzz 26: MUL TEMP[6].x, TEMP[1].xxxx, TEMP[1].xxxx 27: MAD TEMP[6].x, TEMP[1].yyyy, TEMP[1].yyyy, TEMP[6].xxxx 28: MAD TEMP[5].x, TEMP[1].zzzz, TEMP[1].zzzz, TEMP[6].xxxx 29: RSQ TEMP[5].x, TEMP[5].xxxx 30: MUL TEMP[1].xyz, TEMP[1].xyzz, TEMP[5].xxxx 31: MOV TEMP[0].yzw, TEMP[1].yxyz 32: MUL TEMP[6].x, TEMP[2].xxxx, TEMP[2].xxxx 33: MAD TEMP[6].x, TEMP[2].yyyy, TEMP[2].yyyy, TEMP[6].xxxx 34: MAD TEMP[1].x, TEMP[2].zzzz, TEMP[2].zzzz, TEMP[6].xxxx 35: RSQ TEMP[1].x, TEMP[1].xxxx 36: MUL TEMP[1].xyz, TEMP[2].xyzz, TEMP[1].xxxx 37: MOV OUT[3], TEMP[1] 38: MOV OUT[1], TEMP[4] 39: MOV OUT[2], TEMP[0] 40: MOV OUT[0], TEMP[3] 41: END