Guest User

Untitled

a guest
Jul 5th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 228.50 KB | None | 0 0
  1. r300: Initial fragment program
  2. FRAG
  3. DCL IN[0], GENERIC[0], PERSPECTIVE
  4. DCL OUT[0], COLOR
  5. DCL SAMP[0]
  6. DCL CONST[0..52]
  7. DCL TEMP[0..4]
  8. IMM FLT32 { 1.0000, 12.0000, 6.0000, 3.0000}
  9. IMM FLT32 { 1.0000, 2.0000, 9.0000, 18.0000}
  10. IMM FLT32 { 4.0000, 5.0000, 15.0000, 21.0000}
  11. IMM FLT32 { 7.0000, 8.0000, 0.0000, 22.0000}
  12. IMM FLT32 { 10.0000, 11.0000, 0.0000, 22.0000}
  13. IMM FLT32 { 13.0000, 14.0000, 0.0000, 22.0000}
  14. IMM FLT32 { 16.0000, 17.0000, 0.0000, 22.0000}
  15. IMM FLT32 { 19.0000, 20.0000, 0.0000, 22.0000}
  16. IMM FLT32 { 22.0000, 23.0000, 24.0000, 0.0000}
  17. 0: TEX TEMP[0], IN[0].xyyy, SAMP[0], 2D
  18. 1: MUL TEMP[1], TEMP[0], CONST[1]
  19. 2: MOV TEMP[0], TEMP[1]
  20. 3: MOV TEMP[1].x, IMM[0].xxxx
  21. 4: BGNLOOP :247
  22. 5: SGE TEMP[2].x, TEMP[1].xxxx, CONST[0].xxxx
  23. 6: IF TEMP[2].xxxx :8
  24. 7: BRK
  25. 8: ENDIF
  26. 9: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].yyyy
  27. 10: IF TEMP[2].xxxx :39
  28. 11: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].zzzz
  29. 12: IF TEMP[2].xxxx :25
  30. 13: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].wwww
  31. 14: IF TEMP[2].xxxx :19
  32. 15: MOV TEMP[2].xy, CONST[27].xyxx
  33. 16: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[1]
  34. 17: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[28].xyxx, TEMP[2]
  35. 18: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[29].xyxx, TEMP[2]
  36. 19: ELSE :24
  37. 20: MOV TEMP[2].xy, CONST[30].xyxx
  38. 21: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[2]
  39. 22: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[31].xyxx, TEMP[2]
  40. 23: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[32].xyxx, TEMP[2]
  41. 24: ENDIF
  42. 25: ELSE :38
  43. 26: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].zzzz
  44. 27: IF TEMP[3].xxxx :32
  45. 28: MOV TEMP[2].xy, CONST[33].xyxx
  46. 29: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[3].xyzz
  47. 30: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[34].xyxx, TEMP[2]
  48. 31: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[35].xyxx, TEMP[2]
  49. 32: ELSE :37
  50. 33: MOV TEMP[2].xy, CONST[36].xyxx
  51. 34: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[4].xyzz
  52. 35: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[37].xyxx, TEMP[2]
  53. 36: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[38].xyxx, TEMP[2]
  54. 37: ENDIF
  55. 38: ENDIF
  56. 39: ELSE :69
  57. 40: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].wwww
  58. 41: IF TEMP[3].xxxx :54
  59. 42: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].zzzz
  60. 43: IF TEMP[3].xxxx :48
  61. 44: MOV TEMP[2].xy, CONST[39].xyxx
  62. 45: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[5].xyzz
  63. 46: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[40].xyxx, TEMP[2]
  64. 47: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[41].xyxx, TEMP[2]
  65. 48: ELSE :53
  66. 49: MOV TEMP[2].xy, CONST[42].xyxx
  67. 50: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[6].xyzz
  68. 51: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[43].xyxx, TEMP[2]
  69. 52: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[44].xyxx, TEMP[2]
  70. 53: ENDIF
  71. 54: ELSE :68
  72. 55: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].wwww
  73. 56: IF TEMP[3].xxxx :61
  74. 57: MOV TEMP[2].xy, CONST[45].xyxx
  75. 58: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[7].xyzz
  76. 59: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[46].xyxx, TEMP[2]
  77. 60: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[47].xyxx, TEMP[2]
  78. 61: ELSE :67
  79. 62: MOV TEMP[2].xy, CONST[48].xyxx
  80. 63: SEQ TEMP[3].xyz, TEMP[1].xxxx, IMM[8]
  81. 64: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[49].xyxx, TEMP[2]
  82. 65: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[50].xyxx, TEMP[2]
  83. 66: CMP TEMP[2].xy, -TEMP[3].zzzz, CONST[51].xyxx, TEMP[2]
  84. 67: ENDIF
  85. 68: ENDIF
  86. 69: ENDIF
  87. 70: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].yyyy
  88. 71: IF TEMP[3].xxxx :96
  89. 72: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].zzzz
  90. 73: IF TEMP[3].xxxx :84
  91. 74: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].wwww
  92. 75: IF TEMP[3].xxxx :79
  93. 76: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[1].xyyy
  94. 77: CMP TEMP[4], -TEMP[3].xxxx, CONST[2], CONST[1]
  95. 78: CMP TEMP[4], -TEMP[3].yyyy, CONST[3], TEMP[4]
  96. 79: ELSE :83
  97. 80: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[2].xyyy
  98. 81: CMP TEMP[4], -TEMP[3].xxxx, CONST[5], CONST[4]
  99. 82: CMP TEMP[4], -TEMP[3].yyyy, CONST[6], TEMP[4]
  100. 83: ENDIF
  101. 84: ELSE :95
  102. 85: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].zzzz
  103. 86: IF TEMP[3].xxxx :90
  104. 87: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[3].xyyy
  105. 88: CMP TEMP[4], -TEMP[3].xxxx, CONST[8], CONST[7]
  106. 89: CMP TEMP[4], -TEMP[3].yyyy, CONST[9], TEMP[4]
  107. 90: ELSE :94
  108. 91: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[4].xyyy
  109. 92: CMP TEMP[4], -TEMP[3].xxxx, CONST[11], CONST[10]
  110. 93: CMP TEMP[4], -TEMP[3].yyyy, CONST[12], TEMP[4]
  111. 94: ENDIF
  112. 95: ENDIF
  113. 96: ELSE :122
  114. 97: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].wwww
  115. 98: IF TEMP[3].xxxx :109
  116. 99: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].zzzz
  117. 100: IF TEMP[3].xxxx :104
  118. 101: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[5].xyyy
  119. 102: CMP TEMP[4], -TEMP[3].xxxx, CONST[14], CONST[13]
  120. 103: CMP TEMP[4], -TEMP[3].yyyy, CONST[15], TEMP[4]
  121. 104: ELSE :108
  122. 105: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[6].xyyy
  123. 106: CMP TEMP[4], -TEMP[3].xxxx, CONST[17], CONST[16]
  124. 107: CMP TEMP[4], -TEMP[3].yyyy, CONST[18], TEMP[4]
  125. 108: ENDIF
  126. 109: ELSE :121
  127. 110: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].wwww
  128. 111: IF TEMP[3].xxxx :115
  129. 112: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[7].xyyy
  130. 113: CMP TEMP[4], -TEMP[3].xxxx, CONST[20], CONST[19]
  131. 114: CMP TEMP[4], -TEMP[3].yyyy, CONST[21], TEMP[4]
  132. 115: ELSE :120
  133. 116: SEQ TEMP[3].xyz, TEMP[1].xxxx, IMM[8].xyzz
  134. 117: CMP TEMP[4], -TEMP[3].xxxx, CONST[23], CONST[22]
  135. 118: CMP TEMP[4], -TEMP[3].yyyy, CONST[24], TEMP[4]
  136. 119: CMP TEMP[4], -TEMP[3].zzzz, CONST[25], TEMP[4]
  137. 120: ENDIF
  138. 121: ENDIF
  139. 122: ENDIF
  140. 123: ADD TEMP[3].xy, IN[0].xyyy, -TEMP[2].xyyy
  141. 124: TEX TEMP[2], TEMP[3].xyyy, SAMP[0], 2D
  142. 125: MAD TEMP[3], TEMP[2], TEMP[4], TEMP[0]
  143. 126: MOV TEMP[0], TEMP[3]
  144. 127: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].yyyy
  145. 128: IF TEMP[2].xxxx :157
  146. 129: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].zzzz
  147. 130: IF TEMP[2].xxxx :143
  148. 131: SLT TEMP[2].x, TEMP[1].xxxx, IMM[0].wwww
  149. 132: IF TEMP[2].xxxx :137
  150. 133: MOV TEMP[2].xy, CONST[27].xyxx
  151. 134: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[1].xyyy
  152. 135: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[28].xyxx, TEMP[2]
  153. 136: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[29].xyxx, TEMP[2]
  154. 137: ELSE :142
  155. 138: MOV TEMP[2].xy, CONST[30].xyxx
  156. 139: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[2].xyyy
  157. 140: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[31].xyxx, TEMP[2]
  158. 141: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[32].xyxx, TEMP[2]
  159. 142: ENDIF
  160. 143: ELSE :156
  161. 144: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].zzzz
  162. 145: IF TEMP[3].xxxx :150
  163. 146: MOV TEMP[2].xy, CONST[33].xyxx
  164. 147: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[3].xyyy
  165. 148: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[34].xyxx, TEMP[2]
  166. 149: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[35].xyxx, TEMP[2]
  167. 150: ELSE :155
  168. 151: MOV TEMP[2].xy, CONST[36].xyxx
  169. 152: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[4].xyyy
  170. 153: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[37].xyxx, TEMP[2]
  171. 154: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[38].xyxx, TEMP[2]
  172. 155: ENDIF
  173. 156: ENDIF
  174. 157: ELSE :187
  175. 158: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].wwww
  176. 159: IF TEMP[3].xxxx :172
  177. 160: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].zzzz
  178. 161: IF TEMP[3].xxxx :166
  179. 162: MOV TEMP[2].xy, CONST[39].xyxx
  180. 163: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[5].xyyy
  181. 164: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[40].xyxx, TEMP[2]
  182. 165: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[41].xyxx, TEMP[2]
  183. 166: ELSE :171
  184. 167: MOV TEMP[2].xy, CONST[42].xyxx
  185. 168: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[6].xyyy
  186. 169: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[43].xyxx, TEMP[2]
  187. 170: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[44].xyxx, TEMP[2]
  188. 171: ENDIF
  189. 172: ELSE :186
  190. 173: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].wwww
  191. 174: IF TEMP[3].xxxx :179
  192. 175: MOV TEMP[2].xy, CONST[45].xyxx
  193. 176: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[7].xyyy
  194. 177: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[46].xyxx, TEMP[2]
  195. 178: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[47].xyxx, TEMP[2]
  196. 179: ELSE :185
  197. 180: MOV TEMP[2].xy, CONST[48].xyxx
  198. 181: SEQ TEMP[3].xyz, TEMP[1].xxxx, IMM[8].xyzz
  199. 182: CMP TEMP[2].xy, -TEMP[3].xxxx, CONST[49].xyxx, TEMP[2]
  200. 183: CMP TEMP[2].xy, -TEMP[3].yyyy, CONST[50].xyxx, TEMP[2]
  201. 184: CMP TEMP[2].xy, -TEMP[3].zzzz, CONST[51].xyxx, TEMP[2]
  202. 185: ENDIF
  203. 186: ENDIF
  204. 187: ENDIF
  205. 188: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].yyyy
  206. 189: IF TEMP[3].xxxx :214
  207. 190: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].zzzz
  208. 191: IF TEMP[3].xxxx :202
  209. 192: SLT TEMP[3].x, TEMP[1].xxxx, IMM[0].wwww
  210. 193: IF TEMP[3].xxxx :197
  211. 194: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[1].xyyy
  212. 195: CMP TEMP[4], -TEMP[3].xxxx, CONST[2], CONST[1]
  213. 196: CMP TEMP[4], -TEMP[3].yyyy, CONST[3], TEMP[4]
  214. 197: ELSE :201
  215. 198: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[2].xyyy
  216. 199: CMP TEMP[4], -TEMP[3].xxxx, CONST[5], CONST[4]
  217. 200: CMP TEMP[4], -TEMP[3].yyyy, CONST[6], TEMP[4]
  218. 201: ENDIF
  219. 202: ELSE :213
  220. 203: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].zzzz
  221. 204: IF TEMP[3].xxxx :208
  222. 205: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[3].xyyy
  223. 206: CMP TEMP[4], -TEMP[3].xxxx, CONST[8], CONST[7]
  224. 207: CMP TEMP[4], -TEMP[3].yyyy, CONST[9], TEMP[4]
  225. 208: ELSE :212
  226. 209: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[4].xyyy
  227. 210: CMP TEMP[4], -TEMP[3].xxxx, CONST[11], CONST[10]
  228. 211: CMP TEMP[4], -TEMP[3].yyyy, CONST[12], TEMP[4]
  229. 212: ENDIF
  230. 213: ENDIF
  231. 214: ELSE :240
  232. 215: SLT TEMP[3].x, TEMP[1].xxxx, IMM[1].wwww
  233. 216: IF TEMP[3].xxxx :227
  234. 217: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].zzzz
  235. 218: IF TEMP[3].xxxx :222
  236. 219: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[5].xyyy
  237. 220: CMP TEMP[4], -TEMP[3].xxxx, CONST[14], CONST[13]
  238. 221: CMP TEMP[4], -TEMP[3].yyyy, CONST[15], TEMP[4]
  239. 222: ELSE :226
  240. 223: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[6].xyyy
  241. 224: CMP TEMP[4], -TEMP[3].xxxx, CONST[17], CONST[16]
  242. 225: CMP TEMP[4], -TEMP[3].yyyy, CONST[18], TEMP[4]
  243. 226: ENDIF
  244. 227: ELSE :239
  245. 228: SLT TEMP[3].x, TEMP[1].xxxx, IMM[2].wwww
  246. 229: IF TEMP[3].xxxx :233
  247. 230: SEQ TEMP[3].xy, TEMP[1].xxxx, IMM[7].xyyy
  248. 231: CMP TEMP[4], -TEMP[3].xxxx, CONST[20], CONST[19]
  249. 232: CMP TEMP[4], -TEMP[3].yyyy, CONST[21], TEMP[4]
  250. 233: ELSE :238
  251. 234: SEQ TEMP[3].xyz, TEMP[1].xxxx, IMM[8].xyzz
  252. 235: CMP TEMP[4], -TEMP[3].xxxx, CONST[23], CONST[22]
  253. 236: CMP TEMP[4], -TEMP[3].yyyy, CONST[24], TEMP[4]
  254. 237: CMP TEMP[4], -TEMP[3].zzzz, CONST[25], TEMP[4]
  255. 238: ENDIF
  256. 239: ENDIF
  257. 240: ENDIF
  258. 241: ADD TEMP[3].xy, IN[0].xyyy, TEMP[2].xyyy
  259. 242: TEX TEMP[2], TEMP[3].xyyy, SAMP[0], 2D
  260. 243: MAD TEMP[3], TEMP[2], TEMP[4], TEMP[0]
  261. 244: MOV TEMP[0], TEMP[3]
  262. 245: ADD TEMP[2].x, TEMP[1].xxxx, IMM[0].xxxx
  263. 246: MOV TEMP[1].x, TEMP[2].xxxx
  264. 247: ENDLOOP :4
  265. 248: MOV OUT[0], TEMP[0]
  266. 249: END
  267. Fragment Program: before compilation
  268. # Radeon Compiler Program
  269. 0: TEX temp[0], input[0].xyyy, 2D[0];
  270. 1: MUL temp[1], temp[0], const[1];
  271. 2: MOV temp[0], temp[1];
  272. 3: MOV temp[1].x, const[53].xxxx;
  273. 4: BGNLOOP;
  274. 5: SGE temp[2].x, temp[1].xxxx, const[0].xxxx;
  275. 6: IF temp[2].xxxx;
  276. 7: BRK;
  277. 8: ENDIF;
  278. 9: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  279. 10: IF temp[2].xxxx;
  280. 11: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  281. 12: IF temp[2].xxxx;
  282. 13: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  283. 14: IF temp[2].xxxx;
  284. 15: MOV temp[2].xy, const[27].xyxx;
  285. 16: SEQ temp[3].xy, temp[1].xxxx, const[54];
  286. 17: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  287. 18: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  288. 19: ELSE;
  289. 20: MOV temp[2].xy, const[30].xyxx;
  290. 21: SEQ temp[3].xy, temp[1].xxxx, const[55];
  291. 22: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  292. 23: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  293. 24: ENDIF;
  294. 25: ELSE;
  295. 26: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  296. 27: IF temp[3].xxxx;
  297. 28: MOV temp[2].xy, const[33].xyxx;
  298. 29: SEQ temp[3].xy, temp[1].xxxx, const[56].xyzz;
  299. 30: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  300. 31: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  301. 32: ELSE;
  302. 33: MOV temp[2].xy, const[36].xyxx;
  303. 34: SEQ temp[3].xy, temp[1].xxxx, const[57].xyzz;
  304. 35: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  305. 36: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  306. 37: ENDIF;
  307. 38: ENDIF;
  308. 39: ELSE;
  309. 40: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  310. 41: IF temp[3].xxxx;
  311. 42: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  312. 43: IF temp[3].xxxx;
  313. 44: MOV temp[2].xy, const[39].xyxx;
  314. 45: SEQ temp[3].xy, temp[1].xxxx, const[58].xyzz;
  315. 46: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  316. 47: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  317. 48: ELSE;
  318. 49: MOV temp[2].xy, const[42].xyxx;
  319. 50: SEQ temp[3].xy, temp[1].xxxx, const[59].xyzz;
  320. 51: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  321. 52: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  322. 53: ENDIF;
  323. 54: ELSE;
  324. 55: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  325. 56: IF temp[3].xxxx;
  326. 57: MOV temp[2].xy, const[45].xyxx;
  327. 58: SEQ temp[3].xy, temp[1].xxxx, const[60].xyzz;
  328. 59: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  329. 60: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  330. 61: ELSE;
  331. 62: MOV temp[2].xy, const[48].xyxx;
  332. 63: SEQ temp[3].xyz, temp[1].xxxx, const[61];
  333. 64: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  334. 65: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  335. 66: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  336. 67: ENDIF;
  337. 68: ENDIF;
  338. 69: ENDIF;
  339. 70: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  340. 71: IF temp[3].xxxx;
  341. 72: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  342. 73: IF temp[3].xxxx;
  343. 74: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  344. 75: IF temp[3].xxxx;
  345. 76: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  346. 77: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  347. 78: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  348. 79: ELSE;
  349. 80: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  350. 81: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  351. 82: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  352. 83: ENDIF;
  353. 84: ELSE;
  354. 85: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  355. 86: IF temp[3].xxxx;
  356. 87: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  357. 88: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  358. 89: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  359. 90: ELSE;
  360. 91: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  361. 92: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  362. 93: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  363. 94: ENDIF;
  364. 95: ENDIF;
  365. 96: ELSE;
  366. 97: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  367. 98: IF temp[3].xxxx;
  368. 99: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  369. 100: IF temp[3].xxxx;
  370. 101: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  371. 102: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  372. 103: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  373. 104: ELSE;
  374. 105: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  375. 106: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  376. 107: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  377. 108: ENDIF;
  378. 109: ELSE;
  379. 110: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  380. 111: IF temp[3].xxxx;
  381. 112: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  382. 113: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  383. 114: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  384. 115: ELSE;
  385. 116: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  386. 117: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  387. 118: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  388. 119: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  389. 120: ENDIF;
  390. 121: ENDIF;
  391. 122: ENDIF;
  392. 123: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  393. 124: TEX temp[2], temp[3].xyyy, 2D[0];
  394. 125: MAD temp[3], temp[2], temp[4], temp[0];
  395. 126: MOV temp[0], temp[3];
  396. 127: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  397. 128: IF temp[2].xxxx;
  398. 129: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  399. 130: IF temp[2].xxxx;
  400. 131: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  401. 132: IF temp[2].xxxx;
  402. 133: MOV temp[2].xy, const[27].xyxx;
  403. 134: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  404. 135: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  405. 136: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  406. 137: ELSE;
  407. 138: MOV temp[2].xy, const[30].xyxx;
  408. 139: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  409. 140: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  410. 141: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  411. 142: ENDIF;
  412. 143: ELSE;
  413. 144: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  414. 145: IF temp[3].xxxx;
  415. 146: MOV temp[2].xy, const[33].xyxx;
  416. 147: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  417. 148: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  418. 149: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  419. 150: ELSE;
  420. 151: MOV temp[2].xy, const[36].xyxx;
  421. 152: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  422. 153: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  423. 154: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  424. 155: ENDIF;
  425. 156: ENDIF;
  426. 157: ELSE;
  427. 158: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  428. 159: IF temp[3].xxxx;
  429. 160: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  430. 161: IF temp[3].xxxx;
  431. 162: MOV temp[2].xy, const[39].xyxx;
  432. 163: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  433. 164: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  434. 165: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  435. 166: ELSE;
  436. 167: MOV temp[2].xy, const[42].xyxx;
  437. 168: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  438. 169: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  439. 170: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  440. 171: ENDIF;
  441. 172: ELSE;
  442. 173: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  443. 174: IF temp[3].xxxx;
  444. 175: MOV temp[2].xy, const[45].xyxx;
  445. 176: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  446. 177: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  447. 178: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  448. 179: ELSE;
  449. 180: MOV temp[2].xy, const[48].xyxx;
  450. 181: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  451. 182: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  452. 183: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  453. 184: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  454. 185: ENDIF;
  455. 186: ENDIF;
  456. 187: ENDIF;
  457. 188: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  458. 189: IF temp[3].xxxx;
  459. 190: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  460. 191: IF temp[3].xxxx;
  461. 192: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  462. 193: IF temp[3].xxxx;
  463. 194: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  464. 195: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  465. 196: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  466. 197: ELSE;
  467. 198: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  468. 199: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  469. 200: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  470. 201: ENDIF;
  471. 202: ELSE;
  472. 203: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  473. 204: IF temp[3].xxxx;
  474. 205: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  475. 206: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  476. 207: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  477. 208: ELSE;
  478. 209: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  479. 210: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  480. 211: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  481. 212: ENDIF;
  482. 213: ENDIF;
  483. 214: ELSE;
  484. 215: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  485. 216: IF temp[3].xxxx;
  486. 217: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  487. 218: IF temp[3].xxxx;
  488. 219: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  489. 220: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  490. 221: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  491. 222: ELSE;
  492. 223: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  493. 224: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  494. 225: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  495. 226: ENDIF;
  496. 227: ELSE;
  497. 228: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  498. 229: IF temp[3].xxxx;
  499. 230: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  500. 231: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  501. 232: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  502. 233: ELSE;
  503. 234: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  504. 235: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  505. 236: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  506. 237: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  507. 238: ENDIF;
  508. 239: ENDIF;
  509. 240: ENDIF;
  510. 241: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  511. 242: TEX temp[2], temp[3].xyyy, 2D[0];
  512. 243: MAD temp[3], temp[2], temp[4], temp[0];
  513. 244: MOV temp[0], temp[3];
  514. 245: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  515. 246: MOV temp[1].x, temp[2].xxxx;
  516. 247: ENDLOOP;
  517. 248: MOV output[0], temp[0];
  518. Fragment Program: after 'rewrite depth out'
  519. # Radeon Compiler Program
  520. 0: TEX temp[0], input[0].xyyy, 2D[0];
  521. 1: MUL temp[1], temp[0], const[1];
  522. 2: MOV temp[0], temp[1];
  523. 3: MOV temp[1].x, const[53].xxxx;
  524. 4: BGNLOOP;
  525. 5: SGE temp[2].x, temp[1].xxxx, const[0].xxxx;
  526. 6: IF temp[2].xxxx;
  527. 7: BRK;
  528. 8: ENDIF;
  529. 9: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  530. 10: IF temp[2].xxxx;
  531. 11: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  532. 12: IF temp[2].xxxx;
  533. 13: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  534. 14: IF temp[2].xxxx;
  535. 15: MOV temp[2].xy, const[27].xyxx;
  536. 16: SEQ temp[3].xy, temp[1].xxxx, const[54];
  537. 17: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  538. 18: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  539. 19: ELSE;
  540. 20: MOV temp[2].xy, const[30].xyxx;
  541. 21: SEQ temp[3].xy, temp[1].xxxx, const[55];
  542. 22: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  543. 23: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  544. 24: ENDIF;
  545. 25: ELSE;
  546. 26: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  547. 27: IF temp[3].xxxx;
  548. 28: MOV temp[2].xy, const[33].xyxx;
  549. 29: SEQ temp[3].xy, temp[1].xxxx, const[56].xyzz;
  550. 30: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  551. 31: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  552. 32: ELSE;
  553. 33: MOV temp[2].xy, const[36].xyxx;
  554. 34: SEQ temp[3].xy, temp[1].xxxx, const[57].xyzz;
  555. 35: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  556. 36: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  557. 37: ENDIF;
  558. 38: ENDIF;
  559. 39: ELSE;
  560. 40: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  561. 41: IF temp[3].xxxx;
  562. 42: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  563. 43: IF temp[3].xxxx;
  564. 44: MOV temp[2].xy, const[39].xyxx;
  565. 45: SEQ temp[3].xy, temp[1].xxxx, const[58].xyzz;
  566. 46: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  567. 47: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  568. 48: ELSE;
  569. 49: MOV temp[2].xy, const[42].xyxx;
  570. 50: SEQ temp[3].xy, temp[1].xxxx, const[59].xyzz;
  571. 51: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  572. 52: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  573. 53: ENDIF;
  574. 54: ELSE;
  575. 55: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  576. 56: IF temp[3].xxxx;
  577. 57: MOV temp[2].xy, const[45].xyxx;
  578. 58: SEQ temp[3].xy, temp[1].xxxx, const[60].xyzz;
  579. 59: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  580. 60: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  581. 61: ELSE;
  582. 62: MOV temp[2].xy, const[48].xyxx;
  583. 63: SEQ temp[3].xyz, temp[1].xxxx, const[61];
  584. 64: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  585. 65: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  586. 66: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  587. 67: ENDIF;
  588. 68: ENDIF;
  589. 69: ENDIF;
  590. 70: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  591. 71: IF temp[3].xxxx;
  592. 72: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  593. 73: IF temp[3].xxxx;
  594. 74: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  595. 75: IF temp[3].xxxx;
  596. 76: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  597. 77: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  598. 78: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  599. 79: ELSE;
  600. 80: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  601. 81: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  602. 82: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  603. 83: ENDIF;
  604. 84: ELSE;
  605. 85: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  606. 86: IF temp[3].xxxx;
  607. 87: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  608. 88: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  609. 89: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  610. 90: ELSE;
  611. 91: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  612. 92: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  613. 93: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  614. 94: ENDIF;
  615. 95: ENDIF;
  616. 96: ELSE;
  617. 97: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  618. 98: IF temp[3].xxxx;
  619. 99: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  620. 100: IF temp[3].xxxx;
  621. 101: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  622. 102: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  623. 103: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  624. 104: ELSE;
  625. 105: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  626. 106: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  627. 107: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  628. 108: ENDIF;
  629. 109: ELSE;
  630. 110: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  631. 111: IF temp[3].xxxx;
  632. 112: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  633. 113: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  634. 114: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  635. 115: ELSE;
  636. 116: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  637. 117: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  638. 118: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  639. 119: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  640. 120: ENDIF;
  641. 121: ENDIF;
  642. 122: ENDIF;
  643. 123: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  644. 124: TEX temp[2], temp[3].xyyy, 2D[0];
  645. 125: MAD temp[3], temp[2], temp[4], temp[0];
  646. 126: MOV temp[0], temp[3];
  647. 127: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  648. 128: IF temp[2].xxxx;
  649. 129: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  650. 130: IF temp[2].xxxx;
  651. 131: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  652. 132: IF temp[2].xxxx;
  653. 133: MOV temp[2].xy, const[27].xyxx;
  654. 134: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  655. 135: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  656. 136: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  657. 137: ELSE;
  658. 138: MOV temp[2].xy, const[30].xyxx;
  659. 139: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  660. 140: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  661. 141: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  662. 142: ENDIF;
  663. 143: ELSE;
  664. 144: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  665. 145: IF temp[3].xxxx;
  666. 146: MOV temp[2].xy, const[33].xyxx;
  667. 147: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  668. 148: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  669. 149: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  670. 150: ELSE;
  671. 151: MOV temp[2].xy, const[36].xyxx;
  672. 152: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  673. 153: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  674. 154: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  675. 155: ENDIF;
  676. 156: ENDIF;
  677. 157: ELSE;
  678. 158: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  679. 159: IF temp[3].xxxx;
  680. 160: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  681. 161: IF temp[3].xxxx;
  682. 162: MOV temp[2].xy, const[39].xyxx;
  683. 163: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  684. 164: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  685. 165: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  686. 166: ELSE;
  687. 167: MOV temp[2].xy, const[42].xyxx;
  688. 168: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  689. 169: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  690. 170: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  691. 171: ENDIF;
  692. 172: ELSE;
  693. 173: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  694. 174: IF temp[3].xxxx;
  695. 175: MOV temp[2].xy, const[45].xyxx;
  696. 176: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  697. 177: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  698. 178: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  699. 179: ELSE;
  700. 180: MOV temp[2].xy, const[48].xyxx;
  701. 181: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  702. 182: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  703. 183: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  704. 184: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  705. 185: ENDIF;
  706. 186: ENDIF;
  707. 187: ENDIF;
  708. 188: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  709. 189: IF temp[3].xxxx;
  710. 190: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  711. 191: IF temp[3].xxxx;
  712. 192: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  713. 193: IF temp[3].xxxx;
  714. 194: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  715. 195: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  716. 196: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  717. 197: ELSE;
  718. 198: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  719. 199: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  720. 200: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  721. 201: ENDIF;
  722. 202: ELSE;
  723. 203: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  724. 204: IF temp[3].xxxx;
  725. 205: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  726. 206: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  727. 207: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  728. 208: ELSE;
  729. 209: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  730. 210: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  731. 211: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  732. 212: ENDIF;
  733. 213: ENDIF;
  734. 214: ELSE;
  735. 215: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  736. 216: IF temp[3].xxxx;
  737. 217: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  738. 218: IF temp[3].xxxx;
  739. 219: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  740. 220: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  741. 221: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  742. 222: ELSE;
  743. 223: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  744. 224: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  745. 225: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  746. 226: ENDIF;
  747. 227: ELSE;
  748. 228: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  749. 229: IF temp[3].xxxx;
  750. 230: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  751. 231: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  752. 232: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  753. 233: ELSE;
  754. 234: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  755. 235: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  756. 236: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  757. 237: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  758. 238: ENDIF;
  759. 239: ENDIF;
  760. 240: ENDIF;
  761. 241: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  762. 242: TEX temp[2], temp[3].xyyy, 2D[0];
  763. 243: MAD temp[3], temp[2], temp[4], temp[0];
  764. 244: MOV temp[0], temp[3];
  765. 245: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  766. 246: MOV temp[1].x, temp[2].xxxx;
  767. 247: ENDLOOP;
  768. 248: MOV output[0], temp[0];
  769. Fragment Program: after 'transform KILP'
  770. # Radeon Compiler Program
  771. 0: TEX temp[0], input[0].xyyy, 2D[0];
  772. 1: MUL temp[1], temp[0], const[1];
  773. 2: MOV temp[0], temp[1];
  774. 3: MOV temp[1].x, const[53].xxxx;
  775. 4: BGNLOOP;
  776. 5: SGE temp[2].x, temp[1].xxxx, const[0].xxxx;
  777. 6: IF temp[2].xxxx;
  778. 7: BRK;
  779. 8: ENDIF;
  780. 9: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  781. 10: IF temp[2].xxxx;
  782. 11: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  783. 12: IF temp[2].xxxx;
  784. 13: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  785. 14: IF temp[2].xxxx;
  786. 15: MOV temp[2].xy, const[27].xyxx;
  787. 16: SEQ temp[3].xy, temp[1].xxxx, const[54];
  788. 17: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  789. 18: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  790. 19: ELSE;
  791. 20: MOV temp[2].xy, const[30].xyxx;
  792. 21: SEQ temp[3].xy, temp[1].xxxx, const[55];
  793. 22: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  794. 23: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  795. 24: ENDIF;
  796. 25: ELSE;
  797. 26: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  798. 27: IF temp[3].xxxx;
  799. 28: MOV temp[2].xy, const[33].xyxx;
  800. 29: SEQ temp[3].xy, temp[1].xxxx, const[56].xyzz;
  801. 30: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  802. 31: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  803. 32: ELSE;
  804. 33: MOV temp[2].xy, const[36].xyxx;
  805. 34: SEQ temp[3].xy, temp[1].xxxx, const[57].xyzz;
  806. 35: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  807. 36: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  808. 37: ENDIF;
  809. 38: ENDIF;
  810. 39: ELSE;
  811. 40: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  812. 41: IF temp[3].xxxx;
  813. 42: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  814. 43: IF temp[3].xxxx;
  815. 44: MOV temp[2].xy, const[39].xyxx;
  816. 45: SEQ temp[3].xy, temp[1].xxxx, const[58].xyzz;
  817. 46: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  818. 47: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  819. 48: ELSE;
  820. 49: MOV temp[2].xy, const[42].xyxx;
  821. 50: SEQ temp[3].xy, temp[1].xxxx, const[59].xyzz;
  822. 51: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  823. 52: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  824. 53: ENDIF;
  825. 54: ELSE;
  826. 55: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  827. 56: IF temp[3].xxxx;
  828. 57: MOV temp[2].xy, const[45].xyxx;
  829. 58: SEQ temp[3].xy, temp[1].xxxx, const[60].xyzz;
  830. 59: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  831. 60: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  832. 61: ELSE;
  833. 62: MOV temp[2].xy, const[48].xyxx;
  834. 63: SEQ temp[3].xyz, temp[1].xxxx, const[61];
  835. 64: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  836. 65: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  837. 66: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  838. 67: ENDIF;
  839. 68: ENDIF;
  840. 69: ENDIF;
  841. 70: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  842. 71: IF temp[3].xxxx;
  843. 72: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  844. 73: IF temp[3].xxxx;
  845. 74: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  846. 75: IF temp[3].xxxx;
  847. 76: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  848. 77: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  849. 78: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  850. 79: ELSE;
  851. 80: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  852. 81: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  853. 82: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  854. 83: ENDIF;
  855. 84: ELSE;
  856. 85: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  857. 86: IF temp[3].xxxx;
  858. 87: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  859. 88: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  860. 89: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  861. 90: ELSE;
  862. 91: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  863. 92: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  864. 93: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  865. 94: ENDIF;
  866. 95: ENDIF;
  867. 96: ELSE;
  868. 97: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  869. 98: IF temp[3].xxxx;
  870. 99: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  871. 100: IF temp[3].xxxx;
  872. 101: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  873. 102: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  874. 103: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  875. 104: ELSE;
  876. 105: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  877. 106: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  878. 107: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  879. 108: ENDIF;
  880. 109: ELSE;
  881. 110: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  882. 111: IF temp[3].xxxx;
  883. 112: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  884. 113: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  885. 114: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  886. 115: ELSE;
  887. 116: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  888. 117: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  889. 118: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  890. 119: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  891. 120: ENDIF;
  892. 121: ENDIF;
  893. 122: ENDIF;
  894. 123: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  895. 124: TEX temp[2], temp[3].xyyy, 2D[0];
  896. 125: MAD temp[3], temp[2], temp[4], temp[0];
  897. 126: MOV temp[0], temp[3];
  898. 127: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  899. 128: IF temp[2].xxxx;
  900. 129: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  901. 130: IF temp[2].xxxx;
  902. 131: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  903. 132: IF temp[2].xxxx;
  904. 133: MOV temp[2].xy, const[27].xyxx;
  905. 134: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  906. 135: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  907. 136: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  908. 137: ELSE;
  909. 138: MOV temp[2].xy, const[30].xyxx;
  910. 139: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  911. 140: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  912. 141: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  913. 142: ENDIF;
  914. 143: ELSE;
  915. 144: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  916. 145: IF temp[3].xxxx;
  917. 146: MOV temp[2].xy, const[33].xyxx;
  918. 147: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  919. 148: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  920. 149: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  921. 150: ELSE;
  922. 151: MOV temp[2].xy, const[36].xyxx;
  923. 152: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  924. 153: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  925. 154: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  926. 155: ENDIF;
  927. 156: ENDIF;
  928. 157: ELSE;
  929. 158: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  930. 159: IF temp[3].xxxx;
  931. 160: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  932. 161: IF temp[3].xxxx;
  933. 162: MOV temp[2].xy, const[39].xyxx;
  934. 163: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  935. 164: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  936. 165: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  937. 166: ELSE;
  938. 167: MOV temp[2].xy, const[42].xyxx;
  939. 168: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  940. 169: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  941. 170: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  942. 171: ENDIF;
  943. 172: ELSE;
  944. 173: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  945. 174: IF temp[3].xxxx;
  946. 175: MOV temp[2].xy, const[45].xyxx;
  947. 176: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  948. 177: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  949. 178: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  950. 179: ELSE;
  951. 180: MOV temp[2].xy, const[48].xyxx;
  952. 181: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  953. 182: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  954. 183: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  955. 184: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  956. 185: ENDIF;
  957. 186: ENDIF;
  958. 187: ENDIF;
  959. 188: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  960. 189: IF temp[3].xxxx;
  961. 190: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  962. 191: IF temp[3].xxxx;
  963. 192: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  964. 193: IF temp[3].xxxx;
  965. 194: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  966. 195: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  967. 196: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  968. 197: ELSE;
  969. 198: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  970. 199: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  971. 200: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  972. 201: ENDIF;
  973. 202: ELSE;
  974. 203: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  975. 204: IF temp[3].xxxx;
  976. 205: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  977. 206: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  978. 207: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  979. 208: ELSE;
  980. 209: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  981. 210: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  982. 211: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  983. 212: ENDIF;
  984. 213: ENDIF;
  985. 214: ELSE;
  986. 215: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  987. 216: IF temp[3].xxxx;
  988. 217: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  989. 218: IF temp[3].xxxx;
  990. 219: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  991. 220: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  992. 221: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  993. 222: ELSE;
  994. 223: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  995. 224: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  996. 225: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  997. 226: ENDIF;
  998. 227: ELSE;
  999. 228: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1000. 229: IF temp[3].xxxx;
  1001. 230: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1002. 231: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1003. 232: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1004. 233: ELSE;
  1005. 234: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1006. 235: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1007. 236: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1008. 237: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1009. 238: ENDIF;
  1010. 239: ENDIF;
  1011. 240: ENDIF;
  1012. 241: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  1013. 242: TEX temp[2], temp[3].xyyy, 2D[0];
  1014. 243: MAD temp[3], temp[2], temp[4], temp[0];
  1015. 244: MOV temp[0], temp[3];
  1016. 245: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  1017. 246: MOV temp[1].x, temp[2].xxxx;
  1018. 247: ENDLOOP;
  1019. 248: MOV output[0], temp[0];
  1020. Fragment Program: after 'unroll loops'
  1021. # Radeon Compiler Program
  1022. 0: TEX temp[0], input[0].xyyy, 2D[0];
  1023. 1: MUL temp[1], temp[0], const[1];
  1024. 2: MOV temp[0], temp[1];
  1025. 3: MOV temp[1].x, const[53].xxxx;
  1026. 4: BGNLOOP;
  1027. 5: SGE temp[2].x, temp[1].xxxx, const[0].xxxx;
  1028. 6: IF temp[2].xxxx;
  1029. 7: BRK;
  1030. 8: ENDIF;
  1031. 9: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  1032. 10: IF temp[2].xxxx;
  1033. 11: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  1034. 12: IF temp[2].xxxx;
  1035. 13: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  1036. 14: IF temp[2].xxxx;
  1037. 15: MOV temp[2].xy, const[27].xyxx;
  1038. 16: SEQ temp[3].xy, temp[1].xxxx, const[54];
  1039. 17: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1040. 18: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1041. 19: ELSE;
  1042. 20: MOV temp[2].xy, const[30].xyxx;
  1043. 21: SEQ temp[3].xy, temp[1].xxxx, const[55];
  1044. 22: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1045. 23: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1046. 24: ENDIF;
  1047. 25: ELSE;
  1048. 26: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1049. 27: IF temp[3].xxxx;
  1050. 28: MOV temp[2].xy, const[33].xyxx;
  1051. 29: SEQ temp[3].xy, temp[1].xxxx, const[56].xyzz;
  1052. 30: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1053. 31: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1054. 32: ELSE;
  1055. 33: MOV temp[2].xy, const[36].xyxx;
  1056. 34: SEQ temp[3].xy, temp[1].xxxx, const[57].xyzz;
  1057. 35: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1058. 36: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1059. 37: ENDIF;
  1060. 38: ENDIF;
  1061. 39: ELSE;
  1062. 40: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1063. 41: IF temp[3].xxxx;
  1064. 42: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1065. 43: IF temp[3].xxxx;
  1066. 44: MOV temp[2].xy, const[39].xyxx;
  1067. 45: SEQ temp[3].xy, temp[1].xxxx, const[58].xyzz;
  1068. 46: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1069. 47: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1070. 48: ELSE;
  1071. 49: MOV temp[2].xy, const[42].xyxx;
  1072. 50: SEQ temp[3].xy, temp[1].xxxx, const[59].xyzz;
  1073. 51: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1074. 52: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1075. 53: ENDIF;
  1076. 54: ELSE;
  1077. 55: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1078. 56: IF temp[3].xxxx;
  1079. 57: MOV temp[2].xy, const[45].xyxx;
  1080. 58: SEQ temp[3].xy, temp[1].xxxx, const[60].xyzz;
  1081. 59: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1082. 60: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1083. 61: ELSE;
  1084. 62: MOV temp[2].xy, const[48].xyxx;
  1085. 63: SEQ temp[3].xyz, temp[1].xxxx, const[61];
  1086. 64: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1087. 65: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1088. 66: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1089. 67: ENDIF;
  1090. 68: ENDIF;
  1091. 69: ENDIF;
  1092. 70: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  1093. 71: IF temp[3].xxxx;
  1094. 72: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  1095. 73: IF temp[3].xxxx;
  1096. 74: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  1097. 75: IF temp[3].xxxx;
  1098. 76: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1099. 77: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1100. 78: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1101. 79: ELSE;
  1102. 80: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1103. 81: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1104. 82: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1105. 83: ENDIF;
  1106. 84: ELSE;
  1107. 85: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1108. 86: IF temp[3].xxxx;
  1109. 87: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1110. 88: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1111. 89: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1112. 90: ELSE;
  1113. 91: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1114. 92: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1115. 93: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1116. 94: ENDIF;
  1117. 95: ENDIF;
  1118. 96: ELSE;
  1119. 97: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1120. 98: IF temp[3].xxxx;
  1121. 99: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1122. 100: IF temp[3].xxxx;
  1123. 101: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1124. 102: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1125. 103: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1126. 104: ELSE;
  1127. 105: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1128. 106: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1129. 107: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1130. 108: ENDIF;
  1131. 109: ELSE;
  1132. 110: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1133. 111: IF temp[3].xxxx;
  1134. 112: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1135. 113: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1136. 114: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1137. 115: ELSE;
  1138. 116: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1139. 117: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1140. 118: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1141. 119: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1142. 120: ENDIF;
  1143. 121: ENDIF;
  1144. 122: ENDIF;
  1145. 123: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  1146. 124: TEX temp[2], temp[3].xyyy, 2D[0];
  1147. 125: MAD temp[3], temp[2], temp[4], temp[0];
  1148. 126: MOV temp[0], temp[3];
  1149. 127: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  1150. 128: IF temp[2].xxxx;
  1151. 129: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  1152. 130: IF temp[2].xxxx;
  1153. 131: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  1154. 132: IF temp[2].xxxx;
  1155. 133: MOV temp[2].xy, const[27].xyxx;
  1156. 134: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1157. 135: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1158. 136: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1159. 137: ELSE;
  1160. 138: MOV temp[2].xy, const[30].xyxx;
  1161. 139: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1162. 140: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1163. 141: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1164. 142: ENDIF;
  1165. 143: ELSE;
  1166. 144: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1167. 145: IF temp[3].xxxx;
  1168. 146: MOV temp[2].xy, const[33].xyxx;
  1169. 147: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1170. 148: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1171. 149: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1172. 150: ELSE;
  1173. 151: MOV temp[2].xy, const[36].xyxx;
  1174. 152: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1175. 153: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1176. 154: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1177. 155: ENDIF;
  1178. 156: ENDIF;
  1179. 157: ELSE;
  1180. 158: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1181. 159: IF temp[3].xxxx;
  1182. 160: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1183. 161: IF temp[3].xxxx;
  1184. 162: MOV temp[2].xy, const[39].xyxx;
  1185. 163: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1186. 164: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1187. 165: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1188. 166: ELSE;
  1189. 167: MOV temp[2].xy, const[42].xyxx;
  1190. 168: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1191. 169: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1192. 170: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1193. 171: ENDIF;
  1194. 172: ELSE;
  1195. 173: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1196. 174: IF temp[3].xxxx;
  1197. 175: MOV temp[2].xy, const[45].xyxx;
  1198. 176: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1199. 177: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1200. 178: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1201. 179: ELSE;
  1202. 180: MOV temp[2].xy, const[48].xyxx;
  1203. 181: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1204. 182: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1205. 183: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1206. 184: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1207. 185: ENDIF;
  1208. 186: ENDIF;
  1209. 187: ENDIF;
  1210. 188: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  1211. 189: IF temp[3].xxxx;
  1212. 190: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  1213. 191: IF temp[3].xxxx;
  1214. 192: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  1215. 193: IF temp[3].xxxx;
  1216. 194: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1217. 195: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1218. 196: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1219. 197: ELSE;
  1220. 198: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1221. 199: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1222. 200: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1223. 201: ENDIF;
  1224. 202: ELSE;
  1225. 203: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1226. 204: IF temp[3].xxxx;
  1227. 205: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1228. 206: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1229. 207: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1230. 208: ELSE;
  1231. 209: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1232. 210: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1233. 211: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1234. 212: ENDIF;
  1235. 213: ENDIF;
  1236. 214: ELSE;
  1237. 215: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1238. 216: IF temp[3].xxxx;
  1239. 217: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1240. 218: IF temp[3].xxxx;
  1241. 219: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1242. 220: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1243. 221: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1244. 222: ELSE;
  1245. 223: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1246. 224: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1247. 225: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1248. 226: ENDIF;
  1249. 227: ELSE;
  1250. 228: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1251. 229: IF temp[3].xxxx;
  1252. 230: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1253. 231: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1254. 232: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1255. 233: ELSE;
  1256. 234: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1257. 235: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1258. 236: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1259. 237: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1260. 238: ENDIF;
  1261. 239: ENDIF;
  1262. 240: ENDIF;
  1263. 241: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  1264. 242: TEX temp[2], temp[3].xyyy, 2D[0];
  1265. 243: MAD temp[3], temp[2], temp[4], temp[0];
  1266. 244: MOV temp[0], temp[3];
  1267. 245: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  1268. 246: MOV temp[1].x, temp[2].xxxx;
  1269. 247: ENDLOOP;
  1270. 248: MOV output[0], temp[0];
  1271. Fragment Program: after 'transform TEX'
  1272. # Radeon Compiler Program
  1273. 0: TEX temp[0], input[0].xyyy, 2D[0];
  1274. 1: MUL temp[1], temp[0], const[1];
  1275. 2: MOV temp[0], temp[1];
  1276. 3: MOV temp[1].x, const[53].xxxx;
  1277. 4: BGNLOOP;
  1278. 5: SGE temp[2].x, temp[1].xxxx, const[0].xxxx;
  1279. 6: IF temp[2].xxxx;
  1280. 7: BRK;
  1281. 8: ENDIF;
  1282. 9: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  1283. 10: IF temp[2].xxxx;
  1284. 11: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  1285. 12: IF temp[2].xxxx;
  1286. 13: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  1287. 14: IF temp[2].xxxx;
  1288. 15: MOV temp[2].xy, const[27].xyxx;
  1289. 16: SEQ temp[3].xy, temp[1].xxxx, const[54];
  1290. 17: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1291. 18: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1292. 19: ELSE;
  1293. 20: MOV temp[2].xy, const[30].xyxx;
  1294. 21: SEQ temp[3].xy, temp[1].xxxx, const[55];
  1295. 22: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1296. 23: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1297. 24: ENDIF;
  1298. 25: ELSE;
  1299. 26: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1300. 27: IF temp[3].xxxx;
  1301. 28: MOV temp[2].xy, const[33].xyxx;
  1302. 29: SEQ temp[3].xy, temp[1].xxxx, const[56].xyzz;
  1303. 30: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1304. 31: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1305. 32: ELSE;
  1306. 33: MOV temp[2].xy, const[36].xyxx;
  1307. 34: SEQ temp[3].xy, temp[1].xxxx, const[57].xyzz;
  1308. 35: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1309. 36: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1310. 37: ENDIF;
  1311. 38: ENDIF;
  1312. 39: ELSE;
  1313. 40: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1314. 41: IF temp[3].xxxx;
  1315. 42: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1316. 43: IF temp[3].xxxx;
  1317. 44: MOV temp[2].xy, const[39].xyxx;
  1318. 45: SEQ temp[3].xy, temp[1].xxxx, const[58].xyzz;
  1319. 46: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1320. 47: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1321. 48: ELSE;
  1322. 49: MOV temp[2].xy, const[42].xyxx;
  1323. 50: SEQ temp[3].xy, temp[1].xxxx, const[59].xyzz;
  1324. 51: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1325. 52: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1326. 53: ENDIF;
  1327. 54: ELSE;
  1328. 55: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1329. 56: IF temp[3].xxxx;
  1330. 57: MOV temp[2].xy, const[45].xyxx;
  1331. 58: SEQ temp[3].xy, temp[1].xxxx, const[60].xyzz;
  1332. 59: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1333. 60: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1334. 61: ELSE;
  1335. 62: MOV temp[2].xy, const[48].xyxx;
  1336. 63: SEQ temp[3].xyz, temp[1].xxxx, const[61];
  1337. 64: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1338. 65: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1339. 66: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1340. 67: ENDIF;
  1341. 68: ENDIF;
  1342. 69: ENDIF;
  1343. 70: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  1344. 71: IF temp[3].xxxx;
  1345. 72: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  1346. 73: IF temp[3].xxxx;
  1347. 74: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  1348. 75: IF temp[3].xxxx;
  1349. 76: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1350. 77: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1351. 78: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1352. 79: ELSE;
  1353. 80: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1354. 81: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1355. 82: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1356. 83: ENDIF;
  1357. 84: ELSE;
  1358. 85: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1359. 86: IF temp[3].xxxx;
  1360. 87: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1361. 88: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1362. 89: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1363. 90: ELSE;
  1364. 91: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1365. 92: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1366. 93: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1367. 94: ENDIF;
  1368. 95: ENDIF;
  1369. 96: ELSE;
  1370. 97: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1371. 98: IF temp[3].xxxx;
  1372. 99: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1373. 100: IF temp[3].xxxx;
  1374. 101: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1375. 102: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1376. 103: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1377. 104: ELSE;
  1378. 105: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1379. 106: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1380. 107: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1381. 108: ENDIF;
  1382. 109: ELSE;
  1383. 110: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1384. 111: IF temp[3].xxxx;
  1385. 112: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1386. 113: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1387. 114: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1388. 115: ELSE;
  1389. 116: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1390. 117: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1391. 118: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1392. 119: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1393. 120: ENDIF;
  1394. 121: ENDIF;
  1395. 122: ENDIF;
  1396. 123: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  1397. 124: TEX temp[2], temp[3].xyyy, 2D[0];
  1398. 125: MAD temp[3], temp[2], temp[4], temp[0];
  1399. 126: MOV temp[0], temp[3];
  1400. 127: SLT temp[2].x, temp[1].xxxx, const[53].yyyy;
  1401. 128: IF temp[2].xxxx;
  1402. 129: SLT temp[2].x, temp[1].xxxx, const[53].zzzz;
  1403. 130: IF temp[2].xxxx;
  1404. 131: SLT temp[2].x, temp[1].xxxx, const[53].wwww;
  1405. 132: IF temp[2].xxxx;
  1406. 133: MOV temp[2].xy, const[27].xyxx;
  1407. 134: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1408. 135: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1409. 136: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1410. 137: ELSE;
  1411. 138: MOV temp[2].xy, const[30].xyxx;
  1412. 139: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1413. 140: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1414. 141: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1415. 142: ENDIF;
  1416. 143: ELSE;
  1417. 144: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1418. 145: IF temp[3].xxxx;
  1419. 146: MOV temp[2].xy, const[33].xyxx;
  1420. 147: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1421. 148: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1422. 149: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1423. 150: ELSE;
  1424. 151: MOV temp[2].xy, const[36].xyxx;
  1425. 152: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1426. 153: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1427. 154: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1428. 155: ENDIF;
  1429. 156: ENDIF;
  1430. 157: ELSE;
  1431. 158: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1432. 159: IF temp[3].xxxx;
  1433. 160: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1434. 161: IF temp[3].xxxx;
  1435. 162: MOV temp[2].xy, const[39].xyxx;
  1436. 163: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1437. 164: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1438. 165: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1439. 166: ELSE;
  1440. 167: MOV temp[2].xy, const[42].xyxx;
  1441. 168: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1442. 169: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1443. 170: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1444. 171: ENDIF;
  1445. 172: ELSE;
  1446. 173: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1447. 174: IF temp[3].xxxx;
  1448. 175: MOV temp[2].xy, const[45].xyxx;
  1449. 176: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1450. 177: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1451. 178: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1452. 179: ELSE;
  1453. 180: MOV temp[2].xy, const[48].xyxx;
  1454. 181: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1455. 182: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1456. 183: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1457. 184: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1458. 185: ENDIF;
  1459. 186: ENDIF;
  1460. 187: ENDIF;
  1461. 188: SLT temp[3].x, temp[1].xxxx, const[53].yyyy;
  1462. 189: IF temp[3].xxxx;
  1463. 190: SLT temp[3].x, temp[1].xxxx, const[53].zzzz;
  1464. 191: IF temp[3].xxxx;
  1465. 192: SLT temp[3].x, temp[1].xxxx, const[53].wwww;
  1466. 193: IF temp[3].xxxx;
  1467. 194: SEQ temp[3].xy, temp[1].xxxx, const[54].xyyy;
  1468. 195: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1469. 196: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1470. 197: ELSE;
  1471. 198: SEQ temp[3].xy, temp[1].xxxx, const[55].xyyy;
  1472. 199: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1473. 200: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1474. 201: ENDIF;
  1475. 202: ELSE;
  1476. 203: SLT temp[3].x, temp[1].xxxx, const[54].zzzz;
  1477. 204: IF temp[3].xxxx;
  1478. 205: SEQ temp[3].xy, temp[1].xxxx, const[56].xyyy;
  1479. 206: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1480. 207: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1481. 208: ELSE;
  1482. 209: SEQ temp[3].xy, temp[1].xxxx, const[57].xyyy;
  1483. 210: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1484. 211: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1485. 212: ENDIF;
  1486. 213: ENDIF;
  1487. 214: ELSE;
  1488. 215: SLT temp[3].x, temp[1].xxxx, const[54].wwww;
  1489. 216: IF temp[3].xxxx;
  1490. 217: SLT temp[3].x, temp[1].xxxx, const[55].zzzz;
  1491. 218: IF temp[3].xxxx;
  1492. 219: SEQ temp[3].xy, temp[1].xxxx, const[58].xyyy;
  1493. 220: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1494. 221: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1495. 222: ELSE;
  1496. 223: SEQ temp[3].xy, temp[1].xxxx, const[59].xyyy;
  1497. 224: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1498. 225: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1499. 226: ENDIF;
  1500. 227: ELSE;
  1501. 228: SLT temp[3].x, temp[1].xxxx, const[55].wwww;
  1502. 229: IF temp[3].xxxx;
  1503. 230: SEQ temp[3].xy, temp[1].xxxx, const[60].xyyy;
  1504. 231: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1505. 232: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1506. 233: ELSE;
  1507. 234: SEQ temp[3].xyz, temp[1].xxxx, const[61].xyzz;
  1508. 235: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1509. 236: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1510. 237: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1511. 238: ENDIF;
  1512. 239: ENDIF;
  1513. 240: ENDIF;
  1514. 241: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  1515. 242: TEX temp[2], temp[3].xyyy, 2D[0];
  1516. 243: MAD temp[3], temp[2], temp[4], temp[0];
  1517. 244: MOV temp[0], temp[3];
  1518. 245: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  1519. 246: MOV temp[1].x, temp[2].xxxx;
  1520. 247: ENDLOOP;
  1521. 248: MOV output[0], temp[0];
  1522. Fragment Program: after 'native rewrite'
  1523. # Radeon Compiler Program
  1524. 0: TEX temp[0], input[0].xyyy, 2D[0];
  1525. 1: MUL temp[1], temp[0], const[1];
  1526. 2: MOV temp[0], temp[1];
  1527. 3: MOV temp[1].x, const[53].xxxx;
  1528. 4: BGNLOOP;
  1529. 5: ADD temp[2].x, temp[1].xxxx, -const[0].xxxx;
  1530. 6: CMP temp[2].x, temp[2], none.0000, none.1111;
  1531. 7: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1532. 8: IF aluresult;
  1533. 9: BRK;
  1534. 10: ENDIF;
  1535. 11: ADD temp[2].x, temp[1].xxxx, -const[53].yyyy;
  1536. 12: CMP temp[2].x, temp[2], none.1111, none.0000;
  1537. 13: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1538. 14: IF aluresult;
  1539. 15: ADD temp[2].x, temp[1].xxxx, -const[53].zzzz;
  1540. 16: CMP temp[2].x, temp[2], none.1111, none.0000;
  1541. 17: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1542. 18: IF aluresult;
  1543. 19: ADD temp[2].x, temp[1].xxxx, -const[53].wwww;
  1544. 20: CMP temp[2].x, temp[2], none.1111, none.0000;
  1545. 21: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1546. 22: IF aluresult;
  1547. 23: MOV temp[2].xy, const[27].xyxx;
  1548. 24: ADD temp[3].xy, temp[1].xxxx, -const[54];
  1549. 25: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1550. 26: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1551. 27: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1552. 28: ELSE;
  1553. 29: MOV temp[2].xy, const[30].xyxx;
  1554. 30: ADD temp[3].xy, temp[1].xxxx, -const[55];
  1555. 31: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1556. 32: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1557. 33: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1558. 34: ENDIF;
  1559. 35: ELSE;
  1560. 36: ADD temp[3].x, temp[1].xxxx, -const[54].zzzz;
  1561. 37: CMP temp[3].x, temp[3], none.1111, none.0000;
  1562. 38: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1563. 39: IF aluresult;
  1564. 40: MOV temp[2].xy, const[33].xyxx;
  1565. 41: ADD temp[3].xy, temp[1].xxxx, -const[56].xyzz;
  1566. 42: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1567. 43: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1568. 44: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1569. 45: ELSE;
  1570. 46: MOV temp[2].xy, const[36].xyxx;
  1571. 47: ADD temp[3].xy, temp[1].xxxx, -const[57].xyzz;
  1572. 48: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1573. 49: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1574. 50: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1575. 51: ENDIF;
  1576. 52: ENDIF;
  1577. 53: ELSE;
  1578. 54: ADD temp[3].x, temp[1].xxxx, -const[54].wwww;
  1579. 55: CMP temp[3].x, temp[3], none.1111, none.0000;
  1580. 56: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1581. 57: IF aluresult;
  1582. 58: ADD temp[3].x, temp[1].xxxx, -const[55].zzzz;
  1583. 59: CMP temp[3].x, temp[3], none.1111, none.0000;
  1584. 60: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1585. 61: IF aluresult;
  1586. 62: MOV temp[2].xy, const[39].xyxx;
  1587. 63: ADD temp[3].xy, temp[1].xxxx, -const[58].xyzz;
  1588. 64: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1589. 65: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1590. 66: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1591. 67: ELSE;
  1592. 68: MOV temp[2].xy, const[42].xyxx;
  1593. 69: ADD temp[3].xy, temp[1].xxxx, -const[59].xyzz;
  1594. 70: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1595. 71: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1596. 72: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1597. 73: ENDIF;
  1598. 74: ELSE;
  1599. 75: ADD temp[3].x, temp[1].xxxx, -const[55].wwww;
  1600. 76: CMP temp[3].x, temp[3], none.1111, none.0000;
  1601. 77: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1602. 78: IF aluresult;
  1603. 79: MOV temp[2].xy, const[45].xyxx;
  1604. 80: ADD temp[3].xy, temp[1].xxxx, -const[60].xyzz;
  1605. 81: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1606. 82: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1607. 83: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1608. 84: ELSE;
  1609. 85: MOV temp[2].xy, const[48].xyxx;
  1610. 86: ADD temp[3].xyz, temp[1].xxxx, -const[61];
  1611. 87: CMP temp[3].xyz, -|temp[3]|, none.0000, none.1111;
  1612. 88: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1613. 89: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1614. 90: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1615. 91: ENDIF;
  1616. 92: ENDIF;
  1617. 93: ENDIF;
  1618. 94: ADD temp[3].x, temp[1].xxxx, -const[53].yyyy;
  1619. 95: CMP temp[3].x, temp[3], none.1111, none.0000;
  1620. 96: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1621. 97: IF aluresult;
  1622. 98: ADD temp[3].x, temp[1].xxxx, -const[53].zzzz;
  1623. 99: CMP temp[3].x, temp[3], none.1111, none.0000;
  1624. 100: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1625. 101: IF aluresult;
  1626. 102: ADD temp[3].x, temp[1].xxxx, -const[53].wwww;
  1627. 103: CMP temp[3].x, temp[3], none.1111, none.0000;
  1628. 104: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1629. 105: IF aluresult;
  1630. 106: ADD temp[3].xy, temp[1].xxxx, -const[54].xyyy;
  1631. 107: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1632. 108: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1633. 109: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1634. 110: ELSE;
  1635. 111: ADD temp[3].xy, temp[1].xxxx, -const[55].xyyy;
  1636. 112: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1637. 113: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1638. 114: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1639. 115: ENDIF;
  1640. 116: ELSE;
  1641. 117: ADD temp[3].x, temp[1].xxxx, -const[54].zzzz;
  1642. 118: CMP temp[3].x, temp[3], none.1111, none.0000;
  1643. 119: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1644. 120: IF aluresult;
  1645. 121: ADD temp[3].xy, temp[1].xxxx, -const[56].xyyy;
  1646. 122: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1647. 123: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1648. 124: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1649. 125: ELSE;
  1650. 126: ADD temp[3].xy, temp[1].xxxx, -const[57].xyyy;
  1651. 127: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1652. 128: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1653. 129: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1654. 130: ENDIF;
  1655. 131: ENDIF;
  1656. 132: ELSE;
  1657. 133: ADD temp[3].x, temp[1].xxxx, -const[54].wwww;
  1658. 134: CMP temp[3].x, temp[3], none.1111, none.0000;
  1659. 135: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1660. 136: IF aluresult;
  1661. 137: ADD temp[3].x, temp[1].xxxx, -const[55].zzzz;
  1662. 138: CMP temp[3].x, temp[3], none.1111, none.0000;
  1663. 139: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1664. 140: IF aluresult;
  1665. 141: ADD temp[3].xy, temp[1].xxxx, -const[58].xyyy;
  1666. 142: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1667. 143: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1668. 144: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1669. 145: ELSE;
  1670. 146: ADD temp[3].xy, temp[1].xxxx, -const[59].xyyy;
  1671. 147: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1672. 148: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1673. 149: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1674. 150: ENDIF;
  1675. 151: ELSE;
  1676. 152: ADD temp[3].x, temp[1].xxxx, -const[55].wwww;
  1677. 153: CMP temp[3].x, temp[3], none.1111, none.0000;
  1678. 154: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1679. 155: IF aluresult;
  1680. 156: ADD temp[3].xy, temp[1].xxxx, -const[60].xyyy;
  1681. 157: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1682. 158: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1683. 159: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1684. 160: ELSE;
  1685. 161: ADD temp[3].xyz, temp[1].xxxx, -const[61].xyzz;
  1686. 162: CMP temp[3].xyz, -|temp[3]|, none.0000, none.1111;
  1687. 163: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1688. 164: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1689. 165: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1690. 166: ENDIF;
  1691. 167: ENDIF;
  1692. 168: ENDIF;
  1693. 169: ADD temp[3].xy, input[0].xyyy, -temp[2].xyyy;
  1694. 170: TEX temp[2], temp[3].xyyy, 2D[0];
  1695. 171: MAD temp[3], temp[2], temp[4], temp[0];
  1696. 172: MOV temp[0], temp[3];
  1697. 173: ADD temp[2].x, temp[1].xxxx, -const[53].yyyy;
  1698. 174: CMP temp[2].x, temp[2], none.1111, none.0000;
  1699. 175: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1700. 176: IF aluresult;
  1701. 177: ADD temp[2].x, temp[1].xxxx, -const[53].zzzz;
  1702. 178: CMP temp[2].x, temp[2], none.1111, none.0000;
  1703. 179: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1704. 180: IF aluresult;
  1705. 181: ADD temp[2].x, temp[1].xxxx, -const[53].wwww;
  1706. 182: CMP temp[2].x, temp[2], none.1111, none.0000;
  1707. 183: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1708. 184: IF aluresult;
  1709. 185: MOV temp[2].xy, const[27].xyxx;
  1710. 186: ADD temp[3].xy, temp[1].xxxx, -const[54].xyyy;
  1711. 187: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1712. 188: CMP temp[2].xy, -temp[3].xxxx, const[28].xyxx, temp[2];
  1713. 189: CMP temp[2].xy, -temp[3].yyyy, const[29].xyxx, temp[2];
  1714. 190: ELSE;
  1715. 191: MOV temp[2].xy, const[30].xyxx;
  1716. 192: ADD temp[3].xy, temp[1].xxxx, -const[55].xyyy;
  1717. 193: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1718. 194: CMP temp[2].xy, -temp[3].xxxx, const[31].xyxx, temp[2];
  1719. 195: CMP temp[2].xy, -temp[3].yyyy, const[32].xyxx, temp[2];
  1720. 196: ENDIF;
  1721. 197: ELSE;
  1722. 198: ADD temp[3].x, temp[1].xxxx, -const[54].zzzz;
  1723. 199: CMP temp[3].x, temp[3], none.1111, none.0000;
  1724. 200: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1725. 201: IF aluresult;
  1726. 202: MOV temp[2].xy, const[33].xyxx;
  1727. 203: ADD temp[3].xy, temp[1].xxxx, -const[56].xyyy;
  1728. 204: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1729. 205: CMP temp[2].xy, -temp[3].xxxx, const[34].xyxx, temp[2];
  1730. 206: CMP temp[2].xy, -temp[3].yyyy, const[35].xyxx, temp[2];
  1731. 207: ELSE;
  1732. 208: MOV temp[2].xy, const[36].xyxx;
  1733. 209: ADD temp[3].xy, temp[1].xxxx, -const[57].xyyy;
  1734. 210: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1735. 211: CMP temp[2].xy, -temp[3].xxxx, const[37].xyxx, temp[2];
  1736. 212: CMP temp[2].xy, -temp[3].yyyy, const[38].xyxx, temp[2];
  1737. 213: ENDIF;
  1738. 214: ENDIF;
  1739. 215: ELSE;
  1740. 216: ADD temp[3].x, temp[1].xxxx, -const[54].wwww;
  1741. 217: CMP temp[3].x, temp[3], none.1111, none.0000;
  1742. 218: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1743. 219: IF aluresult;
  1744. 220: ADD temp[3].x, temp[1].xxxx, -const[55].zzzz;
  1745. 221: CMP temp[3].x, temp[3], none.1111, none.0000;
  1746. 222: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1747. 223: IF aluresult;
  1748. 224: MOV temp[2].xy, const[39].xyxx;
  1749. 225: ADD temp[3].xy, temp[1].xxxx, -const[58].xyyy;
  1750. 226: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1751. 227: CMP temp[2].xy, -temp[3].xxxx, const[40].xyxx, temp[2];
  1752. 228: CMP temp[2].xy, -temp[3].yyyy, const[41].xyxx, temp[2];
  1753. 229: ELSE;
  1754. 230: MOV temp[2].xy, const[42].xyxx;
  1755. 231: ADD temp[3].xy, temp[1].xxxx, -const[59].xyyy;
  1756. 232: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1757. 233: CMP temp[2].xy, -temp[3].xxxx, const[43].xyxx, temp[2];
  1758. 234: CMP temp[2].xy, -temp[3].yyyy, const[44].xyxx, temp[2];
  1759. 235: ENDIF;
  1760. 236: ELSE;
  1761. 237: ADD temp[3].x, temp[1].xxxx, -const[55].wwww;
  1762. 238: CMP temp[3].x, temp[3], none.1111, none.0000;
  1763. 239: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1764. 240: IF aluresult;
  1765. 241: MOV temp[2].xy, const[45].xyxx;
  1766. 242: ADD temp[3].xy, temp[1].xxxx, -const[60].xyyy;
  1767. 243: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1768. 244: CMP temp[2].xy, -temp[3].xxxx, const[46].xyxx, temp[2];
  1769. 245: CMP temp[2].xy, -temp[3].yyyy, const[47].xyxx, temp[2];
  1770. 246: ELSE;
  1771. 247: MOV temp[2].xy, const[48].xyxx;
  1772. 248: ADD temp[3].xyz, temp[1].xxxx, -const[61].xyzz;
  1773. 249: CMP temp[3].xyz, -|temp[3]|, none.0000, none.1111;
  1774. 250: CMP temp[2].xy, -temp[3].xxxx, const[49].xyxx, temp[2];
  1775. 251: CMP temp[2].xy, -temp[3].yyyy, const[50].xyxx, temp[2];
  1776. 252: CMP temp[2].xy, -temp[3].zzzz, const[51].xyxx, temp[2];
  1777. 253: ENDIF;
  1778. 254: ENDIF;
  1779. 255: ENDIF;
  1780. 256: ADD temp[3].x, temp[1].xxxx, -const[53].yyyy;
  1781. 257: CMP temp[3].x, temp[3], none.1111, none.0000;
  1782. 258: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1783. 259: IF aluresult;
  1784. 260: ADD temp[3].x, temp[1].xxxx, -const[53].zzzz;
  1785. 261: CMP temp[3].x, temp[3], none.1111, none.0000;
  1786. 262: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1787. 263: IF aluresult;
  1788. 264: ADD temp[3].x, temp[1].xxxx, -const[53].wwww;
  1789. 265: CMP temp[3].x, temp[3], none.1111, none.0000;
  1790. 266: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1791. 267: IF aluresult;
  1792. 268: ADD temp[3].xy, temp[1].xxxx, -const[54].xyyy;
  1793. 269: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1794. 270: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1795. 271: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1796. 272: ELSE;
  1797. 273: ADD temp[3].xy, temp[1].xxxx, -const[55].xyyy;
  1798. 274: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1799. 275: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1800. 276: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1801. 277: ENDIF;
  1802. 278: ELSE;
  1803. 279: ADD temp[3].x, temp[1].xxxx, -const[54].zzzz;
  1804. 280: CMP temp[3].x, temp[3], none.1111, none.0000;
  1805. 281: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1806. 282: IF aluresult;
  1807. 283: ADD temp[3].xy, temp[1].xxxx, -const[56].xyyy;
  1808. 284: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1809. 285: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1810. 286: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1811. 287: ELSE;
  1812. 288: ADD temp[3].xy, temp[1].xxxx, -const[57].xyyy;
  1813. 289: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1814. 290: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1815. 291: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1816. 292: ENDIF;
  1817. 293: ENDIF;
  1818. 294: ELSE;
  1819. 295: ADD temp[3].x, temp[1].xxxx, -const[54].wwww;
  1820. 296: CMP temp[3].x, temp[3], none.1111, none.0000;
  1821. 297: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1822. 298: IF aluresult;
  1823. 299: ADD temp[3].x, temp[1].xxxx, -const[55].zzzz;
  1824. 300: CMP temp[3].x, temp[3], none.1111, none.0000;
  1825. 301: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1826. 302: IF aluresult;
  1827. 303: ADD temp[3].xy, temp[1].xxxx, -const[58].xyyy;
  1828. 304: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1829. 305: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  1830. 306: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  1831. 307: ELSE;
  1832. 308: ADD temp[3].xy, temp[1].xxxx, -const[59].xyyy;
  1833. 309: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1834. 310: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  1835. 311: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  1836. 312: ENDIF;
  1837. 313: ELSE;
  1838. 314: ADD temp[3].x, temp[1].xxxx, -const[55].wwww;
  1839. 315: CMP temp[3].x, temp[3], none.1111, none.0000;
  1840. 316: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1841. 317: IF aluresult;
  1842. 318: ADD temp[3].xy, temp[1].xxxx, -const[60].xyyy;
  1843. 319: CMP temp[3].xy, -|temp[3]|, none.0000, none.1111;
  1844. 320: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  1845. 321: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  1846. 322: ELSE;
  1847. 323: ADD temp[3].xyz, temp[1].xxxx, -const[61].xyzz;
  1848. 324: CMP temp[3].xyz, -|temp[3]|, none.0000, none.1111;
  1849. 325: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  1850. 326: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  1851. 327: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  1852. 328: ENDIF;
  1853. 329: ENDIF;
  1854. 330: ENDIF;
  1855. 331: ADD temp[3].xy, input[0].xyyy, temp[2].xyyy;
  1856. 332: TEX temp[2], temp[3].xyyy, 2D[0];
  1857. 333: MAD temp[3], temp[2], temp[4], temp[0];
  1858. 334: MOV temp[0], temp[3];
  1859. 335: ADD temp[2].x, temp[1].xxxx, const[53].xxxx;
  1860. 336: MOV temp[1].x, temp[2].xxxx;
  1861. 337: ENDLOOP;
  1862. 338: MOV output[0], temp[0];
  1863. Fragment Program: after 'deadcode'
  1864. # Radeon Compiler Program
  1865. 0: TEX temp[0], input[0].xy__, 2D[0];
  1866. 1: MUL temp[1], temp[0], const[1];
  1867. 2: MOV temp[0], temp[1];
  1868. 3: MOV temp[1].x, const[53].x___;
  1869. 4: BGNLOOP;
  1870. 5: ADD temp[2].x, temp[1].x___, -const[0].x___;
  1871. 6: CMP temp[2].x, temp[2].x___, none.0___, none.1___;
  1872. 7: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1873. 8: IF aluresult.x___;
  1874. 9: BRK;
  1875. 10: ENDIF;
  1876. 11: ADD temp[2].x, temp[1].x___, -const[53].y___;
  1877. 12: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  1878. 13: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1879. 14: IF aluresult.x___;
  1880. 15: ADD temp[2].x, temp[1].x___, -const[53].z___;
  1881. 16: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  1882. 17: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1883. 18: IF aluresult.x___;
  1884. 19: ADD temp[2].x, temp[1].x___, -const[53].w___;
  1885. 20: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  1886. 21: MOV none., temp[2].___x; [aluresult = (w != 0)]
  1887. 22: IF aluresult.x___;
  1888. 23: MOV temp[2].xy, const[27].xy__;
  1889. 24: ADD temp[3].xy, temp[1].xx__, -const[54].xy__;
  1890. 25: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1891. 26: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, temp[2].xy__;
  1892. 27: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  1893. 28: ELSE;
  1894. 29: MOV temp[2].xy, const[30].xy__;
  1895. 30: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  1896. 31: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1897. 32: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, temp[2].xy__;
  1898. 33: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  1899. 34: ENDIF;
  1900. 35: ELSE;
  1901. 36: ADD temp[3].x, temp[1].x___, -const[54].z___;
  1902. 37: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1903. 38: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1904. 39: IF aluresult.x___;
  1905. 40: MOV temp[2].xy, const[33].xy__;
  1906. 41: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  1907. 42: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1908. 43: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, temp[2].xy__;
  1909. 44: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  1910. 45: ELSE;
  1911. 46: MOV temp[2].xy, const[36].xy__;
  1912. 47: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  1913. 48: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1914. 49: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, temp[2].xy__;
  1915. 50: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  1916. 51: ENDIF;
  1917. 52: ENDIF;
  1918. 53: ELSE;
  1919. 54: ADD temp[3].x, temp[1].x___, -const[54].w___;
  1920. 55: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1921. 56: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1922. 57: IF aluresult.x___;
  1923. 58: ADD temp[3].x, temp[1].x___, -const[55].z___;
  1924. 59: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1925. 60: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1926. 61: IF aluresult.x___;
  1927. 62: MOV temp[2].xy, const[39].xy__;
  1928. 63: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  1929. 64: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1930. 65: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, temp[2].xy__;
  1931. 66: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  1932. 67: ELSE;
  1933. 68: MOV temp[2].xy, const[42].xy__;
  1934. 69: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  1935. 70: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1936. 71: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, temp[2].xy__;
  1937. 72: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  1938. 73: ENDIF;
  1939. 74: ELSE;
  1940. 75: ADD temp[3].x, temp[1].x___, -const[55].w___;
  1941. 76: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1942. 77: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1943. 78: IF aluresult.x___;
  1944. 79: MOV temp[2].xy, const[45].xy__;
  1945. 80: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  1946. 81: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1947. 82: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, temp[2].xy__;
  1948. 83: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  1949. 84: ELSE;
  1950. 85: MOV temp[2].xy, const[48].xy__;
  1951. 86: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  1952. 87: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  1953. 88: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, temp[2].xy__;
  1954. 89: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  1955. 90: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  1956. 91: ENDIF;
  1957. 92: ENDIF;
  1958. 93: ENDIF;
  1959. 94: ADD temp[3].x, temp[1].x___, -const[53].y___;
  1960. 95: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1961. 96: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1962. 97: IF aluresult.x___;
  1963. 98: ADD temp[3].x, temp[1].x___, -const[53].z___;
  1964. 99: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1965. 100: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1966. 101: IF aluresult.x___;
  1967. 102: ADD temp[3].x, temp[1].x___, -const[53].w___;
  1968. 103: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1969. 104: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1970. 105: IF aluresult.x___;
  1971. 106: ADD temp[3].xy, temp[1].xx__, -const[54].xy__;
  1972. 107: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1973. 108: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  1974. 109: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  1975. 110: ELSE;
  1976. 111: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  1977. 112: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1978. 113: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  1979. 114: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  1980. 115: ENDIF;
  1981. 116: ELSE;
  1982. 117: ADD temp[3].x, temp[1].x___, -const[54].z___;
  1983. 118: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  1984. 119: MOV none., temp[3].___x; [aluresult = (w != 0)]
  1985. 120: IF aluresult.x___;
  1986. 121: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  1987. 122: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1988. 123: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  1989. 124: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  1990. 125: ELSE;
  1991. 126: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  1992. 127: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  1993. 128: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  1994. 129: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  1995. 130: ENDIF;
  1996. 131: ENDIF;
  1997. 132: ELSE;
  1998. 133: ADD temp[3].x, temp[1].x___, -const[54].w___;
  1999. 134: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2000. 135: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2001. 136: IF aluresult.x___;
  2002. 137: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2003. 138: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2004. 139: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2005. 140: IF aluresult.x___;
  2006. 141: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2007. 142: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2008. 143: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2009. 144: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2010. 145: ELSE;
  2011. 146: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2012. 147: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2013. 148: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2014. 149: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2015. 150: ENDIF;
  2016. 151: ELSE;
  2017. 152: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2018. 153: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2019. 154: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2020. 155: IF aluresult.x___;
  2021. 156: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2022. 157: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2023. 158: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2024. 159: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2025. 160: ELSE;
  2026. 161: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2027. 162: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2028. 163: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2029. 164: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2030. 165: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2031. 166: ENDIF;
  2032. 167: ENDIF;
  2033. 168: ENDIF;
  2034. 169: ADD temp[3].xy, input[0].xy__, -temp[2].xy__;
  2035. 170: TEX temp[2], temp[3].xy__, 2D[0];
  2036. 171: MAD temp[3], temp[2], temp[4], temp[0];
  2037. 172: MOV temp[0], temp[3];
  2038. 173: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2039. 174: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2040. 175: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2041. 176: IF aluresult.x___;
  2042. 177: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2043. 178: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2044. 179: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2045. 180: IF aluresult.x___;
  2046. 181: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2047. 182: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2048. 183: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2049. 184: IF aluresult.x___;
  2050. 185: MOV temp[2].xy, const[27].xy__;
  2051. 186: ADD temp[3].xy, temp[1].xx__, -const[54].xy__;
  2052. 187: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2053. 188: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, temp[2].xy__;
  2054. 189: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2055. 190: ELSE;
  2056. 191: MOV temp[2].xy, const[30].xy__;
  2057. 192: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2058. 193: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2059. 194: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, temp[2].xy__;
  2060. 195: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2061. 196: ENDIF;
  2062. 197: ELSE;
  2063. 198: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2064. 199: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2065. 200: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2066. 201: IF aluresult.x___;
  2067. 202: MOV temp[2].xy, const[33].xy__;
  2068. 203: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2069. 204: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2070. 205: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, temp[2].xy__;
  2071. 206: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2072. 207: ELSE;
  2073. 208: MOV temp[2].xy, const[36].xy__;
  2074. 209: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2075. 210: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2076. 211: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, temp[2].xy__;
  2077. 212: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2078. 213: ENDIF;
  2079. 214: ENDIF;
  2080. 215: ELSE;
  2081. 216: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2082. 217: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2083. 218: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2084. 219: IF aluresult.x___;
  2085. 220: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2086. 221: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2087. 222: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2088. 223: IF aluresult.x___;
  2089. 224: MOV temp[2].xy, const[39].xy__;
  2090. 225: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2091. 226: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2092. 227: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, temp[2].xy__;
  2093. 228: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2094. 229: ELSE;
  2095. 230: MOV temp[2].xy, const[42].xy__;
  2096. 231: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2097. 232: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2098. 233: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, temp[2].xy__;
  2099. 234: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2100. 235: ENDIF;
  2101. 236: ELSE;
  2102. 237: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2103. 238: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2104. 239: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2105. 240: IF aluresult.x___;
  2106. 241: MOV temp[2].xy, const[45].xy__;
  2107. 242: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2108. 243: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2109. 244: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, temp[2].xy__;
  2110. 245: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2111. 246: ELSE;
  2112. 247: MOV temp[2].xy, const[48].xy__;
  2113. 248: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2114. 249: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2115. 250: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, temp[2].xy__;
  2116. 251: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2117. 252: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2118. 253: ENDIF;
  2119. 254: ENDIF;
  2120. 255: ENDIF;
  2121. 256: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2122. 257: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2123. 258: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2124. 259: IF aluresult.x___;
  2125. 260: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2126. 261: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2127. 262: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2128. 263: IF aluresult.x___;
  2129. 264: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2130. 265: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2131. 266: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2132. 267: IF aluresult.x___;
  2133. 268: ADD temp[3].xy, temp[1].xx__, -const[54].xy__;
  2134. 269: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2135. 270: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2136. 271: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2137. 272: ELSE;
  2138. 273: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2139. 274: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2140. 275: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2141. 276: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2142. 277: ENDIF;
  2143. 278: ELSE;
  2144. 279: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2145. 280: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2146. 281: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2147. 282: IF aluresult.x___;
  2148. 283: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2149. 284: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2150. 285: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2151. 286: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2152. 287: ELSE;
  2153. 288: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2154. 289: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2155. 290: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2156. 291: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2157. 292: ENDIF;
  2158. 293: ENDIF;
  2159. 294: ELSE;
  2160. 295: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2161. 296: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2162. 297: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2163. 298: IF aluresult.x___;
  2164. 299: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2165. 300: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2166. 301: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2167. 302: IF aluresult.x___;
  2168. 303: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2169. 304: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2170. 305: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2171. 306: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2172. 307: ELSE;
  2173. 308: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2174. 309: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2175. 310: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2176. 311: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2177. 312: ENDIF;
  2178. 313: ELSE;
  2179. 314: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2180. 315: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2181. 316: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2182. 317: IF aluresult.x___;
  2183. 318: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2184. 319: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2185. 320: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2186. 321: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2187. 322: ELSE;
  2188. 323: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2189. 324: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2190. 325: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2191. 326: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2192. 327: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2193. 328: ENDIF;
  2194. 329: ENDIF;
  2195. 330: ENDIF;
  2196. 331: ADD temp[3].xy, input[0].xy__, temp[2].xy__;
  2197. 332: TEX temp[2], temp[3].xy__, 2D[0];
  2198. 333: MAD temp[3], temp[2], temp[4], temp[0];
  2199. 334: MOV temp[0], temp[3];
  2200. 335: ADD temp[2].x, temp[1].x___, const[53].x___;
  2201. 336: MOV temp[1].x, temp[2].x___;
  2202. 337: ENDLOOP;
  2203. 338: MOV output[0], temp[0];
  2204. Fragment Program: after 'dataflow optimize'
  2205. # Radeon Compiler Program
  2206. 0: TEX temp[0], input[0].xy__, 2D[0];
  2207. 1: MUL temp[1], temp[0], const[1];
  2208. 2: MOV temp[0], temp[1];
  2209. 3: MOV temp[1].x, none.1___;
  2210. 4: BGNLOOP;
  2211. 5: CMP temp[2].x, (temp[1] - const[0]).x___, none.0___, none.1___;
  2212. 6: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2213. 7: IF aluresult.x___;
  2214. 8: BRK;
  2215. 9: ENDIF;
  2216. 10: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2217. 11: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2218. 12: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2219. 13: IF aluresult.x___;
  2220. 14: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2221. 15: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2222. 16: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2223. 17: IF aluresult.x___;
  2224. 18: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2225. 19: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2226. 20: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2227. 21: IF aluresult.x___;
  2228. 22: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2229. 23: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2230. 24: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  2231. 25: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2232. 26: ELSE;
  2233. 27: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2234. 28: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2235. 29: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  2236. 30: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2237. 31: ENDIF;
  2238. 32: ELSE;
  2239. 33: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2240. 34: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2241. 35: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2242. 36: IF aluresult.x___;
  2243. 37: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2244. 38: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2245. 39: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  2246. 40: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2247. 41: ELSE;
  2248. 42: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2249. 43: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2250. 44: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  2251. 45: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2252. 46: ENDIF;
  2253. 47: ENDIF;
  2254. 48: ELSE;
  2255. 49: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2256. 50: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2257. 51: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2258. 52: IF aluresult.x___;
  2259. 53: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2260. 54: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2261. 55: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2262. 56: IF aluresult.x___;
  2263. 57: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2264. 58: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2265. 59: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  2266. 60: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2267. 61: ELSE;
  2268. 62: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2269. 63: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2270. 64: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  2271. 65: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2272. 66: ENDIF;
  2273. 67: ELSE;
  2274. 68: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2275. 69: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2276. 70: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2277. 71: IF aluresult.x___;
  2278. 72: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2279. 73: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2280. 74: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  2281. 75: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2282. 76: ELSE;
  2283. 77: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2284. 78: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2285. 79: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  2286. 80: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2287. 81: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2288. 82: ENDIF;
  2289. 83: ENDIF;
  2290. 84: ENDIF;
  2291. 85: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2292. 86: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2293. 87: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2294. 88: IF aluresult.x___;
  2295. 89: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2296. 90: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2297. 91: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2298. 92: IF aluresult.x___;
  2299. 93: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2300. 94: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2301. 95: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2302. 96: IF aluresult.x___;
  2303. 97: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2304. 98: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2305. 99: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2306. 100: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2307. 101: ELSE;
  2308. 102: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2309. 103: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2310. 104: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2311. 105: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2312. 106: ENDIF;
  2313. 107: ELSE;
  2314. 108: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2315. 109: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2316. 110: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2317. 111: IF aluresult.x___;
  2318. 112: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2319. 113: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2320. 114: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2321. 115: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2322. 116: ELSE;
  2323. 117: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2324. 118: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2325. 119: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2326. 120: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2327. 121: ENDIF;
  2328. 122: ENDIF;
  2329. 123: ELSE;
  2330. 124: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2331. 125: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2332. 126: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2333. 127: IF aluresult.x___;
  2334. 128: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2335. 129: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2336. 130: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2337. 131: IF aluresult.x___;
  2338. 132: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2339. 133: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2340. 134: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2341. 135: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2342. 136: ELSE;
  2343. 137: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2344. 138: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2345. 139: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2346. 140: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2347. 141: ENDIF;
  2348. 142: ELSE;
  2349. 143: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2350. 144: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2351. 145: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2352. 146: IF aluresult.x___;
  2353. 147: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2354. 148: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2355. 149: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2356. 150: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2357. 151: ELSE;
  2358. 152: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2359. 153: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2360. 154: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2361. 155: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2362. 156: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2363. 157: ENDIF;
  2364. 158: ENDIF;
  2365. 159: ENDIF;
  2366. 160: ADD temp[3].xy, input[0].xy__, -temp[2].xy__;
  2367. 161: TEX temp[2], temp[3].xy__, 2D[0];
  2368. 162: MAD temp[3], temp[2], temp[4], temp[0];
  2369. 163: MOV temp[0], temp[3];
  2370. 164: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2371. 165: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2372. 166: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2373. 167: IF aluresult.x___;
  2374. 168: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2375. 169: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2376. 170: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2377. 171: IF aluresult.x___;
  2378. 172: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2379. 173: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2380. 174: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2381. 175: IF aluresult.x___;
  2382. 176: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2383. 177: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2384. 178: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  2385. 179: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2386. 180: ELSE;
  2387. 181: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2388. 182: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2389. 183: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  2390. 184: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2391. 185: ENDIF;
  2392. 186: ELSE;
  2393. 187: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2394. 188: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2395. 189: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2396. 190: IF aluresult.x___;
  2397. 191: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2398. 192: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2399. 193: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  2400. 194: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2401. 195: ELSE;
  2402. 196: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2403. 197: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2404. 198: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  2405. 199: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2406. 200: ENDIF;
  2407. 201: ENDIF;
  2408. 202: ELSE;
  2409. 203: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2410. 204: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2411. 205: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2412. 206: IF aluresult.x___;
  2413. 207: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2414. 208: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2415. 209: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2416. 210: IF aluresult.x___;
  2417. 211: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2418. 212: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2419. 213: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  2420. 214: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2421. 215: ELSE;
  2422. 216: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2423. 217: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2424. 218: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  2425. 219: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2426. 220: ENDIF;
  2427. 221: ELSE;
  2428. 222: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2429. 223: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2430. 224: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2431. 225: IF aluresult.x___;
  2432. 226: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2433. 227: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2434. 228: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  2435. 229: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2436. 230: ELSE;
  2437. 231: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2438. 232: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2439. 233: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  2440. 234: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2441. 235: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2442. 236: ENDIF;
  2443. 237: ENDIF;
  2444. 238: ENDIF;
  2445. 239: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2446. 240: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2447. 241: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2448. 242: IF aluresult.x___;
  2449. 243: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2450. 244: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2451. 245: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2452. 246: IF aluresult.x___;
  2453. 247: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2454. 248: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2455. 249: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2456. 250: IF aluresult.x___;
  2457. 251: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2458. 252: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2459. 253: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2460. 254: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2461. 255: ELSE;
  2462. 256: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2463. 257: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2464. 258: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2465. 259: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2466. 260: ENDIF;
  2467. 261: ELSE;
  2468. 262: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2469. 263: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2470. 264: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2471. 265: IF aluresult.x___;
  2472. 266: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2473. 267: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2474. 268: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2475. 269: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2476. 270: ELSE;
  2477. 271: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2478. 272: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2479. 273: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2480. 274: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2481. 275: ENDIF;
  2482. 276: ENDIF;
  2483. 277: ELSE;
  2484. 278: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2485. 279: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2486. 280: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2487. 281: IF aluresult.x___;
  2488. 282: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2489. 283: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2490. 284: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2491. 285: IF aluresult.x___;
  2492. 286: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2493. 287: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2494. 288: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2495. 289: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2496. 290: ELSE;
  2497. 291: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2498. 292: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2499. 293: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2500. 294: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2501. 295: ENDIF;
  2502. 296: ELSE;
  2503. 297: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2504. 298: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2505. 299: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2506. 300: IF aluresult.x___;
  2507. 301: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2508. 302: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2509. 303: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2510. 304: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2511. 305: ELSE;
  2512. 306: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2513. 307: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2514. 308: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2515. 309: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2516. 310: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2517. 311: ENDIF;
  2518. 312: ENDIF;
  2519. 313: ENDIF;
  2520. 314: ADD temp[3].xy, input[0].xy__, temp[2].xy__;
  2521. 315: TEX temp[2], temp[3].xy__, 2D[0];
  2522. 316: MAD temp[3], temp[2], temp[4], temp[0];
  2523. 317: MOV temp[0], temp[3];
  2524. 318: ADD temp[2].x, temp[1].x___, none.1___;
  2525. 319: MOV temp[1].x, temp[2].x___;
  2526. 320: ENDLOOP;
  2527. 321: MOV output[0], temp[0];
  2528. Fragment Program: after 'dataflow swizzles'
  2529. # Radeon Compiler Program
  2530. 0: TEX temp[0], input[0].xy__, 2D[0];
  2531. 1: MUL temp[1], temp[0], const[1];
  2532. 2: MOV temp[0], temp[1];
  2533. 3: MOV temp[1].x, none.1___;
  2534. 4: BGNLOOP;
  2535. 5: CMP temp[2].x, (temp[1] - const[0]).x___, none.0___, none.1___;
  2536. 6: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2537. 7: IF aluresult.x___;
  2538. 8: BRK;
  2539. 9: ENDIF;
  2540. 10: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2541. 11: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2542. 12: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2543. 13: IF aluresult.x___;
  2544. 14: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2545. 15: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2546. 16: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2547. 17: IF aluresult.x___;
  2548. 18: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2549. 19: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2550. 20: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2551. 21: IF aluresult.x___;
  2552. 22: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2553. 23: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2554. 24: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  2555. 25: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2556. 26: ELSE;
  2557. 27: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2558. 28: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2559. 29: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  2560. 30: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2561. 31: ENDIF;
  2562. 32: ELSE;
  2563. 33: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2564. 34: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2565. 35: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2566. 36: IF aluresult.x___;
  2567. 37: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2568. 38: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2569. 39: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  2570. 40: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2571. 41: ELSE;
  2572. 42: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2573. 43: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2574. 44: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  2575. 45: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2576. 46: ENDIF;
  2577. 47: ENDIF;
  2578. 48: ELSE;
  2579. 49: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2580. 50: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2581. 51: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2582. 52: IF aluresult.x___;
  2583. 53: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2584. 54: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2585. 55: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2586. 56: IF aluresult.x___;
  2587. 57: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2588. 58: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2589. 59: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  2590. 60: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2591. 61: ELSE;
  2592. 62: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2593. 63: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2594. 64: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  2595. 65: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2596. 66: ENDIF;
  2597. 67: ELSE;
  2598. 68: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2599. 69: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2600. 70: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2601. 71: IF aluresult.x___;
  2602. 72: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2603. 73: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2604. 74: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  2605. 75: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2606. 76: ELSE;
  2607. 77: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2608. 78: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2609. 79: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  2610. 80: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2611. 81: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2612. 82: ENDIF;
  2613. 83: ENDIF;
  2614. 84: ENDIF;
  2615. 85: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2616. 86: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2617. 87: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2618. 88: IF aluresult.x___;
  2619. 89: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2620. 90: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2621. 91: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2622. 92: IF aluresult.x___;
  2623. 93: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2624. 94: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2625. 95: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2626. 96: IF aluresult.x___;
  2627. 97: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2628. 98: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2629. 99: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2630. 100: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2631. 101: ELSE;
  2632. 102: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2633. 103: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2634. 104: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2635. 105: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2636. 106: ENDIF;
  2637. 107: ELSE;
  2638. 108: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2639. 109: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2640. 110: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2641. 111: IF aluresult.x___;
  2642. 112: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2643. 113: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2644. 114: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2645. 115: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2646. 116: ELSE;
  2647. 117: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2648. 118: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2649. 119: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2650. 120: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2651. 121: ENDIF;
  2652. 122: ENDIF;
  2653. 123: ELSE;
  2654. 124: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2655. 125: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2656. 126: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2657. 127: IF aluresult.x___;
  2658. 128: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2659. 129: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2660. 130: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2661. 131: IF aluresult.x___;
  2662. 132: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2663. 133: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2664. 134: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2665. 135: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2666. 136: ELSE;
  2667. 137: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2668. 138: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2669. 139: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2670. 140: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2671. 141: ENDIF;
  2672. 142: ELSE;
  2673. 143: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2674. 144: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2675. 145: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2676. 146: IF aluresult.x___;
  2677. 147: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2678. 148: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2679. 149: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2680. 150: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2681. 151: ELSE;
  2682. 152: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2683. 153: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2684. 154: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2685. 155: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2686. 156: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2687. 157: ENDIF;
  2688. 158: ENDIF;
  2689. 159: ENDIF;
  2690. 160: ADD temp[3].xy, input[0].xy__, -temp[2].xy__;
  2691. 161: TEX temp[2], temp[3].xy__, 2D[0];
  2692. 162: MAD temp[3], temp[2], temp[4], temp[0];
  2693. 163: MOV temp[0], temp[3];
  2694. 164: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2695. 165: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2696. 166: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2697. 167: IF aluresult.x___;
  2698. 168: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2699. 169: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2700. 170: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2701. 171: IF aluresult.x___;
  2702. 172: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2703. 173: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2704. 174: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2705. 175: IF aluresult.x___;
  2706. 176: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2707. 177: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2708. 178: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  2709. 179: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2710. 180: ELSE;
  2711. 181: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2712. 182: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2713. 183: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  2714. 184: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2715. 185: ENDIF;
  2716. 186: ELSE;
  2717. 187: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2718. 188: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2719. 189: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2720. 190: IF aluresult.x___;
  2721. 191: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2722. 192: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2723. 193: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  2724. 194: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2725. 195: ELSE;
  2726. 196: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2727. 197: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2728. 198: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  2729. 199: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2730. 200: ENDIF;
  2731. 201: ENDIF;
  2732. 202: ELSE;
  2733. 203: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2734. 204: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2735. 205: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2736. 206: IF aluresult.x___;
  2737. 207: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2738. 208: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2739. 209: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2740. 210: IF aluresult.x___;
  2741. 211: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2742. 212: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2743. 213: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  2744. 214: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2745. 215: ELSE;
  2746. 216: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2747. 217: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2748. 218: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  2749. 219: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2750. 220: ENDIF;
  2751. 221: ELSE;
  2752. 222: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2753. 223: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2754. 224: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2755. 225: IF aluresult.x___;
  2756. 226: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2757. 227: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2758. 228: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  2759. 229: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2760. 230: ELSE;
  2761. 231: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2762. 232: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2763. 233: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  2764. 234: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2765. 235: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2766. 236: ENDIF;
  2767. 237: ENDIF;
  2768. 238: ENDIF;
  2769. 239: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2770. 240: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2771. 241: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2772. 242: IF aluresult.x___;
  2773. 243: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2774. 244: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2775. 245: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2776. 246: IF aluresult.x___;
  2777. 247: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2778. 248: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2779. 249: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2780. 250: IF aluresult.x___;
  2781. 251: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2782. 252: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2783. 253: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2784. 254: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2785. 255: ELSE;
  2786. 256: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2787. 257: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2788. 258: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2789. 259: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2790. 260: ENDIF;
  2791. 261: ELSE;
  2792. 262: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2793. 263: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2794. 264: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2795. 265: IF aluresult.x___;
  2796. 266: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2797. 267: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2798. 268: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2799. 269: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2800. 270: ELSE;
  2801. 271: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2802. 272: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2803. 273: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2804. 274: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2805. 275: ENDIF;
  2806. 276: ENDIF;
  2807. 277: ELSE;
  2808. 278: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2809. 279: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2810. 280: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2811. 281: IF aluresult.x___;
  2812. 282: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2813. 283: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2814. 284: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2815. 285: IF aluresult.x___;
  2816. 286: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2817. 287: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2818. 288: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2819. 289: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2820. 290: ELSE;
  2821. 291: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2822. 292: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2823. 293: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  2824. 294: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  2825. 295: ENDIF;
  2826. 296: ELSE;
  2827. 297: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2828. 298: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2829. 299: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2830. 300: IF aluresult.x___;
  2831. 301: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2832. 302: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2833. 303: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  2834. 304: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  2835. 305: ELSE;
  2836. 306: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2837. 307: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2838. 308: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  2839. 309: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  2840. 310: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  2841. 311: ENDIF;
  2842. 312: ENDIF;
  2843. 313: ENDIF;
  2844. 314: ADD temp[3].xy, input[0].xy__, temp[2].xy__;
  2845. 315: TEX temp[2], temp[3].xy__, 2D[0];
  2846. 316: MAD temp[3], temp[2], temp[4], temp[0];
  2847. 317: MOV temp[0], temp[3];
  2848. 318: ADD temp[2].x, temp[1].x___, none.1___;
  2849. 319: MOV temp[1].x, temp[2].x___;
  2850. 320: ENDLOOP;
  2851. 321: MOV output[0], temp[0];
  2852. CONST[53] = { 1.0000 12.0000 6.0000 3.0000 }
  2853. CONST[54] = { 1.0000 2.0000 9.0000 18.0000 }
  2854. CONST[55] = { 4.0000 5.0000 15.0000 21.0000 }
  2855. CONST[56] = { 7.0000 8.0000 0.0000 22.0000 }
  2856. CONST[57] = { 10.0000 11.0000 0.0000 22.0000 }
  2857. CONST[58] = { 13.0000 14.0000 0.0000 22.0000 }
  2858. CONST[59] = { 16.0000 17.0000 0.0000 22.0000 }
  2859. CONST[60] = { 19.0000 20.0000 0.0000 22.0000 }
  2860. CONST[61] = { 22.0000 23.0000 24.0000 0.0000 }
  2861. Fragment Program: after 'dead constants'
  2862. # Radeon Compiler Program
  2863. 0: TEX temp[0], input[0].xy__, 2D[0];
  2864. 1: MUL temp[1], temp[0], const[1];
  2865. 2: MOV temp[0], temp[1];
  2866. 3: MOV temp[1].x, none.1___;
  2867. 4: BGNLOOP;
  2868. 5: CMP temp[2].x, (temp[1] - const[0]).x___, none.0___, none.1___;
  2869. 6: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2870. 7: IF aluresult.x___;
  2871. 8: BRK;
  2872. 9: ENDIF;
  2873. 10: ADD temp[2].x, temp[1].x___, -const[53].y___;
  2874. 11: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2875. 12: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2876. 13: IF aluresult.x___;
  2877. 14: ADD temp[2].x, temp[1].x___, -const[53].z___;
  2878. 15: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2879. 16: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2880. 17: IF aluresult.x___;
  2881. 18: ADD temp[2].x, temp[1].x___, -const[53].w___;
  2882. 19: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  2883. 20: MOV none., temp[2].___x; [aluresult = (w != 0)]
  2884. 21: IF aluresult.x___;
  2885. 22: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2886. 23: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2887. 24: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  2888. 25: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  2889. 26: ELSE;
  2890. 27: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2891. 28: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2892. 29: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  2893. 30: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  2894. 31: ENDIF;
  2895. 32: ELSE;
  2896. 33: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2897. 34: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2898. 35: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2899. 36: IF aluresult.x___;
  2900. 37: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2901. 38: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2902. 39: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  2903. 40: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  2904. 41: ELSE;
  2905. 42: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2906. 43: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2907. 44: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  2908. 45: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  2909. 46: ENDIF;
  2910. 47: ENDIF;
  2911. 48: ELSE;
  2912. 49: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2913. 50: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2914. 51: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2915. 52: IF aluresult.x___;
  2916. 53: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2917. 54: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2918. 55: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2919. 56: IF aluresult.x___;
  2920. 57: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2921. 58: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2922. 59: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  2923. 60: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  2924. 61: ELSE;
  2925. 62: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  2926. 63: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2927. 64: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  2928. 65: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  2929. 66: ENDIF;
  2930. 67: ELSE;
  2931. 68: ADD temp[3].x, temp[1].x___, -const[55].w___;
  2932. 69: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2933. 70: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2934. 71: IF aluresult.x___;
  2935. 72: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  2936. 73: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2937. 74: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  2938. 75: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  2939. 76: ELSE;
  2940. 77: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  2941. 78: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  2942. 79: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  2943. 80: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  2944. 81: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  2945. 82: ENDIF;
  2946. 83: ENDIF;
  2947. 84: ENDIF;
  2948. 85: ADD temp[3].x, temp[1].x___, -const[53].y___;
  2949. 86: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2950. 87: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2951. 88: IF aluresult.x___;
  2952. 89: ADD temp[3].x, temp[1].x___, -const[53].z___;
  2953. 90: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2954. 91: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2955. 92: IF aluresult.x___;
  2956. 93: ADD temp[3].x, temp[1].x___, -const[53].w___;
  2957. 94: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2958. 95: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2959. 96: IF aluresult.x___;
  2960. 97: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  2961. 98: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2962. 99: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  2963. 100: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  2964. 101: ELSE;
  2965. 102: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  2966. 103: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2967. 104: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  2968. 105: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  2969. 106: ENDIF;
  2970. 107: ELSE;
  2971. 108: ADD temp[3].x, temp[1].x___, -const[54].z___;
  2972. 109: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2973. 110: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2974. 111: IF aluresult.x___;
  2975. 112: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  2976. 113: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2977. 114: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  2978. 115: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  2979. 116: ELSE;
  2980. 117: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  2981. 118: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2982. 119: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  2983. 120: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  2984. 121: ENDIF;
  2985. 122: ENDIF;
  2986. 123: ELSE;
  2987. 124: ADD temp[3].x, temp[1].x___, -const[54].w___;
  2988. 125: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2989. 126: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2990. 127: IF aluresult.x___;
  2991. 128: ADD temp[3].x, temp[1].x___, -const[55].z___;
  2992. 129: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  2993. 130: MOV none., temp[3].___x; [aluresult = (w != 0)]
  2994. 131: IF aluresult.x___;
  2995. 132: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  2996. 133: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  2997. 134: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  2998. 135: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  2999. 136: ELSE;
  3000. 137: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  3001. 138: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3002. 139: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  3003. 140: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  3004. 141: ENDIF;
  3005. 142: ELSE;
  3006. 143: ADD temp[3].x, temp[1].x___, -const[55].w___;
  3007. 144: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3008. 145: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3009. 146: IF aluresult.x___;
  3010. 147: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  3011. 148: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3012. 149: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  3013. 150: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  3014. 151: ELSE;
  3015. 152: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  3016. 153: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  3017. 154: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  3018. 155: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  3019. 156: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  3020. 157: ENDIF;
  3021. 158: ENDIF;
  3022. 159: ENDIF;
  3023. 160: ADD temp[3].xy, input[0].xy__, -temp[2].xy__;
  3024. 161: TEX temp[2], temp[3].xy__, 2D[0];
  3025. 162: MAD temp[3], temp[2], temp[4], temp[0];
  3026. 163: MOV temp[0], temp[3];
  3027. 164: ADD temp[2].x, temp[1].x___, -const[53].y___;
  3028. 165: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  3029. 166: MOV none., temp[2].___x; [aluresult = (w != 0)]
  3030. 167: IF aluresult.x___;
  3031. 168: ADD temp[2].x, temp[1].x___, -const[53].z___;
  3032. 169: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  3033. 170: MOV none., temp[2].___x; [aluresult = (w != 0)]
  3034. 171: IF aluresult.x___;
  3035. 172: ADD temp[2].x, temp[1].x___, -const[53].w___;
  3036. 173: CMP temp[2].x, temp[2].x___, none.1___, none.0___;
  3037. 174: MOV none., temp[2].___x; [aluresult = (w != 0)]
  3038. 175: IF aluresult.x___;
  3039. 176: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  3040. 177: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3041. 178: CMP temp[2].xy, -temp[3].xx__, const[28].xy__, const[27].xy__;
  3042. 179: CMP temp[2].xy, -temp[3].yy__, const[29].xy__, temp[2].xy__;
  3043. 180: ELSE;
  3044. 181: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  3045. 182: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3046. 183: CMP temp[2].xy, -temp[3].xx__, const[31].xy__, const[30].xy__;
  3047. 184: CMP temp[2].xy, -temp[3].yy__, const[32].xy__, temp[2].xy__;
  3048. 185: ENDIF;
  3049. 186: ELSE;
  3050. 187: ADD temp[3].x, temp[1].x___, -const[54].z___;
  3051. 188: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3052. 189: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3053. 190: IF aluresult.x___;
  3054. 191: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  3055. 192: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3056. 193: CMP temp[2].xy, -temp[3].xx__, const[34].xy__, const[33].xy__;
  3057. 194: CMP temp[2].xy, -temp[3].yy__, const[35].xy__, temp[2].xy__;
  3058. 195: ELSE;
  3059. 196: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  3060. 197: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3061. 198: CMP temp[2].xy, -temp[3].xx__, const[37].xy__, const[36].xy__;
  3062. 199: CMP temp[2].xy, -temp[3].yy__, const[38].xy__, temp[2].xy__;
  3063. 200: ENDIF;
  3064. 201: ENDIF;
  3065. 202: ELSE;
  3066. 203: ADD temp[3].x, temp[1].x___, -const[54].w___;
  3067. 204: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3068. 205: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3069. 206: IF aluresult.x___;
  3070. 207: ADD temp[3].x, temp[1].x___, -const[55].z___;
  3071. 208: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3072. 209: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3073. 210: IF aluresult.x___;
  3074. 211: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  3075. 212: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3076. 213: CMP temp[2].xy, -temp[3].xx__, const[40].xy__, const[39].xy__;
  3077. 214: CMP temp[2].xy, -temp[3].yy__, const[41].xy__, temp[2].xy__;
  3078. 215: ELSE;
  3079. 216: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  3080. 217: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3081. 218: CMP temp[2].xy, -temp[3].xx__, const[43].xy__, const[42].xy__;
  3082. 219: CMP temp[2].xy, -temp[3].yy__, const[44].xy__, temp[2].xy__;
  3083. 220: ENDIF;
  3084. 221: ELSE;
  3085. 222: ADD temp[3].x, temp[1].x___, -const[55].w___;
  3086. 223: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3087. 224: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3088. 225: IF aluresult.x___;
  3089. 226: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  3090. 227: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3091. 228: CMP temp[2].xy, -temp[3].xx__, const[46].xy__, const[45].xy__;
  3092. 229: CMP temp[2].xy, -temp[3].yy__, const[47].xy__, temp[2].xy__;
  3093. 230: ELSE;
  3094. 231: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  3095. 232: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  3096. 233: CMP temp[2].xy, -temp[3].xx__, const[49].xy__, const[48].xy__;
  3097. 234: CMP temp[2].xy, -temp[3].yy__, const[50].xy__, temp[2].xy__;
  3098. 235: CMP temp[2].xy, -temp[3].zz__, const[51].xy__, temp[2].xy__;
  3099. 236: ENDIF;
  3100. 237: ENDIF;
  3101. 238: ENDIF;
  3102. 239: ADD temp[3].x, temp[1].x___, -const[53].y___;
  3103. 240: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3104. 241: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3105. 242: IF aluresult.x___;
  3106. 243: ADD temp[3].x, temp[1].x___, -const[53].z___;
  3107. 244: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3108. 245: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3109. 246: IF aluresult.x___;
  3110. 247: ADD temp[3].x, temp[1].x___, -const[53].w___;
  3111. 248: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3112. 249: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3113. 250: IF aluresult.x___;
  3114. 251: ADD temp[3].xy, temp[1].xx__, -const[54].1y__;
  3115. 252: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3116. 253: CMP temp[4], -temp[3].xxxx, const[2], const[1];
  3117. 254: CMP temp[4], -temp[3].yyyy, const[3], temp[4];
  3118. 255: ELSE;
  3119. 256: ADD temp[3].xy, temp[1].xx__, -const[55].xy__;
  3120. 257: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3121. 258: CMP temp[4], -temp[3].xxxx, const[5], const[4];
  3122. 259: CMP temp[4], -temp[3].yyyy, const[6], temp[4];
  3123. 260: ENDIF;
  3124. 261: ELSE;
  3125. 262: ADD temp[3].x, temp[1].x___, -const[54].z___;
  3126. 263: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3127. 264: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3128. 265: IF aluresult.x___;
  3129. 266: ADD temp[3].xy, temp[1].xx__, -const[56].xy__;
  3130. 267: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3131. 268: CMP temp[4], -temp[3].xxxx, const[8], const[7];
  3132. 269: CMP temp[4], -temp[3].yyyy, const[9], temp[4];
  3133. 270: ELSE;
  3134. 271: ADD temp[3].xy, temp[1].xx__, -const[57].xy__;
  3135. 272: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3136. 273: CMP temp[4], -temp[3].xxxx, const[11], const[10];
  3137. 274: CMP temp[4], -temp[3].yyyy, const[12], temp[4];
  3138. 275: ENDIF;
  3139. 276: ENDIF;
  3140. 277: ELSE;
  3141. 278: ADD temp[3].x, temp[1].x___, -const[54].w___;
  3142. 279: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3143. 280: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3144. 281: IF aluresult.x___;
  3145. 282: ADD temp[3].x, temp[1].x___, -const[55].z___;
  3146. 283: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3147. 284: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3148. 285: IF aluresult.x___;
  3149. 286: ADD temp[3].xy, temp[1].xx__, -const[58].xy__;
  3150. 287: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3151. 288: CMP temp[4], -temp[3].xxxx, const[14], const[13];
  3152. 289: CMP temp[4], -temp[3].yyyy, const[15], temp[4];
  3153. 290: ELSE;
  3154. 291: ADD temp[3].xy, temp[1].xx__, -const[59].xy__;
  3155. 292: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3156. 293: CMP temp[4], -temp[3].xxxx, const[17], const[16];
  3157. 294: CMP temp[4], -temp[3].yyyy, const[18], temp[4];
  3158. 295: ENDIF;
  3159. 296: ELSE;
  3160. 297: ADD temp[3].x, temp[1].x___, -const[55].w___;
  3161. 298: CMP temp[3].x, temp[3].x___, none.1___, none.0___;
  3162. 299: MOV none., temp[3].___x; [aluresult = (w != 0)]
  3163. 300: IF aluresult.x___;
  3164. 301: ADD temp[3].xy, temp[1].xx__, -const[60].xy__;
  3165. 302: CMP temp[3].xy, -|temp[3].xy__|, none.00__, none.11__;
  3166. 303: CMP temp[4], -temp[3].xxxx, const[20], const[19];
  3167. 304: CMP temp[4], -temp[3].yyyy, const[21], temp[4];
  3168. 305: ELSE;
  3169. 306: ADD temp[3].xyz, temp[1].xxx_, -const[61].xyz_;
  3170. 307: CMP temp[3].xyz, -|temp[3].xyz_|, none.000_, none.111_;
  3171. 308: CMP temp[4], -temp[3].xxxx, const[23], const[22];
  3172. 309: CMP temp[4], -temp[3].yyyy, const[24], temp[4];
  3173. 310: CMP temp[4], -temp[3].zzzz, const[25], temp[4];
  3174. 311: ENDIF;
  3175. 312: ENDIF;
  3176. 313: ENDIF;
  3177. 314: ADD temp[3].xy, input[0].xy__, temp[2].xy__;
  3178. 315: TEX temp[2], temp[3].xy__, 2D[0];
  3179. 316: MAD temp[3], temp[2], temp[4], temp[0];
  3180. 317: MOV temp[0], temp[3];
  3181. 318: ADD temp[2].x, temp[1].x___, none.1___;
  3182. 319: MOV temp[1].x, temp[2].x___;
  3183. 320: ENDLOOP;
  3184. 321: MOV output[0], temp[0];
  3185. Fragment Program: after 'register rename'
  3186. # Radeon Compiler Program
  3187. 0: TEX temp[5], input[0].xy__, 2D[0];
  3188. 1: MUL temp[1], temp[5], const[1];
  3189. 2: MOV temp[0], temp[1];
  3190. 3: MOV temp[1].x, none.1___;
  3191. 4: BGNLOOP;
  3192. 5: CMP temp[2].x, (temp[1] - const[0]).x___, none.0___, none.1___;
  3193. 6: MOV none., temp[2].___x; [aluresult = (w != 0)]
  3194. 7: IF aluresult.x___;
  3195. 8: BRK;
  3196. 9: ENDIF;
  3197. 10: ADD temp[6].x, temp[1].x___, -const[53].y___;
  3198. 11: CMP temp[7].x, temp[6].x___, none.1___, none.0___;
  3199. 12: MOV none., temp[7].___x; [aluresult = (w != 0)]
  3200. 13: IF aluresult.x___;
  3201. 14: ADD temp[8].x, temp[1].x___, -const[53].z___;
  3202. 15: CMP temp[9].x, temp[8].x___, none.1___, none.0___;
  3203. 16: MOV none., temp[9].___x; [aluresult = (w != 0)]
  3204. 17: IF aluresult.x___;
  3205. 18: ADD temp[10].x, temp[1].x___, -const[53].w___;
  3206. 19: CMP temp[11].x, temp[10].x___, none.1___, none.0___;
  3207. 20: MOV none., temp[11].___x; [aluresult = (w != 0)]
  3208. 21: IF aluresult.x___;
  3209. 22: ADD temp[12].xy, temp[1].xx__, -const[54].1y__;
  3210. 23: CMP temp[13].xy, -|temp[12].xy__|, none.00__, none.11__;
  3211. 24: CMP temp[14].xy, -temp[13].xx__, const[28].xy__, const[27].xy__;
  3212. 25: CMP temp[2].xy, -temp[13].yy__, const[29].xy__, temp[14].xy__;
  3213. 26: ELSE;
  3214. 27: ADD temp[15].xy, temp[1].xx__, -const[55].xy__;
  3215. 28: CMP temp[16].xy, -|temp[15].xy__|, none.00__, none.11__;
  3216. 29: CMP temp[17].xy, -temp[16].xx__, const[31].xy__, const[30].xy__;
  3217. 30: CMP temp[2].xy, -temp[16].yy__, const[32].xy__, temp[17].xy__;
  3218. 31: ENDIF;
  3219. 32: ELSE;
  3220. 33: ADD temp[18].x, temp[1].x___, -const[54].z___;
  3221. 34: CMP temp[19].x, temp[18].x___, none.1___, none.0___;
  3222. 35: MOV none., temp[19].___x; [aluresult = (w != 0)]
  3223. 36: IF aluresult.x___;
  3224. 37: ADD temp[20].xy, temp[1].xx__, -const[56].xy__;
  3225. 38: CMP temp[21].xy, -|temp[20].xy__|, none.00__, none.11__;
  3226. 39: CMP temp[22].xy, -temp[21].xx__, const[34].xy__, const[33].xy__;
  3227. 40: CMP temp[2].xy, -temp[21].yy__, const[35].xy__, temp[22].xy__;
  3228. 41: ELSE;
  3229. 42: ADD temp[23].xy, temp[1].xx__, -const[57].xy__;
  3230. 43: CMP temp[24].xy, -|temp[23].xy__|, none.00__, none.11__;
  3231. 44: CMP temp[25].xy, -temp[24].xx__, const[37].xy__, const[36].xy__;
  3232. 45: CMP temp[2].xy, -temp[24].yy__, const[38].xy__, temp[25].xy__;
  3233. 46: ENDIF;
  3234. 47: ENDIF;
  3235. 48: ELSE;
  3236. 49: ADD temp[26].x, temp[1].x___, -const[54].w___;
  3237. 50: CMP temp[27].x, temp[26].x___, none.1___, none.0___;
  3238. 51: MOV none., temp[27].___x; [aluresult = (w != 0)]
  3239. 52: IF aluresult.x___;
  3240. 53: ADD temp[28].x, temp[1].x___, -const[55].z___;
  3241. 54: CMP temp[29].x, temp[28].x___, none.1___, none.0___;
  3242. 55: MOV none., temp[29].___x; [aluresult = (w != 0)]
  3243. 56: IF aluresult.x___;
  3244. 57: ADD temp[30].xy, temp[1].xx__, -const[58].xy__;
  3245. 58: CMP temp[31].xy, -|temp[30].xy__|, none.00__, none.11__;
  3246. 59: CMP temp[32].xy, -temp[31].xx__, const[40].xy__, const[39].xy__;
  3247. 60: CMP temp[2].xy, -temp[31].yy__, const[41].xy__, temp[32].xy__;
  3248. 61: ELSE;
  3249. 62: ADD temp[33].xy, temp[1].xx__, -const[59].xy__;
  3250. 63: CMP temp[34].xy, -|temp[33].xy__|, none.00__, none.11__;
  3251. 64: CMP temp[35].xy, -temp[34].xx__, const[43].xy__, const[42].xy__;
  3252. 65: CMP temp[2].xy, -temp[34].yy__, const[44].xy__, temp[35].xy__;
  3253. 66: ENDIF;
  3254. 67: ELSE;
  3255. 68: ADD temp[36].x, temp[1].x___, -const[55].w___;
  3256. 69: CMP temp[37].x, temp[36].x___, none.1___, none.0___;
  3257. 70: MOV none., temp[37].___x; [aluresult = (w != 0)]
  3258. 71: IF aluresult.x___;
  3259. 72: ADD temp[38].xy, temp[1].xx__, -const[60].xy__;
  3260. 73: CMP temp[39].xy, -|temp[38].xy__|, none.00__, none.11__;
  3261. 74: CMP temp[40].xy, -temp[39].xx__, const[46].xy__, const[45].xy__;
  3262. 75: CMP temp[2].xy, -temp[39].yy__, const[47].xy__, temp[40].xy__;
  3263. 76: ELSE;
  3264. 77: ADD temp[41].xyz, temp[1].xxx_, -const[61].xyz_;
  3265. 78: CMP temp[42].xyz, -|temp[41].xyz_|, none.000_, none.111_;
  3266. 79: CMP temp[43].xy, -temp[42].xx__, const[49].xy__, const[48].xy__;
  3267. 80: CMP temp[44].xy, -temp[42].yy__, const[50].xy__, temp[43].xy__;
  3268. 81: CMP temp[2].xy, -temp[42].zz__, const[51].xy__, temp[44].xy__;
  3269. 82: ENDIF;
  3270. 83: ENDIF;
  3271. 84: ENDIF;
  3272. 85: ADD temp[45].x, temp[1].x___, -const[53].y___;
  3273. 86: CMP temp[46].x, temp[45].x___, none.1___, none.0___;
  3274. 87: MOV none., temp[46].___x; [aluresult = (w != 0)]
  3275. 88: IF aluresult.x___;
  3276. 89: ADD temp[47].x, temp[1].x___, -const[53].z___;
  3277. 90: CMP temp[48].x, temp[47].x___, none.1___, none.0___;
  3278. 91: MOV none., temp[48].___x; [aluresult = (w != 0)]
  3279. 92: IF aluresult.x___;
  3280. 93: ADD temp[49].x, temp[1].x___, -const[53].w___;
  3281. 94: CMP temp[50].x, temp[49].x___, none.1___, none.0___;
  3282. 95: MOV none., temp[50].___x; [aluresult = (w != 0)]
  3283. 96: IF aluresult.x___;
  3284. 97: ADD temp[51].xy, temp[1].xx__, -const[54].1y__;
  3285. 98: CMP temp[52].xy, -|temp[51].xy__|, none.00__, none.11__;
  3286. 99: CMP temp[53], -temp[52].xxxx, const[2], const[1];
  3287. 100: CMP temp[4], -temp[52].yyyy, const[3], temp[53];
  3288. 101: ELSE;
  3289. 102: ADD temp[54].xy, temp[1].xx__, -const[55].xy__;
  3290. 103: CMP temp[55].xy, -|temp[54].xy__|, none.00__, none.11__;
  3291. 104: CMP temp[56], -temp[55].xxxx, const[5], const[4];
  3292. 105: CMP temp[4], -temp[55].yyyy, const[6], temp[56];
  3293. 106: ENDIF;
  3294. 107: ELSE;
  3295. 108: ADD temp[57].x, temp[1].x___, -const[54].z___;
  3296. 109: CMP temp[58].x, temp[57].x___, none.1___, none.0___;
  3297. 110: MOV none., temp[58].___x; [aluresult = (w != 0)]
  3298. 111: IF aluresult.x___;
  3299. 112: ADD temp[59].xy, temp[1].xx__, -const[56].xy__;
  3300. 113: CMP temp[60].xy, -|temp[59].xy__|, none.00__, none.11__;
  3301. 114: CMP temp[61], -temp[60].xxxx, const[8], const[7];
  3302. 115: CMP temp[4], -temp[60].yyyy, const[9], temp[61];
  3303. 116: ELSE;
  3304. 117: ADD temp[62].xy, temp[1].xx__, -const[57].xy__;
  3305. 118: CMP temp[63].xy, -|temp[62].xy__|, none.00__, none.11__;
  3306. 119: CMP temp[64], -temp[63].xxxx, const[11], const[10];
  3307. 120: CMP temp[4], -temp[63].yyyy, const[12], temp[64];
  3308. 121: ENDIF;
  3309. 122: ENDIF;
  3310. 123: ELSE;
  3311. 124: ADD temp[65].x, temp[1].x___, -const[54].w___;
  3312. 125: CMP temp[66].x, temp[65].x___, none.1___, none.0___;
  3313. 126: MOV none., temp[66].___x; [aluresult = (w != 0)]
  3314. 127: IF aluresult.x___;
  3315. 128: ADD temp[67].x, temp[1].x___, -const[55].z___;
  3316. 129: CMP temp[68].x, temp[67].x___, none.1___, none.0___;
  3317. 130: MOV none., temp[68].___x; [aluresult = (w != 0)]
  3318. 131: IF aluresult.x___;
  3319. 132: ADD temp[69].xy, temp[1].xx__, -const[58].xy__;
  3320. 133: CMP temp[70].xy, -|temp[69].xy__|, none.00__, none.11__;
  3321. 134: CMP temp[71], -temp[70].xxxx, const[14], const[13];
  3322. 135: CMP temp[4], -temp[70].yyyy, const[15], temp[71];
  3323. 136: ELSE;
  3324. 137: ADD temp[72].xy, temp[1].xx__, -const[59].xy__;
  3325. 138: CMP temp[73].xy, -|temp[72].xy__|, none.00__, none.11__;
  3326. 139: CMP temp[74], -temp[73].xxxx, const[17], const[16];
  3327. 140: CMP temp[4], -temp[73].yyyy, const[18], temp[74];
  3328. 141: ENDIF;
  3329. 142: ELSE;
  3330. 143: ADD temp[75].x, temp[1].x___, -const[55].w___;
  3331. 144: CMP temp[76].x, temp[75].x___, none.1___, none.0___;
  3332. 145: MOV none., temp[76].___x; [aluresult = (w != 0)]
  3333. 146: IF aluresult.x___;
  3334. 147: ADD temp[77].xy, temp[1].xx__, -const[60].xy__;
  3335. 148: CMP temp[78].xy, -|temp[77].xy__|, none.00__, none.11__;
  3336. 149: CMP temp[79], -temp[78].xxxx, const[20], const[19];
  3337. 150: CMP temp[4], -temp[78].yyyy, const[21], temp[79];
  3338. 151: ELSE;
  3339. 152: ADD temp[80].xyz, temp[1].xxx_, -const[61].xyz_;
  3340. 153: CMP temp[81].xyz, -|temp[80].xyz_|, none.000_, none.111_;
  3341. 154: CMP temp[82], -temp[81].xxxx, const[23], const[22];
  3342. 155: CMP temp[83], -temp[81].yyyy, const[24], temp[82];
  3343. 156: CMP temp[4], -temp[81].zzzz, const[25], temp[83];
  3344. 157: ENDIF;
  3345. 158: ENDIF;
  3346. 159: ENDIF;
  3347. 160: ADD temp[84].xy, input[0].xy__, -temp[2].xy__;
  3348. 161: TEX temp[85], temp[84].xy__, 2D[0];
  3349. 162: MAD temp[86], temp[85], temp[4], temp[0];
  3350. 163: MOV temp[87], temp[86];
  3351. 164: ADD temp[88].x, temp[1].x___, -const[53].y___;
  3352. 165: CMP temp[89].x, temp[88].x___, none.1___, none.0___;
  3353. 166: MOV none., temp[89].___x; [aluresult = (w != 0)]
  3354. 167: IF aluresult.x___;
  3355. 168: ADD temp[90].x, temp[1].x___, -const[53].z___;
  3356. 169: CMP temp[91].x, temp[90].x___, none.1___, none.0___;
  3357. 170: MOV none., temp[91].___x; [aluresult = (w != 0)]
  3358. 171: IF aluresult.x___;
  3359. 172: ADD temp[92].x, temp[1].x___, -const[53].w___;
  3360. 173: CMP temp[93].x, temp[92].x___, none.1___, none.0___;
  3361. 174: MOV none., temp[93].___x; [aluresult = (w != 0)]
  3362. 175: IF aluresult.x___;
  3363. 176: ADD temp[94].xy, temp[1].xx__, -const[54].1y__;
  3364. 177: CMP temp[95].xy, -|temp[94].xy__|, none.00__, none.11__;
  3365. 178: CMP temp[96].xy, -temp[95].xx__, const[28].xy__, const[27].xy__;
  3366. 179: CMP temp[2].xy, -temp[95].yy__, const[29].xy__, temp[96].xy__;
  3367. 180: ELSE;
  3368. 181: ADD temp[97].xy, temp[1].xx__, -const[55].xy__;
  3369. 182: CMP temp[98].xy, -|temp[97].xy__|, none.00__, none.11__;
  3370. 183: CMP temp[99].xy, -temp[98].xx__, const[31].xy__, const[30].xy__;
  3371. 184: CMP temp[2].xy, -temp[98].yy__, const[32].xy__, temp[99].xy__;
  3372. 185: ENDIF;
  3373. 186: ELSE;
  3374. 187: ADD temp[100].x, temp[1].x___, -const[54].z___;
  3375. 188: CMP temp[101].x, temp[100].x___, none.1___, none.0___;
  3376. 189: MOV none., temp[101].___x; [aluresult = (w != 0)]
  3377. 190: IF aluresult.x___;
  3378. 191: ADD temp[102].xy, temp[1].xx__, -const[56].xy__;
  3379. 192: CMP temp[103].xy, -|temp[102].xy__|, none.00__, none.11__;
  3380. 193: CMP temp[104].xy, -temp[103].xx__, const[34].xy__, const[33].xy__;
  3381. 194: CMP temp[2].xy, -temp[103].yy__, const[35].xy__, temp[104].xy__;
  3382. 195: ELSE;
  3383. 196: ADD temp[105].xy, temp[1].xx__, -const[57].xy__;
  3384. 197: CMP temp[106].xy, -|temp[105].xy__|, none.00__, none.11__;
  3385. 198: CMP temp[107].xy, -temp[106].xx__, const[37].xy__, const[36].xy__;
  3386. 199: CMP temp[2].xy, -temp[106].yy__, const[38].xy__, temp[107].xy__;
  3387. 200: ENDIF;
  3388. 201: ENDIF;
  3389. 202: ELSE;
  3390. 203: ADD temp[108].x, temp[1].x___, -const[54].w___;
  3391. 204: CMP temp[109].x, temp[108].x___, none.1___, none.0___;
  3392. 205: MOV none., temp[109].___x; [aluresult = (w != 0)]
  3393. 206: IF aluresult.x___;
  3394. 207: ADD temp[110].x, temp[1].x___, -const[55].z___;
  3395. 208: CMP temp[111].x, temp[110].x___, none.1___, none.0___;
  3396. 209: MOV none., temp[111].___x; [aluresult = (w != 0)]
  3397. 210: IF aluresult.x___;
  3398. 211: ADD temp[112].xy, temp[1].xx__, -const[58].xy__;
  3399. 212: CMP temp[113].xy, -|temp[112].xy__|, none.00__, none.11__;
  3400. 213: CMP temp[114].xy, -temp[113].xx__, const[40].xy__, const[39].xy__;
  3401. 214: CMP temp[2].xy, -temp[113].yy__, const[41].xy__, temp[114].xy__;
  3402. 215: ELSE;
  3403. 216: ADD temp[115].xy, temp[1].xx__, -const[59].xy__;
  3404. 217: CMP temp[116].xy, -|temp[115].xy__|, none.00__, none.11__;
  3405. 218: CMP temp[117].xy, -temp[116].xx__, const[43].xy__, const[42].xy__;
  3406. 219: CMP temp[2].xy, -temp[116].yy__, const[44].xy__, temp[117].xy__;
  3407. 220: ENDIF;
  3408. 221: ELSE;
  3409. 222: ADD temp[118].x, temp[1].x___, -const[55].w___;
  3410. 223: CMP temp[119].x, temp[118].x___, none.1___, none.0___;
  3411. 224: MOV none., temp[119].___x; [aluresult = (w != 0)]
  3412. 225: IF aluresult.x___;
  3413. 226: ADD temp[120].xy, temp[1].xx__, -const[60].xy__;
  3414. 227: CMP temp[121].xy, -|temp[120].xy__|, none.00__, none.11__;
  3415. 228: CMP temp[122].xy, -temp[121].xx__, const[46].xy__, const[45].xy__;
  3416. 229: CMP temp[2].xy, -temp[121].yy__, const[47].xy__, temp[122].xy__;
  3417. 230: ELSE;
  3418. 231: ADD temp[123].xyz, temp[1].xxx_, -const[61].xyz_;
  3419. 232: CMP temp[124].xyz, -|temp[123].xyz_|, none.000_, none.111_;
  3420. 233: CMP temp[125].xy, -temp[124].xx__, const[49].xy__, const[48].xy__;
  3421. 234: CMP temp[126].xy, -temp[124].yy__, const[50].xy__, temp[125].xy__;
  3422. 235: CMP temp[2].xy, -temp[124].zz__, const[51].xy__, temp[126].xy__;
  3423. 236: ENDIF;
  3424. 237: ENDIF;
  3425. 238: ENDIF;
  3426. 239: ADD temp[127].x, temp[1].x___, -const[53].y___;
  3427. 240: CMP temp[128].x, temp[127].x___, none.1___, none.0___;
  3428. 241: MOV none., temp[128].___x; [aluresult = (w != 0)]
  3429. 242: IF aluresult.x___;
  3430. 243: ADD temp[129].x, temp[1].x___, -const[53].z___;
  3431. 244: CMP temp[130].x, temp[129].x___, none.1___, none.0___;
  3432. 245: MOV none., temp[130].___x; [aluresult = (w != 0)]
  3433. 246: IF aluresult.x___;
  3434. 247: ADD temp[131].x, temp[1].x___, -const[53].w___;
  3435. 248: CMP temp[132].x, temp[131].x___, none.1___, none.0___;
  3436. 249: MOV none., temp[132].___x; [aluresult = (w != 0)]
  3437. 250: IF aluresult.x___;
  3438. 251: ADD temp[133].xy, temp[1].xx__, -const[54].1y__;
  3439. 252: CMP temp[134].xy, -|temp[133].xy__|, none.00__, none.11__;
  3440. 253: CMP temp[135], -temp[134].xxxx, const[2], const[1];
  3441. 254: CMP temp[4], -temp[134].yyyy, const[3], temp[135];
  3442. 255: ELSE;
  3443. 256: ADD temp[136].xy, temp[1].xx__, -const[55].xy__;
  3444. 257: CMP temp[137].xy, -|temp[136].xy__|, none.00__, none.11__;
  3445. 258: CMP temp[138], -temp[137].xxxx, const[5], const[4];
  3446. 259: CMP temp[4], -temp[137].yyyy, const[6], temp[138];
  3447. 260: ENDIF;
  3448. 261: ELSE;
  3449. 262: ADD temp[139].x, temp[1].x___, -const[54].z___;
  3450. 263: CMP temp[140].x, temp[139].x___, none.1___, none.0___;
  3451. 264: MOV none., temp[140].___x; [aluresult = (w != 0)]
  3452. 265: IF aluresult.x___;
  3453. 266: ADD temp[141].xy, temp[1].xx__, -const[56].xy__;
  3454. 267: CMP temp[142].xy, -|temp[141].xy__|, none.00__, none.11__;
  3455. 268: CMP temp[143], -temp[142].xxxx, const[8], const[7];
  3456. 269: CMP temp[4], -temp[142].yyyy, const[9], temp[143];
  3457. 270: ELSE;
  3458. 271: ADD temp[144].xy, temp[1].xx__, -const[57].xy__;
  3459. 272: CMP temp[145].xy, -|temp[144].xy__|, none.00__, none.11__;
  3460. 273: CMP temp[146], -temp[145].xxxx, const[11], const[10];
  3461. 274: CMP temp[4], -temp[145].yyyy, const[12], temp[146];
  3462. 275: ENDIF;
  3463. 276: ENDIF;
  3464. 277: ELSE;
  3465. 278: ADD temp[147].x, temp[1].x___, -const[54].w___;
  3466. 279: CMP temp[148].x, temp[147].x___, none.1___, none.0___;
  3467. 280: MOV none., temp[148].___x; [aluresult = (w != 0)]
  3468. 281: IF aluresult.x___;
  3469. 282: ADD temp[149].x, temp[1].x___, -const[55].z___;
  3470. 283: CMP temp[150].x, temp[149].x___, none.1___, none.0___;
  3471. 284: MOV none., temp[150].___x; [aluresult = (w != 0)]
  3472. 285: IF aluresult.x___;
  3473. 286: ADD temp[151].xy, temp[1].xx__, -const[58].xy__;
  3474. 287: CMP temp[152].xy, -|temp[151].xy__|, none.00__, none.11__;
  3475. 288: CMP temp[153], -temp[152].xxxx, const[14], const[13];
  3476. 289: CMP temp[4], -temp[152].yyyy, const[15], temp[153];
  3477. 290: ELSE;
  3478. 291: ADD temp[154].xy, temp[1].xx__, -const[59].xy__;
  3479. 292: CMP temp[155].xy, -|temp[154].xy__|, none.00__, none.11__;
  3480. 293: CMP temp[156], -temp[155].xxxx, const[17], const[16];
  3481. 294: CMP temp[4], -temp[155].yyyy, const[18], temp[156];
  3482. 295: ENDIF;
  3483. 296: ELSE;
  3484. 297: ADD temp[157].x, temp[1].x___, -const[55].w___;
  3485. 298: CMP temp[158].x, temp[157].x___, none.1___, none.0___;
  3486. 299: MOV none., temp[158].___x; [aluresult = (w != 0)]
  3487. 300: IF aluresult.x___;
  3488. 301: ADD temp[159].xy, temp[1].xx__, -const[60].xy__;
  3489. 302: CMP temp[160].xy, -|temp[159].xy__|, none.00__, none.11__;
  3490. 303: CMP temp[161], -temp[160].xxxx, const[20], const[19];
  3491. 304: CMP temp[4], -temp[160].yyyy, const[21], temp[161];
  3492. 305: ELSE;
  3493. 306: ADD temp[162].xyz, temp[1].xxx_, -const[61].xyz_;
  3494. 307: CMP temp[163].xyz, -|temp[162].xyz_|, none.000_, none.111_;
  3495. 308: CMP temp[164], -temp[163].xxxx, const[23], const[22];
  3496. 309: CMP temp[165], -temp[163].yyyy, const[24], temp[164];
  3497. 310: CMP temp[4], -temp[163].zzzz, const[25], temp[165];
  3498. 311: ENDIF;
  3499. 312: ENDIF;
  3500. 313: ENDIF;
  3501. 314: ADD temp[166].xy, input[0].xy__, temp[2].xy__;
  3502. 315: TEX temp[2], temp[166].xy__, 2D[0];
  3503. 316: MAD temp[3], temp[2], temp[4], temp[87];
  3504. 317: MOV temp[0], temp[3];
  3505. 318: ADD temp[2].x, temp[1].x___, none.1___;
  3506. 319: MOV temp[1].x, temp[2].x___;
  3507. 320: ENDLOOP;
  3508. 321: MOV output[0], temp[0];
  3509. Fragment Program: after 'pair translate'
  3510. # Radeon Compiler Program
  3511. 0: TEX temp[5], input[0].xy__, 2D[0];
  3512. 1: src0.xyz = temp[5], src0.w = temp[5], src1.xyz = const[1], src1.w = const[1]
  3513. MAD temp[1].xyz, src0.xyz, src1.xyz, src0.000
  3514. MAD temp[1].w, src0.w, src1.w, src0.0
  3515. 2: src0.xyz = temp[1], src0.w = temp[1]
  3516. MAD temp[0].xyz, src0.xyz, src0.111, src0.000
  3517. MAD temp[0].w, src0.w, src0.1, src0.0
  3518. 3:
  3519. MAD temp[1].x, src0.1__, src0.111, src0.000
  3520. 4: BGNLOOP;
  3521. 5: src0.xyz = const[0], src1.xyz = temp[1], srcp.xyz = (src1 - src0)
  3522. CMP temp[2].x, src0.1__, src0.0__, srcp.x__
  3523. 6: src0.xyz = temp[2]
  3524. MAD aluresult, src0.x, src0.1, src0.0
  3525. [aluresult = (result != 0)]
  3526. 7: IF aluresult.x___;
  3527. 8: BRK;
  3528. 9: ENDIF;
  3529. 10: src0.xyz = temp[1], src1.xyz = const[53]
  3530. MAD temp[6].x, src0.x__, src0.111, -src1.y__
  3531. 11: src0.xyz = temp[6]
  3532. CMP temp[7].x, src0.0__, src0.1__, src0.x__
  3533. 12: src0.xyz = temp[7]
  3534. MAD aluresult, src0.x, src0.1, src0.0
  3535. [aluresult = (result != 0)]
  3536. 13: IF aluresult.x___;
  3537. 14: src0.xyz = temp[1], src1.xyz = const[53]
  3538. MAD temp[8].x, src0.x__, src0.111, -src1.z__
  3539. 15: src0.xyz = temp[8]
  3540. CMP temp[9].x, src0.0__, src0.1__, src0.x__
  3541. 16: src0.xyz = temp[9]
  3542. MAD aluresult, src0.x, src0.1, src0.0
  3543. [aluresult = (result != 0)]
  3544. 17: IF aluresult.x___;
  3545. 18: src0.xyz = temp[1], src0.w = const[53]
  3546. MAD temp[10].x, src0.x__, src0.111, -src0.w__
  3547. 19: src0.xyz = temp[10]
  3548. CMP temp[11].x, src0.0__, src0.1__, src0.x__
  3549. 20: src0.xyz = temp[11]
  3550. MAD aluresult, src0.x, src0.1, src0.0
  3551. [aluresult = (result != 0)]
  3552. 21: IF aluresult.x___;
  3553. 22: src0.xyz = temp[1], src1.xyz = const[54]
  3554. MAD temp[12].xy, src0.xx_, src0.111, -src1.1y_
  3555. 23: src0.xyz = temp[12]
  3556. CMP temp[13].xy, src0.11_, src0.00_, -|src0.xy_|
  3557. 24: src0.xyz = const[27], src1.xyz = const[28], src2.xyz = temp[13]
  3558. CMP temp[14].xy, src0.xy_, src1.xy_, -src2.xx_
  3559. 25: src0.xyz = temp[14], src1.xyz = const[29], src2.xyz = temp[13]
  3560. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3561. 26: ELSE;
  3562. 27: src0.xyz = temp[1], src1.xyz = const[55]
  3563. MAD temp[15].xy, src0.xx_, src0.111, -src1.xy_
  3564. 28: src0.xyz = temp[15]
  3565. CMP temp[16].xy, src0.11_, src0.00_, -|src0.xy_|
  3566. 29: src0.xyz = const[30], src1.xyz = const[31], src2.xyz = temp[16]
  3567. CMP temp[17].xy, src0.xy_, src1.xy_, -src2.xx_
  3568. 30: src0.xyz = temp[17], src1.xyz = const[32], src2.xyz = temp[16]
  3569. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3570. 31: ENDIF;
  3571. 32: ELSE;
  3572. 33: src0.xyz = temp[1], src1.xyz = const[54]
  3573. MAD temp[18].x, src0.x__, src0.111, -src1.z__
  3574. 34: src0.xyz = temp[18]
  3575. CMP temp[19].x, src0.0__, src0.1__, src0.x__
  3576. 35: src0.xyz = temp[19]
  3577. MAD aluresult, src0.x, src0.1, src0.0
  3578. [aluresult = (result != 0)]
  3579. 36: IF aluresult.x___;
  3580. 37: src0.xyz = temp[1], src1.xyz = const[56]
  3581. MAD temp[20].xy, src0.xx_, src0.111, -src1.xy_
  3582. 38: src0.xyz = temp[20]
  3583. CMP temp[21].xy, src0.11_, src0.00_, -|src0.xy_|
  3584. 39: src0.xyz = const[33], src1.xyz = const[34], src2.xyz = temp[21]
  3585. CMP temp[22].xy, src0.xy_, src1.xy_, -src2.xx_
  3586. 40: src0.xyz = temp[22], src1.xyz = const[35], src2.xyz = temp[21]
  3587. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3588. 41: ELSE;
  3589. 42: src0.xyz = temp[1], src1.xyz = const[57]
  3590. MAD temp[23].xy, src0.xx_, src0.111, -src1.xy_
  3591. 43: src0.xyz = temp[23]
  3592. CMP temp[24].xy, src0.11_, src0.00_, -|src0.xy_|
  3593. 44: src0.xyz = const[36], src1.xyz = const[37], src2.xyz = temp[24]
  3594. CMP temp[25].xy, src0.xy_, src1.xy_, -src2.xx_
  3595. 45: src0.xyz = temp[25], src1.xyz = const[38], src2.xyz = temp[24]
  3596. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3597. 46: ENDIF;
  3598. 47: ENDIF;
  3599. 48: ELSE;
  3600. 49: src0.xyz = temp[1], src0.w = const[54]
  3601. MAD temp[26].x, src0.x__, src0.111, -src0.w__
  3602. 50: src0.xyz = temp[26]
  3603. CMP temp[27].x, src0.0__, src0.1__, src0.x__
  3604. 51: src0.xyz = temp[27]
  3605. MAD aluresult, src0.x, src0.1, src0.0
  3606. [aluresult = (result != 0)]
  3607. 52: IF aluresult.x___;
  3608. 53: src0.xyz = temp[1], src1.xyz = const[55]
  3609. MAD temp[28].x, src0.x__, src0.111, -src1.z__
  3610. 54: src0.xyz = temp[28]
  3611. CMP temp[29].x, src0.0__, src0.1__, src0.x__
  3612. 55: src0.xyz = temp[29]
  3613. MAD aluresult, src0.x, src0.1, src0.0
  3614. [aluresult = (result != 0)]
  3615. 56: IF aluresult.x___;
  3616. 57: src0.xyz = temp[1], src1.xyz = const[58]
  3617. MAD temp[30].xy, src0.xx_, src0.111, -src1.xy_
  3618. 58: src0.xyz = temp[30]
  3619. CMP temp[31].xy, src0.11_, src0.00_, -|src0.xy_|
  3620. 59: src0.xyz = const[39], src1.xyz = const[40], src2.xyz = temp[31]
  3621. CMP temp[32].xy, src0.xy_, src1.xy_, -src2.xx_
  3622. 60: src0.xyz = temp[32], src1.xyz = const[41], src2.xyz = temp[31]
  3623. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3624. 61: ELSE;
  3625. 62: src0.xyz = temp[1], src1.xyz = const[59]
  3626. MAD temp[33].xy, src0.xx_, src0.111, -src1.xy_
  3627. 63: src0.xyz = temp[33]
  3628. CMP temp[34].xy, src0.11_, src0.00_, -|src0.xy_|
  3629. 64: src0.xyz = const[42], src1.xyz = const[43], src2.xyz = temp[34]
  3630. CMP temp[35].xy, src0.xy_, src1.xy_, -src2.xx_
  3631. 65: src0.xyz = temp[35], src1.xyz = const[44], src2.xyz = temp[34]
  3632. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3633. 66: ENDIF;
  3634. 67: ELSE;
  3635. 68: src0.xyz = temp[1], src0.w = const[55]
  3636. MAD temp[36].x, src0.x__, src0.111, -src0.w__
  3637. 69: src0.xyz = temp[36]
  3638. CMP temp[37].x, src0.0__, src0.1__, src0.x__
  3639. 70: src0.xyz = temp[37]
  3640. MAD aluresult, src0.x, src0.1, src0.0
  3641. [aluresult = (result != 0)]
  3642. 71: IF aluresult.x___;
  3643. 72: src0.xyz = temp[1], src1.xyz = const[60]
  3644. MAD temp[38].xy, src0.xx_, src0.111, -src1.xy_
  3645. 73: src0.xyz = temp[38]
  3646. CMP temp[39].xy, src0.11_, src0.00_, -|src0.xy_|
  3647. 74: src0.xyz = const[45], src1.xyz = const[46], src2.xyz = temp[39]
  3648. CMP temp[40].xy, src0.xy_, src1.xy_, -src2.xx_
  3649. 75: src0.xyz = temp[40], src1.xyz = const[47], src2.xyz = temp[39]
  3650. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3651. 76: ELSE;
  3652. 77: src0.xyz = temp[1], src1.xyz = const[61]
  3653. MAD temp[41].xyz, src0.xxx, src0.111, -src1.xyz
  3654. 78: src0.xyz = temp[41]
  3655. CMP temp[42].xyz, src0.111, src0.000, -|src0.xyz|
  3656. 79: src0.xyz = const[48], src1.xyz = const[49], src2.xyz = temp[42]
  3657. CMP temp[43].xy, src0.xy_, src1.xy_, -src2.xx_
  3658. 80: src0.xyz = temp[43], src1.xyz = const[50], src2.xyz = temp[42]
  3659. CMP temp[44].xy, src0.xy_, src1.xy_, -src2.yy_
  3660. 81: src0.xyz = temp[44], src1.xyz = const[51], src2.xyz = temp[42]
  3661. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.zz_
  3662. 82: ENDIF;
  3663. 83: ENDIF;
  3664. 84: ENDIF;
  3665. 85: src0.xyz = temp[1], src1.xyz = const[53]
  3666. MAD temp[45].x, src0.x__, src0.111, -src1.y__
  3667. 86: src0.xyz = temp[45]
  3668. CMP temp[46].x, src0.0__, src0.1__, src0.x__
  3669. 87: src0.xyz = temp[46]
  3670. MAD aluresult, src0.x, src0.1, src0.0
  3671. [aluresult = (result != 0)]
  3672. 88: IF aluresult.x___;
  3673. 89: src0.xyz = temp[1], src1.xyz = const[53]
  3674. MAD temp[47].x, src0.x__, src0.111, -src1.z__
  3675. 90: src0.xyz = temp[47]
  3676. CMP temp[48].x, src0.0__, src0.1__, src0.x__
  3677. 91: src0.xyz = temp[48]
  3678. MAD aluresult, src0.x, src0.1, src0.0
  3679. [aluresult = (result != 0)]
  3680. 92: IF aluresult.x___;
  3681. 93: src0.xyz = temp[1], src0.w = const[53]
  3682. MAD temp[49].x, src0.x__, src0.111, -src0.w__
  3683. 94: src0.xyz = temp[49]
  3684. CMP temp[50].x, src0.0__, src0.1__, src0.x__
  3685. 95: src0.xyz = temp[50]
  3686. MAD aluresult, src0.x, src0.1, src0.0
  3687. [aluresult = (result != 0)]
  3688. 96: IF aluresult.x___;
  3689. 97: src0.xyz = temp[1], src1.xyz = const[54]
  3690. MAD temp[51].xy, src0.xx_, src0.111, -src1.1y_
  3691. 98: src0.xyz = temp[51]
  3692. CMP temp[52].xy, src0.11_, src0.00_, -|src0.xy_|
  3693. 99: src0.xyz = const[1], src0.w = const[1], src1.xyz = const[2], src1.w = const[2], src2.xyz = temp[52]
  3694. CMP temp[53].xyz, src0.xyz, src1.xyz, -src2.xxx
  3695. CMP temp[53].w, src0.w, src1.w, -src2.x
  3696. 100: src0.xyz = temp[53], src0.w = temp[53], src1.xyz = const[3], src1.w = const[3], src2.xyz = temp[52]
  3697. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3698. CMP temp[4].w, src0.w, src1.w, -src2.y
  3699. 101: ELSE;
  3700. 102: src0.xyz = temp[1], src1.xyz = const[55]
  3701. MAD temp[54].xy, src0.xx_, src0.111, -src1.xy_
  3702. 103: src0.xyz = temp[54]
  3703. CMP temp[55].xy, src0.11_, src0.00_, -|src0.xy_|
  3704. 104: src0.xyz = const[4], src0.w = const[4], src1.xyz = const[5], src1.w = const[5], src2.xyz = temp[55]
  3705. CMP temp[56].xyz, src0.xyz, src1.xyz, -src2.xxx
  3706. CMP temp[56].w, src0.w, src1.w, -src2.x
  3707. 105: src0.xyz = temp[56], src0.w = temp[56], src1.xyz = const[6], src1.w = const[6], src2.xyz = temp[55]
  3708. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3709. CMP temp[4].w, src0.w, src1.w, -src2.y
  3710. 106: ENDIF;
  3711. 107: ELSE;
  3712. 108: src0.xyz = temp[1], src1.xyz = const[54]
  3713. MAD temp[57].x, src0.x__, src0.111, -src1.z__
  3714. 109: src0.xyz = temp[57]
  3715. CMP temp[58].x, src0.0__, src0.1__, src0.x__
  3716. 110: src0.xyz = temp[58]
  3717. MAD aluresult, src0.x, src0.1, src0.0
  3718. [aluresult = (result != 0)]
  3719. 111: IF aluresult.x___;
  3720. 112: src0.xyz = temp[1], src1.xyz = const[56]
  3721. MAD temp[59].xy, src0.xx_, src0.111, -src1.xy_
  3722. 113: src0.xyz = temp[59]
  3723. CMP temp[60].xy, src0.11_, src0.00_, -|src0.xy_|
  3724. 114: src0.xyz = const[7], src0.w = const[7], src1.xyz = const[8], src1.w = const[8], src2.xyz = temp[60]
  3725. CMP temp[61].xyz, src0.xyz, src1.xyz, -src2.xxx
  3726. CMP temp[61].w, src0.w, src1.w, -src2.x
  3727. 115: src0.xyz = temp[61], src0.w = temp[61], src1.xyz = const[9], src1.w = const[9], src2.xyz = temp[60]
  3728. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3729. CMP temp[4].w, src0.w, src1.w, -src2.y
  3730. 116: ELSE;
  3731. 117: src0.xyz = temp[1], src1.xyz = const[57]
  3732. MAD temp[62].xy, src0.xx_, src0.111, -src1.xy_
  3733. 118: src0.xyz = temp[62]
  3734. CMP temp[63].xy, src0.11_, src0.00_, -|src0.xy_|
  3735. 119: src0.xyz = const[10], src0.w = const[10], src1.xyz = const[11], src1.w = const[11], src2.xyz = temp[63]
  3736. CMP temp[64].xyz, src0.xyz, src1.xyz, -src2.xxx
  3737. CMP temp[64].w, src0.w, src1.w, -src2.x
  3738. 120: src0.xyz = temp[64], src0.w = temp[64], src1.xyz = const[12], src1.w = const[12], src2.xyz = temp[63]
  3739. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3740. CMP temp[4].w, src0.w, src1.w, -src2.y
  3741. 121: ENDIF;
  3742. 122: ENDIF;
  3743. 123: ELSE;
  3744. 124: src0.xyz = temp[1], src0.w = const[54]
  3745. MAD temp[65].x, src0.x__, src0.111, -src0.w__
  3746. 125: src0.xyz = temp[65]
  3747. CMP temp[66].x, src0.0__, src0.1__, src0.x__
  3748. 126: src0.xyz = temp[66]
  3749. MAD aluresult, src0.x, src0.1, src0.0
  3750. [aluresult = (result != 0)]
  3751. 127: IF aluresult.x___;
  3752. 128: src0.xyz = temp[1], src1.xyz = const[55]
  3753. MAD temp[67].x, src0.x__, src0.111, -src1.z__
  3754. 129: src0.xyz = temp[67]
  3755. CMP temp[68].x, src0.0__, src0.1__, src0.x__
  3756. 130: src0.xyz = temp[68]
  3757. MAD aluresult, src0.x, src0.1, src0.0
  3758. [aluresult = (result != 0)]
  3759. 131: IF aluresult.x___;
  3760. 132: src0.xyz = temp[1], src1.xyz = const[58]
  3761. MAD temp[69].xy, src0.xx_, src0.111, -src1.xy_
  3762. 133: src0.xyz = temp[69]
  3763. CMP temp[70].xy, src0.11_, src0.00_, -|src0.xy_|
  3764. 134: src0.xyz = const[13], src0.w = const[13], src1.xyz = const[14], src1.w = const[14], src2.xyz = temp[70]
  3765. CMP temp[71].xyz, src0.xyz, src1.xyz, -src2.xxx
  3766. CMP temp[71].w, src0.w, src1.w, -src2.x
  3767. 135: src0.xyz = temp[71], src0.w = temp[71], src1.xyz = const[15], src1.w = const[15], src2.xyz = temp[70]
  3768. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3769. CMP temp[4].w, src0.w, src1.w, -src2.y
  3770. 136: ELSE;
  3771. 137: src0.xyz = temp[1], src1.xyz = const[59]
  3772. MAD temp[72].xy, src0.xx_, src0.111, -src1.xy_
  3773. 138: src0.xyz = temp[72]
  3774. CMP temp[73].xy, src0.11_, src0.00_, -|src0.xy_|
  3775. 139: src0.xyz = const[16], src0.w = const[16], src1.xyz = const[17], src1.w = const[17], src2.xyz = temp[73]
  3776. CMP temp[74].xyz, src0.xyz, src1.xyz, -src2.xxx
  3777. CMP temp[74].w, src0.w, src1.w, -src2.x
  3778. 140: src0.xyz = temp[74], src0.w = temp[74], src1.xyz = const[18], src1.w = const[18], src2.xyz = temp[73]
  3779. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3780. CMP temp[4].w, src0.w, src1.w, -src2.y
  3781. 141: ENDIF;
  3782. 142: ELSE;
  3783. 143: src0.xyz = temp[1], src0.w = const[55]
  3784. MAD temp[75].x, src0.x__, src0.111, -src0.w__
  3785. 144: src0.xyz = temp[75]
  3786. CMP temp[76].x, src0.0__, src0.1__, src0.x__
  3787. 145: src0.xyz = temp[76]
  3788. MAD aluresult, src0.x, src0.1, src0.0
  3789. [aluresult = (result != 0)]
  3790. 146: IF aluresult.x___;
  3791. 147: src0.xyz = temp[1], src1.xyz = const[60]
  3792. MAD temp[77].xy, src0.xx_, src0.111, -src1.xy_
  3793. 148: src0.xyz = temp[77]
  3794. CMP temp[78].xy, src0.11_, src0.00_, -|src0.xy_|
  3795. 149: src0.xyz = const[19], src0.w = const[19], src1.xyz = const[20], src1.w = const[20], src2.xyz = temp[78]
  3796. CMP temp[79].xyz, src0.xyz, src1.xyz, -src2.xxx
  3797. CMP temp[79].w, src0.w, src1.w, -src2.x
  3798. 150: src0.xyz = temp[79], src0.w = temp[79], src1.xyz = const[21], src1.w = const[21], src2.xyz = temp[78]
  3799. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3800. CMP temp[4].w, src0.w, src1.w, -src2.y
  3801. 151: ELSE;
  3802. 152: src0.xyz = temp[1], src1.xyz = const[61]
  3803. MAD temp[80].xyz, src0.xxx, src0.111, -src1.xyz
  3804. 153: src0.xyz = temp[80]
  3805. CMP temp[81].xyz, src0.111, src0.000, -|src0.xyz|
  3806. 154: src0.xyz = const[22], src0.w = const[22], src1.xyz = const[23], src1.w = const[23], src2.xyz = temp[81]
  3807. CMP temp[82].xyz, src0.xyz, src1.xyz, -src2.xxx
  3808. CMP temp[82].w, src0.w, src1.w, -src2.x
  3809. 155: src0.xyz = temp[82], src0.w = temp[82], src1.xyz = const[24], src1.w = const[24], src2.xyz = temp[81]
  3810. CMP temp[83].xyz, src0.xyz, src1.xyz, -src2.yyy
  3811. CMP temp[83].w, src0.w, src1.w, -src2.y
  3812. 156: src0.xyz = temp[83], src0.w = temp[83], src1.xyz = const[25], src1.w = const[25], src2.xyz = temp[81]
  3813. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.zzz
  3814. CMP temp[4].w, src0.w, src1.w, -src2.z
  3815. 157: ENDIF;
  3816. 158: ENDIF;
  3817. 159: ENDIF;
  3818. 160: src0.xyz = input[0], src1.xyz = temp[2]
  3819. MAD temp[84].xy, src0.xy_, src0.111, -src1.xy_
  3820. 161: TEX temp[85], temp[84].xy__, 2D[0];
  3821. 162: src0.xyz = temp[85], src0.w = temp[85], src1.xyz = temp[4], src1.w = temp[4], src2.xyz = temp[0], src2.w = temp[0]
  3822. MAD temp[86].xyz, src0.xyz, src1.xyz, src2.xyz
  3823. MAD temp[86].w, src0.w, src1.w, src2.w
  3824. 163: src0.xyz = temp[86], src0.w = temp[86]
  3825. MAD temp[87].xyz, src0.xyz, src0.111, src0.000
  3826. MAD temp[87].w, src0.w, src0.1, src0.0
  3827. 164: src0.xyz = temp[1], src1.xyz = const[53]
  3828. MAD temp[88].x, src0.x__, src0.111, -src1.y__
  3829. 165: src0.xyz = temp[88]
  3830. CMP temp[89].x, src0.0__, src0.1__, src0.x__
  3831. 166: src0.xyz = temp[89]
  3832. MAD aluresult, src0.x, src0.1, src0.0
  3833. [aluresult = (result != 0)]
  3834. 167: IF aluresult.x___;
  3835. 168: src0.xyz = temp[1], src1.xyz = const[53]
  3836. MAD temp[90].x, src0.x__, src0.111, -src1.z__
  3837. 169: src0.xyz = temp[90]
  3838. CMP temp[91].x, src0.0__, src0.1__, src0.x__
  3839. 170: src0.xyz = temp[91]
  3840. MAD aluresult, src0.x, src0.1, src0.0
  3841. [aluresult = (result != 0)]
  3842. 171: IF aluresult.x___;
  3843. 172: src0.xyz = temp[1], src0.w = const[53]
  3844. MAD temp[92].x, src0.x__, src0.111, -src0.w__
  3845. 173: src0.xyz = temp[92]
  3846. CMP temp[93].x, src0.0__, src0.1__, src0.x__
  3847. 174: src0.xyz = temp[93]
  3848. MAD aluresult, src0.x, src0.1, src0.0
  3849. [aluresult = (result != 0)]
  3850. 175: IF aluresult.x___;
  3851. 176: src0.xyz = temp[1], src1.xyz = const[54]
  3852. MAD temp[94].xy, src0.xx_, src0.111, -src1.1y_
  3853. 177: src0.xyz = temp[94]
  3854. CMP temp[95].xy, src0.11_, src0.00_, -|src0.xy_|
  3855. 178: src0.xyz = const[27], src1.xyz = const[28], src2.xyz = temp[95]
  3856. CMP temp[96].xy, src0.xy_, src1.xy_, -src2.xx_
  3857. 179: src0.xyz = temp[96], src1.xyz = const[29], src2.xyz = temp[95]
  3858. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3859. 180: ELSE;
  3860. 181: src0.xyz = temp[1], src1.xyz = const[55]
  3861. MAD temp[97].xy, src0.xx_, src0.111, -src1.xy_
  3862. 182: src0.xyz = temp[97]
  3863. CMP temp[98].xy, src0.11_, src0.00_, -|src0.xy_|
  3864. 183: src0.xyz = const[30], src1.xyz = const[31], src2.xyz = temp[98]
  3865. CMP temp[99].xy, src0.xy_, src1.xy_, -src2.xx_
  3866. 184: src0.xyz = temp[99], src1.xyz = const[32], src2.xyz = temp[98]
  3867. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3868. 185: ENDIF;
  3869. 186: ELSE;
  3870. 187: src0.xyz = temp[1], src1.xyz = const[54]
  3871. MAD temp[100].x, src0.x__, src0.111, -src1.z__
  3872. 188: src0.xyz = temp[100]
  3873. CMP temp[101].x, src0.0__, src0.1__, src0.x__
  3874. 189: src0.xyz = temp[101]
  3875. MAD aluresult, src0.x, src0.1, src0.0
  3876. [aluresult = (result != 0)]
  3877. 190: IF aluresult.x___;
  3878. 191: src0.xyz = temp[1], src1.xyz = const[56]
  3879. MAD temp[102].xy, src0.xx_, src0.111, -src1.xy_
  3880. 192: src0.xyz = temp[102]
  3881. CMP temp[103].xy, src0.11_, src0.00_, -|src0.xy_|
  3882. 193: src0.xyz = const[33], src1.xyz = const[34], src2.xyz = temp[103]
  3883. CMP temp[104].xy, src0.xy_, src1.xy_, -src2.xx_
  3884. 194: src0.xyz = temp[104], src1.xyz = const[35], src2.xyz = temp[103]
  3885. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3886. 195: ELSE;
  3887. 196: src0.xyz = temp[1], src1.xyz = const[57]
  3888. MAD temp[105].xy, src0.xx_, src0.111, -src1.xy_
  3889. 197: src0.xyz = temp[105]
  3890. CMP temp[106].xy, src0.11_, src0.00_, -|src0.xy_|
  3891. 198: src0.xyz = const[36], src1.xyz = const[37], src2.xyz = temp[106]
  3892. CMP temp[107].xy, src0.xy_, src1.xy_, -src2.xx_
  3893. 199: src0.xyz = temp[107], src1.xyz = const[38], src2.xyz = temp[106]
  3894. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3895. 200: ENDIF;
  3896. 201: ENDIF;
  3897. 202: ELSE;
  3898. 203: src0.xyz = temp[1], src0.w = const[54]
  3899. MAD temp[108].x, src0.x__, src0.111, -src0.w__
  3900. 204: src0.xyz = temp[108]
  3901. CMP temp[109].x, src0.0__, src0.1__, src0.x__
  3902. 205: src0.xyz = temp[109]
  3903. MAD aluresult, src0.x, src0.1, src0.0
  3904. [aluresult = (result != 0)]
  3905. 206: IF aluresult.x___;
  3906. 207: src0.xyz = temp[1], src1.xyz = const[55]
  3907. MAD temp[110].x, src0.x__, src0.111, -src1.z__
  3908. 208: src0.xyz = temp[110]
  3909. CMP temp[111].x, src0.0__, src0.1__, src0.x__
  3910. 209: src0.xyz = temp[111]
  3911. MAD aluresult, src0.x, src0.1, src0.0
  3912. [aluresult = (result != 0)]
  3913. 210: IF aluresult.x___;
  3914. 211: src0.xyz = temp[1], src1.xyz = const[58]
  3915. MAD temp[112].xy, src0.xx_, src0.111, -src1.xy_
  3916. 212: src0.xyz = temp[112]
  3917. CMP temp[113].xy, src0.11_, src0.00_, -|src0.xy_|
  3918. 213: src0.xyz = const[39], src1.xyz = const[40], src2.xyz = temp[113]
  3919. CMP temp[114].xy, src0.xy_, src1.xy_, -src2.xx_
  3920. 214: src0.xyz = temp[114], src1.xyz = const[41], src2.xyz = temp[113]
  3921. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3922. 215: ELSE;
  3923. 216: src0.xyz = temp[1], src1.xyz = const[59]
  3924. MAD temp[115].xy, src0.xx_, src0.111, -src1.xy_
  3925. 217: src0.xyz = temp[115]
  3926. CMP temp[116].xy, src0.11_, src0.00_, -|src0.xy_|
  3927. 218: src0.xyz = const[42], src1.xyz = const[43], src2.xyz = temp[116]
  3928. CMP temp[117].xy, src0.xy_, src1.xy_, -src2.xx_
  3929. 219: src0.xyz = temp[117], src1.xyz = const[44], src2.xyz = temp[116]
  3930. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3931. 220: ENDIF;
  3932. 221: ELSE;
  3933. 222: src0.xyz = temp[1], src0.w = const[55]
  3934. MAD temp[118].x, src0.x__, src0.111, -src0.w__
  3935. 223: src0.xyz = temp[118]
  3936. CMP temp[119].x, src0.0__, src0.1__, src0.x__
  3937. 224: src0.xyz = temp[119]
  3938. MAD aluresult, src0.x, src0.1, src0.0
  3939. [aluresult = (result != 0)]
  3940. 225: IF aluresult.x___;
  3941. 226: src0.xyz = temp[1], src1.xyz = const[60]
  3942. MAD temp[120].xy, src0.xx_, src0.111, -src1.xy_
  3943. 227: src0.xyz = temp[120]
  3944. CMP temp[121].xy, src0.11_, src0.00_, -|src0.xy_|
  3945. 228: src0.xyz = const[45], src1.xyz = const[46], src2.xyz = temp[121]
  3946. CMP temp[122].xy, src0.xy_, src1.xy_, -src2.xx_
  3947. 229: src0.xyz = temp[122], src1.xyz = const[47], src2.xyz = temp[121]
  3948. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  3949. 230: ELSE;
  3950. 231: src0.xyz = temp[1], src1.xyz = const[61]
  3951. MAD temp[123].xyz, src0.xxx, src0.111, -src1.xyz
  3952. 232: src0.xyz = temp[123]
  3953. CMP temp[124].xyz, src0.111, src0.000, -|src0.xyz|
  3954. 233: src0.xyz = const[48], src1.xyz = const[49], src2.xyz = temp[124]
  3955. CMP temp[125].xy, src0.xy_, src1.xy_, -src2.xx_
  3956. 234: src0.xyz = temp[125], src1.xyz = const[50], src2.xyz = temp[124]
  3957. CMP temp[126].xy, src0.xy_, src1.xy_, -src2.yy_
  3958. 235: src0.xyz = temp[126], src1.xyz = const[51], src2.xyz = temp[124]
  3959. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.zz_
  3960. 236: ENDIF;
  3961. 237: ENDIF;
  3962. 238: ENDIF;
  3963. 239: src0.xyz = temp[1], src1.xyz = const[53]
  3964. MAD temp[127].x, src0.x__, src0.111, -src1.y__
  3965. 240: src0.xyz = temp[127]
  3966. CMP temp[128].x, src0.0__, src0.1__, src0.x__
  3967. 241: src0.xyz = temp[128]
  3968. MAD aluresult, src0.x, src0.1, src0.0
  3969. [aluresult = (result != 0)]
  3970. 242: IF aluresult.x___;
  3971. 243: src0.xyz = temp[1], src1.xyz = const[53]
  3972. MAD temp[129].x, src0.x__, src0.111, -src1.z__
  3973. 244: src0.xyz = temp[129]
  3974. CMP temp[130].x, src0.0__, src0.1__, src0.x__
  3975. 245: src0.xyz = temp[130]
  3976. MAD aluresult, src0.x, src0.1, src0.0
  3977. [aluresult = (result != 0)]
  3978. 246: IF aluresult.x___;
  3979. 247: src0.xyz = temp[1], src0.w = const[53]
  3980. MAD temp[131].x, src0.x__, src0.111, -src0.w__
  3981. 248: src0.xyz = temp[131]
  3982. CMP temp[132].x, src0.0__, src0.1__, src0.x__
  3983. 249: src0.xyz = temp[132]
  3984. MAD aluresult, src0.x, src0.1, src0.0
  3985. [aluresult = (result != 0)]
  3986. 250: IF aluresult.x___;
  3987. 251: src0.xyz = temp[1], src1.xyz = const[54]
  3988. MAD temp[133].xy, src0.xx_, src0.111, -src1.1y_
  3989. 252: src0.xyz = temp[133]
  3990. CMP temp[134].xy, src0.11_, src0.00_, -|src0.xy_|
  3991. 253: src0.xyz = const[1], src0.w = const[1], src1.xyz = const[2], src1.w = const[2], src2.xyz = temp[134]
  3992. CMP temp[135].xyz, src0.xyz, src1.xyz, -src2.xxx
  3993. CMP temp[135].w, src0.w, src1.w, -src2.x
  3994. 254: src0.xyz = temp[135], src0.w = temp[135], src1.xyz = const[3], src1.w = const[3], src2.xyz = temp[134]
  3995. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  3996. CMP temp[4].w, src0.w, src1.w, -src2.y
  3997. 255: ELSE;
  3998. 256: src0.xyz = temp[1], src1.xyz = const[55]
  3999. MAD temp[136].xy, src0.xx_, src0.111, -src1.xy_
  4000. 257: src0.xyz = temp[136]
  4001. CMP temp[137].xy, src0.11_, src0.00_, -|src0.xy_|
  4002. 258: src0.xyz = const[4], src0.w = const[4], src1.xyz = const[5], src1.w = const[5], src2.xyz = temp[137]
  4003. CMP temp[138].xyz, src0.xyz, src1.xyz, -src2.xxx
  4004. CMP temp[138].w, src0.w, src1.w, -src2.x
  4005. 259: src0.xyz = temp[138], src0.w = temp[138], src1.xyz = const[6], src1.w = const[6], src2.xyz = temp[137]
  4006. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4007. CMP temp[4].w, src0.w, src1.w, -src2.y
  4008. 260: ENDIF;
  4009. 261: ELSE;
  4010. 262: src0.xyz = temp[1], src1.xyz = const[54]
  4011. MAD temp[139].x, src0.x__, src0.111, -src1.z__
  4012. 263: src0.xyz = temp[139]
  4013. CMP temp[140].x, src0.0__, src0.1__, src0.x__
  4014. 264: src0.xyz = temp[140]
  4015. MAD aluresult, src0.x, src0.1, src0.0
  4016. [aluresult = (result != 0)]
  4017. 265: IF aluresult.x___;
  4018. 266: src0.xyz = temp[1], src1.xyz = const[56]
  4019. MAD temp[141].xy, src0.xx_, src0.111, -src1.xy_
  4020. 267: src0.xyz = temp[141]
  4021. CMP temp[142].xy, src0.11_, src0.00_, -|src0.xy_|
  4022. 268: src0.xyz = const[7], src0.w = const[7], src1.xyz = const[8], src1.w = const[8], src2.xyz = temp[142]
  4023. CMP temp[143].xyz, src0.xyz, src1.xyz, -src2.xxx
  4024. CMP temp[143].w, src0.w, src1.w, -src2.x
  4025. 269: src0.xyz = temp[143], src0.w = temp[143], src1.xyz = const[9], src1.w = const[9], src2.xyz = temp[142]
  4026. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4027. CMP temp[4].w, src0.w, src1.w, -src2.y
  4028. 270: ELSE;
  4029. 271: src0.xyz = temp[1], src1.xyz = const[57]
  4030. MAD temp[144].xy, src0.xx_, src0.111, -src1.xy_
  4031. 272: src0.xyz = temp[144]
  4032. CMP temp[145].xy, src0.11_, src0.00_, -|src0.xy_|
  4033. 273: src0.xyz = const[10], src0.w = const[10], src1.xyz = const[11], src1.w = const[11], src2.xyz = temp[145]
  4034. CMP temp[146].xyz, src0.xyz, src1.xyz, -src2.xxx
  4035. CMP temp[146].w, src0.w, src1.w, -src2.x
  4036. 274: src0.xyz = temp[146], src0.w = temp[146], src1.xyz = const[12], src1.w = const[12], src2.xyz = temp[145]
  4037. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4038. CMP temp[4].w, src0.w, src1.w, -src2.y
  4039. 275: ENDIF;
  4040. 276: ENDIF;
  4041. 277: ELSE;
  4042. 278: src0.xyz = temp[1], src0.w = const[54]
  4043. MAD temp[147].x, src0.x__, src0.111, -src0.w__
  4044. 279: src0.xyz = temp[147]
  4045. CMP temp[148].x, src0.0__, src0.1__, src0.x__
  4046. 280: src0.xyz = temp[148]
  4047. MAD aluresult, src0.x, src0.1, src0.0
  4048. [aluresult = (result != 0)]
  4049. 281: IF aluresult.x___;
  4050. 282: src0.xyz = temp[1], src1.xyz = const[55]
  4051. MAD temp[149].x, src0.x__, src0.111, -src1.z__
  4052. 283: src0.xyz = temp[149]
  4053. CMP temp[150].x, src0.0__, src0.1__, src0.x__
  4054. 284: src0.xyz = temp[150]
  4055. MAD aluresult, src0.x, src0.1, src0.0
  4056. [aluresult = (result != 0)]
  4057. 285: IF aluresult.x___;
  4058. 286: src0.xyz = temp[1], src1.xyz = const[58]
  4059. MAD temp[151].xy, src0.xx_, src0.111, -src1.xy_
  4060. 287: src0.xyz = temp[151]
  4061. CMP temp[152].xy, src0.11_, src0.00_, -|src0.xy_|
  4062. 288: src0.xyz = const[13], src0.w = const[13], src1.xyz = const[14], src1.w = const[14], src2.xyz = temp[152]
  4063. CMP temp[153].xyz, src0.xyz, src1.xyz, -src2.xxx
  4064. CMP temp[153].w, src0.w, src1.w, -src2.x
  4065. 289: src0.xyz = temp[153], src0.w = temp[153], src1.xyz = const[15], src1.w = const[15], src2.xyz = temp[152]
  4066. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4067. CMP temp[4].w, src0.w, src1.w, -src2.y
  4068. 290: ELSE;
  4069. 291: src0.xyz = temp[1], src1.xyz = const[59]
  4070. MAD temp[154].xy, src0.xx_, src0.111, -src1.xy_
  4071. 292: src0.xyz = temp[154]
  4072. CMP temp[155].xy, src0.11_, src0.00_, -|src0.xy_|
  4073. 293: src0.xyz = const[16], src0.w = const[16], src1.xyz = const[17], src1.w = const[17], src2.xyz = temp[155]
  4074. CMP temp[156].xyz, src0.xyz, src1.xyz, -src2.xxx
  4075. CMP temp[156].w, src0.w, src1.w, -src2.x
  4076. 294: src0.xyz = temp[156], src0.w = temp[156], src1.xyz = const[18], src1.w = const[18], src2.xyz = temp[155]
  4077. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4078. CMP temp[4].w, src0.w, src1.w, -src2.y
  4079. 295: ENDIF;
  4080. 296: ELSE;
  4081. 297: src0.xyz = temp[1], src0.w = const[55]
  4082. MAD temp[157].x, src0.x__, src0.111, -src0.w__
  4083. 298: src0.xyz = temp[157]
  4084. CMP temp[158].x, src0.0__, src0.1__, src0.x__
  4085. 299: src0.xyz = temp[158]
  4086. MAD aluresult, src0.x, src0.1, src0.0
  4087. [aluresult = (result != 0)]
  4088. 300: IF aluresult.x___;
  4089. 301: src0.xyz = temp[1], src1.xyz = const[60]
  4090. MAD temp[159].xy, src0.xx_, src0.111, -src1.xy_
  4091. 302: src0.xyz = temp[159]
  4092. CMP temp[160].xy, src0.11_, src0.00_, -|src0.xy_|
  4093. 303: src0.xyz = const[19], src0.w = const[19], src1.xyz = const[20], src1.w = const[20], src2.xyz = temp[160]
  4094. CMP temp[161].xyz, src0.xyz, src1.xyz, -src2.xxx
  4095. CMP temp[161].w, src0.w, src1.w, -src2.x
  4096. 304: src0.xyz = temp[161], src0.w = temp[161], src1.xyz = const[21], src1.w = const[21], src2.xyz = temp[160]
  4097. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4098. CMP temp[4].w, src0.w, src1.w, -src2.y
  4099. 305: ELSE;
  4100. 306: src0.xyz = temp[1], src1.xyz = const[61]
  4101. MAD temp[162].xyz, src0.xxx, src0.111, -src1.xyz
  4102. 307: src0.xyz = temp[162]
  4103. CMP temp[163].xyz, src0.111, src0.000, -|src0.xyz|
  4104. 308: src0.xyz = const[22], src0.w = const[22], src1.xyz = const[23], src1.w = const[23], src2.xyz = temp[163]
  4105. CMP temp[164].xyz, src0.xyz, src1.xyz, -src2.xxx
  4106. CMP temp[164].w, src0.w, src1.w, -src2.x
  4107. 309: src0.xyz = temp[164], src0.w = temp[164], src1.xyz = const[24], src1.w = const[24], src2.xyz = temp[163]
  4108. CMP temp[165].xyz, src0.xyz, src1.xyz, -src2.yyy
  4109. CMP temp[165].w, src0.w, src1.w, -src2.y
  4110. 310: src0.xyz = temp[165], src0.w = temp[165], src1.xyz = const[25], src1.w = const[25], src2.xyz = temp[163]
  4111. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.zzz
  4112. CMP temp[4].w, src0.w, src1.w, -src2.z
  4113. 311: ENDIF;
  4114. 312: ENDIF;
  4115. 313: ENDIF;
  4116. 314: src0.xyz = input[0], src1.xyz = temp[2]
  4117. MAD temp[166].xy, src0.xy_, src0.111, src1.xy_
  4118. 315: TEX temp[2], temp[166].xy__, 2D[0];
  4119. 316: src0.xyz = temp[2], src0.w = temp[2], src1.xyz = temp[4], src1.w = temp[4], src2.xyz = temp[87], src2.w = temp[87]
  4120. MAD temp[3].xyz, src0.xyz, src1.xyz, src2.xyz
  4121. MAD temp[3].w, src0.w, src1.w, src2.w
  4122. 317: src0.xyz = temp[3], src0.w = temp[3]
  4123. MAD temp[0].xyz, src0.xyz, src0.111, src0.000
  4124. MAD temp[0].w, src0.w, src0.1, src0.0
  4125. 318: src0.xyz = temp[1]
  4126. MAD temp[2].x, src0.x__, src0.111, src0.1__
  4127. 319: src0.xyz = temp[2]
  4128. MAD temp[1].x, src0.x__, src0.111, src0.000
  4129. 320: ENDLOOP;
  4130. 321: src0.xyz = temp[0], src0.w = temp[0]
  4131. MAD color[0].xyz, src0.xyz, src0.111, src0.000
  4132. MAD color[0].w, src0.w, src0.1, src0.0
  4133. Fragment Program: after 'pair scheduling'
  4134. # Radeon Compiler Program
  4135. 0: BEGIN_TEX;
  4136. 1: TEX temp[5], input[0].xy__, 2D[0];
  4137. 2: src0.xyz = temp[5], src0.w = temp[5], src1.xyz = const[1], src1.w = const[1]
  4138. MAD temp[1].xyz, src0.xyz, src1.xyz, src0.000
  4139. MAD temp[1].w, src0.w, src1.w, src0.0
  4140. 3: src0.xyz = temp[1], src0.w = temp[1]
  4141. MAD temp[0].xyz, src0.xyz, src0.111, src0.000
  4142. MAD temp[0].w, src0.w, src0.1, src0.0
  4143. 4:
  4144. MAD temp[1].x, src0.1__, src0.111, src0.000
  4145. 5: BGNLOOP;
  4146. 6: src0.xyz = const[0], src1.xyz = temp[1], srcp.xyz = (src1 - src0)
  4147. CMP temp[2].x, src0.1__, src0.0__, srcp.x__
  4148. 7: src0.xyz = temp[2]
  4149. MAD aluresult, src0.x, src0.1, src0.0
  4150. [aluresult = (result != 0)]
  4151. 8: IF aluresult.x___;
  4152. 9: BRK;
  4153. 10: ENDIF;
  4154. 11: src0.xyz = temp[1], src1.xyz = const[53]
  4155. MAD temp[6].x, src0.x__, src0.111, -src1.y__
  4156. 12: src0.xyz = temp[6]
  4157. CMP temp[7].x, src0.0__, src0.1__, src0.x__
  4158. 13: src0.xyz = temp[7]
  4159. MAD aluresult, src0.x, src0.1, src0.0
  4160. [aluresult = (result != 0)]
  4161. 14: IF aluresult.x___;
  4162. 15: src0.xyz = temp[1], src1.xyz = const[53]
  4163. MAD temp[8].x, src0.x__, src0.111, -src1.z__
  4164. 16: src0.xyz = temp[8]
  4165. CMP temp[9].x, src0.0__, src0.1__, src0.x__
  4166. 17: src0.xyz = temp[9]
  4167. MAD aluresult, src0.x, src0.1, src0.0
  4168. [aluresult = (result != 0)]
  4169. 18: IF aluresult.x___;
  4170. 19: src0.xyz = temp[1], src0.w = const[53]
  4171. MAD temp[10].x, src0.x__, src0.111, -src0.w__
  4172. 20: src0.xyz = temp[10]
  4173. CMP temp[11].x, src0.0__, src0.1__, src0.x__
  4174. 21: src0.xyz = temp[11]
  4175. MAD aluresult, src0.x, src0.1, src0.0
  4176. [aluresult = (result != 0)]
  4177. 22: IF aluresult.x___;
  4178. 23: src0.xyz = temp[1], src1.xyz = const[54]
  4179. MAD temp[12].xy, src0.xx_, src0.111, -src1.1y_
  4180. 24: src0.xyz = temp[12]
  4181. CMP temp[13].xy, src0.11_, src0.00_, -|src0.xy_|
  4182. 25: src0.xyz = const[27], src1.xyz = const[28], src2.xyz = temp[13]
  4183. CMP temp[14].xy, src0.xy_, src1.xy_, -src2.xx_
  4184. 26: src0.xyz = temp[14], src1.xyz = const[29], src2.xyz = temp[13]
  4185. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4186. 27: ELSE;
  4187. 28: src0.xyz = temp[1], src1.xyz = const[55]
  4188. MAD temp[15].xy, src0.xx_, src0.111, -src1.xy_
  4189. 29: src0.xyz = temp[15]
  4190. CMP temp[16].xy, src0.11_, src0.00_, -|src0.xy_|
  4191. 30: src0.xyz = const[30], src1.xyz = const[31], src2.xyz = temp[16]
  4192. CMP temp[17].xy, src0.xy_, src1.xy_, -src2.xx_
  4193. 31: src0.xyz = temp[17], src1.xyz = const[32], src2.xyz = temp[16]
  4194. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4195. 32: ENDIF;
  4196. 33: ELSE;
  4197. 34: src0.xyz = temp[1], src1.xyz = const[54]
  4198. MAD temp[18].x, src0.x__, src0.111, -src1.z__
  4199. 35: src0.xyz = temp[18]
  4200. CMP temp[19].x, src0.0__, src0.1__, src0.x__
  4201. 36: src0.xyz = temp[19]
  4202. MAD aluresult, src0.x, src0.1, src0.0
  4203. [aluresult = (result != 0)]
  4204. 37: IF aluresult.x___;
  4205. 38: src0.xyz = temp[1], src1.xyz = const[56]
  4206. MAD temp[20].xy, src0.xx_, src0.111, -src1.xy_
  4207. 39: src0.xyz = temp[20]
  4208. CMP temp[21].xy, src0.11_, src0.00_, -|src0.xy_|
  4209. 40: src0.xyz = const[33], src1.xyz = const[34], src2.xyz = temp[21]
  4210. CMP temp[22].xy, src0.xy_, src1.xy_, -src2.xx_
  4211. 41: src0.xyz = temp[22], src1.xyz = const[35], src2.xyz = temp[21]
  4212. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4213. 42: ELSE;
  4214. 43: src0.xyz = temp[1], src1.xyz = const[57]
  4215. MAD temp[23].xy, src0.xx_, src0.111, -src1.xy_
  4216. 44: src0.xyz = temp[23]
  4217. CMP temp[24].xy, src0.11_, src0.00_, -|src0.xy_|
  4218. 45: src0.xyz = const[36], src1.xyz = const[37], src2.xyz = temp[24]
  4219. CMP temp[25].xy, src0.xy_, src1.xy_, -src2.xx_
  4220. 46: src0.xyz = temp[25], src1.xyz = const[38], src2.xyz = temp[24]
  4221. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4222. 47: ENDIF;
  4223. 48: ENDIF;
  4224. 49: ELSE;
  4225. 50: src0.xyz = temp[1], src0.w = const[54]
  4226. MAD temp[26].x, src0.x__, src0.111, -src0.w__
  4227. 51: src0.xyz = temp[26]
  4228. CMP temp[27].x, src0.0__, src0.1__, src0.x__
  4229. 52: src0.xyz = temp[27]
  4230. MAD aluresult, src0.x, src0.1, src0.0
  4231. [aluresult = (result != 0)]
  4232. 53: IF aluresult.x___;
  4233. 54: src0.xyz = temp[1], src1.xyz = const[55]
  4234. MAD temp[28].x, src0.x__, src0.111, -src1.z__
  4235. 55: src0.xyz = temp[28]
  4236. CMP temp[29].x, src0.0__, src0.1__, src0.x__
  4237. 56: src0.xyz = temp[29]
  4238. MAD aluresult, src0.x, src0.1, src0.0
  4239. [aluresult = (result != 0)]
  4240. 57: IF aluresult.x___;
  4241. 58: src0.xyz = temp[1], src1.xyz = const[58]
  4242. MAD temp[30].xy, src0.xx_, src0.111, -src1.xy_
  4243. 59: src0.xyz = temp[30]
  4244. CMP temp[31].xy, src0.11_, src0.00_, -|src0.xy_|
  4245. 60: src0.xyz = const[39], src1.xyz = const[40], src2.xyz = temp[31]
  4246. CMP temp[32].xy, src0.xy_, src1.xy_, -src2.xx_
  4247. 61: src0.xyz = temp[32], src1.xyz = const[41], src2.xyz = temp[31]
  4248. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4249. 62: ELSE;
  4250. 63: src0.xyz = temp[1], src1.xyz = const[59]
  4251. MAD temp[33].xy, src0.xx_, src0.111, -src1.xy_
  4252. 64: src0.xyz = temp[33]
  4253. CMP temp[34].xy, src0.11_, src0.00_, -|src0.xy_|
  4254. 65: src0.xyz = const[42], src1.xyz = const[43], src2.xyz = temp[34]
  4255. CMP temp[35].xy, src0.xy_, src1.xy_, -src2.xx_
  4256. 66: src0.xyz = temp[35], src1.xyz = const[44], src2.xyz = temp[34]
  4257. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4258. 67: ENDIF;
  4259. 68: ELSE;
  4260. 69: src0.xyz = temp[1], src0.w = const[55]
  4261. MAD temp[36].x, src0.x__, src0.111, -src0.w__
  4262. 70: src0.xyz = temp[36]
  4263. CMP temp[37].x, src0.0__, src0.1__, src0.x__
  4264. 71: src0.xyz = temp[37]
  4265. MAD aluresult, src0.x, src0.1, src0.0
  4266. [aluresult = (result != 0)]
  4267. 72: IF aluresult.x___;
  4268. 73: src0.xyz = temp[1], src1.xyz = const[60]
  4269. MAD temp[38].xy, src0.xx_, src0.111, -src1.xy_
  4270. 74: src0.xyz = temp[38]
  4271. CMP temp[39].xy, src0.11_, src0.00_, -|src0.xy_|
  4272. 75: src0.xyz = const[45], src1.xyz = const[46], src2.xyz = temp[39]
  4273. CMP temp[40].xy, src0.xy_, src1.xy_, -src2.xx_
  4274. 76: src0.xyz = temp[40], src1.xyz = const[47], src2.xyz = temp[39]
  4275. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4276. 77: ELSE;
  4277. 78: src0.xyz = temp[1], src1.xyz = const[61]
  4278. MAD temp[41].xyz, src0.xxx, src0.111, -src1.xyz
  4279. 79: src0.xyz = temp[41]
  4280. CMP temp[42].xyz, src0.111, src0.000, -|src0.xyz|
  4281. 80: src0.xyz = const[48], src1.xyz = const[49], src2.xyz = temp[42]
  4282. CMP temp[43].xy, src0.xy_, src1.xy_, -src2.xx_
  4283. 81: src0.xyz = temp[43], src1.xyz = const[50], src2.xyz = temp[42]
  4284. CMP temp[44].xy, src0.xy_, src1.xy_, -src2.yy_
  4285. 82: src0.xyz = temp[44], src1.xyz = const[51], src2.xyz = temp[42]
  4286. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.zz_
  4287. 83: ENDIF;
  4288. 84: ENDIF;
  4289. 85: ENDIF;
  4290. 86: src0.xyz = temp[1], src1.xyz = const[53]
  4291. MAD temp[45].x, src0.x__, src0.111, -src1.y__
  4292. 87: src0.xyz = temp[45]
  4293. CMP temp[46].x, src0.0__, src0.1__, src0.x__
  4294. 88: src0.xyz = temp[46]
  4295. MAD aluresult, src0.x, src0.1, src0.0
  4296. [aluresult = (result != 0)]
  4297. 89: IF aluresult.x___;
  4298. 90: src0.xyz = temp[1], src1.xyz = const[53]
  4299. MAD temp[47].x, src0.x__, src0.111, -src1.z__
  4300. 91: src0.xyz = temp[47]
  4301. CMP temp[48].x, src0.0__, src0.1__, src0.x__
  4302. 92: src0.xyz = temp[48]
  4303. MAD aluresult, src0.x, src0.1, src0.0
  4304. [aluresult = (result != 0)]
  4305. 93: IF aluresult.x___;
  4306. 94: src0.xyz = temp[1], src0.w = const[53]
  4307. MAD temp[49].x, src0.x__, src0.111, -src0.w__
  4308. 95: src0.xyz = temp[49]
  4309. CMP temp[50].x, src0.0__, src0.1__, src0.x__
  4310. 96: src0.xyz = temp[50]
  4311. MAD aluresult, src0.x, src0.1, src0.0
  4312. [aluresult = (result != 0)]
  4313. 97: IF aluresult.x___;
  4314. 98: src0.xyz = temp[1], src1.xyz = const[54]
  4315. MAD temp[51].xy, src0.xx_, src0.111, -src1.1y_
  4316. 99: src0.xyz = temp[51]
  4317. CMP temp[52].xy, src0.11_, src0.00_, -|src0.xy_|
  4318. 100: src0.xyz = const[1], src0.w = const[1], src1.xyz = const[2], src1.w = const[2], src2.xyz = temp[52]
  4319. CMP temp[53].xyz, src0.xyz, src1.xyz, -src2.xxx
  4320. CMP temp[53].w, src0.w, src1.w, -src2.x
  4321. 101: src0.xyz = temp[53], src0.w = temp[53], src1.xyz = const[3], src1.w = const[3], src2.xyz = temp[52]
  4322. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4323. CMP temp[4].w, src0.w, src1.w, -src2.y
  4324. 102: ELSE;
  4325. 103: src0.xyz = temp[1], src1.xyz = const[55]
  4326. MAD temp[54].xy, src0.xx_, src0.111, -src1.xy_
  4327. 104: src0.xyz = temp[54]
  4328. CMP temp[55].xy, src0.11_, src0.00_, -|src0.xy_|
  4329. 105: src0.xyz = const[4], src0.w = const[4], src1.xyz = const[5], src1.w = const[5], src2.xyz = temp[55]
  4330. CMP temp[56].xyz, src0.xyz, src1.xyz, -src2.xxx
  4331. CMP temp[56].w, src0.w, src1.w, -src2.x
  4332. 106: src0.xyz = temp[56], src0.w = temp[56], src1.xyz = const[6], src1.w = const[6], src2.xyz = temp[55]
  4333. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4334. CMP temp[4].w, src0.w, src1.w, -src2.y
  4335. 107: ENDIF;
  4336. 108: ELSE;
  4337. 109: src0.xyz = temp[1], src1.xyz = const[54]
  4338. MAD temp[57].x, src0.x__, src0.111, -src1.z__
  4339. 110: src0.xyz = temp[57]
  4340. CMP temp[58].x, src0.0__, src0.1__, src0.x__
  4341. 111: src0.xyz = temp[58]
  4342. MAD aluresult, src0.x, src0.1, src0.0
  4343. [aluresult = (result != 0)]
  4344. 112: IF aluresult.x___;
  4345. 113: src0.xyz = temp[1], src1.xyz = const[56]
  4346. MAD temp[59].xy, src0.xx_, src0.111, -src1.xy_
  4347. 114: src0.xyz = temp[59]
  4348. CMP temp[60].xy, src0.11_, src0.00_, -|src0.xy_|
  4349. 115: src0.xyz = const[7], src0.w = const[7], src1.xyz = const[8], src1.w = const[8], src2.xyz = temp[60]
  4350. CMP temp[61].xyz, src0.xyz, src1.xyz, -src2.xxx
  4351. CMP temp[61].w, src0.w, src1.w, -src2.x
  4352. 116: src0.xyz = temp[61], src0.w = temp[61], src1.xyz = const[9], src1.w = const[9], src2.xyz = temp[60]
  4353. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4354. CMP temp[4].w, src0.w, src1.w, -src2.y
  4355. 117: ELSE;
  4356. 118: src0.xyz = temp[1], src1.xyz = const[57]
  4357. MAD temp[62].xy, src0.xx_, src0.111, -src1.xy_
  4358. 119: src0.xyz = temp[62]
  4359. CMP temp[63].xy, src0.11_, src0.00_, -|src0.xy_|
  4360. 120: src0.xyz = const[10], src0.w = const[10], src1.xyz = const[11], src1.w = const[11], src2.xyz = temp[63]
  4361. CMP temp[64].xyz, src0.xyz, src1.xyz, -src2.xxx
  4362. CMP temp[64].w, src0.w, src1.w, -src2.x
  4363. 121: src0.xyz = temp[64], src0.w = temp[64], src1.xyz = const[12], src1.w = const[12], src2.xyz = temp[63]
  4364. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4365. CMP temp[4].w, src0.w, src1.w, -src2.y
  4366. 122: ENDIF;
  4367. 123: ENDIF;
  4368. 124: ELSE;
  4369. 125: src0.xyz = temp[1], src0.w = const[54]
  4370. MAD temp[65].x, src0.x__, src0.111, -src0.w__
  4371. 126: src0.xyz = temp[65]
  4372. CMP temp[66].x, src0.0__, src0.1__, src0.x__
  4373. 127: src0.xyz = temp[66]
  4374. MAD aluresult, src0.x, src0.1, src0.0
  4375. [aluresult = (result != 0)]
  4376. 128: IF aluresult.x___;
  4377. 129: src0.xyz = temp[1], src1.xyz = const[55]
  4378. MAD temp[67].x, src0.x__, src0.111, -src1.z__
  4379. 130: src0.xyz = temp[67]
  4380. CMP temp[68].x, src0.0__, src0.1__, src0.x__
  4381. 131: src0.xyz = temp[68]
  4382. MAD aluresult, src0.x, src0.1, src0.0
  4383. [aluresult = (result != 0)]
  4384. 132: IF aluresult.x___;
  4385. 133: src0.xyz = temp[1], src1.xyz = const[58]
  4386. MAD temp[69].xy, src0.xx_, src0.111, -src1.xy_
  4387. 134: src0.xyz = temp[69]
  4388. CMP temp[70].xy, src0.11_, src0.00_, -|src0.xy_|
  4389. 135: src0.xyz = const[13], src0.w = const[13], src1.xyz = const[14], src1.w = const[14], src2.xyz = temp[70]
  4390. CMP temp[71].xyz, src0.xyz, src1.xyz, -src2.xxx
  4391. CMP temp[71].w, src0.w, src1.w, -src2.x
  4392. 136: src0.xyz = temp[71], src0.w = temp[71], src1.xyz = const[15], src1.w = const[15], src2.xyz = temp[70]
  4393. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4394. CMP temp[4].w, src0.w, src1.w, -src2.y
  4395. 137: ELSE;
  4396. 138: src0.xyz = temp[1], src1.xyz = const[59]
  4397. MAD temp[72].xy, src0.xx_, src0.111, -src1.xy_
  4398. 139: src0.xyz = temp[72]
  4399. CMP temp[73].xy, src0.11_, src0.00_, -|src0.xy_|
  4400. 140: src0.xyz = const[16], src0.w = const[16], src1.xyz = const[17], src1.w = const[17], src2.xyz = temp[73]
  4401. CMP temp[74].xyz, src0.xyz, src1.xyz, -src2.xxx
  4402. CMP temp[74].w, src0.w, src1.w, -src2.x
  4403. 141: src0.xyz = temp[74], src0.w = temp[74], src1.xyz = const[18], src1.w = const[18], src2.xyz = temp[73]
  4404. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4405. CMP temp[4].w, src0.w, src1.w, -src2.y
  4406. 142: ENDIF;
  4407. 143: ELSE;
  4408. 144: src0.xyz = temp[1], src0.w = const[55]
  4409. MAD temp[75].x, src0.x__, src0.111, -src0.w__
  4410. 145: src0.xyz = temp[75]
  4411. CMP temp[76].x, src0.0__, src0.1__, src0.x__
  4412. 146: src0.xyz = temp[76]
  4413. MAD aluresult, src0.x, src0.1, src0.0
  4414. [aluresult = (result != 0)]
  4415. 147: IF aluresult.x___;
  4416. 148: src0.xyz = temp[1], src1.xyz = const[60]
  4417. MAD temp[77].xy, src0.xx_, src0.111, -src1.xy_
  4418. 149: src0.xyz = temp[77]
  4419. CMP temp[78].xy, src0.11_, src0.00_, -|src0.xy_|
  4420. 150: src0.xyz = const[19], src0.w = const[19], src1.xyz = const[20], src1.w = const[20], src2.xyz = temp[78]
  4421. CMP temp[79].xyz, src0.xyz, src1.xyz, -src2.xxx
  4422. CMP temp[79].w, src0.w, src1.w, -src2.x
  4423. 151: src0.xyz = temp[79], src0.w = temp[79], src1.xyz = const[21], src1.w = const[21], src2.xyz = temp[78]
  4424. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4425. CMP temp[4].w, src0.w, src1.w, -src2.y
  4426. 152: ELSE;
  4427. 153: src0.xyz = temp[1], src1.xyz = const[61]
  4428. MAD temp[80].xyz, src0.xxx, src0.111, -src1.xyz
  4429. 154: src0.xyz = temp[80]
  4430. CMP temp[81].xyz, src0.111, src0.000, -|src0.xyz|
  4431. 155: src0.xyz = const[22], src0.w = const[22], src1.xyz = const[23], src1.w = const[23], src2.xyz = temp[81]
  4432. CMP temp[82].xyz, src0.xyz, src1.xyz, -src2.xxx
  4433. CMP temp[82].w, src0.w, src1.w, -src2.x
  4434. 156: src0.xyz = temp[82], src0.w = temp[82], src1.xyz = const[24], src1.w = const[24], src2.xyz = temp[81]
  4435. CMP temp[83].xyz, src0.xyz, src1.xyz, -src2.yyy
  4436. CMP temp[83].w, src0.w, src1.w, -src2.y
  4437. 157: src0.xyz = temp[83], src0.w = temp[83], src1.xyz = const[25], src1.w = const[25], src2.xyz = temp[81]
  4438. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.zzz
  4439. CMP temp[4].w, src0.w, src1.w, -src2.z
  4440. 158: ENDIF;
  4441. 159: ENDIF;
  4442. 160: ENDIF;
  4443. 161: src0.xyz = temp[1], src1.xyz = const[53]
  4444. MAD temp[88].x, src0.x__, src0.111, -src1.y__
  4445. 162: src0.xyz = temp[88]
  4446. CMP temp[89].x, src0.0__, src0.1__, src0.x__
  4447. 163: src0.xyz = input[0], src1.xyz = temp[2], src2.xyz = temp[89]
  4448. MAD temp[84].xy, src0.xy_, src0.111, -src1.xy_
  4449. MAD aluresult, src2.x, src0.1, src0.0
  4450. [aluresult = (result != 0)]
  4451. 164: BEGIN_TEX;
  4452. 165: TEX temp[85], temp[84].xy__, 2D[0];
  4453. 166: src0.xyz = temp[85], src0.w = temp[85], src1.xyz = temp[4], src1.w = temp[4], src2.xyz = temp[0], src2.w = temp[0]
  4454. MAD temp[86].xyz, src0.xyz, src1.xyz, src2.xyz
  4455. MAD temp[86].w, src0.w, src1.w, src2.w
  4456. 167: src0.xyz = temp[86], src0.w = temp[86]
  4457. MAD temp[87].xyz, src0.xyz, src0.111, src0.000
  4458. MAD temp[87].w, src0.w, src0.1, src0.0
  4459. 168: IF aluresult.x___;
  4460. 169: src0.xyz = temp[1], src1.xyz = const[53]
  4461. MAD temp[90].x, src0.x__, src0.111, -src1.z__
  4462. 170: src0.xyz = temp[90]
  4463. CMP temp[91].x, src0.0__, src0.1__, src0.x__
  4464. 171: src0.xyz = temp[91]
  4465. MAD aluresult, src0.x, src0.1, src0.0
  4466. [aluresult = (result != 0)]
  4467. 172: IF aluresult.x___;
  4468. 173: src0.xyz = temp[1], src0.w = const[53]
  4469. MAD temp[92].x, src0.x__, src0.111, -src0.w__
  4470. 174: src0.xyz = temp[92]
  4471. CMP temp[93].x, src0.0__, src0.1__, src0.x__
  4472. 175: src0.xyz = temp[93]
  4473. MAD aluresult, src0.x, src0.1, src0.0
  4474. [aluresult = (result != 0)]
  4475. 176: IF aluresult.x___;
  4476. 177: src0.xyz = temp[1], src1.xyz = const[54]
  4477. MAD temp[94].xy, src0.xx_, src0.111, -src1.1y_
  4478. 178: src0.xyz = temp[94]
  4479. CMP temp[95].xy, src0.11_, src0.00_, -|src0.xy_|
  4480. 179: src0.xyz = const[27], src1.xyz = const[28], src2.xyz = temp[95]
  4481. CMP temp[96].xy, src0.xy_, src1.xy_, -src2.xx_
  4482. 180: src0.xyz = temp[96], src1.xyz = const[29], src2.xyz = temp[95]
  4483. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4484. 181: ELSE;
  4485. 182: src0.xyz = temp[1], src1.xyz = const[55]
  4486. MAD temp[97].xy, src0.xx_, src0.111, -src1.xy_
  4487. 183: src0.xyz = temp[97]
  4488. CMP temp[98].xy, src0.11_, src0.00_, -|src0.xy_|
  4489. 184: src0.xyz = const[30], src1.xyz = const[31], src2.xyz = temp[98]
  4490. CMP temp[99].xy, src0.xy_, src1.xy_, -src2.xx_
  4491. 185: src0.xyz = temp[99], src1.xyz = const[32], src2.xyz = temp[98]
  4492. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4493. 186: ENDIF;
  4494. 187: ELSE;
  4495. 188: src0.xyz = temp[1], src1.xyz = const[54]
  4496. MAD temp[100].x, src0.x__, src0.111, -src1.z__
  4497. 189: src0.xyz = temp[100]
  4498. CMP temp[101].x, src0.0__, src0.1__, src0.x__
  4499. 190: src0.xyz = temp[101]
  4500. MAD aluresult, src0.x, src0.1, src0.0
  4501. [aluresult = (result != 0)]
  4502. 191: IF aluresult.x___;
  4503. 192: src0.xyz = temp[1], src1.xyz = const[56]
  4504. MAD temp[102].xy, src0.xx_, src0.111, -src1.xy_
  4505. 193: src0.xyz = temp[102]
  4506. CMP temp[103].xy, src0.11_, src0.00_, -|src0.xy_|
  4507. 194: src0.xyz = const[33], src1.xyz = const[34], src2.xyz = temp[103]
  4508. CMP temp[104].xy, src0.xy_, src1.xy_, -src2.xx_
  4509. 195: src0.xyz = temp[104], src1.xyz = const[35], src2.xyz = temp[103]
  4510. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4511. 196: ELSE;
  4512. 197: src0.xyz = temp[1], src1.xyz = const[57]
  4513. MAD temp[105].xy, src0.xx_, src0.111, -src1.xy_
  4514. 198: src0.xyz = temp[105]
  4515. CMP temp[106].xy, src0.11_, src0.00_, -|src0.xy_|
  4516. 199: src0.xyz = const[36], src1.xyz = const[37], src2.xyz = temp[106]
  4517. CMP temp[107].xy, src0.xy_, src1.xy_, -src2.xx_
  4518. 200: src0.xyz = temp[107], src1.xyz = const[38], src2.xyz = temp[106]
  4519. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4520. 201: ENDIF;
  4521. 202: ENDIF;
  4522. 203: ELSE;
  4523. 204: src0.xyz = temp[1], src0.w = const[54]
  4524. MAD temp[108].x, src0.x__, src0.111, -src0.w__
  4525. 205: src0.xyz = temp[108]
  4526. CMP temp[109].x, src0.0__, src0.1__, src0.x__
  4527. 206: src0.xyz = temp[109]
  4528. MAD aluresult, src0.x, src0.1, src0.0
  4529. [aluresult = (result != 0)]
  4530. 207: IF aluresult.x___;
  4531. 208: src0.xyz = temp[1], src1.xyz = const[55]
  4532. MAD temp[110].x, src0.x__, src0.111, -src1.z__
  4533. 209: src0.xyz = temp[110]
  4534. CMP temp[111].x, src0.0__, src0.1__, src0.x__
  4535. 210: src0.xyz = temp[111]
  4536. MAD aluresult, src0.x, src0.1, src0.0
  4537. [aluresult = (result != 0)]
  4538. 211: IF aluresult.x___;
  4539. 212: src0.xyz = temp[1], src1.xyz = const[58]
  4540. MAD temp[112].xy, src0.xx_, src0.111, -src1.xy_
  4541. 213: src0.xyz = temp[112]
  4542. CMP temp[113].xy, src0.11_, src0.00_, -|src0.xy_|
  4543. 214: src0.xyz = const[39], src1.xyz = const[40], src2.xyz = temp[113]
  4544. CMP temp[114].xy, src0.xy_, src1.xy_, -src2.xx_
  4545. 215: src0.xyz = temp[114], src1.xyz = const[41], src2.xyz = temp[113]
  4546. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4547. 216: ELSE;
  4548. 217: src0.xyz = temp[1], src1.xyz = const[59]
  4549. MAD temp[115].xy, src0.xx_, src0.111, -src1.xy_
  4550. 218: src0.xyz = temp[115]
  4551. CMP temp[116].xy, src0.11_, src0.00_, -|src0.xy_|
  4552. 219: src0.xyz = const[42], src1.xyz = const[43], src2.xyz = temp[116]
  4553. CMP temp[117].xy, src0.xy_, src1.xy_, -src2.xx_
  4554. 220: src0.xyz = temp[117], src1.xyz = const[44], src2.xyz = temp[116]
  4555. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4556. 221: ENDIF;
  4557. 222: ELSE;
  4558. 223: src0.xyz = temp[1], src0.w = const[55]
  4559. MAD temp[118].x, src0.x__, src0.111, -src0.w__
  4560. 224: src0.xyz = temp[118]
  4561. CMP temp[119].x, src0.0__, src0.1__, src0.x__
  4562. 225: src0.xyz = temp[119]
  4563. MAD aluresult, src0.x, src0.1, src0.0
  4564. [aluresult = (result != 0)]
  4565. 226: IF aluresult.x___;
  4566. 227: src0.xyz = temp[1], src1.xyz = const[60]
  4567. MAD temp[120].xy, src0.xx_, src0.111, -src1.xy_
  4568. 228: src0.xyz = temp[120]
  4569. CMP temp[121].xy, src0.11_, src0.00_, -|src0.xy_|
  4570. 229: src0.xyz = const[45], src1.xyz = const[46], src2.xyz = temp[121]
  4571. CMP temp[122].xy, src0.xy_, src1.xy_, -src2.xx_
  4572. 230: src0.xyz = temp[122], src1.xyz = const[47], src2.xyz = temp[121]
  4573. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.yy_
  4574. 231: ELSE;
  4575. 232: src0.xyz = temp[1], src1.xyz = const[61]
  4576. MAD temp[123].xyz, src0.xxx, src0.111, -src1.xyz
  4577. 233: src0.xyz = temp[123]
  4578. CMP temp[124].xyz, src0.111, src0.000, -|src0.xyz|
  4579. 234: src0.xyz = const[48], src1.xyz = const[49], src2.xyz = temp[124]
  4580. CMP temp[125].xy, src0.xy_, src1.xy_, -src2.xx_
  4581. 235: src0.xyz = temp[125], src1.xyz = const[50], src2.xyz = temp[124]
  4582. CMP temp[126].xy, src0.xy_, src1.xy_, -src2.yy_
  4583. 236: src0.xyz = temp[126], src1.xyz = const[51], src2.xyz = temp[124]
  4584. CMP temp[2].xy, src0.xy_, src1.xy_, -src2.zz_
  4585. 237: ENDIF;
  4586. 238: ENDIF;
  4587. 239: ENDIF;
  4588. 240: src0.xyz = temp[1], src1.xyz = const[53]
  4589. MAD temp[127].x, src0.x__, src0.111, -src1.y__
  4590. 241: src0.xyz = temp[127]
  4591. CMP temp[128].x, src0.0__, src0.1__, src0.x__
  4592. 242: src0.xyz = temp[128]
  4593. MAD aluresult, src0.x, src0.1, src0.0
  4594. [aluresult = (result != 0)]
  4595. 243: IF aluresult.x___;
  4596. 244: src0.xyz = temp[1], src1.xyz = const[53]
  4597. MAD temp[129].x, src0.x__, src0.111, -src1.z__
  4598. 245: src0.xyz = temp[129]
  4599. CMP temp[130].x, src0.0__, src0.1__, src0.x__
  4600. 246: src0.xyz = temp[130]
  4601. MAD aluresult, src0.x, src0.1, src0.0
  4602. [aluresult = (result != 0)]
  4603. 247: IF aluresult.x___;
  4604. 248: src0.xyz = temp[1], src0.w = const[53]
  4605. MAD temp[131].x, src0.x__, src0.111, -src0.w__
  4606. 249: src0.xyz = temp[131]
  4607. CMP temp[132].x, src0.0__, src0.1__, src0.x__
  4608. 250: src0.xyz = temp[132]
  4609. MAD aluresult, src0.x, src0.1, src0.0
  4610. [aluresult = (result != 0)]
  4611. 251: IF aluresult.x___;
  4612. 252: src0.xyz = temp[1], src1.xyz = const[54]
  4613. MAD temp[133].xy, src0.xx_, src0.111, -src1.1y_
  4614. 253: src0.xyz = temp[133]
  4615. CMP temp[134].xy, src0.11_, src0.00_, -|src0.xy_|
  4616. 254: src0.xyz = const[1], src0.w = const[1], src1.xyz = const[2], src1.w = const[2], src2.xyz = temp[134]
  4617. CMP temp[135].xyz, src0.xyz, src1.xyz, -src2.xxx
  4618. CMP temp[135].w, src0.w, src1.w, -src2.x
  4619. 255: src0.xyz = temp[135], src0.w = temp[135], src1.xyz = const[3], src1.w = const[3], src2.xyz = temp[134]
  4620. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4621. CMP temp[4].w, src0.w, src1.w, -src2.y
  4622. 256: ELSE;
  4623. 257: src0.xyz = temp[1], src1.xyz = const[55]
  4624. MAD temp[136].xy, src0.xx_, src0.111, -src1.xy_
  4625. 258: src0.xyz = temp[136]
  4626. CMP temp[137].xy, src0.11_, src0.00_, -|src0.xy_|
  4627. 259: src0.xyz = const[4], src0.w = const[4], src1.xyz = const[5], src1.w = const[5], src2.xyz = temp[137]
  4628. CMP temp[138].xyz, src0.xyz, src1.xyz, -src2.xxx
  4629. CMP temp[138].w, src0.w, src1.w, -src2.x
  4630. 260: src0.xyz = temp[138], src0.w = temp[138], src1.xyz = const[6], src1.w = const[6], src2.xyz = temp[137]
  4631. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4632. CMP temp[4].w, src0.w, src1.w, -src2.y
  4633. 261: ENDIF;
  4634. 262: ELSE;
  4635. 263: src0.xyz = temp[1], src1.xyz = const[54]
  4636. MAD temp[139].x, src0.x__, src0.111, -src1.z__
  4637. 264: src0.xyz = temp[139]
  4638. CMP temp[140].x, src0.0__, src0.1__, src0.x__
  4639. 265: src0.xyz = temp[140]
  4640. MAD aluresult, src0.x, src0.1, src0.0
  4641. [aluresult = (result != 0)]
  4642. 266: IF aluresult.x___;
  4643. 267: src0.xyz = temp[1], src1.xyz = const[56]
  4644. MAD temp[141].xy, src0.xx_, src0.111, -src1.xy_
  4645. 268: src0.xyz = temp[141]
  4646. CMP temp[142].xy, src0.11_, src0.00_, -|src0.xy_|
  4647. 269: src0.xyz = const[7], src0.w = const[7], src1.xyz = const[8], src1.w = const[8], src2.xyz = temp[142]
  4648. CMP temp[143].xyz, src0.xyz, src1.xyz, -src2.xxx
  4649. CMP temp[143].w, src0.w, src1.w, -src2.x
  4650. 270: src0.xyz = temp[143], src0.w = temp[143], src1.xyz = const[9], src1.w = const[9], src2.xyz = temp[142]
  4651. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4652. CMP temp[4].w, src0.w, src1.w, -src2.y
  4653. 271: ELSE;
  4654. 272: src0.xyz = temp[1], src1.xyz = const[57]
  4655. MAD temp[144].xy, src0.xx_, src0.111, -src1.xy_
  4656. 273: src0.xyz = temp[144]
  4657. CMP temp[145].xy, src0.11_, src0.00_, -|src0.xy_|
  4658. 274: src0.xyz = const[10], src0.w = const[10], src1.xyz = const[11], src1.w = const[11], src2.xyz = temp[145]
  4659. CMP temp[146].xyz, src0.xyz, src1.xyz, -src2.xxx
  4660. CMP temp[146].w, src0.w, src1.w, -src2.x
  4661. 275: src0.xyz = temp[146], src0.w = temp[146], src1.xyz = const[12], src1.w = const[12], src2.xyz = temp[145]
  4662. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4663. CMP temp[4].w, src0.w, src1.w, -src2.y
  4664. 276: ENDIF;
  4665. 277: ENDIF;
  4666. 278: ELSE;
  4667. 279: src0.xyz = temp[1], src0.w = const[54]
  4668. MAD temp[147].x, src0.x__, src0.111, -src0.w__
  4669. 280: src0.xyz = temp[147]
  4670. CMP temp[148].x, src0.0__, src0.1__, src0.x__
  4671. 281: src0.xyz = temp[148]
  4672. MAD aluresult, src0.x, src0.1, src0.0
  4673. [aluresult = (result != 0)]
  4674. 282: IF aluresult.x___;
  4675. 283: src0.xyz = temp[1], src1.xyz = const[55]
  4676. MAD temp[149].x, src0.x__, src0.111, -src1.z__
  4677. 284: src0.xyz = temp[149]
  4678. CMP temp[150].x, src0.0__, src0.1__, src0.x__
  4679. 285: src0.xyz = temp[150]
  4680. MAD aluresult, src0.x, src0.1, src0.0
  4681. [aluresult = (result != 0)]
  4682. 286: IF aluresult.x___;
  4683. 287: src0.xyz = temp[1], src1.xyz = const[58]
  4684. MAD temp[151].xy, src0.xx_, src0.111, -src1.xy_
  4685. 288: src0.xyz = temp[151]
  4686. CMP temp[152].xy, src0.11_, src0.00_, -|src0.xy_|
  4687. 289: src0.xyz = const[13], src0.w = const[13], src1.xyz = const[14], src1.w = const[14], src2.xyz = temp[152]
  4688. CMP temp[153].xyz, src0.xyz, src1.xyz, -src2.xxx
  4689. CMP temp[153].w, src0.w, src1.w, -src2.x
  4690. 290: src0.xyz = temp[153], src0.w = temp[153], src1.xyz = const[15], src1.w = const[15], src2.xyz = temp[152]
  4691. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4692. CMP temp[4].w, src0.w, src1.w, -src2.y
  4693. 291: ELSE;
  4694. 292: src0.xyz = temp[1], src1.xyz = const[59]
  4695. MAD temp[154].xy, src0.xx_, src0.111, -src1.xy_
  4696. 293: src0.xyz = temp[154]
  4697. CMP temp[155].xy, src0.11_, src0.00_, -|src0.xy_|
  4698. 294: src0.xyz = const[16], src0.w = const[16], src1.xyz = const[17], src1.w = const[17], src2.xyz = temp[155]
  4699. CMP temp[156].xyz, src0.xyz, src1.xyz, -src2.xxx
  4700. CMP temp[156].w, src0.w, src1.w, -src2.x
  4701. 295: src0.xyz = temp[156], src0.w = temp[156], src1.xyz = const[18], src1.w = const[18], src2.xyz = temp[155]
  4702. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4703. CMP temp[4].w, src0.w, src1.w, -src2.y
  4704. 296: ENDIF;
  4705. 297: ELSE;
  4706. 298: src0.xyz = temp[1], src0.w = const[55]
  4707. MAD temp[157].x, src0.x__, src0.111, -src0.w__
  4708. 299: src0.xyz = temp[157]
  4709. CMP temp[158].x, src0.0__, src0.1__, src0.x__
  4710. 300: src0.xyz = temp[158]
  4711. MAD aluresult, src0.x, src0.1, src0.0
  4712. [aluresult = (result != 0)]
  4713. 301: IF aluresult.x___;
  4714. 302: src0.xyz = temp[1], src1.xyz = const[60]
  4715. MAD temp[159].xy, src0.xx_, src0.111, -src1.xy_
  4716. 303: src0.xyz = temp[159]
  4717. CMP temp[160].xy, src0.11_, src0.00_, -|src0.xy_|
  4718. 304: src0.xyz = const[19], src0.w = const[19], src1.xyz = const[20], src1.w = const[20], src2.xyz = temp[160]
  4719. CMP temp[161].xyz, src0.xyz, src1.xyz, -src2.xxx
  4720. CMP temp[161].w, src0.w, src1.w, -src2.x
  4721. 305: src0.xyz = temp[161], src0.w = temp[161], src1.xyz = const[21], src1.w = const[21], src2.xyz = temp[160]
  4722. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.yyy
  4723. CMP temp[4].w, src0.w, src1.w, -src2.y
  4724. 306: ELSE;
  4725. 307: src0.xyz = temp[1], src1.xyz = const[61]
  4726. MAD temp[162].xyz, src0.xxx, src0.111, -src1.xyz
  4727. 308: src0.xyz = temp[162]
  4728. CMP temp[163].xyz, src0.111, src0.000, -|src0.xyz|
  4729. 309: src0.xyz = const[22], src0.w = const[22], src1.xyz = const[23], src1.w = const[23], src2.xyz = temp[163]
  4730. CMP temp[164].xyz, src0.xyz, src1.xyz, -src2.xxx
  4731. CMP temp[164].w, src0.w, src1.w, -src2.x
  4732. 310: src0.xyz = temp[164], src0.w = temp[164], src1.xyz = const[24], src1.w = const[24], src2.xyz = temp[163]
  4733. CMP temp[165].xyz, src0.xyz, src1.xyz, -src2.yyy
  4734. CMP temp[165].w, src0.w, src1.w, -src2.y
  4735. 311: src0.xyz = temp[165], src0.w = temp[165], src1.xyz = const[25], src1.w = const[25], src2.xyz = temp[163]
  4736. CMP temp[4].xyz, src0.xyz, src1.xyz, -src2.zzz
  4737. CMP temp[4].w, src0.w, src1.w, -src2.z
  4738. 312: ENDIF;
  4739. 313: ENDIF;
  4740. 314: ENDIF;
  4741. 315: src0.xyz = input[0], src1.xyz = temp[2]
  4742. MAD temp[166].xy, src0.xy_, src0.111, src1.xy_
  4743. 316: BEGIN_TEX;
  4744. 317: TEX temp[2], temp[166].xy__, 2D[0];
  4745. 318: src0.xyz = temp[2], src0.w = temp[2], src1.xyz = temp[4], src1.w = temp[4], src2.xyz = temp[87], src2.w = temp[87]
  4746. MAD temp[3].xyz, src0.xyz, src1.xyz, src2.xyz
  4747. MAD temp[3].w, src0.w, src1.w, src2.w
  4748. 319: src0.xyz = temp[3], src0.w = temp[3]
  4749. MAD temp[0].xyz, src0.xyz, src0.111, src0.000
  4750. MAD temp[0].w, src0.w, src0.1, src0.0
  4751. 320: src0.xyz = temp[1]
  4752. MAD temp[2].x, src0.x__, src0.111, src0.1__
  4753. 321: src0.xyz = temp[2]
  4754. MAD temp[1].x, src0.x__, src0.111, src0.000
  4755. 322: ENDLOOP;
  4756. 323: src0.xyz = temp[0], src0.w = temp[0]
  4757. MAD color[0].xyz, src0.xyz, src0.111, src0.000
  4758. MAD color[0].w, src0.w, src0.1, src0.0
  4759. r300compiler error: Ran out of hardware temporaries
  4760. r300 FP: Compiler Error:
  4761. Ran out of hardware temporaries
Advertisement
Add Comment
Please, Sign In to add comment