FRAG DCL IN[0], GENERIC[9], PERSPECTIVE DCL IN[1], GENERIC[10], PERSPECTIVE DCL OUT[0], COLOR DCL SAMP[0] DCL SAMP[1] DCL SVIEW[0], 2D, FLOAT DCL SVIEW[1], 2D, FLOAT DCL CONST[0..4] DCL TEMP[0..7], LOCAL IMM[0] FLT32 { 0.5000, 1024.0000, 0.0000, 255.0000} IMM[1] FLT32 { 256.0000, 0.0000, 0.0000, 0.0000} 0: MOV TEMP[0].xz, IMM[0].xxyx 1: FSLT TEMP[1].x, IMM[0].xxxx, CONST[1].xxxx 2: UIF TEMP[1].xxxx :0 3: MUL TEMP[1].xy, CONST[3].xyyy, IN[0].xyyy 4: FRC TEMP[2].xy, TEMP[1].xyyy 5: ADD TEMP[1].xy, TEMP[1].xyyy, -TEMP[2].xyyy 6: MAD TEMP[2].xy, IN[0].xyyy, CONST[3].xyyy, -TEMP[1].xyyy 7: ADD TEMP[1].xy, TEMP[1].xyyy, IMM[0].xxxx 8: RCP TEMP[3].x, CONST[3].xxxx 9: RCP TEMP[4].x, CONST[3].yyyy 10: MOV TEMP[3].y, TEMP[4].xxxx 11: MUL TEMP[3].xy, TEMP[1].xyyy, TEMP[3].xyyy 12: MOV TEMP[1].xy, TEMP[3].xyyy 13: MOV TEMP[1].w, IMM[0].zzzz 14: TXL TEMP[1].xw, TEMP[1], SAMP[0], 2D 15: ADD TEMP[4].x, IMM[0].yyyy, -CONST[2].xxxx 16: MUL TEMP[5].x, TEMP[1].xxxx, IMM[0].wwww 17: MOV TEMP[0].z, TEMP[5].xxxx 18: MAD TEMP[6].x, TEMP[1].wwww, IMM[0].wwww, IMM[0].xxxx 19: FRC TEMP[7].x, TEMP[6].xxxx 20: ADD TEMP[6].x, TEMP[6].xxxx, -TEMP[7].xxxx 21: MAD TEMP[5].x, TEMP[6].xxxx, IMM[1].xxxx, TEMP[5].xxxx 22: MOV TEMP[0].z, TEMP[5].xxxx 23: ADD TEMP[5].x, TEMP[5].xxxx, IMM[0].xxxx 24: MOV TEMP[0].z, TEMP[5].xxxx 25: FRC TEMP[6].x, TEMP[5].xxxx 26: ADD TEMP[5].x, -TEMP[6].xxxx, TEMP[5].xxxx 27: MOV TEMP[0].z, TEMP[5].xxxx 28: MAD TEMP[1].x, CONST[2].xxxx, TEMP[1].xxxx, IMM[0].xxxx 29: FRC TEMP[5].x, TEMP[1].xxxx 30: ADD TEMP[1].x, TEMP[1].xxxx, -TEMP[5].xxxx 31: MOV TEMP[0].w, TEMP[1].xxxx 32: ADD TEMP[1].xy, TEMP[0].zwww, IMM[0].xxxx 33: FSGE TEMP[4].x, TEMP[4].xxxx, IMM[0].zzzz 34: UIF TEMP[4].xxxx :0 35: MOV TEMP[4].x, TEMP[1].yyyy 36: ELSE :0 37: MOV TEMP[4].x, TEMP[1].xxxx 38: ENDIF 39: MOV TEMP[0].y, TEMP[4].xxxx 40: RCP TEMP[1].x, CONST[1].xxxx 41: MAD TEMP[0].x, CONST[4].xxxx, TEMP[1].xxxx, IMM[0].xxxx 42: FRC TEMP[1].x, TEMP[0].xxxx 43: ADD TEMP[0].x, -TEMP[1].xxxx, TEMP[0].xxxx 44: MUL TEMP[1].x, TEMP[0].xxxx, TEMP[4].xxxx 45: FSGE TEMP[1].x, TEMP[1].xxxx, IMM[0].zzzz 46: UIF TEMP[1].xxxx :0 47: MOV TEMP[1].x, TEMP[0].xxxx 48: ELSE :0 49: MOV TEMP[1].x, -TEMP[0].xxxx 50: ENDIF 51: MOV TEMP[0].z, TEMP[1].xxxx 52: RCP TEMP[1].x, TEMP[1].xxxx 53: MUL TEMP[1].x, TEMP[1].xxxx, TEMP[4].xxxx 54: FRC TEMP[1].x, TEMP[1].xxxx 55: MOV TEMP[0].w, TEMP[1].xxxx 56: RCP TEMP[0].x, TEMP[0].xxxx 57: MUL TEMP[3].xy, TEMP[0].wxxx, TEMP[0].zyyy 58: FRC TEMP[1].xy, TEMP[3].xyyy 59: ADD TEMP[0].xy, -TEMP[1].xyyy, TEMP[3].xyyy 60: ADD TEMP[0].xy, TEMP[2].xyyy, TEMP[0].xyyy 61: MUL TEMP[0].xy, TEMP[0].xyyy, CONST[1].xxxx 62: FRC TEMP[1].xy, TEMP[0].xyyy 63: ADD TEMP[0].xy, -TEMP[1].xyyy, TEMP[0].xyyy 64: ADD TEMP[0].xy, TEMP[0].xyyy, IMM[0].xxxx 65: RCP TEMP[2].x, CONST[4].xxxx 66: RCP TEMP[1].x, CONST[4].yyyy 67: MOV TEMP[2].y, TEMP[1].xxxx 68: MUL TEMP[0].xy, TEMP[0].xyyy, TEMP[2].xyyy 69: MOV TEMP[1].xy, TEMP[0].xyyy 70: MOV TEMP[1].w, IMM[0].zzzz 71: TXL TEMP[1], TEMP[1], SAMP[1], 2D 72: MOV TEMP[0], TEMP[1] 73: ELSE :0 74: MOV TEMP[1].xy, IN[0].xyyy 75: TEX TEMP[1], TEMP[1], SAMP[1], 2D 76: MOV TEMP[0], TEMP[1] 77: ENDIF 78: MUL TEMP[0], TEMP[0], IN[1] 79: MOV OUT[0], TEMP[0] 80: END