1/* 2 * Copyright (c) 2007, 2008, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25#if 0 26// 27// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 28// 29// fxc /T ps_2_0 /Vn rescale0 /Fh tmp.h tmp.hlsl 30// 31// 32// Parameters: 33// 34// sampler2D baseImage; 35// float4 offsets; 36// float4 scaleFactors; 37// 38// 39// Registers: 40// 41// Name Reg Size 42// ------------ ----- ---- 43// scaleFactors c0 1 44// offsets c1 1 45// baseImage s0 1 46// 47 48 ps_2_0 49 dcl t0.xy 50 dcl v0 51 dcl_2d s0 52 texld r0, t0, s0 53 mov r1, c0 54 mad r0, r0, r1, c1 55 mul r0, r0, v0 56 mov oC0, r0 57 58// approximately 5 instruction slots used (1 texture, 4 arithmetic) 59#endif 60 61const DWORD rescale0[] = 62{ 63 0xffff0200, 0x0036fffe, 0x42415443, 0x0000001c, 0x000000a0, 0xffff0200, 64 0x00000003, 0x0000001c, 0x20000100, 0x00000099, 0x00000058, 0x00000003, 65 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010002, 0x00060001, 66 0x0000007c, 0x00000000, 0x0000008c, 0x00000002, 0x00020001, 0x0000007c, 67 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 68 0x00000001, 0x00000000, 0x7366666f, 0x00737465, 0x00030001, 0x00040001, 69 0x00000001, 0x00000000, 0x6c616373, 0x63614665, 0x73726f74, 0x5f737000, 70 0x00305f32, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 71 0x65646168, 0x6f432072, 0x6c69706d, 0x39207265, 0x2e39312e, 0x2e393439, 72 0x31313132, 0xababab00, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 73 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x03000042, 74 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000001, 0x800f0001, 0xa0e40000, 75 0x04000004, 0x800f0000, 0x80e40000, 0x80e40001, 0xa0e40001, 0x03000005, 76 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 77 0x0000ffff 78}; 79#if 0 80// 81// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 82// 83// fxc /T ps_2_0 /Vn rescale1 /Fh tmp.h tmp.hlsl 84// 85// 86// Parameters: 87// 88// sampler2D baseImage; 89// float4 offsets; 90// float4 scaleFactors; 91// 92// 93// Registers: 94// 95// Name Reg Size 96// ------------ ----- ---- 97// scaleFactors c0 1 98// offsets c1 1 99// baseImage s0 1 100// 101 102 ps_2_0 103 dcl t0.xy 104 dcl v0 105 dcl_2d s0 106 texld r0, t0, s0 107 rcp r1.w, r0.w 108 mul r0.xyz, r0, r1.w 109 mov r1, c0 110 mad r0, r0, r1, c1 111 mul r0.xyz, r0.w, r0 112 mul r0, r0, v0 113 mov oC0, r0 114 115// approximately 8 instruction slots used (1 texture, 7 arithmetic) 116#endif 117 118const DWORD rescale1[] = 119{ 120 0xffff0200, 0x0036fffe, 0x42415443, 0x0000001c, 0x000000a0, 0xffff0200, 121 0x00000003, 0x0000001c, 0x20000100, 0x00000099, 0x00000058, 0x00000003, 122 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010002, 0x00060001, 123 0x0000007c, 0x00000000, 0x0000008c, 0x00000002, 0x00020001, 0x0000007c, 124 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 125 0x00000001, 0x00000000, 0x7366666f, 0x00737465, 0x00030001, 0x00040001, 126 0x00000001, 0x00000000, 0x6c616373, 0x63614665, 0x73726f74, 0x5f737000, 127 0x00305f32, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 128 0x65646168, 0x6f432072, 0x6c69706d, 0x39207265, 0x2e39312e, 0x2e393439, 129 0x31313132, 0xababab00, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 130 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x03000042, 131 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000006, 0x80080001, 0x80ff0000, 132 0x03000005, 0x80070000, 0x80e40000, 0x80ff0001, 0x02000001, 0x800f0001, 133 0xa0e40000, 0x04000004, 0x800f0000, 0x80e40000, 0x80e40001, 0xa0e40001, 134 0x03000005, 0x80070000, 0x80ff0000, 0x80e40000, 0x03000005, 0x800f0000, 135 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 136}; 137const DWORD *rescaleShaders[] = 138{ 139 rescale0, 140 rescale1, 141}; 142 143#if 0 144// 145// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 146// 147// fxc /T ps_2_0 /Vn convolve0 /Fh tmp.h tmp.hlsl 148// 149// 150// Parameters: 151// 152// sampler2D baseImage; 153// float4 imgEdge; 154// float3 kernelVals[9]; 155// 156// 157// Registers: 158// 159// Name Reg Size 160// ------------ ----- ---- 161// imgEdge c0 1 162// kernelVals c1 9 163// baseImage s0 1 164// 165 166 ps_2_0 167 def c10, 0, 1, 0, 0 168 dcl t0.xy 169 dcl v0 170 dcl_2d s0 171 add r0.xy, t0, c2 172 add r1.xy, t0, c1 173 add r2.xy, t0, c3 174 add r3.xy, t0, c4 175 add r4.xy, t0, c5 176 add r5.xy, t0, c6 177 add r6.xy, t0, c7 178 add r7.xy, t0, c8 179 add r8.xy, t0, c9 180 texld r0, r0, s0 181 texld r1, r1, s0 182 texld r2, r2, s0 183 texld r9, t0, s0 184 texld r3, r3, s0 185 texld r4, r4, s0 186 texld r5, r5, s0 187 texld r6, r6, s0 188 texld r7, r7, s0 189 texld r8, r8, s0 190 mul r0, r0, c2.z 191 mad r0, c1.z, r1, r0 192 mad r0, c3.z, r2, r0 193 mad r0, c4.z, r3, r0 194 mad r0, c5.z, r4, r0 195 mad r0, c6.z, r5, r0 196 mad r0, c7.z, r6, r0 197 mad r0, c8.z, r7, r0 198 mad r0, c9.z, r8, r0 199 mul r0, r0, v0 200 add r1.yw, -t0.y, c0 201 add r1.xz, -t0.x, c0 202 cmp r1.x, -r1.x, c10.x, c10.y 203 cmp r1.y, -r1.y, c10.x, c10.y 204 add r1.x, r1.x, r1.y 205 cmp r1.x, -r1.x, c10.x, c10.y 206 cmp r1.y, r1.z, c10.x, c10.y 207 cmp r1.z, r1.w, c10.x, c10.y 208 add r1.x, r1.x, r1.y 209 cmp r1.x, -r1.x, c10.x, c10.y 210 add r1.x, r1.z, r1.x 211 cmp r0, -r1.x, r0, r9 212 mov oC0, r0 213 214// approximately 42 instruction slots used (10 texture, 32 arithmetic) 215#endif 216 217const DWORD convolve0[] = 218{ 219 0xffff0200, 0x0039fffe, 0x42415443, 0x0000001c, 0x000000af, 0xffff0200, 220 0x00000003, 0x0000001c, 0x20000100, 0x000000a8, 0x00000058, 0x00000003, 221 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00000002, 0x00020001, 222 0x0000007c, 0x00000000, 0x0000008c, 0x00010002, 0x00060009, 0x00000098, 223 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 224 0x00000001, 0x00000000, 0x45676d69, 0x00656764, 0x00030001, 0x00040001, 225 0x00000001, 0x00000000, 0x6e72656b, 0x61566c65, 0xab00736c, 0x00030001, 226 0x00030001, 0x00000009, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 227 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 228 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 229 0xa00f000a, 0x00000000, 0x3f800000, 0x00000000, 0x00000000, 0x0200001f, 230 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 231 0x90000000, 0xa00f0800, 0x03000002, 0x80030000, 0xb0e40000, 0xa0e40002, 232 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40001, 0x03000002, 0x80030002, 233 0xb0e40000, 0xa0e40003, 0x03000002, 0x80030003, 0xb0e40000, 0xa0e40004, 234 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40005, 0x03000002, 0x80030005, 235 0xb0e40000, 0xa0e40006, 0x03000002, 0x80030006, 0xb0e40000, 0xa0e40007, 236 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40008, 0x03000002, 0x80030008, 237 0xb0e40000, 0xa0e40009, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40800, 238 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 239 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0009, 0xb0e40000, 0xa0e40800, 240 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 241 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40005, 0xa0e40800, 242 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 0x03000042, 0x800f0007, 243 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 0x80e40008, 0xa0e40800, 244 0x03000005, 0x800f0000, 0x80e40000, 0xa0aa0002, 0x04000004, 0x800f0000, 245 0xa0aa0001, 0x80e40001, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0003, 246 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0004, 0x80e40003, 247 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0005, 0x80e40004, 0x80e40000, 248 0x04000004, 0x800f0000, 0xa0aa0006, 0x80e40005, 0x80e40000, 0x04000004, 249 0x800f0000, 0xa0aa0007, 0x80e40006, 0x80e40000, 0x04000004, 0x800f0000, 250 0xa0aa0008, 0x80e40007, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0009, 251 0x80e40008, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 252 0x03000002, 0x800a0001, 0xb1550000, 0xa0e40000, 0x03000002, 0x80050001, 253 0xb1000000, 0xa0e40000, 0x04000058, 0x80010001, 0x81000001, 0xa000000a, 254 0xa055000a, 0x04000058, 0x80020001, 0x81550001, 0xa000000a, 0xa055000a, 255 0x03000002, 0x80010001, 0x80000001, 0x80550001, 0x04000058, 0x80010001, 256 0x81000001, 0xa000000a, 0xa055000a, 0x04000058, 0x80020001, 0x80aa0001, 257 0xa000000a, 0xa055000a, 0x04000058, 0x80040001, 0x80ff0001, 0xa000000a, 258 0xa055000a, 0x03000002, 0x80010001, 0x80000001, 0x80550001, 0x04000058, 259 0x80010001, 0x81000001, 0xa000000a, 0xa055000a, 0x03000002, 0x80010001, 260 0x80aa0001, 0x80000001, 0x04000058, 0x800f0000, 0x81000001, 0x80e40000, 261 0x80e40009, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 262}; 263#if 0 264// 265// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 266// 267// fxc /T ps_2_0 /Vn convolve1 /Fh tmp.h tmp.hlsl 268// 269// 270// Parameters: 271// 272// sampler2D baseImage; 273// float4 imgEdge; 274// float3 kernelVals[9]; 275// 276// 277// Registers: 278// 279// Name Reg Size 280// ------------ ----- ---- 281// imgEdge c0 1 282// kernelVals c1 9 283// baseImage s0 1 284// 285 286 ps_2_0 287 def c10, 0, 1, 0, 0 288 dcl t0.xy 289 dcl v0 290 dcl_2d s0 291 add r0.xy, t0, c2 292 add r1.xy, t0, c1 293 add r2.xy, t0, c3 294 add r3.xy, t0, c4 295 add r4.xy, t0, c5 296 add r5.xy, t0, c6 297 add r6.xy, t0, c7 298 add r7.xy, t0, c8 299 add r8.xy, t0, c9 300 texld r0, r0, s0 301 texld r1, r1, s0 302 texld r2, r2, s0 303 texld r3, r3, s0 304 texld r4, r4, s0 305 texld r5, r5, s0 306 texld r6, r6, s0 307 texld r7, r7, s0 308 texld r8, r8, s0 309 mul r0, r0, c2.z 310 mad r0, c1.z, r1, r0 311 mad r0, c3.z, r2, r0 312 mad r0, c4.z, r3, r0 313 mad r0, c5.z, r4, r0 314 mad r0, c6.z, r5, r0 315 mad r0, c7.z, r6, r0 316 mad r0, c8.z, r7, r0 317 mad r0, c9.z, r8, r0 318 mul r0, r0, v0 319 add r1.yw, -t0.y, c0 320 add r1.xz, -t0.x, c0 321 cmp r1.x, -r1.x, c10.x, c10.y 322 cmp r1.y, -r1.y, c10.x, c10.y 323 add r1.x, r1.x, r1.y 324 cmp r1.x, -r1.x, c10.x, c10.y 325 cmp r1.y, r1.z, c10.x, c10.y 326 cmp r1.z, r1.w, c10.x, c10.y 327 add r1.x, r1.x, r1.y 328 cmp r1.x, -r1.x, c10.x, c10.y 329 add r1.x, r1.z, r1.x 330 cmp r0, -r1.x, r0, c10.x 331 mov oC0, r0 332 333// approximately 41 instruction slots used (9 texture, 32 arithmetic) 334#endif 335 336const DWORD convolve1[] = 337{ 338 0xffff0200, 0x0039fffe, 0x42415443, 0x0000001c, 0x000000af, 0xffff0200, 339 0x00000003, 0x0000001c, 0x20000100, 0x000000a8, 0x00000058, 0x00000003, 340 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00000002, 0x00020001, 341 0x0000007c, 0x00000000, 0x0000008c, 0x00010002, 0x00060009, 0x00000098, 342 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 343 0x00000001, 0x00000000, 0x45676d69, 0x00656764, 0x00030001, 0x00040001, 344 0x00000001, 0x00000000, 0x6e72656b, 0x61566c65, 0xab00736c, 0x00030001, 345 0x00030001, 0x00000009, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 346 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 347 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 348 0xa00f000a, 0x00000000, 0x3f800000, 0x00000000, 0x00000000, 0x0200001f, 349 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 350 0x90000000, 0xa00f0800, 0x03000002, 0x80030000, 0xb0e40000, 0xa0e40002, 351 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40001, 0x03000002, 0x80030002, 352 0xb0e40000, 0xa0e40003, 0x03000002, 0x80030003, 0xb0e40000, 0xa0e40004, 353 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40005, 0x03000002, 0x80030005, 354 0xb0e40000, 0xa0e40006, 0x03000002, 0x80030006, 0xb0e40000, 0xa0e40007, 355 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40008, 0x03000002, 0x80030008, 356 0xb0e40000, 0xa0e40009, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40800, 357 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 358 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 359 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 360 0x80e40005, 0xa0e40800, 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 361 0x03000042, 0x800f0007, 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 362 0x80e40008, 0xa0e40800, 0x03000005, 0x800f0000, 0x80e40000, 0xa0aa0002, 363 0x04000004, 0x800f0000, 0xa0aa0001, 0x80e40001, 0x80e40000, 0x04000004, 364 0x800f0000, 0xa0aa0003, 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 365 0xa0aa0004, 0x80e40003, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0005, 366 0x80e40004, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0006, 0x80e40005, 367 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0007, 0x80e40006, 0x80e40000, 368 0x04000004, 0x800f0000, 0xa0aa0008, 0x80e40007, 0x80e40000, 0x04000004, 369 0x800f0000, 0xa0aa0009, 0x80e40008, 0x80e40000, 0x03000005, 0x800f0000, 370 0x80e40000, 0x90e40000, 0x03000002, 0x800a0001, 0xb1550000, 0xa0e40000, 371 0x03000002, 0x80050001, 0xb1000000, 0xa0e40000, 0x04000058, 0x80010001, 372 0x81000001, 0xa000000a, 0xa055000a, 0x04000058, 0x80020001, 0x81550001, 373 0xa000000a, 0xa055000a, 0x03000002, 0x80010001, 0x80000001, 0x80550001, 374 0x04000058, 0x80010001, 0x81000001, 0xa000000a, 0xa055000a, 0x04000058, 375 0x80020001, 0x80aa0001, 0xa000000a, 0xa055000a, 0x04000058, 0x80040001, 376 0x80ff0001, 0xa000000a, 0xa055000a, 0x03000002, 0x80010001, 0x80000001, 377 0x80550001, 0x04000058, 0x80010001, 0x81000001, 0xa000000a, 0xa055000a, 378 0x03000002, 0x80010001, 0x80aa0001, 0x80000001, 0x04000058, 0x800f0000, 379 0x81000001, 0x80e40000, 0xa000000a, 0x02000001, 0x800f0800, 0x80e40000, 380 0x0000ffff 381}; 382#if 0 383// 384// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 385// 386// fxc /T ps_2_0 /Vn convolve2 /Fh tmp.h tmp.hlsl 387// 388// 389// Parameters: 390// 391// sampler2D baseImage; 392// float4 imgEdge; 393// float3 kernelVals[25]; 394// 395// 396// Registers: 397// 398// Name Reg Size 399// ------------ ----- ---- 400// imgEdge c0 1 401// kernelVals c1 25 402// baseImage s0 1 403// 404 405 ps_2_0 406 def c26, 0, 1, 0, 0 407 dcl t0.xy 408 dcl v0 409 dcl_2d s0 410 add r0.xy, t0, c2 411 add r1.xy, t0, c1 412 add r2.xy, t0, c3 413 add r3.xy, t0, c4 414 add r4.xy, t0, c5 415 add r5.xy, t0, c6 416 add r6.xy, t0, c7 417 add r7.xy, t0, c8 418 add r8.xy, t0, c9 419 texld r0, r0, s0 420 texld r1, r1, s0 421 texld r2, r2, s0 422 texld r3, r3, s0 423 texld r4, r4, s0 424 texld r5, r5, s0 425 texld r6, r6, s0 426 texld r7, r7, s0 427 texld r8, r8, s0 428 mul r0, r0, c2.z 429 mad r0, c1.z, r1, r0 430 mad r0, c3.z, r2, r0 431 mad r0, c4.z, r3, r0 432 mad r0, c5.z, r4, r0 433 mad r0, c6.z, r5, r0 434 mad r0, c7.z, r6, r0 435 mad r0, c8.z, r7, r0 436 mad r0, c9.z, r8, r0 437 add r1.xy, t0, c10 438 add r2.xy, t0, c11 439 add r3.xy, t0, c12 440 add r4.xy, t0, c13 441 add r5.xy, t0, c14 442 add r6.xy, t0, c15 443 add r7.xy, t0, c16 444 add r8.xy, t0, c17 445 add r9.xy, t0, c18 446 texld r1, r1, s0 447 texld r2, r2, s0 448 texld r3, r3, s0 449 texld r4, r4, s0 450 texld r5, r5, s0 451 texld r6, r6, s0 452 texld r7, r7, s0 453 texld r8, r8, s0 454 texld r9, r9, s0 455 mad r0, c10.z, r1, r0 456 mad r0, c11.z, r2, r0 457 mad r0, c12.z, r3, r0 458 mad r0, c13.z, r4, r0 459 mad r0, c14.z, r5, r0 460 mad r0, c15.z, r6, r0 461 mad r0, c16.z, r7, r0 462 mad r0, c17.z, r8, r0 463 mad r0, c18.z, r9, r0 464 add r1.xy, t0, c19 465 add r2.xy, t0, c20 466 add r3.xy, t0, c21 467 add r4.xy, t0, c22 468 add r5.xy, t0, c23 469 add r6.xy, t0, c24 470 add r7.xy, t0, c25 471 texld r1, r1, s0 472 texld r2, r2, s0 473 texld r3, r3, s0 474 texld r4, r4, s0 475 texld r5, r5, s0 476 texld r6, r6, s0 477 texld r7, r7, s0 478 texld r8, t0, s0 479 mad r0, c19.z, r1, r0 480 mad r0, c20.z, r2, r0 481 mad r0, c21.z, r3, r0 482 mad r0, c22.z, r4, r0 483 mad r0, c23.z, r5, r0 484 mad r0, c24.z, r6, r0 485 mad r0, c25.z, r7, r0 486 mul r0, r0, v0 487 add r1.yw, -t0.y, c0 488 add r1.xz, -t0.x, c0 489 cmp r1.x, -r1.x, c26.x, c26.y 490 cmp r1.y, -r1.y, c26.x, c26.y 491 add r1.x, r1.x, r1.y 492 cmp r1.x, -r1.x, c26.x, c26.y 493 cmp r1.y, r1.z, c26.x, c26.y 494 cmp r1.z, r1.w, c26.x, c26.y 495 add r1.x, r1.x, r1.y 496 cmp r1.x, -r1.x, c26.x, c26.y 497 add r1.x, r1.z, r1.x 498 cmp r0, -r1.x, r0, r8 499 mov oC0, r0 500 501// approximately 90 instruction slots used (26 texture, 64 arithmetic) 502#endif 503 504const DWORD convolve2[] = 505{ 506 0xffff0200, 0x0039fffe, 0x42415443, 0x0000001c, 0x000000af, 0xffff0200, 507 0x00000003, 0x0000001c, 0x20000100, 0x000000a8, 0x00000058, 0x00000003, 508 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00000002, 0x00020001, 509 0x0000007c, 0x00000000, 0x0000008c, 0x00010002, 0x00060019, 0x00000098, 510 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 511 0x00000001, 0x00000000, 0x45676d69, 0x00656764, 0x00030001, 0x00040001, 512 0x00000001, 0x00000000, 0x6e72656b, 0x61566c65, 0xab00736c, 0x00030001, 513 0x00030001, 0x00000019, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 514 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 515 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 516 0xa00f001a, 0x00000000, 0x3f800000, 0x00000000, 0x00000000, 0x0200001f, 517 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 518 0x90000000, 0xa00f0800, 0x03000002, 0x80030000, 0xb0e40000, 0xa0e40002, 519 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40001, 0x03000002, 0x80030002, 520 0xb0e40000, 0xa0e40003, 0x03000002, 0x80030003, 0xb0e40000, 0xa0e40004, 521 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40005, 0x03000002, 0x80030005, 522 0xb0e40000, 0xa0e40006, 0x03000002, 0x80030006, 0xb0e40000, 0xa0e40007, 523 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40008, 0x03000002, 0x80030008, 524 0xb0e40000, 0xa0e40009, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40800, 525 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 526 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 527 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 528 0x80e40005, 0xa0e40800, 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 529 0x03000042, 0x800f0007, 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 530 0x80e40008, 0xa0e40800, 0x03000005, 0x800f0000, 0x80e40000, 0xa0aa0002, 531 0x04000004, 0x800f0000, 0xa0aa0001, 0x80e40001, 0x80e40000, 0x04000004, 532 0x800f0000, 0xa0aa0003, 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 533 0xa0aa0004, 0x80e40003, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0005, 534 0x80e40004, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0006, 0x80e40005, 535 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0007, 0x80e40006, 0x80e40000, 536 0x04000004, 0x800f0000, 0xa0aa0008, 0x80e40007, 0x80e40000, 0x04000004, 537 0x800f0000, 0xa0aa0009, 0x80e40008, 0x80e40000, 0x03000002, 0x80030001, 538 0xb0e40000, 0xa0e4000a, 0x03000002, 0x80030002, 0xb0e40000, 0xa0e4000b, 539 0x03000002, 0x80030003, 0xb0e40000, 0xa0e4000c, 0x03000002, 0x80030004, 540 0xb0e40000, 0xa0e4000d, 0x03000002, 0x80030005, 0xb0e40000, 0xa0e4000e, 541 0x03000002, 0x80030006, 0xb0e40000, 0xa0e4000f, 0x03000002, 0x80030007, 542 0xb0e40000, 0xa0e40010, 0x03000002, 0x80030008, 0xb0e40000, 0xa0e40011, 543 0x03000002, 0x80030009, 0xb0e40000, 0xa0e40012, 0x03000042, 0x800f0001, 544 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 545 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 546 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40005, 0xa0e40800, 547 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 0x03000042, 0x800f0007, 548 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 0x80e40008, 0xa0e40800, 549 0x03000042, 0x800f0009, 0x80e40009, 0xa0e40800, 0x04000004, 0x800f0000, 550 0xa0aa000a, 0x80e40001, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000b, 551 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000c, 0x80e40003, 552 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000d, 0x80e40004, 0x80e40000, 553 0x04000004, 0x800f0000, 0xa0aa000e, 0x80e40005, 0x80e40000, 0x04000004, 554 0x800f0000, 0xa0aa000f, 0x80e40006, 0x80e40000, 0x04000004, 0x800f0000, 555 0xa0aa0010, 0x80e40007, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0011, 556 0x80e40008, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0012, 0x80e40009, 557 0x80e40000, 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40013, 0x03000002, 558 0x80030002, 0xb0e40000, 0xa0e40014, 0x03000002, 0x80030003, 0xb0e40000, 559 0xa0e40015, 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40016, 0x03000002, 560 0x80030005, 0xb0e40000, 0xa0e40017, 0x03000002, 0x80030006, 0xb0e40000, 561 0xa0e40018, 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40019, 0x03000042, 562 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 563 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x03000042, 564 0x800f0004, 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40005, 565 0xa0e40800, 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 0x03000042, 566 0x800f0007, 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 0xb0e40000, 567 0xa0e40800, 0x04000004, 0x800f0000, 0xa0aa0013, 0x80e40001, 0x80e40000, 568 0x04000004, 0x800f0000, 0xa0aa0014, 0x80e40002, 0x80e40000, 0x04000004, 569 0x800f0000, 0xa0aa0015, 0x80e40003, 0x80e40000, 0x04000004, 0x800f0000, 570 0xa0aa0016, 0x80e40004, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0017, 571 0x80e40005, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0018, 0x80e40006, 572 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0019, 0x80e40007, 0x80e40000, 573 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x03000002, 0x800a0001, 574 0xb1550000, 0xa0e40000, 0x03000002, 0x80050001, 0xb1000000, 0xa0e40000, 575 0x04000058, 0x80010001, 0x81000001, 0xa000001a, 0xa055001a, 0x04000058, 576 0x80020001, 0x81550001, 0xa000001a, 0xa055001a, 0x03000002, 0x80010001, 577 0x80000001, 0x80550001, 0x04000058, 0x80010001, 0x81000001, 0xa000001a, 578 0xa055001a, 0x04000058, 0x80020001, 0x80aa0001, 0xa000001a, 0xa055001a, 579 0x04000058, 0x80040001, 0x80ff0001, 0xa000001a, 0xa055001a, 0x03000002, 580 0x80010001, 0x80000001, 0x80550001, 0x04000058, 0x80010001, 0x81000001, 581 0xa000001a, 0xa055001a, 0x03000002, 0x80010001, 0x80aa0001, 0x80000001, 582 0x04000058, 0x800f0000, 0x81000001, 0x80e40000, 0x80e40008, 0x02000001, 583 0x800f0800, 0x80e40000, 0x0000ffff 584}; 585#if 0 586// 587// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 588// 589// fxc /T ps_2_0 /Vn convolve3 /Fh tmp.h tmp.hlsl 590// 591// 592// Parameters: 593// 594// sampler2D baseImage; 595// float4 imgEdge; 596// float3 kernelVals[25]; 597// 598// 599// Registers: 600// 601// Name Reg Size 602// ------------ ----- ---- 603// imgEdge c0 1 604// kernelVals c1 25 605// baseImage s0 1 606// 607 608 ps_2_0 609 def c26, 0, 1, 0, 0 610 dcl t0.xy 611 dcl v0 612 dcl_2d s0 613 add r0.xy, t0, c2 614 add r1.xy, t0, c1 615 add r2.xy, t0, c3 616 add r3.xy, t0, c4 617 add r4.xy, t0, c5 618 add r5.xy, t0, c6 619 add r6.xy, t0, c7 620 add r7.xy, t0, c8 621 add r8.xy, t0, c9 622 texld r0, r0, s0 623 texld r1, r1, s0 624 texld r2, r2, s0 625 texld r3, r3, s0 626 texld r4, r4, s0 627 texld r5, r5, s0 628 texld r6, r6, s0 629 texld r7, r7, s0 630 texld r8, r8, s0 631 mul r0, r0, c2.z 632 mad r0, c1.z, r1, r0 633 mad r0, c3.z, r2, r0 634 mad r0, c4.z, r3, r0 635 mad r0, c5.z, r4, r0 636 mad r0, c6.z, r5, r0 637 mad r0, c7.z, r6, r0 638 mad r0, c8.z, r7, r0 639 mad r0, c9.z, r8, r0 640 add r1.xy, t0, c10 641 add r2.xy, t0, c11 642 add r3.xy, t0, c12 643 add r4.xy, t0, c13 644 add r5.xy, t0, c14 645 add r6.xy, t0, c15 646 add r7.xy, t0, c16 647 add r8.xy, t0, c17 648 add r9.xy, t0, c18 649 texld r1, r1, s0 650 texld r2, r2, s0 651 texld r3, r3, s0 652 texld r4, r4, s0 653 texld r5, r5, s0 654 texld r6, r6, s0 655 texld r7, r7, s0 656 texld r8, r8, s0 657 texld r9, r9, s0 658 mad r0, c10.z, r1, r0 659 mad r0, c11.z, r2, r0 660 mad r0, c12.z, r3, r0 661 mad r0, c13.z, r4, r0 662 mad r0, c14.z, r5, r0 663 mad r0, c15.z, r6, r0 664 mad r0, c16.z, r7, r0 665 mad r0, c17.z, r8, r0 666 mad r0, c18.z, r9, r0 667 add r1.xy, t0, c19 668 add r2.xy, t0, c20 669 add r3.xy, t0, c21 670 add r4.xy, t0, c22 671 add r5.xy, t0, c23 672 add r6.xy, t0, c24 673 add r7.xy, t0, c25 674 texld r1, r1, s0 675 texld r2, r2, s0 676 texld r3, r3, s0 677 texld r4, r4, s0 678 texld r5, r5, s0 679 texld r6, r6, s0 680 texld r7, r7, s0 681 mad r0, c19.z, r1, r0 682 mad r0, c20.z, r2, r0 683 mad r0, c21.z, r3, r0 684 mad r0, c22.z, r4, r0 685 mad r0, c23.z, r5, r0 686 mad r0, c24.z, r6, r0 687 mad r0, c25.z, r7, r0 688 mul r0, r0, v0 689 add r1.yw, -t0.y, c0 690 add r1.xz, -t0.x, c0 691 cmp r1.x, -r1.x, c26.x, c26.y 692 cmp r1.y, -r1.y, c26.x, c26.y 693 add r1.x, r1.x, r1.y 694 cmp r1.x, -r1.x, c26.x, c26.y 695 cmp r1.y, r1.z, c26.x, c26.y 696 cmp r1.z, r1.w, c26.x, c26.y 697 add r1.x, r1.x, r1.y 698 cmp r1.x, -r1.x, c26.x, c26.y 699 add r1.x, r1.z, r1.x 700 cmp r0, -r1.x, r0, c26.x 701 mov oC0, r0 702 703// approximately 89 instruction slots used (25 texture, 64 arithmetic) 704#endif 705 706const DWORD convolve3[] = 707{ 708 0xffff0200, 0x0039fffe, 0x42415443, 0x0000001c, 0x000000af, 0xffff0200, 709 0x00000003, 0x0000001c, 0x20000100, 0x000000a8, 0x00000058, 0x00000003, 710 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00000002, 0x00020001, 711 0x0000007c, 0x00000000, 0x0000008c, 0x00010002, 0x00060019, 0x00000098, 712 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 713 0x00000001, 0x00000000, 0x45676d69, 0x00656764, 0x00030001, 0x00040001, 714 0x00000001, 0x00000000, 0x6e72656b, 0x61566c65, 0xab00736c, 0x00030001, 715 0x00030001, 0x00000019, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 716 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 717 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 718 0xa00f001a, 0x00000000, 0x3f800000, 0x00000000, 0x00000000, 0x0200001f, 719 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 720 0x90000000, 0xa00f0800, 0x03000002, 0x80030000, 0xb0e40000, 0xa0e40002, 721 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40001, 0x03000002, 0x80030002, 722 0xb0e40000, 0xa0e40003, 0x03000002, 0x80030003, 0xb0e40000, 0xa0e40004, 723 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40005, 0x03000002, 0x80030005, 724 0xb0e40000, 0xa0e40006, 0x03000002, 0x80030006, 0xb0e40000, 0xa0e40007, 725 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40008, 0x03000002, 0x80030008, 726 0xb0e40000, 0xa0e40009, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40800, 727 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 728 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 729 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 730 0x80e40005, 0xa0e40800, 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 731 0x03000042, 0x800f0007, 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 732 0x80e40008, 0xa0e40800, 0x03000005, 0x800f0000, 0x80e40000, 0xa0aa0002, 733 0x04000004, 0x800f0000, 0xa0aa0001, 0x80e40001, 0x80e40000, 0x04000004, 734 0x800f0000, 0xa0aa0003, 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 735 0xa0aa0004, 0x80e40003, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0005, 736 0x80e40004, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0006, 0x80e40005, 737 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0007, 0x80e40006, 0x80e40000, 738 0x04000004, 0x800f0000, 0xa0aa0008, 0x80e40007, 0x80e40000, 0x04000004, 739 0x800f0000, 0xa0aa0009, 0x80e40008, 0x80e40000, 0x03000002, 0x80030001, 740 0xb0e40000, 0xa0e4000a, 0x03000002, 0x80030002, 0xb0e40000, 0xa0e4000b, 741 0x03000002, 0x80030003, 0xb0e40000, 0xa0e4000c, 0x03000002, 0x80030004, 742 0xb0e40000, 0xa0e4000d, 0x03000002, 0x80030005, 0xb0e40000, 0xa0e4000e, 743 0x03000002, 0x80030006, 0xb0e40000, 0xa0e4000f, 0x03000002, 0x80030007, 744 0xb0e40000, 0xa0e40010, 0x03000002, 0x80030008, 0xb0e40000, 0xa0e40011, 745 0x03000002, 0x80030009, 0xb0e40000, 0xa0e40012, 0x03000042, 0x800f0001, 746 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 747 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 748 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40005, 0xa0e40800, 749 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 0x03000042, 0x800f0007, 750 0x80e40007, 0xa0e40800, 0x03000042, 0x800f0008, 0x80e40008, 0xa0e40800, 751 0x03000042, 0x800f0009, 0x80e40009, 0xa0e40800, 0x04000004, 0x800f0000, 752 0xa0aa000a, 0x80e40001, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000b, 753 0x80e40002, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000c, 0x80e40003, 754 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa000d, 0x80e40004, 0x80e40000, 755 0x04000004, 0x800f0000, 0xa0aa000e, 0x80e40005, 0x80e40000, 0x04000004, 756 0x800f0000, 0xa0aa000f, 0x80e40006, 0x80e40000, 0x04000004, 0x800f0000, 757 0xa0aa0010, 0x80e40007, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0011, 758 0x80e40008, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0012, 0x80e40009, 759 0x80e40000, 0x03000002, 0x80030001, 0xb0e40000, 0xa0e40013, 0x03000002, 760 0x80030002, 0xb0e40000, 0xa0e40014, 0x03000002, 0x80030003, 0xb0e40000, 761 0xa0e40015, 0x03000002, 0x80030004, 0xb0e40000, 0xa0e40016, 0x03000002, 762 0x80030005, 0xb0e40000, 0xa0e40017, 0x03000002, 0x80030006, 0xb0e40000, 763 0xa0e40018, 0x03000002, 0x80030007, 0xb0e40000, 0xa0e40019, 0x03000042, 764 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 765 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x03000042, 766 0x800f0004, 0x80e40004, 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40005, 767 0xa0e40800, 0x03000042, 0x800f0006, 0x80e40006, 0xa0e40800, 0x03000042, 768 0x800f0007, 0x80e40007, 0xa0e40800, 0x04000004, 0x800f0000, 0xa0aa0013, 769 0x80e40001, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0014, 0x80e40002, 770 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0015, 0x80e40003, 0x80e40000, 771 0x04000004, 0x800f0000, 0xa0aa0016, 0x80e40004, 0x80e40000, 0x04000004, 772 0x800f0000, 0xa0aa0017, 0x80e40005, 0x80e40000, 0x04000004, 0x800f0000, 773 0xa0aa0018, 0x80e40006, 0x80e40000, 0x04000004, 0x800f0000, 0xa0aa0019, 774 0x80e40007, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 775 0x03000002, 0x800a0001, 0xb1550000, 0xa0e40000, 0x03000002, 0x80050001, 776 0xb1000000, 0xa0e40000, 0x04000058, 0x80010001, 0x81000001, 0xa000001a, 777 0xa055001a, 0x04000058, 0x80020001, 0x81550001, 0xa000001a, 0xa055001a, 778 0x03000002, 0x80010001, 0x80000001, 0x80550001, 0x04000058, 0x80010001, 779 0x81000001, 0xa000001a, 0xa055001a, 0x04000058, 0x80020001, 0x80aa0001, 780 0xa000001a, 0xa055001a, 0x04000058, 0x80040001, 0x80ff0001, 0xa000001a, 781 0xa055001a, 0x03000002, 0x80010001, 0x80000001, 0x80550001, 0x04000058, 782 0x80010001, 0x81000001, 0xa000001a, 0xa055001a, 0x03000002, 0x80010001, 783 0x80aa0001, 0x80000001, 0x04000058, 0x800f0000, 0x81000001, 0x80e40000, 784 0xa000001a, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 785}; 786const DWORD *convolveShaders[] = 787{ 788 convolve0, 789 convolve1, 790 convolve2, 791 convolve3, 792}; 793 794#if 0 795// 796// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 797// 798// fxc /T ps_2_0 /Vn lookup0 /Fh tmp.h tmp.hlsl 799// 800// 801// Parameters: 802// 803// sampler2D baseImage; 804// sampler2D lookupTable; 805// float4 offset; 806// 807// 808// Registers: 809// 810// Name Reg Size 811// ------------ ----- ---- 812// offset c0 1 813// baseImage s0 1 814// lookupTable s1 1 815// 816 817 ps_2_0 818 def c1, 0.125, 0.375, 0.625, 0.875 819 dcl t0.xy 820 dcl v0 821 dcl_2d s0 822 dcl_2d s1 823 texld r0, t0, s0 824 mov r1.y, c1.x 825 add r0, r0, -c0 826 mov r1.x, r0.x 827 mov r0.x, r0.y 828 mov r0.y, c1.y 829 mov r2.x, r0.z 830 mov r3.x, r0.w 831 mov r2.y, c1.z 832 mov r3.y, c1.w 833 texld r1, r1, s1 834 texld r0, r0, s1 835 texld r2, r2, s1 836 texld r3, r3, s1 837 mov r1.y, r0.x 838 mov r1.z, r2.x 839 mov r1.w, r3.x 840 mul r0, r1, v0 841 mov oC0, r0 842 843// approximately 19 instruction slots used (5 texture, 14 arithmetic) 844#endif 845 846const DWORD lookup0[] = 847{ 848 0xffff0200, 0x0035fffe, 0x42415443, 0x0000001c, 0x0000009f, 0xffff0200, 849 0x00000003, 0x0000001c, 0x20000100, 0x00000098, 0x00000058, 0x00000003, 850 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010003, 0x00060001, 851 0x00000064, 0x00000000, 0x00000080, 0x00000002, 0x00020001, 0x00000088, 852 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 853 0x00000001, 0x00000000, 0x6b6f6f6c, 0x61547075, 0x00656c62, 0x7366666f, 854 0xab007465, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 0x325f7370, 855 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 856 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 857 0x00313131, 0x05000051, 0xa00f0001, 0x3e000000, 0x3ec00000, 0x3f200000, 858 0x3f600000, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 859 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 860 0xa00f0801, 0x03000042, 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000001, 861 0x80020001, 0xa0000001, 0x03000002, 0x800f0000, 0x80e40000, 0xa1e40000, 862 0x02000001, 0x80010001, 0x80000000, 0x02000001, 0x80010000, 0x80550000, 863 0x02000001, 0x80020000, 0xa0550001, 0x02000001, 0x80010002, 0x80aa0000, 864 0x02000001, 0x80010003, 0x80ff0000, 0x02000001, 0x80020002, 0xa0aa0001, 865 0x02000001, 0x80020003, 0xa0ff0001, 0x03000042, 0x800f0001, 0x80e40001, 866 0xa0e40801, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40801, 0x03000042, 867 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0003, 0x80e40003, 868 0xa0e40801, 0x02000001, 0x80020001, 0x80000000, 0x02000001, 0x80040001, 869 0x80000002, 0x02000001, 0x80080001, 0x80000003, 0x03000005, 0x800f0000, 870 0x80e40001, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 871}; 872#if 0 873// 874// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 875// 876// fxc /T ps_2_0 /Vn lookup1 /Fh tmp.h tmp.hlsl 877// 878// 879// Parameters: 880// 881// sampler2D baseImage; 882// sampler2D lookupTable; 883// float4 offset; 884// 885// 886// Registers: 887// 888// Name Reg Size 889// ------------ ----- ---- 890// offset c0 1 891// baseImage s0 1 892// lookupTable s1 1 893// 894 895 ps_2_0 896 def c1, 0.125, 0.375, 0.625, 0 897 dcl t0.xy 898 dcl v0 899 dcl_2d s0 900 dcl_2d s1 901 texld r0, t0, s0 902 mov r1.y, c1.x 903 add r2.xyz, r0, -c0 904 mov r1.x, r2.x 905 mov r2.x, r2.y 906 mov r3.x, r2.z 907 mov r2.y, c1.y 908 mov r3.y, c1.z 909 texld r1, r1, s1 910 texld r2, r2, s1 911 texld r3, r3, s1 912 mov r0.x, r1.x 913 mov r0.y, r2.x 914 mov r0.z, r3.x 915 mul r0, r0, v0 916 mov oC0, r0 917 918// approximately 16 instruction slots used (4 texture, 12 arithmetic) 919#endif 920 921const DWORD lookup1[] = 922{ 923 0xffff0200, 0x0035fffe, 0x42415443, 0x0000001c, 0x0000009f, 0xffff0200, 924 0x00000003, 0x0000001c, 0x20000100, 0x00000098, 0x00000058, 0x00000003, 925 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010003, 0x00060001, 926 0x00000064, 0x00000000, 0x00000080, 0x00000002, 0x00020001, 0x00000088, 927 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 928 0x00000001, 0x00000000, 0x6b6f6f6c, 0x61547075, 0x00656c62, 0x7366666f, 929 0xab007465, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 0x325f7370, 930 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 931 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 932 0x00313131, 0x05000051, 0xa00f0001, 0x3e000000, 0x3ec00000, 0x3f200000, 933 0x00000000, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 934 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 935 0xa00f0801, 0x03000042, 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000001, 936 0x80020001, 0xa0000001, 0x03000002, 0x80070002, 0x80e40000, 0xa1e40000, 937 0x02000001, 0x80010001, 0x80000002, 0x02000001, 0x80010002, 0x80550002, 938 0x02000001, 0x80010003, 0x80aa0002, 0x02000001, 0x80020002, 0xa0550001, 939 0x02000001, 0x80020003, 0xa0aa0001, 0x03000042, 0x800f0001, 0x80e40001, 940 0xa0e40801, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 941 0x800f0003, 0x80e40003, 0xa0e40801, 0x02000001, 0x80010000, 0x80000001, 942 0x02000001, 0x80020000, 0x80000002, 0x02000001, 0x80040000, 0x80000003, 943 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 944 0x80e40000, 0x0000ffff 945}; 946#if 0 947// 948// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 949// 950// fxc /T ps_2_0 /Vn lookup2 /Fh tmp.h tmp.hlsl 951// 952// 953// Parameters: 954// 955// sampler2D baseImage; 956// sampler2D lookupTable; 957// float4 offset; 958// 959// 960// Registers: 961// 962// Name Reg Size 963// ------------ ----- ---- 964// offset c0 1 965// baseImage s0 1 966// lookupTable s1 1 967// 968 969 ps_2_0 970 def c1, 0.125, 0.375, 0.625, 0.875 971 dcl t0.xy 972 dcl v0 973 dcl_2d s0 974 dcl_2d s1 975 texld r0, t0, s0 976 mov r1.y, c1.x 977 rcp r1.z, r0.w 978 mul r0.xyz, r0, r1.z 979 add r0, r0, -c0 980 mov r1.x, r0.x 981 mov r0.x, r0.y 982 mov r0.y, c1.y 983 mov r2.x, r0.z 984 mov r3.x, r0.w 985 mov r2.y, c1.z 986 mov r3.y, c1.w 987 texld r1, r1, s1 988 texld r0, r0, s1 989 texld r2, r2, s1 990 texld r3, r3, s1 991 mov r1.y, r0.x 992 mov r1.z, r2.x 993 mul r0.xyz, r3.x, r1 994 mov r0.w, r3.x 995 mul r0, r0, v0 996 mov oC0, r0 997 998// approximately 22 instruction slots used (5 texture, 17 arithmetic) 999#endif 1000 1001const DWORD lookup2[] = 1002{ 1003 0xffff0200, 0x0035fffe, 0x42415443, 0x0000001c, 0x0000009f, 0xffff0200, 1004 0x00000003, 0x0000001c, 0x20000100, 0x00000098, 0x00000058, 0x00000003, 1005 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010003, 0x00060001, 1006 0x00000064, 0x00000000, 0x00000080, 0x00000002, 0x00020001, 0x00000088, 1007 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 1008 0x00000001, 0x00000000, 0x6b6f6f6c, 0x61547075, 0x00656c62, 0x7366666f, 1009 0xab007465, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 0x325f7370, 1010 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 1011 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 1012 0x00313131, 0x05000051, 0xa00f0001, 0x3e000000, 0x3ec00000, 0x3f200000, 1013 0x3f600000, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 1014 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 1015 0xa00f0801, 0x03000042, 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000001, 1016 0x80020001, 0xa0000001, 0x02000006, 0x80040001, 0x80ff0000, 0x03000005, 1017 0x80070000, 0x80e40000, 0x80aa0001, 0x03000002, 0x800f0000, 0x80e40000, 1018 0xa1e40000, 0x02000001, 0x80010001, 0x80000000, 0x02000001, 0x80010000, 1019 0x80550000, 0x02000001, 0x80020000, 0xa0550001, 0x02000001, 0x80010002, 1020 0x80aa0000, 0x02000001, 0x80010003, 0x80ff0000, 0x02000001, 0x80020002, 1021 0xa0aa0001, 0x02000001, 0x80020003, 0xa0ff0001, 0x03000042, 0x800f0001, 1022 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0000, 0x80e40000, 0xa0e40801, 1023 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0003, 1024 0x80e40003, 0xa0e40801, 0x02000001, 0x80020001, 0x80000000, 0x02000001, 1025 0x80040001, 0x80000002, 0x03000005, 0x80070000, 0x80000003, 0x80e40001, 1026 0x02000001, 0x80080000, 0x80000003, 0x03000005, 0x800f0000, 0x80e40000, 1027 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1028}; 1029#if 0 1030// 1031// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1032// 1033// fxc /T ps_2_0 /Vn lookup3 /Fh tmp.h tmp.hlsl 1034// 1035// 1036// Parameters: 1037// 1038// sampler2D baseImage; 1039// sampler2D lookupTable; 1040// float4 offset; 1041// 1042// 1043// Registers: 1044// 1045// Name Reg Size 1046// ------------ ----- ---- 1047// offset c0 1 1048// baseImage s0 1 1049// lookupTable s1 1 1050// 1051 1052 ps_2_0 1053 def c1, 0.125, 0.375, 0.625, 0 1054 dcl t0.xy 1055 dcl v0 1056 dcl_2d s0 1057 dcl_2d s1 1058 texld r0, t0, s0 1059 mov r1.y, c1.x 1060 rcp r1.z, r0.w 1061 mad r2.xyz, r0, r1.z, -c0 1062 mov r1.x, r2.x 1063 mov r3.y, c1.y 1064 mov r3.x, r2.y 1065 mov r2.x, r2.z 1066 mov r2.y, c1.z 1067 texld r1, r1, s1 1068 texld r3, r3, s1 1069 texld r2, r2, s1 1070 mov r1.y, r3.x 1071 mov r1.z, r2.x 1072 mul r0.xyz, r0.w, r1 1073 mul r0, r0, v0 1074 mov oC0, r0 1075 1076// approximately 17 instruction slots used (4 texture, 13 arithmetic) 1077#endif 1078 1079const DWORD lookup3[] = 1080{ 1081 0xffff0200, 0x0035fffe, 0x42415443, 0x0000001c, 0x0000009f, 0xffff0200, 1082 0x00000003, 0x0000001c, 0x20000100, 0x00000098, 0x00000058, 0x00000003, 1083 0x00020001, 0x00000064, 0x00000000, 0x00000074, 0x00010003, 0x00060001, 1084 0x00000064, 0x00000000, 0x00000080, 0x00000002, 0x00020001, 0x00000088, 1085 0x00000000, 0x65736162, 0x67616d49, 0xabab0065, 0x000c0004, 0x00010001, 1086 0x00000001, 0x00000000, 0x6b6f6f6c, 0x61547075, 0x00656c62, 0x7366666f, 1087 0xab007465, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 0x325f7370, 1088 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 1089 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 1090 0x00313131, 0x05000051, 0xa00f0001, 0x3e000000, 0x3ec00000, 0x3f200000, 1091 0x00000000, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 1092 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 1093 0xa00f0801, 0x03000042, 0x800f0000, 0xb0e40000, 0xa0e40800, 0x02000001, 1094 0x80020001, 0xa0000001, 0x02000006, 0x80040001, 0x80ff0000, 0x04000004, 1095 0x80070002, 0x80e40000, 0x80aa0001, 0xa1e40000, 0x02000001, 0x80010001, 1096 0x80000002, 0x02000001, 0x80020003, 0xa0550001, 0x02000001, 0x80010003, 1097 0x80550002, 0x02000001, 0x80010002, 0x80aa0002, 0x02000001, 0x80020002, 1098 0xa0aa0001, 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 1099 0x800f0003, 0x80e40003, 0xa0e40801, 0x03000042, 0x800f0002, 0x80e40002, 1100 0xa0e40801, 0x02000001, 0x80020001, 0x80000003, 0x02000001, 0x80040001, 1101 0x80000002, 0x03000005, 0x80070000, 0x80ff0000, 0x80e40001, 0x03000005, 1102 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 1103 0x0000ffff 1104}; 1105const DWORD *lookupShaders[] = 1106{ 1107 lookup0, 1108 lookup1, 1109 lookup2, 1110 lookup3, 1111}; 1112 1113#if 0 1114// 1115// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1116// 1117// fxc /T ps_2_0 /Vn grad0 /Fh tmp.h tmp.hlsl 1118// 1119// 1120// Parameters: 1121// 1122// float4 color1; 1123// float4 color2; 1124// float3 params; 1125// 1126// 1127// Registers: 1128// 1129// Name Reg Size 1130// ------------ ----- ---- 1131// params c0 1 1132// color1 c1 1 1133// color2 c2 1 1134// 1135 1136 ps_2_0 1137 def c3, 1, -0.25, 0, 0 1138 dcl t0.xy 1139 dcl v0 1140 mov r0.xy, t0 1141 mov r0.z, c3.x 1142 dp3 r0.x, c0, r0 1143 add r0.x, r0.x, c3.y 1144 add_sat r0.x, r0.x, r0.x 1145 mov r1, c1 1146 add r1, -r1, c2 1147 mad r0, r0.x, r1, c1 1148 mul r0, r0, v0 1149 mov oC0, r0 1150 1151// approximately 10 instruction slots used 1152#endif 1153 1154const DWORD grad0[] = 1155{ 1156 0xffff0200, 0x0033fffe, 0x42415443, 0x0000001c, 0x00000097, 0xffff0200, 1157 0x00000003, 0x0000001c, 0x20000100, 0x00000090, 0x00000058, 0x00010002, 1158 0x00060001, 0x00000060, 0x00000000, 0x00000070, 0x00020002, 0x000a0001, 1159 0x00000060, 0x00000000, 0x00000077, 0x00000002, 0x00020001, 0x00000080, 1160 0x00000000, 0x6f6c6f63, 0xab003172, 0x00030001, 0x00040001, 0x00000001, 1161 0x00000000, 0x6f6c6f63, 0x70003272, 0x6d617261, 0xabab0073, 0x00030001, 1162 0x00030001, 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 1163 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 1164 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 1165 0xa00f0003, 0x3f800000, 0xbe800000, 0x00000000, 0x00000000, 0x0200001f, 1166 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x02000001, 1167 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 0xa0000003, 0x03000008, 1168 0x80010000, 0xa0e40000, 0x80e40000, 0x03000002, 0x80010000, 0x80000000, 1169 0xa0550003, 0x03000002, 0x80110000, 0x80000000, 0x80000000, 0x02000001, 1170 0x800f0001, 0xa0e40001, 0x03000002, 0x800f0001, 0x81e40001, 0xa0e40002, 1171 0x04000004, 0x800f0000, 0x80000000, 0x80e40001, 0xa0e40001, 0x03000005, 1172 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 1173 0x0000ffff 1174}; 1175#if 0 1176// 1177// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1178// 1179// fxc /T ps_2_0 /Vn grad1 /Fh tmp.h tmp.hlsl 1180// 1181// 1182// Parameters: 1183// 1184// float4 color1; 1185// float4 color2; 1186// float3 params; 1187// 1188// 1189// Registers: 1190// 1191// Name Reg Size 1192// ------------ ----- ---- 1193// params c0 1 1194// color1 c1 1 1195// color2 c2 1 1196// 1197 1198 ps_2_0 1199 def c3, 1, -0.25, -0.5, 2 1200 dcl t0.xy 1201 dcl v0 1202 mov r0.xy, t0 1203 mov r0.z, c3.x 1204 dp3 r0.x, c0, r0 1205 add r0.x, r0.x, c3.y 1206 frc r0.x, r0.x 1207 add r0.x, r0.x, c3.z 1208 abs r0.x, r0.x 1209 mad r0.x, r0.x, -c3.w, c3.x 1210 mov r1, c1 1211 add r1, -r1, c2 1212 mad r0, r0.x, r1, c1 1213 mul r0, r0, v0 1214 mov oC0, r0 1215 1216// approximately 13 instruction slots used 1217#endif 1218 1219const DWORD grad1[] = 1220{ 1221 0xffff0200, 0x0033fffe, 0x42415443, 0x0000001c, 0x00000097, 0xffff0200, 1222 0x00000003, 0x0000001c, 0x20000100, 0x00000090, 0x00000058, 0x00010002, 1223 0x00060001, 0x00000060, 0x00000000, 0x00000070, 0x00020002, 0x000a0001, 1224 0x00000060, 0x00000000, 0x00000077, 0x00000002, 0x00020001, 0x00000080, 1225 0x00000000, 0x6f6c6f63, 0xab003172, 0x00030001, 0x00040001, 0x00000001, 1226 0x00000000, 0x6f6c6f63, 0x70003272, 0x6d617261, 0xabab0073, 0x00030001, 1227 0x00030001, 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 1228 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 1229 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 1230 0xa00f0003, 0x3f800000, 0xbe800000, 0xbf000000, 0x40000000, 0x0200001f, 1231 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x02000001, 1232 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 0xa0000003, 0x03000008, 1233 0x80010000, 0xa0e40000, 0x80e40000, 0x03000002, 0x80010000, 0x80000000, 1234 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 0x03000002, 0x80010000, 1235 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 0x80000000, 0x04000004, 1236 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 0x02000001, 0x800f0001, 1237 0xa0e40001, 0x03000002, 0x800f0001, 0x81e40001, 0xa0e40002, 0x04000004, 1238 0x800f0000, 0x80000000, 0x80e40001, 0xa0e40001, 0x03000005, 0x800f0000, 1239 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1240}; 1241#if 0 1242// 1243// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1244// 1245// fxc /T ps_2_0 /Vn grad2 /Fh tmp.h tmp.hlsl 1246// 1247// 1248// Parameters: 1249// 1250// float4 color1; 1251// float4 color2; 1252// sampler2D mask; 1253// float3 params; 1254// 1255// 1256// Registers: 1257// 1258// Name Reg Size 1259// ------------ ----- ---- 1260// params c0 1 1261// color1 c1 1 1262// color2 c2 1 1263// mask s0 1 1264// 1265 1266 ps_2_0 1267 def c3, 1, -0.25, 0, 0 1268 dcl t0.xy 1269 dcl t1.xy 1270 dcl v0 1271 dcl_2d s0 1272 texld r0, t0, s0 1273 mov r0.xy, t1 1274 mov r0.z, c3.x 1275 dp3 r0.x, c0, r0 1276 add r0.x, r0.x, c3.y 1277 add_sat r0.x, r0.x, r0.x 1278 mov r1, c1 1279 add r1, -r1, c2 1280 mad r1, r0.x, r1, c1 1281 mul r0, r0.w, r1 1282 mul r0, r0, v0 1283 mov oC0, r0 1284 1285// approximately 12 instruction slots used (1 texture, 11 arithmetic) 1286#endif 1287 1288const DWORD grad2[] = 1289{ 1290 0xffff0200, 0x003dfffe, 0x42415443, 0x0000001c, 0x000000bf, 0xffff0200, 1291 0x00000004, 0x0000001c, 0x20000100, 0x000000b8, 0x0000006c, 0x00010002, 1292 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00020002, 0x000a0001, 1293 0x00000074, 0x00000000, 0x0000008b, 0x00000003, 0x00020001, 0x00000090, 1294 0x00000000, 0x000000a0, 0x00000002, 0x00020001, 0x000000a8, 0x00000000, 1295 0x6f6c6f63, 0xab003172, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 1296 0x6f6c6f63, 0x6d003272, 0x006b7361, 0x000c0004, 0x00010001, 0x00000001, 1297 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 0x00000001, 1298 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 1299 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 1300 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 0x3f800000, 1301 0xbe800000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 0xb0030000, 1302 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 0x900f0000, 1303 0x0200001f, 0x90000000, 0xa00f0800, 0x03000042, 0x800f0000, 0xb0e40000, 1304 0xa0e40800, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 1305 0xa0000003, 0x03000008, 0x80010000, 0xa0e40000, 0x80e40000, 0x03000002, 1306 0x80010000, 0x80000000, 0xa0550003, 0x03000002, 0x80110000, 0x80000000, 1307 0x80000000, 0x02000001, 0x800f0001, 0xa0e40001, 0x03000002, 0x800f0001, 1308 0x81e40001, 0xa0e40002, 0x04000004, 0x800f0001, 0x80000000, 0x80e40001, 1309 0xa0e40001, 0x03000005, 0x800f0000, 0x80ff0000, 0x80e40001, 0x03000005, 1310 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 1311 0x0000ffff 1312}; 1313#if 0 1314// 1315// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1316// 1317// fxc /T ps_2_0 /Vn grad3 /Fh tmp.h tmp.hlsl 1318// 1319// 1320// Parameters: 1321// 1322// float4 color1; 1323// float4 color2; 1324// sampler2D mask; 1325// float3 params; 1326// 1327// 1328// Registers: 1329// 1330// Name Reg Size 1331// ------------ ----- ---- 1332// params c0 1 1333// color1 c1 1 1334// color2 c2 1 1335// mask s0 1 1336// 1337 1338 ps_2_0 1339 def c3, 1, -0.25, -0.5, 2 1340 dcl t0.xy 1341 dcl t1.xy 1342 dcl v0 1343 dcl_2d s0 1344 texld r0, t0, s0 1345 mov r0.xy, t1 1346 mov r0.z, c3.x 1347 dp3 r0.x, c0, r0 1348 add r0.x, r0.x, c3.y 1349 frc r0.x, r0.x 1350 add r0.x, r0.x, c3.z 1351 abs r0.x, r0.x 1352 mad r0.x, r0.x, -c3.w, c3.x 1353 mov r1, c1 1354 add r1, -r1, c2 1355 mad r1, r0.x, r1, c1 1356 mul r0, r0.w, r1 1357 mul r0, r0, v0 1358 mov oC0, r0 1359 1360// approximately 15 instruction slots used (1 texture, 14 arithmetic) 1361#endif 1362 1363const DWORD grad3[] = 1364{ 1365 0xffff0200, 0x003dfffe, 0x42415443, 0x0000001c, 0x000000bf, 0xffff0200, 1366 0x00000004, 0x0000001c, 0x20000100, 0x000000b8, 0x0000006c, 0x00010002, 1367 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00020002, 0x000a0001, 1368 0x00000074, 0x00000000, 0x0000008b, 0x00000003, 0x00020001, 0x00000090, 1369 0x00000000, 0x000000a0, 0x00000002, 0x00020001, 0x000000a8, 0x00000000, 1370 0x6f6c6f63, 0xab003172, 0x00030001, 0x00040001, 0x00000001, 0x00000000, 1371 0x6f6c6f63, 0x6d003272, 0x006b7361, 0x000c0004, 0x00010001, 0x00000001, 1372 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 0x00000001, 1373 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 0x29522820, 1374 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 0x2e392072, 1375 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 0x3f800000, 1376 0xbe800000, 0xbf000000, 0x40000000, 0x0200001f, 0x80000000, 0xb0030000, 1377 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 0x900f0000, 1378 0x0200001f, 0x90000000, 0xa00f0800, 0x03000042, 0x800f0000, 0xb0e40000, 1379 0xa0e40800, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 1380 0xa0000003, 0x03000008, 0x80010000, 0xa0e40000, 0x80e40000, 0x03000002, 1381 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 1382 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 1383 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 1384 0x02000001, 0x800f0001, 0xa0e40001, 0x03000002, 0x800f0001, 0x81e40001, 1385 0xa0e40002, 0x04000004, 0x800f0001, 0x80000000, 0x80e40001, 0xa0e40001, 1386 0x03000005, 0x800f0000, 0x80ff0000, 0x80e40001, 0x03000005, 0x800f0000, 1387 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1388}; 1389const DWORD *gradShaders[] = 1390{ 1391 grad0, 1392 grad1, 1393 grad2, 1394 grad3, 1395}; 1396 1397#if 0 1398// 1399// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1400// 1401// fxc /T ps_2_0 /Vn linear0 /Fh tmp.h tmp.hlsl 1402// 1403// 1404// Parameters: 1405// 1406// sampler2D colors; 1407// float2 fractions[4]; 1408// float3 params; 1409// 1410// 1411// Registers: 1412// 1413// Name Reg Size 1414// ------------ ----- ---- 1415// fractions c0 3 1416// params c16 1 1417// colors s0 1 1418// 1419 1420 ps_2_0 1421 def c3, 1, 0, 0.5, -1 1422 def c4, 1, 0.5, 0.0625, 0.03125 1423 dcl t0.xy 1424 dcl v0 1425 dcl_2d s0 1426 mov r0.z, c3.x 1427 mov r0.xy, t0 1428 dp3 r0.x, c16, r0 1429 add r0.y, r0.x, -c0.x 1430 mul_sat r0.y, r0.y, c0.y 1431 add r0.z, r0.x, -c1.x 1432 mul_sat r0.z, r0.z, c1.y 1433 add r0.y, r0.y, r0.z 1434 add r0.z, r0.x, -c2.x 1435 mul_sat r0.z, r0.z, c2.y 1436 add r0.y, r0.y, r0.z 1437 frc r0.z, r0.y 1438 add r0.y, r0.y, -r0.z 1439 add r0.w, r0.y, c3.x 1440 mad r1.x, r0.w, c4.z, c4.w 1441 add r0.w, r0.x, c3.w 1442 mad r2.x, r0.y, c4.z, c4.w 1443 mov r2.y, c3.z 1444 mov r1.y, c3.z 1445 mov r3.xy, c4 1446 mov r4.xy, c3.yzxw 1447 texld r2, r2, s0 1448 texld r1, r1, s0 1449 texld r3, r3, s0 1450 texld r4, r4, s0 1451 lrp r5, r0.z, r1, r2 1452 cmp r1, r0.w, r3, r5 1453 cmp r0, -r0.x, r4, r1 1454 mul r0, r0, v0 1455 mov oC0, r0 1456 1457// approximately 30 instruction slots used (4 texture, 26 arithmetic) 1458#endif 1459 1460const DWORD linear0[] = 1461{ 1462 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1463 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1464 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 1465 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1466 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1467 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1468 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1469 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1470 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1471 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 1472 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 1473 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 1474 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1475 0xa00f0800, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 1476 0xb0e40000, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 1477 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 1478 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 1479 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 1480 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 1481 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 1482 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 1483 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000003, 1484 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0004, 0xa0ff0004, 0x03000002, 1485 0x80080000, 0x80000000, 0xa0ff0003, 0x04000004, 0x80010002, 0x80550000, 1486 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020002, 0xa0aa0003, 0x02000001, 1487 0x80020001, 0xa0aa0003, 0x02000001, 0x80030003, 0xa0e40004, 0x02000001, 1488 0x80030004, 0xa0c90003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 1489 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0003, 1490 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 1491 0x04000012, 0x800f0005, 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 1492 0x800f0001, 0x80ff0000, 0x80e40003, 0x80e40005, 0x04000058, 0x800f0000, 1493 0x81000000, 0x80e40004, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40000, 1494 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1495}; 1496#if 0 1497// 1498// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1499// 1500// fxc /T ps_2_0 /Vn linear1 /Fh tmp.h tmp.hlsl 1501// 1502// 1503// Parameters: 1504// 1505// sampler2D colors; 1506// float2 fractions[4]; 1507// float3 params; 1508// 1509// 1510// Registers: 1511// 1512// Name Reg Size 1513// ------------ ----- ---- 1514// fractions c0 3 1515// params c16 1 1516// colors s0 1 1517// 1518 1519 ps_2_0 1520 def c3, 1, 0.5, -0.5, 2 1521 def c4, 0.0625, 0.03125, 0, 0 1522 dcl t0.xy 1523 dcl v0 1524 dcl_2d s0 1525 mov r0.xy, t0 1526 mov r0.z, c3.x 1527 dp3 r0.x, c16, r0 1528 mul r0.x, r0.x, c3.y 1529 frc r0.x, r0.x 1530 add r0.x, r0.x, c3.z 1531 abs r0.x, r0.x 1532 mad r0.x, r0.x, -c3.w, c3.x 1533 add r0.y, r0.x, -c0.x 1534 mul_sat r0.y, r0.y, c0.y 1535 add r0.z, r0.x, -c1.x 1536 add r0.x, r0.x, -c2.x 1537 mul_sat r0.z, r0.z, c1.y 1538 add r0.y, r0.y, r0.z 1539 mul_sat r0.x, r0.x, c2.y 1540 add r0.x, r0.y, r0.x 1541 frc r0.y, r0.x 1542 add r0.x, r0.x, -r0.y 1543 add r0.z, r0.x, c3.x 1544 mad r1.x, r0.x, c4.x, c4.y 1545 mad r2.x, r0.z, c4.x, c4.y 1546 mov r2.y, c3.y 1547 mov r1.y, c3.y 1548 texld r2, r2, s0 1549 texld r1, r1, s0 1550 lrp r3, r0.y, r2, r1 1551 mul r0, r3, v0 1552 mov oC0, r0 1553 1554// approximately 28 instruction slots used (2 texture, 26 arithmetic) 1555#endif 1556 1557const DWORD linear1[] = 1558{ 1559 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1560 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1561 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 1562 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1563 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1564 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1565 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1566 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1567 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1568 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 1569 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 1570 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 1571 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1572 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 1573 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 1574 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 1575 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 1576 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 1577 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 1578 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 1579 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 1580 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 1581 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 1582 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 1583 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 1584 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 1585 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 1586 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 1587 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 1588 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 1589 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 1590 0x80e40000, 0x0000ffff 1591}; 1592#if 0 1593// 1594// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1595// 1596// fxc /T ps_2_0 /Vn linear2 /Fh tmp.h tmp.hlsl 1597// 1598// 1599// Parameters: 1600// 1601// sampler2D colors; 1602// float2 fractions[4]; 1603// float3 params; 1604// 1605// 1606// Registers: 1607// 1608// Name Reg Size 1609// ------------ ----- ---- 1610// fractions c0 3 1611// params c16 1 1612// colors s0 1 1613// 1614 1615 ps_2_0 1616 def c3, 1, 0.0625, 0.03125, 0.5 1617 dcl t0.xy 1618 dcl v0 1619 dcl_2d s0 1620 mov r0.xy, t0 1621 mov r0.z, c3.x 1622 dp3 r0.x, c16, r0 1623 frc r0.x, r0.x 1624 add r0.y, r0.x, -c0.x 1625 mul_sat r0.y, r0.y, c0.y 1626 add r0.z, r0.x, -c1.x 1627 add r0.x, r0.x, -c2.x 1628 mul_sat r0.z, r0.z, c1.y 1629 add r0.y, r0.y, r0.z 1630 mul_sat r0.x, r0.x, c2.y 1631 add r0.x, r0.y, r0.x 1632 frc r0.y, r0.x 1633 add r0.x, r0.x, -r0.y 1634 add r0.z, r0.x, c3.x 1635 mad r1.x, r0.x, c3.y, c3.z 1636 mad r2.x, r0.z, c3.y, c3.z 1637 mov r2.y, c3.w 1638 mov r1.y, c3.w 1639 texld r2, r2, s0 1640 texld r1, r1, s0 1641 lrp r3, r0.y, r2, r1 1642 mul r0, r3, v0 1643 mov oC0, r0 1644 1645// approximately 24 instruction slots used (2 texture, 22 arithmetic) 1646#endif 1647 1648const DWORD linear2[] = 1649{ 1650 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1651 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1652 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 1653 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1654 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1655 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1656 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1657 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1658 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1659 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 1660 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 1661 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1662 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 1663 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 1664 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 1665 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 1666 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 1667 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 1668 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 1669 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 1670 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 1671 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 1672 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 1673 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 1674 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 1675 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 1676 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 1677 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1678}; 1679#if 0 1680// 1681// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1682// 1683// fxc /T ps_2_0 /Vn linear4 /Fh tmp.h tmp.hlsl 1684// 1685// 1686// Parameters: 1687// 1688// sampler2D colors; 1689// float2 fractions[8]; 1690// float3 params; 1691// 1692// 1693// Registers: 1694// 1695// Name Reg Size 1696// ------------ ----- ---- 1697// fractions c0 7 1698// params c16 1 1699// colors s0 1 1700// 1701 1702 ps_2_0 1703 def c7, 1, 0, 0.5, -1 1704 def c8, 1, 0.5, 0.0625, 0.03125 1705 dcl t0.xy 1706 dcl v0 1707 dcl_2d s0 1708 mov r0.z, c7.x 1709 mov r0.xy, t0 1710 dp3 r0.x, c16, r0 1711 add r0.y, r0.x, -c0.x 1712 mul_sat r0.y, r0.y, c0.y 1713 add r0.z, r0.x, -c1.x 1714 mul_sat r0.z, r0.z, c1.y 1715 add r0.y, r0.y, r0.z 1716 add r0.z, r0.x, -c2.x 1717 mul_sat r0.z, r0.z, c2.y 1718 add r0.y, r0.y, r0.z 1719 add r0.z, r0.x, -c3.x 1720 mul_sat r0.z, r0.z, c3.y 1721 add r0.y, r0.y, r0.z 1722 add r0.z, r0.x, -c4.x 1723 mul_sat r0.z, r0.z, c4.y 1724 add r0.y, r0.y, r0.z 1725 add r0.z, r0.x, -c5.x 1726 mul_sat r0.z, r0.z, c5.y 1727 add r0.y, r0.y, r0.z 1728 add r0.z, r0.x, -c6.x 1729 mul_sat r0.z, r0.z, c6.y 1730 add r0.y, r0.y, r0.z 1731 frc r0.z, r0.y 1732 add r0.y, r0.y, -r0.z 1733 add r0.w, r0.y, c7.x 1734 mad r1.x, r0.w, c8.z, c8.w 1735 add r0.w, r0.x, c7.w 1736 mad r2.x, r0.y, c8.z, c8.w 1737 mov r2.y, c7.z 1738 mov r1.y, c7.z 1739 mov r3.xy, c8 1740 mov r4.xy, c7.yzxw 1741 texld r2, r2, s0 1742 texld r1, r1, s0 1743 texld r3, r3, s0 1744 texld r4, r4, s0 1745 lrp r5, r0.z, r1, r2 1746 cmp r1, r0.w, r3, r5 1747 cmp r0, -r0.x, r4, r1 1748 mul r0, r0, v0 1749 mov oC0, r0 1750 1751// approximately 42 instruction slots used (4 texture, 38 arithmetic) 1752#endif 1753 1754const DWORD linear4[] = 1755{ 1756 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1757 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1758 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 1759 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1760 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1761 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1762 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1763 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1764 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1765 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 1766 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 1767 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 1768 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1769 0xa00f0800, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 1770 0xb0e40000, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 1771 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 1772 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 1773 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 1774 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 1775 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 1776 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 0x03000005, 1777 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 0x80550000, 1778 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 0x03000005, 1779 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 1780 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 0x03000005, 1781 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 1782 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000006, 0x03000005, 1783 0x80140000, 0x80aa0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 1784 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 1785 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000007, 1786 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0008, 0xa0ff0008, 0x03000002, 1787 0x80080000, 0x80000000, 0xa0ff0007, 0x04000004, 0x80010002, 0x80550000, 1788 0xa0aa0008, 0xa0ff0008, 0x02000001, 0x80020002, 0xa0aa0007, 0x02000001, 1789 0x80020001, 0xa0aa0007, 0x02000001, 0x80030003, 0xa0e40008, 0x02000001, 1790 0x80030004, 0xa0c90007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 1791 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0003, 1792 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 1793 0x04000012, 0x800f0005, 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 1794 0x800f0001, 0x80ff0000, 0x80e40003, 0x80e40005, 0x04000058, 0x800f0000, 1795 0x81000000, 0x80e40004, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40000, 1796 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 1797}; 1798#if 0 1799// 1800// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1801// 1802// fxc /T ps_2_0 /Vn linear5 /Fh tmp.h tmp.hlsl 1803// 1804// 1805// Parameters: 1806// 1807// sampler2D colors; 1808// float2 fractions[8]; 1809// float3 params; 1810// 1811// 1812// Registers: 1813// 1814// Name Reg Size 1815// ------------ ----- ---- 1816// fractions c0 7 1817// params c16 1 1818// colors s0 1 1819// 1820 1821 ps_2_0 1822 def c7, 1, 0.5, -0.5, 2 1823 def c8, 0.0625, 0.03125, 0, 0 1824 dcl t0.xy 1825 dcl v0 1826 dcl_2d s0 1827 mov r0.xy, t0 1828 mov r0.z, c7.x 1829 dp3 r0.x, c16, r0 1830 mul r0.x, r0.x, c7.y 1831 frc r0.x, r0.x 1832 add r0.x, r0.x, c7.z 1833 abs r0.x, r0.x 1834 mad r0.x, r0.x, -c7.w, c7.x 1835 add r0.y, r0.x, -c0.x 1836 mul_sat r0.y, r0.y, c0.y 1837 add r0.z, r0.x, -c1.x 1838 mul_sat r0.z, r0.z, c1.y 1839 add r0.y, r0.y, r0.z 1840 add r0.z, r0.x, -c2.x 1841 mul_sat r0.z, r0.z, c2.y 1842 add r0.y, r0.y, r0.z 1843 add r0.z, r0.x, -c3.x 1844 mul_sat r0.z, r0.z, c3.y 1845 add r0.y, r0.y, r0.z 1846 add r0.z, r0.x, -c4.x 1847 mul_sat r0.z, r0.z, c4.y 1848 add r0.y, r0.y, r0.z 1849 add r0.z, r0.x, -c5.x 1850 add r0.x, r0.x, -c6.x 1851 mul_sat r0.z, r0.z, c5.y 1852 add r0.y, r0.y, r0.z 1853 mul_sat r0.x, r0.x, c6.y 1854 add r0.x, r0.y, r0.x 1855 frc r0.y, r0.x 1856 add r0.x, r0.x, -r0.y 1857 add r0.z, r0.x, c7.x 1858 mad r1.x, r0.x, c8.x, c8.y 1859 mad r2.x, r0.z, c8.x, c8.y 1860 mov r2.y, c7.y 1861 mov r1.y, c7.y 1862 texld r2, r2, s0 1863 texld r1, r1, s0 1864 lrp r3, r0.y, r2, r1 1865 mul r0, r3, v0 1866 mov oC0, r0 1867 1868// approximately 40 instruction slots used (2 texture, 38 arithmetic) 1869#endif 1870 1871const DWORD linear5[] = 1872{ 1873 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1874 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1875 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 1876 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1877 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1878 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1879 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1880 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1881 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1882 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 1883 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 1884 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 1885 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1886 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 1887 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 1888 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 1889 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 1890 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 1891 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 1892 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 1893 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 1894 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 1895 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 1896 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 1897 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 1898 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 1899 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 1900 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 1901 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 1902 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 1903 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 1904 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 1905 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 1906 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 1907 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 1908 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 1909 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 1910 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 1911 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 1912 0x80e40000, 0x0000ffff 1913}; 1914#if 0 1915// 1916// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 1917// 1918// fxc /T ps_2_0 /Vn linear6 /Fh tmp.h tmp.hlsl 1919// 1920// 1921// Parameters: 1922// 1923// sampler2D colors; 1924// float2 fractions[8]; 1925// float3 params; 1926// 1927// 1928// Registers: 1929// 1930// Name Reg Size 1931// ------------ ----- ---- 1932// fractions c0 7 1933// params c16 1 1934// colors s0 1 1935// 1936 1937 ps_2_0 1938 def c7, 1, 0.0625, 0.03125, 0.5 1939 dcl t0.xy 1940 dcl v0 1941 dcl_2d s0 1942 mov r0.xy, t0 1943 mov r0.z, c7.x 1944 dp3 r0.x, c16, r0 1945 frc r0.x, r0.x 1946 add r0.y, r0.x, -c0.x 1947 mul_sat r0.y, r0.y, c0.y 1948 add r0.z, r0.x, -c1.x 1949 mul_sat r0.z, r0.z, c1.y 1950 add r0.y, r0.y, r0.z 1951 add r0.z, r0.x, -c2.x 1952 mul_sat r0.z, r0.z, c2.y 1953 add r0.y, r0.y, r0.z 1954 add r0.z, r0.x, -c3.x 1955 mul_sat r0.z, r0.z, c3.y 1956 add r0.y, r0.y, r0.z 1957 add r0.z, r0.x, -c4.x 1958 mul_sat r0.z, r0.z, c4.y 1959 add r0.y, r0.y, r0.z 1960 add r0.z, r0.x, -c5.x 1961 add r0.x, r0.x, -c6.x 1962 mul_sat r0.z, r0.z, c5.y 1963 add r0.y, r0.y, r0.z 1964 mul_sat r0.x, r0.x, c6.y 1965 add r0.x, r0.y, r0.x 1966 frc r0.y, r0.x 1967 add r0.x, r0.x, -r0.y 1968 add r0.z, r0.x, c7.x 1969 mad r1.x, r0.x, c7.y, c7.z 1970 mad r2.x, r0.z, c7.y, c7.z 1971 mov r2.y, c7.w 1972 mov r1.y, c7.w 1973 texld r2, r2, s0 1974 texld r1, r1, s0 1975 lrp r3, r0.y, r2, r1 1976 mul r0, r3, v0 1977 mov oC0, r0 1978 1979// approximately 36 instruction slots used (2 texture, 34 arithmetic) 1980#endif 1981 1982const DWORD linear6[] = 1983{ 1984 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 1985 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 1986 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 1987 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 1988 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 1989 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 1990 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 1991 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 1992 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 1993 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 1994 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 1995 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 1996 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 1997 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 1998 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 1999 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 2000 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 2001 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2002 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 2003 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2004 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 2005 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2006 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 2007 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2008 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 2009 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 2010 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 2011 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 2012 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 2013 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 2014 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 2015 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 2016 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 2017 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 2018 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 2019 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2020}; 2021#if 0 2022// 2023// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2024// 2025// fxc /T ps_2_0 /Vn linear8 /Fh tmp.h tmp.hlsl 2026// 2027// 2028// Parameters: 2029// 2030// sampler2D colors; 2031// float2 fractions[4]; 2032// sampler2D mask; 2033// float3 params; 2034// 2035// 2036// Registers: 2037// 2038// Name Reg Size 2039// ------------ ----- ---- 2040// fractions c0 3 2041// params c16 1 2042// mask s0 1 2043// colors s1 1 2044// 2045 2046 ps_2_0 2047 def c3, 1, 0, 0.5, -1 2048 def c4, 1, 0.5, 0.0625, 0.03125 2049 dcl t0.xy 2050 dcl t1.xy 2051 dcl v0 2052 dcl_2d s0 2053 dcl_2d s1 2054 mov r0.z, c3.x 2055 mov r0.xy, t1 2056 dp3 r0.x, c16, r0 2057 add r0.y, r0.x, -c0.x 2058 mul_sat r0.y, r0.y, c0.y 2059 add r0.z, r0.x, -c1.x 2060 mul_sat r0.z, r0.z, c1.y 2061 add r0.y, r0.y, r0.z 2062 add r0.z, r0.x, -c2.x 2063 mul_sat r0.z, r0.z, c2.y 2064 add r0.y, r0.y, r0.z 2065 frc r0.z, r0.y 2066 add r0.y, r0.y, -r0.z 2067 add r0.w, r0.y, c3.x 2068 mad r1.x, r0.w, c4.z, c4.w 2069 add r0.w, r0.x, c3.w 2070 mad r2.x, r0.y, c4.z, c4.w 2071 mov r2.y, c3.z 2072 mov r1.y, c3.z 2073 mov r3.xy, c4 2074 mov r4.xy, c3.yzxw 2075 texld r2, r2, s1 2076 texld r1, r1, s1 2077 texld r3, r3, s1 2078 texld r4, r4, s1 2079 texld r5, t0, s0 2080 lrp r6, r0.z, r1, r2 2081 cmp r1, r0.w, r3, r6 2082 cmp r0, -r0.x, r4, r1 2083 mul r0, r5.w, r0 2084 mul r0, r0, v0 2085 mov oC0, r0 2086 2087// approximately 32 instruction slots used (5 texture, 27 arithmetic) 2088#endif 2089 2090const DWORD linear8[] = 2091{ 2092 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2093 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2094 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 2095 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2096 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2097 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2098 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 2099 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2100 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2101 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2102 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 2103 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 2104 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 2105 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2106 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2107 0xa00f0801, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 2108 0xb0e40001, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 2109 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 2110 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 2111 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 2112 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 2113 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 2114 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 2115 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000003, 2116 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0004, 0xa0ff0004, 0x03000002, 2117 0x80080000, 0x80000000, 0xa0ff0003, 0x04000004, 0x80010002, 0x80550000, 2118 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020002, 0xa0aa0003, 0x02000001, 2119 0x80020001, 0xa0aa0003, 0x02000001, 0x80030003, 0xa0e40004, 0x02000001, 2120 0x80030004, 0xa0c90003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 2121 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 2122 0x80e40003, 0xa0e40801, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40801, 2123 0x03000042, 0x800f0005, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0006, 2124 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 0x800f0001, 0x80ff0000, 2125 0x80e40003, 0x80e40006, 0x04000058, 0x800f0000, 0x81000000, 0x80e40004, 2126 0x80e40001, 0x03000005, 0x800f0000, 0x80ff0005, 0x80e40000, 0x03000005, 2127 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 2128 0x0000ffff 2129}; 2130#if 0 2131// 2132// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2133// 2134// fxc /T ps_2_0 /Vn linear9 /Fh tmp.h tmp.hlsl 2135// 2136// 2137// Parameters: 2138// 2139// sampler2D colors; 2140// float2 fractions[4]; 2141// sampler2D mask; 2142// float3 params; 2143// 2144// 2145// Registers: 2146// 2147// Name Reg Size 2148// ------------ ----- ---- 2149// fractions c0 3 2150// params c16 1 2151// mask s0 1 2152// colors s1 1 2153// 2154 2155 ps_2_0 2156 def c3, 1, 0.5, -0.5, 2 2157 def c4, 0.0625, 0.03125, 0, 0 2158 dcl t0.xy 2159 dcl t1.xy 2160 dcl v0 2161 dcl_2d s0 2162 dcl_2d s1 2163 mov r0.xy, t1 2164 mov r0.z, c3.x 2165 dp3 r0.x, c16, r0 2166 mul r0.x, r0.x, c3.y 2167 frc r0.x, r0.x 2168 add r0.x, r0.x, c3.z 2169 abs r0.x, r0.x 2170 mad r0.x, r0.x, -c3.w, c3.x 2171 add r0.y, r0.x, -c0.x 2172 mul_sat r0.y, r0.y, c0.y 2173 add r0.z, r0.x, -c1.x 2174 add r0.x, r0.x, -c2.x 2175 mul_sat r0.z, r0.z, c1.y 2176 add r0.y, r0.y, r0.z 2177 mul_sat r0.x, r0.x, c2.y 2178 add r0.x, r0.y, r0.x 2179 frc r0.y, r0.x 2180 add r0.x, r0.x, -r0.y 2181 add r0.z, r0.x, c3.x 2182 mad r1.x, r0.x, c4.x, c4.y 2183 mad r2.x, r0.z, c4.x, c4.y 2184 mov r2.y, c3.y 2185 mov r1.y, c3.y 2186 texld r2, r2, s1 2187 texld r1, r1, s1 2188 texld r3, t0, s0 2189 lrp r4, r0.y, r2, r1 2190 mul r0, r3.w, r4 2191 mul r0, r0, v0 2192 mov oC0, r0 2193 2194// approximately 30 instruction slots used (3 texture, 27 arithmetic) 2195#endif 2196 2197const DWORD linear9[] = 2198{ 2199 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2200 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2201 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 2202 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2203 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2204 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2205 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 2206 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2207 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2208 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2209 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 2210 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 2211 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 2212 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2213 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2214 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 2215 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 2216 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 2217 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 2218 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 2219 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 2220 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 2221 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 2222 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 2223 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 2224 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 2225 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 2226 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 2227 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 2228 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 2229 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 2230 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 2231 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 2232 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 2233 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2234}; 2235#if 0 2236// 2237// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2238// 2239// fxc /T ps_2_0 /Vn linear10 /Fh tmp.h tmp.hlsl 2240// 2241// 2242// Parameters: 2243// 2244// sampler2D colors; 2245// float2 fractions[4]; 2246// sampler2D mask; 2247// float3 params; 2248// 2249// 2250// Registers: 2251// 2252// Name Reg Size 2253// ------------ ----- ---- 2254// fractions c0 3 2255// params c16 1 2256// mask s0 1 2257// colors s1 1 2258// 2259 2260 ps_2_0 2261 def c3, 1, 0.0625, 0.03125, 0.5 2262 dcl t0.xy 2263 dcl t1.xy 2264 dcl v0 2265 dcl_2d s0 2266 dcl_2d s1 2267 mov r0.xy, t1 2268 mov r0.z, c3.x 2269 dp3 r0.x, c16, r0 2270 frc r0.x, r0.x 2271 add r0.y, r0.x, -c0.x 2272 mul_sat r0.y, r0.y, c0.y 2273 add r0.z, r0.x, -c1.x 2274 add r0.x, r0.x, -c2.x 2275 mul_sat r0.z, r0.z, c1.y 2276 add r0.y, r0.y, r0.z 2277 mul_sat r0.x, r0.x, c2.y 2278 add r0.x, r0.y, r0.x 2279 frc r0.y, r0.x 2280 add r0.x, r0.x, -r0.y 2281 add r0.z, r0.x, c3.x 2282 mad r1.x, r0.x, c3.y, c3.z 2283 mad r2.x, r0.z, c3.y, c3.z 2284 mov r2.y, c3.w 2285 mov r1.y, c3.w 2286 texld r2, r2, s1 2287 texld r1, r1, s1 2288 texld r3, t0, s0 2289 lrp r4, r0.y, r2, r1 2290 mul r0, r3.w, r4 2291 mul r0, r0, v0 2292 mov oC0, r0 2293 2294// approximately 26 instruction slots used (3 texture, 23 arithmetic) 2295#endif 2296 2297const DWORD linear10[] = 2298{ 2299 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2300 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2301 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 2302 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2303 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2304 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2305 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 2306 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2307 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2308 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2309 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 2310 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 2311 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2312 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2313 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 2314 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 2315 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 2316 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 2317 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 2318 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 2319 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 2320 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 2321 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 2322 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 2323 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 2324 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 2325 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 2326 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 2327 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 2328 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 2329 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2330}; 2331#if 0 2332// 2333// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2334// 2335// fxc /T ps_2_0 /Vn linear12 /Fh tmp.h tmp.hlsl 2336// 2337// 2338// Parameters: 2339// 2340// sampler2D colors; 2341// float2 fractions[8]; 2342// sampler2D mask; 2343// float3 params; 2344// 2345// 2346// Registers: 2347// 2348// Name Reg Size 2349// ------------ ----- ---- 2350// fractions c0 7 2351// params c16 1 2352// mask s0 1 2353// colors s1 1 2354// 2355 2356 ps_2_0 2357 def c7, 1, 0, 0.5, -1 2358 def c8, 1, 0.5, 0.0625, 0.03125 2359 dcl t0.xy 2360 dcl t1.xy 2361 dcl v0 2362 dcl_2d s0 2363 dcl_2d s1 2364 mov r0.z, c7.x 2365 mov r0.xy, t1 2366 dp3 r0.x, c16, r0 2367 add r0.y, r0.x, -c0.x 2368 mul_sat r0.y, r0.y, c0.y 2369 add r0.z, r0.x, -c1.x 2370 mul_sat r0.z, r0.z, c1.y 2371 add r0.y, r0.y, r0.z 2372 add r0.z, r0.x, -c2.x 2373 mul_sat r0.z, r0.z, c2.y 2374 add r0.y, r0.y, r0.z 2375 add r0.z, r0.x, -c3.x 2376 mul_sat r0.z, r0.z, c3.y 2377 add r0.y, r0.y, r0.z 2378 add r0.z, r0.x, -c4.x 2379 mul_sat r0.z, r0.z, c4.y 2380 add r0.y, r0.y, r0.z 2381 add r0.z, r0.x, -c5.x 2382 mul_sat r0.z, r0.z, c5.y 2383 add r0.y, r0.y, r0.z 2384 add r0.z, r0.x, -c6.x 2385 mul_sat r0.z, r0.z, c6.y 2386 add r0.y, r0.y, r0.z 2387 frc r0.z, r0.y 2388 add r0.y, r0.y, -r0.z 2389 add r0.w, r0.y, c7.x 2390 mad r1.x, r0.w, c8.z, c8.w 2391 add r0.w, r0.x, c7.w 2392 mad r2.x, r0.y, c8.z, c8.w 2393 mov r2.y, c7.z 2394 mov r1.y, c7.z 2395 mov r3.xy, c8 2396 mov r4.xy, c7.yzxw 2397 texld r2, r2, s1 2398 texld r1, r1, s1 2399 texld r3, r3, s1 2400 texld r4, r4, s1 2401 texld r5, t0, s0 2402 lrp r6, r0.z, r1, r2 2403 cmp r1, r0.w, r3, r6 2404 cmp r0, -r0.x, r4, r1 2405 mul r0, r5.w, r0 2406 mul r0, r0, v0 2407 mov oC0, r0 2408 2409// approximately 44 instruction slots used (5 texture, 39 arithmetic) 2410#endif 2411 2412const DWORD linear12[] = 2413{ 2414 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2415 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2416 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 2417 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2418 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2419 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2420 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 2421 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2422 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2423 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2424 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 2425 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 2426 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 2427 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2428 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2429 0xa00f0801, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 2430 0xb0e40001, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 2431 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 2432 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 2433 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 2434 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 2435 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 2436 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 0x03000005, 2437 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 0x80550000, 2438 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 0x03000005, 2439 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 2440 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 0x03000005, 2441 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 2442 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000006, 0x03000005, 2443 0x80140000, 0x80aa0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 2444 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 2445 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000007, 2446 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0008, 0xa0ff0008, 0x03000002, 2447 0x80080000, 0x80000000, 0xa0ff0007, 0x04000004, 0x80010002, 0x80550000, 2448 0xa0aa0008, 0xa0ff0008, 0x02000001, 0x80020002, 0xa0aa0007, 0x02000001, 2449 0x80020001, 0xa0aa0007, 0x02000001, 0x80030003, 0xa0e40008, 0x02000001, 2450 0x80030004, 0xa0c90007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 2451 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 2452 0x80e40003, 0xa0e40801, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40801, 2453 0x03000042, 0x800f0005, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0006, 2454 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 0x800f0001, 0x80ff0000, 2455 0x80e40003, 0x80e40006, 0x04000058, 0x800f0000, 0x81000000, 0x80e40004, 2456 0x80e40001, 0x03000005, 0x800f0000, 0x80ff0005, 0x80e40000, 0x03000005, 2457 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 2458 0x0000ffff 2459}; 2460#if 0 2461// 2462// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2463// 2464// fxc /T ps_2_0 /Vn linear13 /Fh tmp.h tmp.hlsl 2465// 2466// 2467// Parameters: 2468// 2469// sampler2D colors; 2470// float2 fractions[8]; 2471// sampler2D mask; 2472// float3 params; 2473// 2474// 2475// Registers: 2476// 2477// Name Reg Size 2478// ------------ ----- ---- 2479// fractions c0 7 2480// params c16 1 2481// mask s0 1 2482// colors s1 1 2483// 2484 2485 ps_2_0 2486 def c7, 1, 0.5, -0.5, 2 2487 def c8, 0.0625, 0.03125, 0, 0 2488 dcl t0.xy 2489 dcl t1.xy 2490 dcl v0 2491 dcl_2d s0 2492 dcl_2d s1 2493 mov r0.xy, t1 2494 mov r0.z, c7.x 2495 dp3 r0.x, c16, r0 2496 mul r0.x, r0.x, c7.y 2497 frc r0.x, r0.x 2498 add r0.x, r0.x, c7.z 2499 abs r0.x, r0.x 2500 mad r0.x, r0.x, -c7.w, c7.x 2501 add r0.y, r0.x, -c0.x 2502 mul_sat r0.y, r0.y, c0.y 2503 add r0.z, r0.x, -c1.x 2504 mul_sat r0.z, r0.z, c1.y 2505 add r0.y, r0.y, r0.z 2506 add r0.z, r0.x, -c2.x 2507 mul_sat r0.z, r0.z, c2.y 2508 add r0.y, r0.y, r0.z 2509 add r0.z, r0.x, -c3.x 2510 mul_sat r0.z, r0.z, c3.y 2511 add r0.y, r0.y, r0.z 2512 add r0.z, r0.x, -c4.x 2513 mul_sat r0.z, r0.z, c4.y 2514 add r0.y, r0.y, r0.z 2515 add r0.z, r0.x, -c5.x 2516 add r0.x, r0.x, -c6.x 2517 mul_sat r0.z, r0.z, c5.y 2518 add r0.y, r0.y, r0.z 2519 mul_sat r0.x, r0.x, c6.y 2520 add r0.x, r0.y, r0.x 2521 frc r0.y, r0.x 2522 add r0.x, r0.x, -r0.y 2523 add r0.z, r0.x, c7.x 2524 mad r1.x, r0.x, c8.x, c8.y 2525 mad r2.x, r0.z, c8.x, c8.y 2526 mov r2.y, c7.y 2527 mov r1.y, c7.y 2528 texld r2, r2, s1 2529 texld r1, r1, s1 2530 texld r3, t0, s0 2531 lrp r4, r0.y, r2, r1 2532 mul r0, r3.w, r4 2533 mul r0, r0, v0 2534 mov oC0, r0 2535 2536// approximately 42 instruction slots used (3 texture, 39 arithmetic) 2537#endif 2538 2539const DWORD linear13[] = 2540{ 2541 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2542 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2543 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 2544 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2545 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2546 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2547 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 2548 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2549 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2550 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2551 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 2552 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 2553 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 2554 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2555 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2556 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 2557 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 2558 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 2559 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 2560 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 2561 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 2562 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 2563 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 2564 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 2565 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 2566 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 2567 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 2568 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 2569 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 2570 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 2571 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 2572 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 2573 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 2574 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 2575 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 2576 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 2577 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 2578 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 2579 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 2580 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 2581 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 2582 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 2583 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2584}; 2585#if 0 2586// 2587// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2588// 2589// fxc /T ps_2_0 /Vn linear14 /Fh tmp.h tmp.hlsl 2590// 2591// 2592// Parameters: 2593// 2594// sampler2D colors; 2595// float2 fractions[8]; 2596// sampler2D mask; 2597// float3 params; 2598// 2599// 2600// Registers: 2601// 2602// Name Reg Size 2603// ------------ ----- ---- 2604// fractions c0 7 2605// params c16 1 2606// mask s0 1 2607// colors s1 1 2608// 2609 2610 ps_2_0 2611 def c7, 1, 0.0625, 0.03125, 0.5 2612 dcl t0.xy 2613 dcl t1.xy 2614 dcl v0 2615 dcl_2d s0 2616 dcl_2d s1 2617 mov r0.xy, t1 2618 mov r0.z, c7.x 2619 dp3 r0.x, c16, r0 2620 frc r0.x, r0.x 2621 add r0.y, r0.x, -c0.x 2622 mul_sat r0.y, r0.y, c0.y 2623 add r0.z, r0.x, -c1.x 2624 mul_sat r0.z, r0.z, c1.y 2625 add r0.y, r0.y, r0.z 2626 add r0.z, r0.x, -c2.x 2627 mul_sat r0.z, r0.z, c2.y 2628 add r0.y, r0.y, r0.z 2629 add r0.z, r0.x, -c3.x 2630 mul_sat r0.z, r0.z, c3.y 2631 add r0.y, r0.y, r0.z 2632 add r0.z, r0.x, -c4.x 2633 mul_sat r0.z, r0.z, c4.y 2634 add r0.y, r0.y, r0.z 2635 add r0.z, r0.x, -c5.x 2636 add r0.x, r0.x, -c6.x 2637 mul_sat r0.z, r0.z, c5.y 2638 add r0.y, r0.y, r0.z 2639 mul_sat r0.x, r0.x, c6.y 2640 add r0.x, r0.y, r0.x 2641 frc r0.y, r0.x 2642 add r0.x, r0.x, -r0.y 2643 add r0.z, r0.x, c7.x 2644 mad r1.x, r0.x, c7.y, c7.z 2645 mad r2.x, r0.z, c7.y, c7.z 2646 mov r2.y, c7.w 2647 mov r1.y, c7.w 2648 texld r2, r2, s1 2649 texld r1, r1, s1 2650 texld r3, t0, s0 2651 lrp r4, r0.y, r2, r1 2652 mul r0, r3.w, r4 2653 mul r0, r0, v0 2654 mov oC0, r0 2655 2656// approximately 38 instruction slots used (3 texture, 35 arithmetic) 2657#endif 2658 2659const DWORD linear14[] = 2660{ 2661 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 2662 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 2663 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 2664 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 2665 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 2666 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 2667 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 2668 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 2669 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2670 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2671 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 2672 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 2673 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 2674 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 2675 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 2676 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 2677 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 2678 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 2679 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 2680 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2681 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 2682 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2683 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 2684 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2685 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 2686 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 2687 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 2688 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 2689 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 2690 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 2691 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 2692 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 2693 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 2694 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 2695 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 2696 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 2697 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 2698 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 2699 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2700}; 2701#if 0 2702// 2703// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2704// 2705// fxc /T ps_2_0 /Vn linear16 /Fh tmp.h tmp.hlsl 2706// 2707// 2708// Parameters: 2709// 2710// sampler2D colors; 2711// float2 fractions[4]; 2712// float3 params; 2713// 2714// 2715// Registers: 2716// 2717// Name Reg Size 2718// ------------ ----- ---- 2719// fractions c0 3 2720// params c16 1 2721// colors s0 1 2722// 2723 2724 ps_2_0 2725 def c3, 1, 0, 0.5, -1 2726 def c4, 1, 0.5, 0.0625, 0.03125 2727 def c5, 0.416667014, 1.05499995, -0.0549999997, 0 2728 dcl t0.xy 2729 dcl v0 2730 dcl_2d s0 2731 mov r0.z, c3.x 2732 mov r0.xy, t0 2733 dp3 r0.x, c16, r0 2734 add r0.y, r0.x, -c0.x 2735 mul_sat r0.y, r0.y, c0.y 2736 add r0.z, r0.x, -c1.x 2737 mul_sat r0.z, r0.z, c1.y 2738 add r0.y, r0.y, r0.z 2739 add r0.z, r0.x, -c2.x 2740 mul_sat r0.z, r0.z, c2.y 2741 add r0.y, r0.y, r0.z 2742 frc r0.z, r0.y 2743 add r0.y, r0.y, -r0.z 2744 add r0.w, r0.y, c3.x 2745 mad r1.x, r0.w, c4.z, c4.w 2746 add r0.w, r0.x, c3.w 2747 mad r2.x, r0.y, c4.z, c4.w 2748 mov r2.y, c3.z 2749 mov r1.y, c3.z 2750 mov r3.xy, c4 2751 mov r4.xy, c3.yzxw 2752 texld r2, r2, s0 2753 texld r1, r1, s0 2754 texld r3, r3, s0 2755 texld r4, r4, s0 2756 lrp r5, r0.z, r1, r2 2757 cmp r1, r0.w, r3, r5 2758 cmp r0, -r0.x, r4, r1 2759 log r1.x, r0.x 2760 log r1.y, r0.y 2761 log r1.z, r0.z 2762 mul r1.xyz, r1, c5.x 2763 exp r2.x, r1.x 2764 exp r2.y, r1.y 2765 exp r2.z, r1.z 2766 mad r0.xyz, r2, c5.y, c5.z 2767 mul r0, r0, v0 2768 mov oC0, r0 2769 2770// approximately 38 instruction slots used (4 texture, 34 arithmetic) 2771#endif 2772 2773const DWORD linear16[] = 2774{ 2775 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 2776 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 2777 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 2778 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 2779 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 2780 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 2781 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 2782 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2783 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2784 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 2785 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 2786 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0005, 2787 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 2788 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 2789 0xa00f0800, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 2790 0xb0e40000, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 2791 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 2792 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 2793 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 2794 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 2795 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 2796 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 2797 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000003, 2798 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0004, 0xa0ff0004, 0x03000002, 2799 0x80080000, 0x80000000, 0xa0ff0003, 0x04000004, 0x80010002, 0x80550000, 2800 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020002, 0xa0aa0003, 0x02000001, 2801 0x80020001, 0xa0aa0003, 0x02000001, 0x80030003, 0xa0e40004, 0x02000001, 2802 0x80030004, 0xa0c90003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 2803 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0003, 2804 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 2805 0x04000012, 0x800f0005, 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 2806 0x800f0001, 0x80ff0000, 0x80e40003, 0x80e40005, 0x04000058, 0x800f0000, 2807 0x81000000, 0x80e40004, 0x80e40001, 0x0200000f, 0x80010001, 0x80000000, 2808 0x0200000f, 0x80020001, 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 2809 0x03000005, 0x80070001, 0x80e40001, 0xa0000005, 0x0200000e, 0x80010002, 2810 0x80000001, 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 2811 0x80aa0001, 0x04000004, 0x80070000, 0x80e40002, 0xa0550005, 0xa0aa0005, 2812 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 2813 0x80e40000, 0x0000ffff 2814}; 2815#if 0 2816// 2817// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2818// 2819// fxc /T ps_2_0 /Vn linear17 /Fh tmp.h tmp.hlsl 2820// 2821// 2822// Parameters: 2823// 2824// sampler2D colors; 2825// float2 fractions[4]; 2826// float3 params; 2827// 2828// 2829// Registers: 2830// 2831// Name Reg Size 2832// ------------ ----- ---- 2833// fractions c0 3 2834// params c16 1 2835// colors s0 1 2836// 2837 2838 ps_2_0 2839 def c3, 1, 0.5, -0.5, 2 2840 def c4, 0.0625, 0.03125, 0.416667014, 0 2841 def c5, 1.05499995, -0.0549999997, 0, 0 2842 dcl t0.xy 2843 dcl v0 2844 dcl_2d s0 2845 mov r0.xy, t0 2846 mov r0.z, c3.x 2847 dp3 r0.x, c16, r0 2848 mul r0.x, r0.x, c3.y 2849 frc r0.x, r0.x 2850 add r0.x, r0.x, c3.z 2851 abs r0.x, r0.x 2852 mad r0.x, r0.x, -c3.w, c3.x 2853 add r0.y, r0.x, -c0.x 2854 mul_sat r0.y, r0.y, c0.y 2855 add r0.z, r0.x, -c1.x 2856 add r0.x, r0.x, -c2.x 2857 mul_sat r0.z, r0.z, c1.y 2858 add r0.y, r0.y, r0.z 2859 mul_sat r0.x, r0.x, c2.y 2860 add r0.x, r0.y, r0.x 2861 frc r0.y, r0.x 2862 add r0.x, r0.x, -r0.y 2863 add r0.z, r0.x, c3.x 2864 mad r1.x, r0.x, c4.x, c4.y 2865 mad r2.x, r0.z, c4.x, c4.y 2866 mov r2.y, c3.y 2867 mov r1.y, c3.y 2868 texld r2, r2, s0 2869 texld r1, r1, s0 2870 lrp r3, r0.y, r2, r1 2871 log r0.x, r3.x 2872 log r0.y, r3.y 2873 log r0.z, r3.z 2874 mul r0.xyz, r0, c4.z 2875 exp r1.x, r0.x 2876 exp r1.y, r0.y 2877 exp r1.z, r0.z 2878 mad r3.xyz, r1, c5.x, c5.y 2879 mul r0, r3, v0 2880 mov oC0, r0 2881 2882// approximately 36 instruction slots used (2 texture, 34 arithmetic) 2883#endif 2884 2885const DWORD linear17[] = 2886{ 2887 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 2888 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 2889 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 2890 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 2891 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 2892 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 2893 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 2894 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 2895 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 2896 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 2897 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 2898 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0005, 2899 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 2900 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 2901 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 2902 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 2903 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 2904 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 2905 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 2906 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 2907 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 2908 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 2909 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 2910 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 2911 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 2912 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 2913 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 2914 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 2915 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 2916 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 2917 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 2918 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 0x80020000, 0x80550003, 2919 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 0x80070000, 0x80e40000, 2920 0xa0aa0004, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 2921 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070003, 2922 0x80e40001, 0xa0000005, 0xa0550005, 0x03000005, 0x800f0000, 0x80e40003, 2923 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 2924}; 2925#if 0 2926// 2927// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 2928// 2929// fxc /T ps_2_0 /Vn linear18 /Fh tmp.h tmp.hlsl 2930// 2931// 2932// Parameters: 2933// 2934// sampler2D colors; 2935// float2 fractions[4]; 2936// float3 params; 2937// 2938// 2939// Registers: 2940// 2941// Name Reg Size 2942// ------------ ----- ---- 2943// fractions c0 3 2944// params c16 1 2945// colors s0 1 2946// 2947 2948 ps_2_0 2949 def c3, 1, 0.0625, 0.03125, 0.5 2950 def c4, 0.416667014, 1.05499995, -0.0549999997, 0 2951 dcl t0.xy 2952 dcl v0 2953 dcl_2d s0 2954 mov r0.xy, t0 2955 mov r0.z, c3.x 2956 dp3 r0.x, c16, r0 2957 frc r0.x, r0.x 2958 add r0.y, r0.x, -c0.x 2959 mul_sat r0.y, r0.y, c0.y 2960 add r0.z, r0.x, -c1.x 2961 add r0.x, r0.x, -c2.x 2962 mul_sat r0.z, r0.z, c1.y 2963 add r0.y, r0.y, r0.z 2964 mul_sat r0.x, r0.x, c2.y 2965 add r0.x, r0.y, r0.x 2966 frc r0.y, r0.x 2967 add r0.x, r0.x, -r0.y 2968 add r0.z, r0.x, c3.x 2969 mad r1.x, r0.x, c3.y, c3.z 2970 mad r2.x, r0.z, c3.y, c3.z 2971 mov r2.y, c3.w 2972 mov r1.y, c3.w 2973 texld r2, r2, s0 2974 texld r1, r1, s0 2975 lrp r3, r0.y, r2, r1 2976 log r0.x, r3.x 2977 log r0.y, r3.y 2978 log r0.z, r3.z 2979 mul r0.xyz, r0, c4.x 2980 exp r1.x, r0.x 2981 exp r1.y, r0.y 2982 exp r1.z, r0.z 2983 mad r3.xyz, r1, c4.y, c4.z 2984 mul r0, r3, v0 2985 mov oC0, r0 2986 2987// approximately 32 instruction slots used (2 texture, 30 arithmetic) 2988#endif 2989 2990const DWORD linear18[] = 2991{ 2992 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 2993 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 2994 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020003, 2995 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 2996 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 2997 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 2998 0x00000004, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 2999 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3000 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3001 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 3002 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0004, 3003 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3004 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 3005 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 3006 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 3007 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 3008 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 3009 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 3010 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 3011 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 3012 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 3013 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 3014 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 3015 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 3016 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 3017 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 3018 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 3019 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 3020 0x80020000, 0x80550003, 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 3021 0x80070000, 0x80e40000, 0xa0000004, 0x0200000e, 0x80010001, 0x80000000, 3022 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 3023 0x04000004, 0x80070003, 0x80e40001, 0xa0550004, 0xa0aa0004, 0x03000005, 3024 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 3025 0x0000ffff 3026}; 3027#if 0 3028// 3029// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3030// 3031// fxc /T ps_2_0 /Vn linear20 /Fh tmp.h tmp.hlsl 3032// 3033// 3034// Parameters: 3035// 3036// sampler2D colors; 3037// float2 fractions[8]; 3038// float3 params; 3039// 3040// 3041// Registers: 3042// 3043// Name Reg Size 3044// ------------ ----- ---- 3045// fractions c0 7 3046// params c16 1 3047// colors s0 1 3048// 3049 3050 ps_2_0 3051 def c7, 1, 0, 0.5, -1 3052 def c8, 1, 0.5, 0.0625, 0.03125 3053 def c9, 0.416667014, 1.05499995, -0.0549999997, 0 3054 dcl t0.xy 3055 dcl v0 3056 dcl_2d s0 3057 mov r0.z, c7.x 3058 mov r0.xy, t0 3059 dp3 r0.x, c16, r0 3060 add r0.y, r0.x, -c0.x 3061 mul_sat r0.y, r0.y, c0.y 3062 add r0.z, r0.x, -c1.x 3063 mul_sat r0.z, r0.z, c1.y 3064 add r0.y, r0.y, r0.z 3065 add r0.z, r0.x, -c2.x 3066 mul_sat r0.z, r0.z, c2.y 3067 add r0.y, r0.y, r0.z 3068 add r0.z, r0.x, -c3.x 3069 mul_sat r0.z, r0.z, c3.y 3070 add r0.y, r0.y, r0.z 3071 add r0.z, r0.x, -c4.x 3072 mul_sat r0.z, r0.z, c4.y 3073 add r0.y, r0.y, r0.z 3074 add r0.z, r0.x, -c5.x 3075 mul_sat r0.z, r0.z, c5.y 3076 add r0.y, r0.y, r0.z 3077 add r0.z, r0.x, -c6.x 3078 mul_sat r0.z, r0.z, c6.y 3079 add r0.y, r0.y, r0.z 3080 frc r0.z, r0.y 3081 add r0.y, r0.y, -r0.z 3082 add r0.w, r0.y, c7.x 3083 mad r1.x, r0.w, c8.z, c8.w 3084 add r0.w, r0.x, c7.w 3085 mad r2.x, r0.y, c8.z, c8.w 3086 mov r2.y, c7.z 3087 mov r1.y, c7.z 3088 mov r3.xy, c8 3089 mov r4.xy, c7.yzxw 3090 texld r2, r2, s0 3091 texld r1, r1, s0 3092 texld r3, r3, s0 3093 texld r4, r4, s0 3094 lrp r5, r0.z, r1, r2 3095 cmp r1, r0.w, r3, r5 3096 cmp r0, -r0.x, r4, r1 3097 log r1.x, r0.x 3098 log r1.y, r0.y 3099 log r1.z, r0.z 3100 mul r1.xyz, r1, c9.x 3101 exp r2.x, r1.x 3102 exp r2.y, r1.y 3103 exp r2.z, r1.z 3104 mad r0.xyz, r2, c9.y, c9.z 3105 mul r0, r0, v0 3106 mov oC0, r0 3107 3108// approximately 50 instruction slots used (4 texture, 46 arithmetic) 3109#endif 3110 3111const DWORD linear20[] = 3112{ 3113 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 3114 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 3115 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 3116 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 3117 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 3118 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 3119 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 3120 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3121 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3122 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 3123 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 3124 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0009, 3125 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3126 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 3127 0xa00f0800, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 3128 0xb0e40000, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 3129 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 3130 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 3131 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 3132 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 3133 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 3134 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 0x03000005, 3135 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 0x80550000, 3136 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 0x03000005, 3137 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 3138 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 0x03000005, 3139 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 3140 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000006, 0x03000005, 3141 0x80140000, 0x80aa0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 3142 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 3143 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000007, 3144 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0008, 0xa0ff0008, 0x03000002, 3145 0x80080000, 0x80000000, 0xa0ff0007, 0x04000004, 0x80010002, 0x80550000, 3146 0xa0aa0008, 0xa0ff0008, 0x02000001, 0x80020002, 0xa0aa0007, 0x02000001, 3147 0x80020001, 0xa0aa0007, 0x02000001, 0x80030003, 0xa0e40008, 0x02000001, 3148 0x80030004, 0xa0c90007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 3149 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0003, 3150 0x80e40003, 0xa0e40800, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40800, 3151 0x04000012, 0x800f0005, 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 3152 0x800f0001, 0x80ff0000, 0x80e40003, 0x80e40005, 0x04000058, 0x800f0000, 3153 0x81000000, 0x80e40004, 0x80e40001, 0x0200000f, 0x80010001, 0x80000000, 3154 0x0200000f, 0x80020001, 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 3155 0x03000005, 0x80070001, 0x80e40001, 0xa0000009, 0x0200000e, 0x80010002, 3156 0x80000001, 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 3157 0x80aa0001, 0x04000004, 0x80070000, 0x80e40002, 0xa0550009, 0xa0aa0009, 3158 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 3159 0x80e40000, 0x0000ffff 3160}; 3161#if 0 3162// 3163// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3164// 3165// fxc /T ps_2_0 /Vn linear21 /Fh tmp.h tmp.hlsl 3166// 3167// 3168// Parameters: 3169// 3170// sampler2D colors; 3171// float2 fractions[8]; 3172// float3 params; 3173// 3174// 3175// Registers: 3176// 3177// Name Reg Size 3178// ------------ ----- ---- 3179// fractions c0 7 3180// params c16 1 3181// colors s0 1 3182// 3183 3184 ps_2_0 3185 def c7, 1, 0.5, -0.5, 2 3186 def c8, 0.0625, 0.03125, 0.416667014, 0 3187 def c9, 1.05499995, -0.0549999997, 0, 0 3188 dcl t0.xy 3189 dcl v0 3190 dcl_2d s0 3191 mov r0.xy, t0 3192 mov r0.z, c7.x 3193 dp3 r0.x, c16, r0 3194 mul r0.x, r0.x, c7.y 3195 frc r0.x, r0.x 3196 add r0.x, r0.x, c7.z 3197 abs r0.x, r0.x 3198 mad r0.x, r0.x, -c7.w, c7.x 3199 add r0.y, r0.x, -c0.x 3200 mul_sat r0.y, r0.y, c0.y 3201 add r0.z, r0.x, -c1.x 3202 mul_sat r0.z, r0.z, c1.y 3203 add r0.y, r0.y, r0.z 3204 add r0.z, r0.x, -c2.x 3205 mul_sat r0.z, r0.z, c2.y 3206 add r0.y, r0.y, r0.z 3207 add r0.z, r0.x, -c3.x 3208 mul_sat r0.z, r0.z, c3.y 3209 add r0.y, r0.y, r0.z 3210 add r0.z, r0.x, -c4.x 3211 mul_sat r0.z, r0.z, c4.y 3212 add r0.y, r0.y, r0.z 3213 add r0.z, r0.x, -c5.x 3214 add r0.x, r0.x, -c6.x 3215 mul_sat r0.z, r0.z, c5.y 3216 add r0.y, r0.y, r0.z 3217 mul_sat r0.x, r0.x, c6.y 3218 add r0.x, r0.y, r0.x 3219 frc r0.y, r0.x 3220 add r0.x, r0.x, -r0.y 3221 add r0.z, r0.x, c7.x 3222 mad r1.x, r0.x, c8.x, c8.y 3223 mad r2.x, r0.z, c8.x, c8.y 3224 mov r2.y, c7.y 3225 mov r1.y, c7.y 3226 texld r2, r2, s0 3227 texld r1, r1, s0 3228 lrp r3, r0.y, r2, r1 3229 log r0.x, r3.x 3230 log r0.y, r3.y 3231 log r0.z, r3.z 3232 mul r0.xyz, r0, c8.z 3233 exp r1.x, r0.x 3234 exp r1.y, r0.y 3235 exp r1.z, r0.z 3236 mad r3.xyz, r1, c9.x, c9.y 3237 mul r0, r3, v0 3238 mov oC0, r0 3239 3240// approximately 48 instruction slots used (2 texture, 46 arithmetic) 3241#endif 3242 3243const DWORD linear21[] = 3244{ 3245 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 3246 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 3247 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 3248 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 3249 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 3250 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 3251 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 3252 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3253 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3254 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 3255 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 3256 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0009, 3257 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 3258 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 3259 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 3260 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 3261 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 3262 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 3263 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 3264 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 3265 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 3266 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 3267 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 3268 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 3269 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 3270 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 3271 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 3272 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 3273 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 3274 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 3275 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 3276 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 3277 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 3278 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 3279 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 3280 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 3281 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 3282 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 3283 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 3284 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 0x80020000, 0x80550003, 3285 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 0x80070000, 0x80e40000, 3286 0xa0aa0008, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 3287 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070003, 3288 0x80e40001, 0xa0000009, 0xa0550009, 0x03000005, 0x800f0000, 0x80e40003, 3289 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 3290}; 3291#if 0 3292// 3293// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3294// 3295// fxc /T ps_2_0 /Vn linear22 /Fh tmp.h tmp.hlsl 3296// 3297// 3298// Parameters: 3299// 3300// sampler2D colors; 3301// float2 fractions[8]; 3302// float3 params; 3303// 3304// 3305// Registers: 3306// 3307// Name Reg Size 3308// ------------ ----- ---- 3309// fractions c0 7 3310// params c16 1 3311// colors s0 1 3312// 3313 3314 ps_2_0 3315 def c7, 1, 0.0625, 0.03125, 0.5 3316 def c8, 0.416667014, 1.05499995, -0.0549999997, 0 3317 dcl t0.xy 3318 dcl v0 3319 dcl_2d s0 3320 mov r0.xy, t0 3321 mov r0.z, c7.x 3322 dp3 r0.x, c16, r0 3323 frc r0.x, r0.x 3324 add r0.y, r0.x, -c0.x 3325 mul_sat r0.y, r0.y, c0.y 3326 add r0.z, r0.x, -c1.x 3327 mul_sat r0.z, r0.z, c1.y 3328 add r0.y, r0.y, r0.z 3329 add r0.z, r0.x, -c2.x 3330 mul_sat r0.z, r0.z, c2.y 3331 add r0.y, r0.y, r0.z 3332 add r0.z, r0.x, -c3.x 3333 mul_sat r0.z, r0.z, c3.y 3334 add r0.y, r0.y, r0.z 3335 add r0.z, r0.x, -c4.x 3336 mul_sat r0.z, r0.z, c4.y 3337 add r0.y, r0.y, r0.z 3338 add r0.z, r0.x, -c5.x 3339 add r0.x, r0.x, -c6.x 3340 mul_sat r0.z, r0.z, c5.y 3341 add r0.y, r0.y, r0.z 3342 mul_sat r0.x, r0.x, c6.y 3343 add r0.x, r0.y, r0.x 3344 frc r0.y, r0.x 3345 add r0.x, r0.x, -r0.y 3346 add r0.z, r0.x, c7.x 3347 mad r1.x, r0.x, c7.y, c7.z 3348 mad r2.x, r0.z, c7.y, c7.z 3349 mov r2.y, c7.w 3350 mov r1.y, c7.w 3351 texld r2, r2, s0 3352 texld r1, r1, s0 3353 lrp r3, r0.y, r2, r1 3354 log r0.x, r3.x 3355 log r0.y, r3.y 3356 log r0.z, r3.z 3357 mul r0.xyz, r0, c8.x 3358 exp r1.x, r0.x 3359 exp r1.y, r0.y 3360 exp r1.z, r0.z 3361 mad r3.xyz, r1, c8.y, c8.z 3362 mul r0, r3, v0 3363 mov oC0, r0 3364 3365// approximately 44 instruction slots used (2 texture, 42 arithmetic) 3366#endif 3367 3368const DWORD linear22[] = 3369{ 3370 0xffff0200, 0x0038fffe, 0x42415443, 0x0000001c, 0x000000ab, 0xffff0200, 3371 0x00000003, 0x0000001c, 0x20000100, 0x000000a4, 0x00000058, 0x00000003, 3372 0x00020001, 0x00000060, 0x00000000, 0x00000070, 0x00000002, 0x00020007, 3373 0x0000007c, 0x00000000, 0x0000008c, 0x00100002, 0x00420001, 0x00000094, 3374 0x00000000, 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 3375 0x00000000, 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 3376 0x00000008, 0x00000000, 0x61726170, 0xab00736d, 0x00030001, 0x00030001, 3377 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3378 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3379 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 3380 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0008, 3381 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3382 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 3383 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 3384 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 3385 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 3386 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 3387 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 3388 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 3389 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 3390 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 3391 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 3392 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 3393 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 3394 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 3395 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 3396 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 3397 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 3398 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 3399 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 3400 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 3401 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 3402 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 3403 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 3404 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 3405 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 3406 0x80020000, 0x80550003, 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 3407 0x80070000, 0x80e40000, 0xa0000008, 0x0200000e, 0x80010001, 0x80000000, 3408 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 3409 0x04000004, 0x80070003, 0x80e40001, 0xa0550008, 0xa0aa0008, 0x03000005, 3410 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 3411 0x0000ffff 3412}; 3413#if 0 3414// 3415// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3416// 3417// fxc /T ps_2_0 /Vn linear24 /Fh tmp.h tmp.hlsl 3418// 3419// 3420// Parameters: 3421// 3422// sampler2D colors; 3423// float2 fractions[4]; 3424// sampler2D mask; 3425// float3 params; 3426// 3427// 3428// Registers: 3429// 3430// Name Reg Size 3431// ------------ ----- ---- 3432// fractions c0 3 3433// params c16 1 3434// mask s0 1 3435// colors s1 1 3436// 3437 3438 ps_2_0 3439 def c3, 1, 0, 0.5, -1 3440 def c4, 1, 0.5, 0.0625, 0.03125 3441 def c5, 0.416667014, 1.05499995, -0.0549999997, 0 3442 dcl t0.xy 3443 dcl t1.xy 3444 dcl v0 3445 dcl_2d s0 3446 dcl_2d s1 3447 mov r0.z, c3.x 3448 mov r0.xy, t1 3449 dp3 r0.x, c16, r0 3450 add r0.y, r0.x, -c0.x 3451 mul_sat r0.y, r0.y, c0.y 3452 add r0.z, r0.x, -c1.x 3453 mul_sat r0.z, r0.z, c1.y 3454 add r0.y, r0.y, r0.z 3455 add r0.z, r0.x, -c2.x 3456 mul_sat r0.z, r0.z, c2.y 3457 add r0.y, r0.y, r0.z 3458 frc r0.z, r0.y 3459 add r0.y, r0.y, -r0.z 3460 add r0.w, r0.y, c3.x 3461 mad r1.x, r0.w, c4.z, c4.w 3462 add r0.w, r0.x, c3.w 3463 mad r2.x, r0.y, c4.z, c4.w 3464 mov r2.y, c3.z 3465 mov r1.y, c3.z 3466 mov r3.xy, c4 3467 mov r4.xy, c3.yzxw 3468 texld r2, r2, s1 3469 texld r1, r1, s1 3470 texld r3, r3, s1 3471 texld r4, r4, s1 3472 texld r5, t0, s0 3473 lrp r6, r0.z, r1, r2 3474 cmp r1, r0.w, r3, r6 3475 cmp r0, -r0.x, r4, r1 3476 log r1.x, r0.x 3477 log r1.y, r0.y 3478 log r1.z, r0.z 3479 mul r1.xyz, r1, c5.x 3480 exp r2.x, r1.x 3481 exp r2.y, r1.y 3482 exp r2.z, r1.z 3483 mad r0.xyz, r2, c5.y, c5.z 3484 mul r0, r5.w, r0 3485 mul r0, r0, v0 3486 mov oC0, r0 3487 3488// approximately 40 instruction slots used (5 texture, 35 arithmetic) 3489#endif 3490 3491const DWORD linear24[] = 3492{ 3493 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 3494 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 3495 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 3496 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 3497 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 3498 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 3499 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 3500 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 3501 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3502 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3503 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 3504 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 3505 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0005, 3506 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3507 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 3508 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 3509 0xa00f0801, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 3510 0xb0e40001, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 3511 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 3512 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 3513 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 3514 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 3515 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 3516 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 3517 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000003, 3518 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0004, 0xa0ff0004, 0x03000002, 3519 0x80080000, 0x80000000, 0xa0ff0003, 0x04000004, 0x80010002, 0x80550000, 3520 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020002, 0xa0aa0003, 0x02000001, 3521 0x80020001, 0xa0aa0003, 0x02000001, 0x80030003, 0xa0e40004, 0x02000001, 3522 0x80030004, 0xa0c90003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 3523 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 3524 0x80e40003, 0xa0e40801, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40801, 3525 0x03000042, 0x800f0005, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0006, 3526 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 0x800f0001, 0x80ff0000, 3527 0x80e40003, 0x80e40006, 0x04000058, 0x800f0000, 0x81000000, 0x80e40004, 3528 0x80e40001, 0x0200000f, 0x80010001, 0x80000000, 0x0200000f, 0x80020001, 3529 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 0x03000005, 0x80070001, 3530 0x80e40001, 0xa0000005, 0x0200000e, 0x80010002, 0x80000001, 0x0200000e, 3531 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 0x80aa0001, 0x04000004, 3532 0x80070000, 0x80e40002, 0xa0550005, 0xa0aa0005, 0x03000005, 0x800f0000, 3533 0x80ff0005, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 3534 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 3535}; 3536#if 0 3537// 3538// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3539// 3540// fxc /T ps_2_0 /Vn linear25 /Fh tmp.h tmp.hlsl 3541// 3542// 3543// Parameters: 3544// 3545// sampler2D colors; 3546// float2 fractions[4]; 3547// sampler2D mask; 3548// float3 params; 3549// 3550// 3551// Registers: 3552// 3553// Name Reg Size 3554// ------------ ----- ---- 3555// fractions c0 3 3556// params c16 1 3557// mask s0 1 3558// colors s1 1 3559// 3560 3561 ps_2_0 3562 def c3, 1, 0.5, -0.5, 2 3563 def c4, 0.0625, 0.03125, 0.416667014, 0 3564 def c5, 1.05499995, -0.0549999997, 0, 0 3565 dcl t0.xy 3566 dcl t1.xy 3567 dcl v0 3568 dcl_2d s0 3569 dcl_2d s1 3570 mov r0.xy, t1 3571 mov r0.z, c3.x 3572 dp3 r0.x, c16, r0 3573 mul r0.x, r0.x, c3.y 3574 frc r0.x, r0.x 3575 add r0.x, r0.x, c3.z 3576 abs r0.x, r0.x 3577 mad r0.x, r0.x, -c3.w, c3.x 3578 add r0.y, r0.x, -c0.x 3579 mul_sat r0.y, r0.y, c0.y 3580 add r0.z, r0.x, -c1.x 3581 add r0.x, r0.x, -c2.x 3582 mul_sat r0.z, r0.z, c1.y 3583 add r0.y, r0.y, r0.z 3584 mul_sat r0.x, r0.x, c2.y 3585 add r0.x, r0.y, r0.x 3586 frc r0.y, r0.x 3587 add r0.x, r0.x, -r0.y 3588 add r0.z, r0.x, c3.x 3589 mad r1.x, r0.x, c4.x, c4.y 3590 mad r2.x, r0.z, c4.x, c4.y 3591 mov r2.y, c3.y 3592 mov r1.y, c3.y 3593 texld r2, r2, s1 3594 texld r1, r1, s1 3595 texld r3, t0, s0 3596 lrp r4, r0.y, r2, r1 3597 log r0.x, r4.x 3598 log r0.y, r4.y 3599 log r0.z, r4.z 3600 mul r0.xyz, r0, c4.z 3601 exp r1.x, r0.x 3602 exp r1.y, r0.y 3603 exp r1.z, r0.z 3604 mad r4.xyz, r1, c5.x, c5.y 3605 mul r0, r3.w, r4 3606 mul r0, r0, v0 3607 mov oC0, r0 3608 3609// approximately 38 instruction slots used (3 texture, 35 arithmetic) 3610#endif 3611 3612const DWORD linear25[] = 3613{ 3614 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 3615 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 3616 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 3617 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 3618 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 3619 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 3620 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 3621 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 3622 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3623 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3624 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 3625 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 3626 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0005, 3627 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 3628 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 3629 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 3630 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 3631 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 3632 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 3633 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 3634 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 3635 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 3636 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 3637 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 3638 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 3639 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 3640 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 3641 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 3642 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 3643 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 3644 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 3645 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 3646 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 3647 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 3648 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 0x0200000f, 0x80040000, 3649 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 0xa0aa0004, 0x0200000e, 3650 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 3651 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 0x80e40001, 0xa0000005, 3652 0xa0550005, 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 3653 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 3654 0x0000ffff 3655}; 3656#if 0 3657// 3658// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3659// 3660// fxc /T ps_2_0 /Vn linear26 /Fh tmp.h tmp.hlsl 3661// 3662// 3663// Parameters: 3664// 3665// sampler2D colors; 3666// float2 fractions[4]; 3667// sampler2D mask; 3668// float3 params; 3669// 3670// 3671// Registers: 3672// 3673// Name Reg Size 3674// ------------ ----- ---- 3675// fractions c0 3 3676// params c16 1 3677// mask s0 1 3678// colors s1 1 3679// 3680 3681 ps_2_0 3682 def c3, 1, 0.0625, 0.03125, 0.5 3683 def c4, 0.416667014, 1.05499995, -0.0549999997, 0 3684 dcl t0.xy 3685 dcl t1.xy 3686 dcl v0 3687 dcl_2d s0 3688 dcl_2d s1 3689 mov r0.xy, t1 3690 mov r0.z, c3.x 3691 dp3 r0.x, c16, r0 3692 frc r0.x, r0.x 3693 add r0.y, r0.x, -c0.x 3694 mul_sat r0.y, r0.y, c0.y 3695 add r0.z, r0.x, -c1.x 3696 add r0.x, r0.x, -c2.x 3697 mul_sat r0.z, r0.z, c1.y 3698 add r0.y, r0.y, r0.z 3699 mul_sat r0.x, r0.x, c2.y 3700 add r0.x, r0.y, r0.x 3701 frc r0.y, r0.x 3702 add r0.x, r0.x, -r0.y 3703 add r0.z, r0.x, c3.x 3704 mad r1.x, r0.x, c3.y, c3.z 3705 mad r2.x, r0.z, c3.y, c3.z 3706 mov r2.y, c3.w 3707 mov r1.y, c3.w 3708 texld r2, r2, s1 3709 texld r1, r1, s1 3710 texld r3, t0, s0 3711 lrp r4, r0.y, r2, r1 3712 log r0.x, r4.x 3713 log r0.y, r4.y 3714 log r0.z, r4.z 3715 mul r0.xyz, r0, c4.x 3716 exp r1.x, r0.x 3717 exp r1.y, r0.y 3718 exp r1.z, r0.z 3719 mad r4.xyz, r1, c4.y, c4.z 3720 mul r0, r3.w, r4 3721 mul r0, r0, v0 3722 mov oC0, r0 3723 3724// approximately 34 instruction slots used (3 texture, 31 arithmetic) 3725#endif 3726 3727const DWORD linear26[] = 3728{ 3729 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 3730 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 3731 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020003, 3732 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 3733 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 3734 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 3735 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 3736 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 3737 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3738 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3739 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 3740 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0004, 3741 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3742 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 3743 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 3744 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 3745 0xa0000003, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 3746 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 3747 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 3748 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 3749 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 3750 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 3751 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 3752 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 3753 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 3754 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 3755 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 3756 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 3757 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 3758 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 3759 0x0200000f, 0x80010000, 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 3760 0x0200000f, 0x80040000, 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 3761 0xa0000004, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 3762 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 3763 0x80e40001, 0xa0550004, 0xa0aa0004, 0x03000005, 0x800f0000, 0x80ff0003, 3764 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 3765 0x800f0800, 0x80e40000, 0x0000ffff 3766}; 3767#if 0 3768// 3769// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3770// 3771// fxc /T ps_2_0 /Vn linear28 /Fh tmp.h tmp.hlsl 3772// 3773// 3774// Parameters: 3775// 3776// sampler2D colors; 3777// float2 fractions[8]; 3778// sampler2D mask; 3779// float3 params; 3780// 3781// 3782// Registers: 3783// 3784// Name Reg Size 3785// ------------ ----- ---- 3786// fractions c0 7 3787// params c16 1 3788// mask s0 1 3789// colors s1 1 3790// 3791 3792 ps_2_0 3793 def c7, 1, 0, 0.5, -1 3794 def c8, 1, 0.5, 0.0625, 0.03125 3795 def c9, 0.416667014, 1.05499995, -0.0549999997, 0 3796 dcl t0.xy 3797 dcl t1.xy 3798 dcl v0 3799 dcl_2d s0 3800 dcl_2d s1 3801 mov r0.z, c7.x 3802 mov r0.xy, t1 3803 dp3 r0.x, c16, r0 3804 add r0.y, r0.x, -c0.x 3805 mul_sat r0.y, r0.y, c0.y 3806 add r0.z, r0.x, -c1.x 3807 mul_sat r0.z, r0.z, c1.y 3808 add r0.y, r0.y, r0.z 3809 add r0.z, r0.x, -c2.x 3810 mul_sat r0.z, r0.z, c2.y 3811 add r0.y, r0.y, r0.z 3812 add r0.z, r0.x, -c3.x 3813 mul_sat r0.z, r0.z, c3.y 3814 add r0.y, r0.y, r0.z 3815 add r0.z, r0.x, -c4.x 3816 mul_sat r0.z, r0.z, c4.y 3817 add r0.y, r0.y, r0.z 3818 add r0.z, r0.x, -c5.x 3819 mul_sat r0.z, r0.z, c5.y 3820 add r0.y, r0.y, r0.z 3821 add r0.z, r0.x, -c6.x 3822 mul_sat r0.z, r0.z, c6.y 3823 add r0.y, r0.y, r0.z 3824 frc r0.z, r0.y 3825 add r0.y, r0.y, -r0.z 3826 add r0.w, r0.y, c7.x 3827 mad r1.x, r0.w, c8.z, c8.w 3828 add r0.w, r0.x, c7.w 3829 mad r2.x, r0.y, c8.z, c8.w 3830 mov r2.y, c7.z 3831 mov r1.y, c7.z 3832 mov r3.xy, c8 3833 mov r4.xy, c7.yzxw 3834 texld r2, r2, s1 3835 texld r1, r1, s1 3836 texld r3, r3, s1 3837 texld r4, r4, s1 3838 texld r5, t0, s0 3839 lrp r6, r0.z, r1, r2 3840 cmp r1, r0.w, r3, r6 3841 cmp r0, -r0.x, r4, r1 3842 log r1.x, r0.x 3843 log r1.y, r0.y 3844 log r1.z, r0.z 3845 mul r1.xyz, r1, c9.x 3846 exp r2.x, r1.x 3847 exp r2.y, r1.y 3848 exp r2.z, r1.z 3849 mad r0.xyz, r2, c9.y, c9.z 3850 mul r0, r5.w, r0 3851 mul r0, r0, v0 3852 mov oC0, r0 3853 3854// approximately 52 instruction slots used (5 texture, 47 arithmetic) 3855#endif 3856 3857const DWORD linear28[] = 3858{ 3859 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 3860 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 3861 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 3862 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 3863 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 3864 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 3865 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 3866 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 3867 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 3868 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 3869 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 3870 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 3871 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0009, 3872 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 3873 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 3874 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 3875 0xa00f0801, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 3876 0xb0e40001, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000002, 3877 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 3878 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 0x03000005, 3879 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 3880 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 0x03000005, 3881 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 0x80550000, 3882 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 0x03000005, 3883 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 0x80550000, 3884 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 0x03000005, 3885 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 3886 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 0x03000005, 3887 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 3888 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000006, 0x03000005, 3889 0x80140000, 0x80aa0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 3890 0x80aa0000, 0x02000013, 0x80040000, 0x80550000, 0x03000002, 0x80020000, 3891 0x80550000, 0x81aa0000, 0x03000002, 0x80080000, 0x80550000, 0xa0000007, 3892 0x04000004, 0x80010001, 0x80ff0000, 0xa0aa0008, 0xa0ff0008, 0x03000002, 3893 0x80080000, 0x80000000, 0xa0ff0007, 0x04000004, 0x80010002, 0x80550000, 3894 0xa0aa0008, 0xa0ff0008, 0x02000001, 0x80020002, 0xa0aa0007, 0x02000001, 3895 0x80020001, 0xa0aa0007, 0x02000001, 0x80030003, 0xa0e40008, 0x02000001, 3896 0x80030004, 0xa0c90007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 3897 0x03000042, 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 3898 0x80e40003, 0xa0e40801, 0x03000042, 0x800f0004, 0x80e40004, 0xa0e40801, 3899 0x03000042, 0x800f0005, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0006, 3900 0x80aa0000, 0x80e40001, 0x80e40002, 0x04000058, 0x800f0001, 0x80ff0000, 3901 0x80e40003, 0x80e40006, 0x04000058, 0x800f0000, 0x81000000, 0x80e40004, 3902 0x80e40001, 0x0200000f, 0x80010001, 0x80000000, 0x0200000f, 0x80020001, 3903 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 0x03000005, 0x80070001, 3904 0x80e40001, 0xa0000009, 0x0200000e, 0x80010002, 0x80000001, 0x0200000e, 3905 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 0x80aa0001, 0x04000004, 3906 0x80070000, 0x80e40002, 0xa0550009, 0xa0aa0009, 0x03000005, 0x800f0000, 3907 0x80ff0005, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 3908 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 3909}; 3910#if 0 3911// 3912// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 3913// 3914// fxc /T ps_2_0 /Vn linear29 /Fh tmp.h tmp.hlsl 3915// 3916// 3917// Parameters: 3918// 3919// sampler2D colors; 3920// float2 fractions[8]; 3921// sampler2D mask; 3922// float3 params; 3923// 3924// 3925// Registers: 3926// 3927// Name Reg Size 3928// ------------ ----- ---- 3929// fractions c0 7 3930// params c16 1 3931// mask s0 1 3932// colors s1 1 3933// 3934 3935 ps_2_0 3936 def c7, 1, 0.5, -0.5, 2 3937 def c8, 0.0625, 0.03125, 0.416667014, 0 3938 def c9, 1.05499995, -0.0549999997, 0, 0 3939 dcl t0.xy 3940 dcl t1.xy 3941 dcl v0 3942 dcl_2d s0 3943 dcl_2d s1 3944 mov r0.xy, t1 3945 mov r0.z, c7.x 3946 dp3 r0.x, c16, r0 3947 mul r0.x, r0.x, c7.y 3948 frc r0.x, r0.x 3949 add r0.x, r0.x, c7.z 3950 abs r0.x, r0.x 3951 mad r0.x, r0.x, -c7.w, c7.x 3952 add r0.y, r0.x, -c0.x 3953 mul_sat r0.y, r0.y, c0.y 3954 add r0.z, r0.x, -c1.x 3955 mul_sat r0.z, r0.z, c1.y 3956 add r0.y, r0.y, r0.z 3957 add r0.z, r0.x, -c2.x 3958 mul_sat r0.z, r0.z, c2.y 3959 add r0.y, r0.y, r0.z 3960 add r0.z, r0.x, -c3.x 3961 mul_sat r0.z, r0.z, c3.y 3962 add r0.y, r0.y, r0.z 3963 add r0.z, r0.x, -c4.x 3964 mul_sat r0.z, r0.z, c4.y 3965 add r0.y, r0.y, r0.z 3966 add r0.z, r0.x, -c5.x 3967 add r0.x, r0.x, -c6.x 3968 mul_sat r0.z, r0.z, c5.y 3969 add r0.y, r0.y, r0.z 3970 mul_sat r0.x, r0.x, c6.y 3971 add r0.x, r0.y, r0.x 3972 frc r0.y, r0.x 3973 add r0.x, r0.x, -r0.y 3974 add r0.z, r0.x, c7.x 3975 mad r1.x, r0.x, c8.x, c8.y 3976 mad r2.x, r0.z, c8.x, c8.y 3977 mov r2.y, c7.y 3978 mov r1.y, c7.y 3979 texld r2, r2, s1 3980 texld r1, r1, s1 3981 texld r3, t0, s0 3982 lrp r4, r0.y, r2, r1 3983 log r0.x, r4.x 3984 log r0.y, r4.y 3985 log r0.z, r4.z 3986 mul r0.xyz, r0, c8.z 3987 exp r1.x, r0.x 3988 exp r1.y, r0.y 3989 exp r1.z, r0.z 3990 mad r4.xyz, r1, c9.x, c9.y 3991 mul r0, r3.w, r4 3992 mul r0, r0, v0 3993 mov oC0, r0 3994 3995// approximately 50 instruction slots used (3 texture, 47 arithmetic) 3996#endif 3997 3998const DWORD linear29[] = 3999{ 4000 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 4001 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 4002 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 4003 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 4004 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 4005 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 4006 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 4007 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 4008 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 4009 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 4010 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 4011 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 4012 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0009, 4013 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 4014 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 4015 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 4016 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 4017 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x03000005, 4018 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 4019 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 4020 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 4021 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 4022 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 4023 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 4024 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 4025 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 4026 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 4027 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 4028 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 4029 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 4030 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 4031 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 4032 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 4033 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 4034 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 4035 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 4036 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 4037 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 4038 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 4039 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 4040 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 4041 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 4042 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 0x0200000f, 0x80040000, 4043 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 0xa0aa0008, 0x0200000e, 4044 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 4045 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 0x80e40001, 0xa0000009, 4046 0xa0550009, 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 4047 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 4048 0x0000ffff 4049}; 4050#if 0 4051// 4052// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4053// 4054// fxc /T ps_2_0 /Vn linear30 /Fh tmp.h tmp.hlsl 4055// 4056// 4057// Parameters: 4058// 4059// sampler2D colors; 4060// float2 fractions[8]; 4061// sampler2D mask; 4062// float3 params; 4063// 4064// 4065// Registers: 4066// 4067// Name Reg Size 4068// ------------ ----- ---- 4069// fractions c0 7 4070// params c16 1 4071// mask s0 1 4072// colors s1 1 4073// 4074 4075 ps_2_0 4076 def c7, 1, 0.0625, 0.03125, 0.5 4077 def c8, 0.416667014, 1.05499995, -0.0549999997, 0 4078 dcl t0.xy 4079 dcl t1.xy 4080 dcl v0 4081 dcl_2d s0 4082 dcl_2d s1 4083 mov r0.xy, t1 4084 mov r0.z, c7.x 4085 dp3 r0.x, c16, r0 4086 frc r0.x, r0.x 4087 add r0.y, r0.x, -c0.x 4088 mul_sat r0.y, r0.y, c0.y 4089 add r0.z, r0.x, -c1.x 4090 mul_sat r0.z, r0.z, c1.y 4091 add r0.y, r0.y, r0.z 4092 add r0.z, r0.x, -c2.x 4093 mul_sat r0.z, r0.z, c2.y 4094 add r0.y, r0.y, r0.z 4095 add r0.z, r0.x, -c3.x 4096 mul_sat r0.z, r0.z, c3.y 4097 add r0.y, r0.y, r0.z 4098 add r0.z, r0.x, -c4.x 4099 mul_sat r0.z, r0.z, c4.y 4100 add r0.y, r0.y, r0.z 4101 add r0.z, r0.x, -c5.x 4102 add r0.x, r0.x, -c6.x 4103 mul_sat r0.z, r0.z, c5.y 4104 add r0.y, r0.y, r0.z 4105 mul_sat r0.x, r0.x, c6.y 4106 add r0.x, r0.y, r0.x 4107 frc r0.y, r0.x 4108 add r0.x, r0.x, -r0.y 4109 add r0.z, r0.x, c7.x 4110 mad r1.x, r0.x, c7.y, c7.z 4111 mad r2.x, r0.z, c7.y, c7.z 4112 mov r2.y, c7.w 4113 mov r1.y, c7.w 4114 texld r2, r2, s1 4115 texld r1, r1, s1 4116 texld r3, t0, s0 4117 lrp r4, r0.y, r2, r1 4118 log r0.x, r4.x 4119 log r0.y, r4.y 4120 log r0.z, r4.z 4121 mul r0.xyz, r0, c8.x 4122 exp r1.x, r0.x 4123 exp r1.y, r0.y 4124 exp r1.z, r0.z 4125 mad r4.xyz, r1, c8.y, c8.z 4126 mul r0, r3.w, r4 4127 mul r0, r0, v0 4128 mov oC0, r0 4129 4130// approximately 46 instruction slots used (3 texture, 43 arithmetic) 4131#endif 4132 4133const DWORD linear30[] = 4134{ 4135 0xffff0200, 0x003efffe, 0x42415443, 0x0000001c, 0x000000c3, 0xffff0200, 4136 0x00000004, 0x0000001c, 0x20000100, 0x000000bc, 0x0000006c, 0x00010003, 4137 0x00060001, 0x00000074, 0x00000000, 0x00000084, 0x00000002, 0x00020007, 4138 0x00000090, 0x00000000, 0x000000a0, 0x00000003, 0x00020001, 0x00000074, 4139 0x00000000, 0x000000a5, 0x00100002, 0x00420001, 0x000000ac, 0x00000000, 4140 0x6f6c6f63, 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 4141 0x63617266, 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 4142 0x00000000, 0x6b73616d, 0x72617000, 0x00736d61, 0x00030001, 0x00030001, 4143 0x00000001, 0x00000000, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 4144 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 4145 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 4146 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0008, 4147 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 4148 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 4149 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 4150 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 4151 0xa0000007, 0x03000008, 0x80010000, 0xa0e40010, 0x80e40000, 0x02000013, 4152 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 4153 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 4154 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 4155 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4156 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 4157 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4158 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 4159 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4160 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 4161 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4162 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 4163 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 4164 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 4165 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 4166 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 4167 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 4168 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 4169 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 4170 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 4171 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 4172 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 4173 0x0200000f, 0x80010000, 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 4174 0x0200000f, 0x80040000, 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 4175 0xa0000008, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 4176 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 4177 0x80e40001, 0xa0550008, 0xa0aa0008, 0x03000005, 0x800f0000, 0x80ff0003, 4178 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 4179 0x800f0800, 0x80e40000, 0x0000ffff 4180}; 4181const DWORD *linearShaders[] = 4182{ 4183 linear0, 4184 linear1, 4185 linear2, 4186 NULL, 4187 linear4, 4188 linear5, 4189 linear6, 4190 NULL, 4191 linear8, 4192 linear9, 4193 linear10, 4194 NULL, 4195 linear12, 4196 linear13, 4197 linear14, 4198 NULL, 4199 linear16, 4200 linear17, 4201 linear18, 4202 NULL, 4203 linear20, 4204 linear21, 4205 linear22, 4206 NULL, 4207 linear24, 4208 linear25, 4209 linear26, 4210 NULL, 4211 linear28, 4212 linear29, 4213 linear30, 4214 NULL, 4215}; 4216 4217#if 0 4218// 4219// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4220// 4221// fxc /T ps_2_0 /Vn radial0 /Fh tmp.h tmp.hlsl 4222// 4223// 4224// Parameters: 4225// 4226// sampler2D colors; 4227// float2 fractions[4]; 4228// float3 m0; 4229// float3 m1; 4230// float3 precalc; 4231// 4232// 4233// Registers: 4234// 4235// Name Reg Size 4236// ------------ ----- ---- 4237// fractions c0 3 4238// m0 c16 1 4239// m1 c17 1 4240// precalc c18 1 4241// colors s0 1 4242// 4243 4244 ps_2_0 4245 def c3, 1, 0, 0.5, -1 4246 def c4, 1, 0.5, 0.0625, 0.03125 4247 dcl t0.xy 4248 dcl v0 4249 dcl_2d s0 4250 mov r0.z, c3.x 4251 mov r0.xy, t0 4252 dp3 r0.w, r0, c17 4253 mul r0.w, r0.w, r0.w 4254 mul r0.w, r0.w, c18.y 4255 dp3 r0.x, r0, c16 4256 add r0.x, r0.x, -c18.x 4257 mad r0.y, r0.x, r0.x, r0.w 4258 rsq r0.y, r0.y 4259 rcp r0.y, r0.y 4260 mad r0.x, c18.x, r0.x, r0.y 4261 mov r0.z, c18.z 4262 mad r0.y, r0.x, r0.z, -c0.x 4263 mul_sat r0.y, r0.y, c0.y 4264 mad r0.w, r0.x, r0.z, -c1.x 4265 mul_sat r0.w, r0.w, c1.y 4266 add r0.y, r0.y, r0.w 4267 mad r0.w, r0.x, r0.z, -c2.x 4268 mul_sat r0.w, r0.w, c2.y 4269 add r0.y, r0.y, r0.w 4270 frc r0.w, r0.y 4271 add r0.y, r0.y, -r0.w 4272 add r1.w, r0.y, c3.x 4273 mad r1.x, r1.w, c4.z, c4.w 4274 mul r1.z, r0.x, c18.z 4275 mad r1.w, r0.x, r0.z, c3.w 4276 mad r0.x, r0.y, c4.z, c4.w 4277 mov r0.y, c3.z 4278 mov r1.y, c3.z 4279 mov r2.xy, c4 4280 mov r3.xy, c3.yzxw 4281 texld r4, r0, s0 4282 texld r5, r1, s0 4283 texld r2, r2, s0 4284 texld r3, r3, s0 4285 lrp r6, r0.w, r5, r4 4286 cmp r0, r1.w, r2, r6 4287 cmp r0, -r1.z, r3, r0 4288 mul r0, r0, v0 4289 mov oC0, r0 4290 4291// approximately 40 instruction slots used (4 texture, 36 arithmetic) 4292#endif 4293 4294const DWORD radial0[] = 4295{ 4296 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4297 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4298 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 4299 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4300 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4301 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4302 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4303 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 4304 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4305 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4306 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4307 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 4308 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 4309 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 4310 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4311 0xa00f0800, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 4312 0xb0e40000, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 4313 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 4314 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 4315 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4316 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4317 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4318 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 4319 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 4320 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 4321 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 4322 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 4323 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 4324 0x80020000, 0x80550000, 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 4325 0x03000002, 0x80020000, 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 4326 0x80550000, 0xa0000003, 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0004, 4327 0xa0ff0004, 0x03000005, 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 4328 0x80080001, 0x80000000, 0x80aa0000, 0xa0ff0003, 0x04000004, 0x80010000, 4329 0x80550000, 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020000, 0xa0aa0003, 4330 0x02000001, 0x80020001, 0xa0aa0003, 0x02000001, 0x80030002, 0xa0e40004, 4331 0x02000001, 0x80030003, 0xa0c90003, 0x03000042, 0x800f0004, 0x80e40000, 4332 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40001, 0xa0e40800, 0x03000042, 4333 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 4334 0xa0e40800, 0x04000012, 0x800f0006, 0x80ff0000, 0x80e40005, 0x80e40004, 4335 0x04000058, 0x800f0000, 0x80ff0001, 0x80e40002, 0x80e40006, 0x04000058, 4336 0x800f0000, 0x81aa0001, 0x80e40003, 0x80e40000, 0x03000005, 0x800f0000, 4337 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 4338}; 4339#if 0 4340// 4341// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4342// 4343// fxc /T ps_2_0 /Vn radial1 /Fh tmp.h tmp.hlsl 4344// 4345// 4346// Parameters: 4347// 4348// sampler2D colors; 4349// float2 fractions[4]; 4350// float3 m0; 4351// float3 m1; 4352// float3 precalc; 4353// 4354// 4355// Registers: 4356// 4357// Name Reg Size 4358// ------------ ----- ---- 4359// fractions c0 3 4360// m0 c16 1 4361// m1 c17 1 4362// precalc c18 1 4363// colors s0 1 4364// 4365 4366 ps_2_0 4367 def c3, 1, 0.5, -0.5, 2 4368 def c4, 0.0625, 0.03125, 0, 0 4369 dcl t0.xy 4370 dcl v0 4371 dcl_2d s0 4372 mov r0.xy, t0 4373 mov r0.z, c3.x 4374 dp3 r0.w, r0, c17 4375 dp3 r0.x, r0, c16 4376 mul r0.y, r0.w, r0.w 4377 mul r0.y, r0.y, c18.y 4378 add r0.x, r0.x, -c18.x 4379 mad r0.y, r0.x, r0.x, r0.y 4380 rsq r0.y, r0.y 4381 rcp r0.y, r0.y 4382 mad r0.x, c18.x, r0.x, r0.y 4383 mul r0.x, r0.x, c18.z 4384 mul r0.x, r0.x, c3.y 4385 frc r0.x, r0.x 4386 add r0.x, r0.x, c3.z 4387 abs r0.x, r0.x 4388 mad r0.x, r0.x, -c3.w, c3.x 4389 add r0.y, r0.x, -c0.x 4390 mul_sat r0.y, r0.y, c0.y 4391 add r0.z, r0.x, -c1.x 4392 add r0.x, r0.x, -c2.x 4393 mul_sat r0.z, r0.z, c1.y 4394 add r0.y, r0.y, r0.z 4395 mul_sat r0.x, r0.x, c2.y 4396 add r0.x, r0.y, r0.x 4397 frc r0.y, r0.x 4398 add r0.x, r0.x, -r0.y 4399 add r0.z, r0.x, c3.x 4400 mad r1.x, r0.x, c4.x, c4.y 4401 mad r2.x, r0.z, c4.x, c4.y 4402 mov r2.y, c3.y 4403 mov r1.y, c3.y 4404 texld r2, r2, s0 4405 texld r1, r1, s0 4406 lrp r3, r0.y, r2, r1 4407 mul r0, r3, v0 4408 mov oC0, r0 4409 4410// approximately 37 instruction slots used (2 texture, 35 arithmetic) 4411#endif 4412 4413const DWORD radial1[] = 4414{ 4415 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4416 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4417 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 4418 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4419 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4420 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4421 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4422 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 4423 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4424 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4425 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4426 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 4427 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 4428 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 4429 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4430 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 4431 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 4432 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 4433 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 4434 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4435 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4436 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4437 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 4438 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 4439 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 4440 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 4441 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 4442 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 4443 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 4444 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 4445 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 4446 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 4447 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 4448 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 4449 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 4450 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 4451 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 4452 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 4453 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 4454 0x80e40000, 0x0000ffff 4455}; 4456#if 0 4457// 4458// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4459// 4460// fxc /T ps_2_0 /Vn radial2 /Fh tmp.h tmp.hlsl 4461// 4462// 4463// Parameters: 4464// 4465// sampler2D colors; 4466// float2 fractions[4]; 4467// float3 m0; 4468// float3 m1; 4469// float3 precalc; 4470// 4471// 4472// Registers: 4473// 4474// Name Reg Size 4475// ------------ ----- ---- 4476// fractions c0 3 4477// m0 c16 1 4478// m1 c17 1 4479// precalc c18 1 4480// colors s0 1 4481// 4482 4483 ps_2_0 4484 def c3, 1, 0.0625, 0.03125, 0.5 4485 dcl t0.xy 4486 dcl v0 4487 dcl_2d s0 4488 mov r0.xy, t0 4489 mov r0.z, c3.x 4490 dp3 r0.w, r0, c17 4491 dp3 r0.x, r0, c16 4492 mul r0.y, r0.w, r0.w 4493 mul r0.y, r0.y, c18.y 4494 add r0.x, r0.x, -c18.x 4495 mad r0.y, r0.x, r0.x, r0.y 4496 rsq r0.y, r0.y 4497 rcp r0.y, r0.y 4498 mad r0.x, c18.x, r0.x, r0.y 4499 mul r0.x, r0.x, c18.z 4500 frc r0.x, r0.x 4501 add r0.y, r0.x, -c0.x 4502 mul_sat r0.y, r0.y, c0.y 4503 add r0.z, r0.x, -c1.x 4504 add r0.x, r0.x, -c2.x 4505 mul_sat r0.z, r0.z, c1.y 4506 add r0.y, r0.y, r0.z 4507 mul_sat r0.x, r0.x, c2.y 4508 add r0.x, r0.y, r0.x 4509 frc r0.y, r0.x 4510 add r0.x, r0.x, -r0.y 4511 add r0.z, r0.x, c3.x 4512 mad r1.x, r0.x, c3.y, c3.z 4513 mad r2.x, r0.z, c3.y, c3.z 4514 mov r2.y, c3.w 4515 mov r1.y, c3.w 4516 texld r2, r2, s0 4517 texld r1, r1, s0 4518 lrp r3, r0.y, r2, r1 4519 mul r0, r3, v0 4520 mov oC0, r0 4521 4522// approximately 33 instruction slots used (2 texture, 31 arithmetic) 4523#endif 4524 4525const DWORD radial2[] = 4526{ 4527 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4528 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4529 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 4530 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4531 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4532 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4533 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4534 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 4535 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4536 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4537 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4538 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 4539 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 4540 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4541 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 4542 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 4543 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 4544 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 4545 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4546 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4547 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4548 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 4549 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 4550 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 4551 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 4552 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 4553 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 4554 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 4555 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 4556 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 4557 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 4558 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 4559 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 4560 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 4561 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 4562 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 4563}; 4564#if 0 4565// 4566// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4567// 4568// fxc /T ps_2_0 /Vn radial4 /Fh tmp.h tmp.hlsl 4569// 4570// 4571// Parameters: 4572// 4573// sampler2D colors; 4574// float2 fractions[8]; 4575// float3 m0; 4576// float3 m1; 4577// float3 precalc; 4578// 4579// 4580// Registers: 4581// 4582// Name Reg Size 4583// ------------ ----- ---- 4584// fractions c0 7 4585// m0 c16 1 4586// m1 c17 1 4587// precalc c18 1 4588// colors s0 1 4589// 4590 4591 ps_2_0 4592 def c7, 1, 0, 0.5, -1 4593 def c8, 1, 0.5, 0.0625, 0.03125 4594 dcl t0.xy 4595 dcl v0 4596 dcl_2d s0 4597 mov r0.z, c7.x 4598 mov r0.xy, t0 4599 dp3 r0.w, r0, c17 4600 mul r0.w, r0.w, r0.w 4601 mul r0.w, r0.w, c18.y 4602 dp3 r0.x, r0, c16 4603 add r0.x, r0.x, -c18.x 4604 mad r0.y, r0.x, r0.x, r0.w 4605 rsq r0.y, r0.y 4606 rcp r0.y, r0.y 4607 mad r0.x, c18.x, r0.x, r0.y 4608 mov r0.z, c18.z 4609 mad r0.y, r0.x, r0.z, -c0.x 4610 mul_sat r0.y, r0.y, c0.y 4611 mad r0.w, r0.x, r0.z, -c1.x 4612 mul_sat r0.w, r0.w, c1.y 4613 add r0.y, r0.y, r0.w 4614 mad r0.w, r0.x, r0.z, -c2.x 4615 mul_sat r0.w, r0.w, c2.y 4616 add r0.y, r0.y, r0.w 4617 mad r0.w, r0.x, r0.z, -c3.x 4618 mul_sat r0.w, r0.w, c3.y 4619 add r0.y, r0.y, r0.w 4620 mad r0.w, r0.x, r0.z, -c4.x 4621 mul_sat r0.w, r0.w, c4.y 4622 add r0.y, r0.y, r0.w 4623 mad r0.w, r0.x, r0.z, -c5.x 4624 mul_sat r0.w, r0.w, c5.y 4625 add r0.y, r0.y, r0.w 4626 mad r0.w, r0.x, r0.z, -c6.x 4627 mul_sat r0.w, r0.w, c6.y 4628 add r0.y, r0.y, r0.w 4629 frc r0.w, r0.y 4630 add r0.y, r0.y, -r0.w 4631 add r1.w, r0.y, c7.x 4632 mad r1.x, r1.w, c8.z, c8.w 4633 mul r1.z, r0.x, c18.z 4634 mad r1.w, r0.x, r0.z, c7.w 4635 mad r0.x, r0.y, c8.z, c8.w 4636 mov r0.y, c7.z 4637 mov r1.y, c7.z 4638 mov r2.xy, c8 4639 mov r3.xy, c7.yzxw 4640 texld r4, r0, s0 4641 texld r5, r1, s0 4642 texld r2, r2, s0 4643 texld r3, r3, s0 4644 lrp r6, r0.w, r5, r4 4645 cmp r0, r1.w, r2, r6 4646 cmp r0, -r1.z, r3, r0 4647 mul r0, r0, v0 4648 mov oC0, r0 4649 4650// approximately 52 instruction slots used (4 texture, 48 arithmetic) 4651#endif 4652 4653const DWORD radial4[] = 4654{ 4655 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4656 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4657 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 4658 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4659 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4660 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4661 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4662 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 4663 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4664 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4665 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4666 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 4667 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 4668 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 4669 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4670 0xa00f0800, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 4671 0xb0e40000, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 4672 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 4673 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 4674 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4675 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4676 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4677 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 4678 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 4679 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 4680 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 4681 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 4682 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 4683 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 4684 0x80aa0000, 0xa1000003, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550003, 4685 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 4686 0x80000000, 0x80aa0000, 0xa1000004, 0x03000005, 0x80180000, 0x80ff0000, 4687 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 4688 0x80080000, 0x80000000, 0x80aa0000, 0xa1000005, 0x03000005, 0x80180000, 4689 0x80ff0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 4690 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000006, 0x03000005, 4691 0x80180000, 0x80ff0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 4692 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 0x03000002, 0x80020000, 4693 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 0x80550000, 0xa0000007, 4694 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0008, 0xa0ff0008, 0x03000005, 4695 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 0x80080001, 0x80000000, 4696 0x80aa0000, 0xa0ff0007, 0x04000004, 0x80010000, 0x80550000, 0xa0aa0008, 4697 0xa0ff0008, 0x02000001, 0x80020000, 0xa0aa0007, 0x02000001, 0x80020001, 4698 0xa0aa0007, 0x02000001, 0x80030002, 0xa0e40008, 0x02000001, 0x80030003, 4699 0xa0c90007, 0x03000042, 0x800f0004, 0x80e40000, 0xa0e40800, 0x03000042, 4700 0x800f0005, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 4701 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x04000012, 4702 0x800f0006, 0x80ff0000, 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 4703 0x80ff0001, 0x80e40002, 0x80e40006, 0x04000058, 0x800f0000, 0x81aa0001, 4704 0x80e40003, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 4705 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 4706}; 4707#if 0 4708// 4709// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4710// 4711// fxc /T ps_2_0 /Vn radial5 /Fh tmp.h tmp.hlsl 4712// 4713// 4714// Parameters: 4715// 4716// sampler2D colors; 4717// float2 fractions[8]; 4718// float3 m0; 4719// float3 m1; 4720// float3 precalc; 4721// 4722// 4723// Registers: 4724// 4725// Name Reg Size 4726// ------------ ----- ---- 4727// fractions c0 7 4728// m0 c16 1 4729// m1 c17 1 4730// precalc c18 1 4731// colors s0 1 4732// 4733 4734 ps_2_0 4735 def c7, 1, 0.5, -0.5, 2 4736 def c8, 0.0625, 0.03125, 0, 0 4737 dcl t0.xy 4738 dcl v0 4739 dcl_2d s0 4740 mov r0.xy, t0 4741 mov r0.z, c7.x 4742 dp3 r0.w, r0, c17 4743 dp3 r0.x, r0, c16 4744 mul r0.y, r0.w, r0.w 4745 mul r0.y, r0.y, c18.y 4746 add r0.x, r0.x, -c18.x 4747 mad r0.y, r0.x, r0.x, r0.y 4748 rsq r0.y, r0.y 4749 rcp r0.y, r0.y 4750 mad r0.x, c18.x, r0.x, r0.y 4751 mul r0.x, r0.x, c18.z 4752 mul r0.x, r0.x, c7.y 4753 frc r0.x, r0.x 4754 add r0.x, r0.x, c7.z 4755 abs r0.x, r0.x 4756 mad r0.x, r0.x, -c7.w, c7.x 4757 add r0.y, r0.x, -c0.x 4758 mul_sat r0.y, r0.y, c0.y 4759 add r0.z, r0.x, -c1.x 4760 mul_sat r0.z, r0.z, c1.y 4761 add r0.y, r0.y, r0.z 4762 add r0.z, r0.x, -c2.x 4763 mul_sat r0.z, r0.z, c2.y 4764 add r0.y, r0.y, r0.z 4765 add r0.z, r0.x, -c3.x 4766 mul_sat r0.z, r0.z, c3.y 4767 add r0.y, r0.y, r0.z 4768 add r0.z, r0.x, -c4.x 4769 mul_sat r0.z, r0.z, c4.y 4770 add r0.y, r0.y, r0.z 4771 add r0.z, r0.x, -c5.x 4772 add r0.x, r0.x, -c6.x 4773 mul_sat r0.z, r0.z, c5.y 4774 add r0.y, r0.y, r0.z 4775 mul_sat r0.x, r0.x, c6.y 4776 add r0.x, r0.y, r0.x 4777 frc r0.y, r0.x 4778 add r0.x, r0.x, -r0.y 4779 add r0.z, r0.x, c7.x 4780 mad r1.x, r0.x, c8.x, c8.y 4781 mad r2.x, r0.z, c8.x, c8.y 4782 mov r2.y, c7.y 4783 mov r1.y, c7.y 4784 texld r2, r2, s0 4785 texld r1, r1, s0 4786 lrp r3, r0.y, r2, r1 4787 mul r0, r3, v0 4788 mov oC0, r0 4789 4790// approximately 49 instruction slots used (2 texture, 47 arithmetic) 4791#endif 4792 4793const DWORD radial5[] = 4794{ 4795 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4796 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4797 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 4798 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4799 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4800 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4801 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4802 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 4803 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4804 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4805 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4806 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 4807 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 4808 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 4809 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4810 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 4811 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 4812 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 4813 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 4814 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4815 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4816 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4817 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 4818 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 4819 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 4820 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 4821 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 4822 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 4823 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 4824 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 4825 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 4826 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 4827 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 4828 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 4829 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 4830 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 4831 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 4832 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 4833 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 4834 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 4835 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 4836 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 4837 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 4838 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 4839 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 4840 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 4841 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 4842 0x80e40000, 0x0000ffff 4843}; 4844#if 0 4845// 4846// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4847// 4848// fxc /T ps_2_0 /Vn radial6 /Fh tmp.h tmp.hlsl 4849// 4850// 4851// Parameters: 4852// 4853// sampler2D colors; 4854// float2 fractions[8]; 4855// float3 m0; 4856// float3 m1; 4857// float3 precalc; 4858// 4859// 4860// Registers: 4861// 4862// Name Reg Size 4863// ------------ ----- ---- 4864// fractions c0 7 4865// m0 c16 1 4866// m1 c17 1 4867// precalc c18 1 4868// colors s0 1 4869// 4870 4871 ps_2_0 4872 def c7, 1, 0.0625, 0.03125, 0.5 4873 dcl t0.xy 4874 dcl v0 4875 dcl_2d s0 4876 mov r0.xy, t0 4877 mov r0.z, c7.x 4878 dp3 r0.w, r0, c17 4879 dp3 r0.x, r0, c16 4880 mul r0.y, r0.w, r0.w 4881 mul r0.y, r0.y, c18.y 4882 add r0.x, r0.x, -c18.x 4883 mad r0.y, r0.x, r0.x, r0.y 4884 rsq r0.y, r0.y 4885 rcp r0.y, r0.y 4886 mad r0.x, c18.x, r0.x, r0.y 4887 mul r0.x, r0.x, c18.z 4888 frc r0.x, r0.x 4889 add r0.y, r0.x, -c0.x 4890 mul_sat r0.y, r0.y, c0.y 4891 add r0.z, r0.x, -c1.x 4892 mul_sat r0.z, r0.z, c1.y 4893 add r0.y, r0.y, r0.z 4894 add r0.z, r0.x, -c2.x 4895 mul_sat r0.z, r0.z, c2.y 4896 add r0.y, r0.y, r0.z 4897 add r0.z, r0.x, -c3.x 4898 mul_sat r0.z, r0.z, c3.y 4899 add r0.y, r0.y, r0.z 4900 add r0.z, r0.x, -c4.x 4901 mul_sat r0.z, r0.z, c4.y 4902 add r0.y, r0.y, r0.z 4903 add r0.z, r0.x, -c5.x 4904 add r0.x, r0.x, -c6.x 4905 mul_sat r0.z, r0.z, c5.y 4906 add r0.y, r0.y, r0.z 4907 mul_sat r0.x, r0.x, c6.y 4908 add r0.x, r0.y, r0.x 4909 frc r0.y, r0.x 4910 add r0.x, r0.x, -r0.y 4911 add r0.z, r0.x, c7.x 4912 mad r1.x, r0.x, c7.y, c7.z 4913 mad r2.x, r0.z, c7.y, c7.z 4914 mov r2.y, c7.w 4915 mov r1.y, c7.w 4916 texld r2, r2, s0 4917 texld r1, r1, s0 4918 lrp r3, r0.y, r2, r1 4919 mul r0, r3, v0 4920 mov oC0, r0 4921 4922// approximately 45 instruction slots used (2 texture, 43 arithmetic) 4923#endif 4924 4925const DWORD radial6[] = 4926{ 4927 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 4928 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 4929 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 4930 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 4931 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 4932 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 4933 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 4934 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 4935 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 4936 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 4937 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 4938 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 4939 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 4940 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 4941 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 4942 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 4943 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 4944 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 4945 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 4946 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 4947 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 4948 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 4949 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 4950 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 4951 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 4952 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4953 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 4954 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4955 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 4956 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4957 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 4958 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 4959 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 4960 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 4961 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 4962 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 4963 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 4964 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 4965 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 4966 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 4967 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 4968 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 4969 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 0x80e40003, 0x90e40000, 4970 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 4971}; 4972#if 0 4973// 4974// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 4975// 4976// fxc /T ps_2_0 /Vn radial8 /Fh tmp.h tmp.hlsl 4977// 4978// 4979// Parameters: 4980// 4981// sampler2D colors; 4982// float2 fractions[4]; 4983// float3 m0; 4984// float3 m1; 4985// sampler2D mask; 4986// float3 precalc; 4987// 4988// 4989// Registers: 4990// 4991// Name Reg Size 4992// ------------ ----- ---- 4993// fractions c0 3 4994// m0 c16 1 4995// m1 c17 1 4996// precalc c18 1 4997// mask s0 1 4998// colors s1 1 4999// 5000 5001 ps_2_0 5002 def c3, 1, 0, 0.5, -1 5003 def c4, 1, 0.5, 0.0625, 0.03125 5004 dcl t0.xy 5005 dcl t1.xy 5006 dcl v0 5007 dcl_2d s0 5008 dcl_2d s1 5009 mov r0.z, c3.x 5010 mov r0.xy, t1 5011 dp3 r0.w, r0, c17 5012 mul r0.w, r0.w, r0.w 5013 mul r0.w, r0.w, c18.y 5014 dp3 r0.x, r0, c16 5015 add r0.x, r0.x, -c18.x 5016 mad r0.y, r0.x, r0.x, r0.w 5017 rsq r0.y, r0.y 5018 rcp r0.y, r0.y 5019 mad r0.x, c18.x, r0.x, r0.y 5020 mov r0.z, c18.z 5021 mad r0.y, r0.x, r0.z, -c0.x 5022 mul_sat r0.y, r0.y, c0.y 5023 mad r0.w, r0.x, r0.z, -c1.x 5024 mul_sat r0.w, r0.w, c1.y 5025 add r0.y, r0.y, r0.w 5026 mad r0.w, r0.x, r0.z, -c2.x 5027 mul_sat r0.w, r0.w, c2.y 5028 add r0.y, r0.y, r0.w 5029 frc r0.w, r0.y 5030 add r0.y, r0.y, -r0.w 5031 add r1.w, r0.y, c3.x 5032 mad r1.x, r1.w, c4.z, c4.w 5033 mul r1.z, r0.x, c18.z 5034 mad r1.w, r0.x, r0.z, c3.w 5035 mad r0.x, r0.y, c4.z, c4.w 5036 mov r0.y, c3.z 5037 mov r1.y, c3.z 5038 mov r2.xy, c4 5039 mov r3.xy, c3.yzxw 5040 texld r4, r0, s1 5041 texld r5, r1, s1 5042 texld r2, r2, s1 5043 texld r3, r3, s1 5044 texld r6, t0, s0 5045 lrp r7, r0.w, r5, r4 5046 cmp r0, r1.w, r2, r7 5047 cmp r0, -r1.z, r3, r0 5048 mul r0, r6.w, r0 5049 mul r0, r0, v0 5050 mov oC0, r0 5051 5052// approximately 42 instruction slots used (5 texture, 37 arithmetic) 5053#endif 5054 5055const DWORD radial8[] = 5056{ 5057 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5058 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5059 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 5060 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5061 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5062 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5063 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5064 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5065 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 5066 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5067 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5068 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5069 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 5070 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 5071 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 5072 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5073 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5074 0xa00f0801, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 5075 0xb0e40001, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 5076 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 5077 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 5078 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5079 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5080 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5081 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 5082 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 5083 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 5084 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 5085 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 5086 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 5087 0x80020000, 0x80550000, 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 5088 0x03000002, 0x80020000, 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 5089 0x80550000, 0xa0000003, 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0004, 5090 0xa0ff0004, 0x03000005, 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 5091 0x80080001, 0x80000000, 0x80aa0000, 0xa0ff0003, 0x04000004, 0x80010000, 5092 0x80550000, 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020000, 0xa0aa0003, 5093 0x02000001, 0x80020001, 0xa0aa0003, 0x02000001, 0x80030002, 0xa0e40004, 5094 0x02000001, 0x80030003, 0xa0c90003, 0x03000042, 0x800f0004, 0x80e40000, 5095 0xa0e40801, 0x03000042, 0x800f0005, 0x80e40001, 0xa0e40801, 0x03000042, 5096 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0003, 0x80e40003, 5097 0xa0e40801, 0x03000042, 0x800f0006, 0xb0e40000, 0xa0e40800, 0x04000012, 5098 0x800f0007, 0x80ff0000, 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 5099 0x80ff0001, 0x80e40002, 0x80e40007, 0x04000058, 0x800f0000, 0x81aa0001, 5100 0x80e40003, 0x80e40000, 0x03000005, 0x800f0000, 0x80ff0006, 0x80e40000, 5101 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 5102 0x80e40000, 0x0000ffff 5103}; 5104#if 0 5105// 5106// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5107// 5108// fxc /T ps_2_0 /Vn radial9 /Fh tmp.h tmp.hlsl 5109// 5110// 5111// Parameters: 5112// 5113// sampler2D colors; 5114// float2 fractions[4]; 5115// float3 m0; 5116// float3 m1; 5117// sampler2D mask; 5118// float3 precalc; 5119// 5120// 5121// Registers: 5122// 5123// Name Reg Size 5124// ------------ ----- ---- 5125// fractions c0 3 5126// m0 c16 1 5127// m1 c17 1 5128// precalc c18 1 5129// mask s0 1 5130// colors s1 1 5131// 5132 5133 ps_2_0 5134 def c3, 1, 0.5, -0.5, 2 5135 def c4, 0.0625, 0.03125, 0, 0 5136 dcl t0.xy 5137 dcl t1.xy 5138 dcl v0 5139 dcl_2d s0 5140 dcl_2d s1 5141 mov r0.xy, t1 5142 mov r0.z, c3.x 5143 dp3 r0.w, r0, c17 5144 dp3 r0.x, r0, c16 5145 mul r0.y, r0.w, r0.w 5146 mul r0.y, r0.y, c18.y 5147 add r0.x, r0.x, -c18.x 5148 mad r0.y, r0.x, r0.x, r0.y 5149 rsq r0.y, r0.y 5150 rcp r0.y, r0.y 5151 mad r0.x, c18.x, r0.x, r0.y 5152 mul r0.x, r0.x, c18.z 5153 mul r0.x, r0.x, c3.y 5154 frc r0.x, r0.x 5155 add r0.x, r0.x, c3.z 5156 abs r0.x, r0.x 5157 mad r0.x, r0.x, -c3.w, c3.x 5158 add r0.y, r0.x, -c0.x 5159 mul_sat r0.y, r0.y, c0.y 5160 add r0.z, r0.x, -c1.x 5161 add r0.x, r0.x, -c2.x 5162 mul_sat r0.z, r0.z, c1.y 5163 add r0.y, r0.y, r0.z 5164 mul_sat r0.x, r0.x, c2.y 5165 add r0.x, r0.y, r0.x 5166 frc r0.y, r0.x 5167 add r0.x, r0.x, -r0.y 5168 add r0.z, r0.x, c3.x 5169 mad r1.x, r0.x, c4.x, c4.y 5170 mad r2.x, r0.z, c4.x, c4.y 5171 mov r2.y, c3.y 5172 mov r1.y, c3.y 5173 texld r2, r2, s1 5174 texld r1, r1, s1 5175 texld r3, t0, s0 5176 lrp r4, r0.y, r2, r1 5177 mul r0, r3.w, r4 5178 mul r0, r0, v0 5179 mov oC0, r0 5180 5181// approximately 39 instruction slots used (3 texture, 36 arithmetic) 5182#endif 5183 5184const DWORD radial9[] = 5185{ 5186 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5187 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5188 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 5189 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5190 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5191 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5192 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5193 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5194 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 5195 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5196 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5197 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5198 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 5199 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 5200 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 5201 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5202 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5203 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 5204 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 5205 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 5206 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 5207 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5208 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5209 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5210 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 5211 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 5212 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 5213 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 5214 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 5215 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 5216 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 5217 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 5218 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 5219 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 5220 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 5221 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 5222 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 5223 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 5224 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 5225 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 5226 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 5227 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 5228 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 5229}; 5230#if 0 5231// 5232// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5233// 5234// fxc /T ps_2_0 /Vn radial10 /Fh tmp.h tmp.hlsl 5235// 5236// 5237// Parameters: 5238// 5239// sampler2D colors; 5240// float2 fractions[4]; 5241// float3 m0; 5242// float3 m1; 5243// sampler2D mask; 5244// float3 precalc; 5245// 5246// 5247// Registers: 5248// 5249// Name Reg Size 5250// ------------ ----- ---- 5251// fractions c0 3 5252// m0 c16 1 5253// m1 c17 1 5254// precalc c18 1 5255// mask s0 1 5256// colors s1 1 5257// 5258 5259 ps_2_0 5260 def c3, 1, 0.0625, 0.03125, 0.5 5261 dcl t0.xy 5262 dcl t1.xy 5263 dcl v0 5264 dcl_2d s0 5265 dcl_2d s1 5266 mov r0.xy, t1 5267 mov r0.z, c3.x 5268 dp3 r0.w, r0, c17 5269 dp3 r0.x, r0, c16 5270 mul r0.y, r0.w, r0.w 5271 mul r0.y, r0.y, c18.y 5272 add r0.x, r0.x, -c18.x 5273 mad r0.y, r0.x, r0.x, r0.y 5274 rsq r0.y, r0.y 5275 rcp r0.y, r0.y 5276 mad r0.x, c18.x, r0.x, r0.y 5277 mul r0.x, r0.x, c18.z 5278 frc r0.x, r0.x 5279 add r0.y, r0.x, -c0.x 5280 mul_sat r0.y, r0.y, c0.y 5281 add r0.z, r0.x, -c1.x 5282 add r0.x, r0.x, -c2.x 5283 mul_sat r0.z, r0.z, c1.y 5284 add r0.y, r0.y, r0.z 5285 mul_sat r0.x, r0.x, c2.y 5286 add r0.x, r0.y, r0.x 5287 frc r0.y, r0.x 5288 add r0.x, r0.x, -r0.y 5289 add r0.z, r0.x, c3.x 5290 mad r1.x, r0.x, c3.y, c3.z 5291 mad r2.x, r0.z, c3.y, c3.z 5292 mov r2.y, c3.w 5293 mov r1.y, c3.w 5294 texld r2, r2, s1 5295 texld r1, r1, s1 5296 texld r3, t0, s0 5297 lrp r4, r0.y, r2, r1 5298 mul r0, r3.w, r4 5299 mul r0, r0, v0 5300 mov oC0, r0 5301 5302// approximately 35 instruction slots used (3 texture, 32 arithmetic) 5303#endif 5304 5305const DWORD radial10[] = 5306{ 5307 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5308 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5309 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 5310 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5311 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5312 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5313 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5314 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5315 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 5316 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5317 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5318 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5319 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 5320 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 5321 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5322 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5323 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 5324 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 5325 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 5326 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 5327 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5328 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5329 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5330 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 5331 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 5332 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 5333 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 5334 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 5335 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 5336 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 5337 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 5338 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 5339 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 5340 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 5341 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 5342 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 5343 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 5344 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 5345 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 5346}; 5347#if 0 5348// 5349// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5350// 5351// fxc /T ps_2_0 /Vn radial12 /Fh tmp.h tmp.hlsl 5352// 5353// 5354// Parameters: 5355// 5356// sampler2D colors; 5357// float2 fractions[8]; 5358// float3 m0; 5359// float3 m1; 5360// sampler2D mask; 5361// float3 precalc; 5362// 5363// 5364// Registers: 5365// 5366// Name Reg Size 5367// ------------ ----- ---- 5368// fractions c0 7 5369// m0 c16 1 5370// m1 c17 1 5371// precalc c18 1 5372// mask s0 1 5373// colors s1 1 5374// 5375 5376 ps_2_0 5377 def c7, 1, 0, 0.5, -1 5378 def c8, 1, 0.5, 0.0625, 0.03125 5379 dcl t0.xy 5380 dcl t1.xy 5381 dcl v0 5382 dcl_2d s0 5383 dcl_2d s1 5384 mov r0.z, c7.x 5385 mov r0.xy, t1 5386 dp3 r0.w, r0, c17 5387 mul r0.w, r0.w, r0.w 5388 mul r0.w, r0.w, c18.y 5389 dp3 r0.x, r0, c16 5390 add r0.x, r0.x, -c18.x 5391 mad r0.y, r0.x, r0.x, r0.w 5392 rsq r0.y, r0.y 5393 rcp r0.y, r0.y 5394 mad r0.x, c18.x, r0.x, r0.y 5395 mov r0.z, c18.z 5396 mad r0.y, r0.x, r0.z, -c0.x 5397 mul_sat r0.y, r0.y, c0.y 5398 mad r0.w, r0.x, r0.z, -c1.x 5399 mul_sat r0.w, r0.w, c1.y 5400 add r0.y, r0.y, r0.w 5401 mad r0.w, r0.x, r0.z, -c2.x 5402 mul_sat r0.w, r0.w, c2.y 5403 add r0.y, r0.y, r0.w 5404 mad r0.w, r0.x, r0.z, -c3.x 5405 mul_sat r0.w, r0.w, c3.y 5406 add r0.y, r0.y, r0.w 5407 mad r0.w, r0.x, r0.z, -c4.x 5408 mul_sat r0.w, r0.w, c4.y 5409 add r0.y, r0.y, r0.w 5410 mad r0.w, r0.x, r0.z, -c5.x 5411 mul_sat r0.w, r0.w, c5.y 5412 add r0.y, r0.y, r0.w 5413 mad r0.w, r0.x, r0.z, -c6.x 5414 mul_sat r0.w, r0.w, c6.y 5415 add r0.y, r0.y, r0.w 5416 frc r0.w, r0.y 5417 add r0.y, r0.y, -r0.w 5418 add r1.w, r0.y, c7.x 5419 mad r1.x, r1.w, c8.z, c8.w 5420 mul r1.z, r0.x, c18.z 5421 mad r1.w, r0.x, r0.z, c7.w 5422 mad r0.x, r0.y, c8.z, c8.w 5423 mov r0.y, c7.z 5424 mov r1.y, c7.z 5425 mov r2.xy, c8 5426 mov r3.xy, c7.yzxw 5427 texld r4, r0, s1 5428 texld r5, r1, s1 5429 texld r2, r2, s1 5430 texld r3, r3, s1 5431 texld r6, t0, s0 5432 lrp r7, r0.w, r5, r4 5433 cmp r0, r1.w, r2, r7 5434 cmp r0, -r1.z, r3, r0 5435 mul r0, r6.w, r0 5436 mul r0, r0, v0 5437 mov oC0, r0 5438 5439// approximately 54 instruction slots used (5 texture, 49 arithmetic) 5440#endif 5441 5442const DWORD radial12[] = 5443{ 5444 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5445 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5446 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 5447 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5448 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5449 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5450 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5451 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5452 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 5453 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5454 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5455 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5456 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 5457 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 5458 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x0200001f, 0x80000000, 5459 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5460 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5461 0xa00f0801, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 5462 0xb0e40001, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 5463 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 5464 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 5465 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5466 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5467 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5468 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 5469 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 5470 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 5471 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 5472 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 5473 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 5474 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 5475 0x80aa0000, 0xa1000003, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550003, 5476 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 5477 0x80000000, 0x80aa0000, 0xa1000004, 0x03000005, 0x80180000, 0x80ff0000, 5478 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 5479 0x80080000, 0x80000000, 0x80aa0000, 0xa1000005, 0x03000005, 0x80180000, 5480 0x80ff0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 5481 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000006, 0x03000005, 5482 0x80180000, 0x80ff0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 5483 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 0x03000002, 0x80020000, 5484 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 0x80550000, 0xa0000007, 5485 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0008, 0xa0ff0008, 0x03000005, 5486 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 0x80080001, 0x80000000, 5487 0x80aa0000, 0xa0ff0007, 0x04000004, 0x80010000, 0x80550000, 0xa0aa0008, 5488 0xa0ff0008, 0x02000001, 0x80020000, 0xa0aa0007, 0x02000001, 0x80020001, 5489 0xa0aa0007, 0x02000001, 0x80030002, 0xa0e40008, 0x02000001, 0x80030003, 5490 0xa0c90007, 0x03000042, 0x800f0004, 0x80e40000, 0xa0e40801, 0x03000042, 5491 0x800f0005, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0002, 0x80e40002, 5492 0xa0e40801, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40801, 0x03000042, 5493 0x800f0006, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0007, 0x80ff0000, 5494 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 0x80ff0001, 0x80e40002, 5495 0x80e40007, 0x04000058, 0x800f0000, 0x81aa0001, 0x80e40003, 0x80e40000, 5496 0x03000005, 0x800f0000, 0x80ff0006, 0x80e40000, 0x03000005, 0x800f0000, 5497 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 5498}; 5499#if 0 5500// 5501// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5502// 5503// fxc /T ps_2_0 /Vn radial13 /Fh tmp.h tmp.hlsl 5504// 5505// 5506// Parameters: 5507// 5508// sampler2D colors; 5509// float2 fractions[8]; 5510// float3 m0; 5511// float3 m1; 5512// sampler2D mask; 5513// float3 precalc; 5514// 5515// 5516// Registers: 5517// 5518// Name Reg Size 5519// ------------ ----- ---- 5520// fractions c0 7 5521// m0 c16 1 5522// m1 c17 1 5523// precalc c18 1 5524// mask s0 1 5525// colors s1 1 5526// 5527 5528 ps_2_0 5529 def c7, 1, 0.5, -0.5, 2 5530 def c8, 0.0625, 0.03125, 0, 0 5531 dcl t0.xy 5532 dcl t1.xy 5533 dcl v0 5534 dcl_2d s0 5535 dcl_2d s1 5536 mov r0.xy, t1 5537 mov r0.z, c7.x 5538 dp3 r0.w, r0, c17 5539 dp3 r0.x, r0, c16 5540 mul r0.y, r0.w, r0.w 5541 mul r0.y, r0.y, c18.y 5542 add r0.x, r0.x, -c18.x 5543 mad r0.y, r0.x, r0.x, r0.y 5544 rsq r0.y, r0.y 5545 rcp r0.y, r0.y 5546 mad r0.x, c18.x, r0.x, r0.y 5547 mul r0.x, r0.x, c18.z 5548 mul r0.x, r0.x, c7.y 5549 frc r0.x, r0.x 5550 add r0.x, r0.x, c7.z 5551 abs r0.x, r0.x 5552 mad r0.x, r0.x, -c7.w, c7.x 5553 add r0.y, r0.x, -c0.x 5554 mul_sat r0.y, r0.y, c0.y 5555 add r0.z, r0.x, -c1.x 5556 mul_sat r0.z, r0.z, c1.y 5557 add r0.y, r0.y, r0.z 5558 add r0.z, r0.x, -c2.x 5559 mul_sat r0.z, r0.z, c2.y 5560 add r0.y, r0.y, r0.z 5561 add r0.z, r0.x, -c3.x 5562 mul_sat r0.z, r0.z, c3.y 5563 add r0.y, r0.y, r0.z 5564 add r0.z, r0.x, -c4.x 5565 mul_sat r0.z, r0.z, c4.y 5566 add r0.y, r0.y, r0.z 5567 add r0.z, r0.x, -c5.x 5568 add r0.x, r0.x, -c6.x 5569 mul_sat r0.z, r0.z, c5.y 5570 add r0.y, r0.y, r0.z 5571 mul_sat r0.x, r0.x, c6.y 5572 add r0.x, r0.y, r0.x 5573 frc r0.y, r0.x 5574 add r0.x, r0.x, -r0.y 5575 add r0.z, r0.x, c7.x 5576 mad r1.x, r0.x, c8.x, c8.y 5577 mad r2.x, r0.z, c8.x, c8.y 5578 mov r2.y, c7.y 5579 mov r1.y, c7.y 5580 texld r2, r2, s1 5581 texld r1, r1, s1 5582 texld r3, t0, s0 5583 lrp r4, r0.y, r2, r1 5584 mul r0, r3.w, r4 5585 mul r0, r0, v0 5586 mov oC0, r0 5587 5588// approximately 51 instruction slots used (3 texture, 48 arithmetic) 5589#endif 5590 5591const DWORD radial13[] = 5592{ 5593 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5594 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5595 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 5596 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5597 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5598 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5599 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5600 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5601 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 5602 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5603 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5604 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5605 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 5606 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 5607 0x3d800000, 0x3d000000, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 5608 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5609 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5610 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 5611 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 5612 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 5613 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 5614 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5615 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5616 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5617 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 5618 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 5619 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 5620 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 5621 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 5622 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 5623 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 5624 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 5625 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 5626 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 5627 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 5628 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 5629 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 5630 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 5631 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 5632 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 5633 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 5634 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 5635 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 5636 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 5637 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 5638 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 5639 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 5640 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 5641 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x03000005, 0x800f0000, 5642 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 5643 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 5644}; 5645#if 0 5646// 5647// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5648// 5649// fxc /T ps_2_0 /Vn radial14 /Fh tmp.h tmp.hlsl 5650// 5651// 5652// Parameters: 5653// 5654// sampler2D colors; 5655// float2 fractions[8]; 5656// float3 m0; 5657// float3 m1; 5658// sampler2D mask; 5659// float3 precalc; 5660// 5661// 5662// Registers: 5663// 5664// Name Reg Size 5665// ------------ ----- ---- 5666// fractions c0 7 5667// m0 c16 1 5668// m1 c17 1 5669// precalc c18 1 5670// mask s0 1 5671// colors s1 1 5672// 5673 5674 ps_2_0 5675 def c7, 1, 0.0625, 0.03125, 0.5 5676 dcl t0.xy 5677 dcl t1.xy 5678 dcl v0 5679 dcl_2d s0 5680 dcl_2d s1 5681 mov r0.xy, t1 5682 mov r0.z, c7.x 5683 dp3 r0.w, r0, c17 5684 dp3 r0.x, r0, c16 5685 mul r0.y, r0.w, r0.w 5686 mul r0.y, r0.y, c18.y 5687 add r0.x, r0.x, -c18.x 5688 mad r0.y, r0.x, r0.x, r0.y 5689 rsq r0.y, r0.y 5690 rcp r0.y, r0.y 5691 mad r0.x, c18.x, r0.x, r0.y 5692 mul r0.x, r0.x, c18.z 5693 frc r0.x, r0.x 5694 add r0.y, r0.x, -c0.x 5695 mul_sat r0.y, r0.y, c0.y 5696 add r0.z, r0.x, -c1.x 5697 mul_sat r0.z, r0.z, c1.y 5698 add r0.y, r0.y, r0.z 5699 add r0.z, r0.x, -c2.x 5700 mul_sat r0.z, r0.z, c2.y 5701 add r0.y, r0.y, r0.z 5702 add r0.z, r0.x, -c3.x 5703 mul_sat r0.z, r0.z, c3.y 5704 add r0.y, r0.y, r0.z 5705 add r0.z, r0.x, -c4.x 5706 mul_sat r0.z, r0.z, c4.y 5707 add r0.y, r0.y, r0.z 5708 add r0.z, r0.x, -c5.x 5709 add r0.x, r0.x, -c6.x 5710 mul_sat r0.z, r0.z, c5.y 5711 add r0.y, r0.y, r0.z 5712 mul_sat r0.x, r0.x, c6.y 5713 add r0.x, r0.y, r0.x 5714 frc r0.y, r0.x 5715 add r0.x, r0.x, -r0.y 5716 add r0.z, r0.x, c7.x 5717 mad r1.x, r0.x, c7.y, c7.z 5718 mad r2.x, r0.z, c7.y, c7.z 5719 mov r2.y, c7.w 5720 mov r1.y, c7.w 5721 texld r2, r2, s1 5722 texld r1, r1, s1 5723 texld r3, t0, s0 5724 lrp r4, r0.y, r2, r1 5725 mul r0, r3.w, r4 5726 mul r0, r0, v0 5727 mov oC0, r0 5728 5729// approximately 47 instruction slots used (3 texture, 44 arithmetic) 5730#endif 5731 5732const DWORD radial14[] = 5733{ 5734 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 5735 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 5736 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 5737 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 5738 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 5739 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 5740 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 5741 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 5742 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 5743 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 5744 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 5745 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 5746 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 5747 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x0200001f, 0x80000000, 5748 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 5749 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 5750 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 5751 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 5752 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 5753 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 5754 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5755 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5756 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5757 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 5758 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 5759 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 5760 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 5761 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 5762 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 5763 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 5764 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 5765 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 5766 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 5767 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 5768 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 5769 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 5770 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 5771 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 5772 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 5773 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 5774 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 5775 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 5776 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 5777 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 5778 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 5779 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 0x800f0000, 5780 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 5781}; 5782#if 0 5783// 5784// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5785// 5786// fxc /T ps_2_0 /Vn radial16 /Fh tmp.h tmp.hlsl 5787// 5788// 5789// Parameters: 5790// 5791// sampler2D colors; 5792// float2 fractions[4]; 5793// float3 m0; 5794// float3 m1; 5795// float3 precalc; 5796// 5797// 5798// Registers: 5799// 5800// Name Reg Size 5801// ------------ ----- ---- 5802// fractions c0 3 5803// m0 c16 1 5804// m1 c17 1 5805// precalc c18 1 5806// colors s0 1 5807// 5808 5809 ps_2_0 5810 def c3, 1, 0, 0.5, -1 5811 def c4, 1, 0.5, 0.0625, 0.03125 5812 def c5, 0.416667014, 1.05499995, -0.0549999997, 0 5813 dcl t0.xy 5814 dcl v0 5815 dcl_2d s0 5816 mov r0.z, c3.x 5817 mov r0.xy, t0 5818 dp3 r0.w, r0, c17 5819 mul r0.w, r0.w, r0.w 5820 mul r0.w, r0.w, c18.y 5821 dp3 r0.x, r0, c16 5822 add r0.x, r0.x, -c18.x 5823 mad r0.y, r0.x, r0.x, r0.w 5824 rsq r0.y, r0.y 5825 rcp r0.y, r0.y 5826 mad r0.x, c18.x, r0.x, r0.y 5827 mov r0.z, c18.z 5828 mad r0.y, r0.x, r0.z, -c0.x 5829 mul_sat r0.y, r0.y, c0.y 5830 mad r0.w, r0.x, r0.z, -c1.x 5831 mul_sat r0.w, r0.w, c1.y 5832 add r0.y, r0.y, r0.w 5833 mad r0.w, r0.x, r0.z, -c2.x 5834 mul_sat r0.w, r0.w, c2.y 5835 add r0.y, r0.y, r0.w 5836 frc r0.w, r0.y 5837 add r0.y, r0.y, -r0.w 5838 add r1.w, r0.y, c3.x 5839 mad r1.x, r1.w, c4.z, c4.w 5840 mul r1.z, r0.x, c18.z 5841 mad r1.w, r0.x, r0.z, c3.w 5842 mad r0.x, r0.y, c4.z, c4.w 5843 mov r0.y, c3.z 5844 mov r1.y, c3.z 5845 mov r2.xy, c4 5846 mov r3.xy, c3.yzxw 5847 texld r4, r0, s0 5848 texld r5, r1, s0 5849 texld r2, r2, s0 5850 texld r3, r3, s0 5851 lrp r6, r0.w, r5, r4 5852 cmp r0, r1.w, r2, r6 5853 cmp r0, -r1.z, r3, r0 5854 log r1.x, r0.x 5855 log r1.y, r0.y 5856 log r1.z, r0.z 5857 mul r1.xyz, r1, c5.x 5858 exp r2.x, r1.x 5859 exp r2.y, r1.y 5860 exp r2.z, r1.z 5861 mad r0.xyz, r2, c5.y, c5.z 5862 mul r0, r0, v0 5863 mov oC0, r0 5864 5865// approximately 48 instruction slots used (4 texture, 44 arithmetic) 5866#endif 5867 5868const DWORD radial16[] = 5869{ 5870 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 5871 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 5872 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 5873 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 5874 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 5875 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 5876 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 5877 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 5878 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 5879 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 5880 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 5881 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 5882 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 5883 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0005, 5884 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 5885 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 5886 0xa00f0800, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 5887 0xb0e40000, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 5888 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 5889 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 5890 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 5891 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 5892 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 5893 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 5894 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 5895 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 5896 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 5897 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 5898 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 5899 0x80020000, 0x80550000, 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 5900 0x03000002, 0x80020000, 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 5901 0x80550000, 0xa0000003, 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0004, 5902 0xa0ff0004, 0x03000005, 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 5903 0x80080001, 0x80000000, 0x80aa0000, 0xa0ff0003, 0x04000004, 0x80010000, 5904 0x80550000, 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020000, 0xa0aa0003, 5905 0x02000001, 0x80020001, 0xa0aa0003, 0x02000001, 0x80030002, 0xa0e40004, 5906 0x02000001, 0x80030003, 0xa0c90003, 0x03000042, 0x800f0004, 0x80e40000, 5907 0xa0e40800, 0x03000042, 0x800f0005, 0x80e40001, 0xa0e40800, 0x03000042, 5908 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 5909 0xa0e40800, 0x04000012, 0x800f0006, 0x80ff0000, 0x80e40005, 0x80e40004, 5910 0x04000058, 0x800f0000, 0x80ff0001, 0x80e40002, 0x80e40006, 0x04000058, 5911 0x800f0000, 0x81aa0001, 0x80e40003, 0x80e40000, 0x0200000f, 0x80010001, 5912 0x80000000, 0x0200000f, 0x80020001, 0x80550000, 0x0200000f, 0x80040001, 5913 0x80aa0000, 0x03000005, 0x80070001, 0x80e40001, 0xa0000005, 0x0200000e, 5914 0x80010002, 0x80000001, 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 5915 0x80040002, 0x80aa0001, 0x04000004, 0x80070000, 0x80e40002, 0xa0550005, 5916 0xa0aa0005, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 5917 0x800f0800, 0x80e40000, 0x0000ffff 5918}; 5919#if 0 5920// 5921// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 5922// 5923// fxc /T ps_2_0 /Vn radial17 /Fh tmp.h tmp.hlsl 5924// 5925// 5926// Parameters: 5927// 5928// sampler2D colors; 5929// float2 fractions[4]; 5930// float3 m0; 5931// float3 m1; 5932// float3 precalc; 5933// 5934// 5935// Registers: 5936// 5937// Name Reg Size 5938// ------------ ----- ---- 5939// fractions c0 3 5940// m0 c16 1 5941// m1 c17 1 5942// precalc c18 1 5943// colors s0 1 5944// 5945 5946 ps_2_0 5947 def c3, 1, 0.5, -0.5, 2 5948 def c4, 0.0625, 0.03125, 0.416667014, 0 5949 def c5, 1.05499995, -0.0549999997, 0, 0 5950 dcl t0.xy 5951 dcl v0 5952 dcl_2d s0 5953 mov r0.xy, t0 5954 mov r0.z, c3.x 5955 dp3 r0.w, r0, c17 5956 dp3 r0.x, r0, c16 5957 mul r0.y, r0.w, r0.w 5958 mul r0.y, r0.y, c18.y 5959 add r0.x, r0.x, -c18.x 5960 mad r0.y, r0.x, r0.x, r0.y 5961 rsq r0.y, r0.y 5962 rcp r0.y, r0.y 5963 mad r0.x, c18.x, r0.x, r0.y 5964 mul r0.x, r0.x, c18.z 5965 mul r0.x, r0.x, c3.y 5966 frc r0.x, r0.x 5967 add r0.x, r0.x, c3.z 5968 abs r0.x, r0.x 5969 mad r0.x, r0.x, -c3.w, c3.x 5970 add r0.y, r0.x, -c0.x 5971 mul_sat r0.y, r0.y, c0.y 5972 add r0.z, r0.x, -c1.x 5973 add r0.x, r0.x, -c2.x 5974 mul_sat r0.z, r0.z, c1.y 5975 add r0.y, r0.y, r0.z 5976 mul_sat r0.x, r0.x, c2.y 5977 add r0.x, r0.y, r0.x 5978 frc r0.y, r0.x 5979 add r0.x, r0.x, -r0.y 5980 add r0.z, r0.x, c3.x 5981 mad r1.x, r0.x, c4.x, c4.y 5982 mad r2.x, r0.z, c4.x, c4.y 5983 mov r2.y, c3.y 5984 mov r1.y, c3.y 5985 texld r2, r2, s0 5986 texld r1, r1, s0 5987 lrp r3, r0.y, r2, r1 5988 log r0.x, r3.x 5989 log r0.y, r3.y 5990 log r0.z, r3.z 5991 mul r0.xyz, r0, c4.z 5992 exp r1.x, r0.x 5993 exp r1.y, r0.y 5994 exp r1.z, r0.z 5995 mad r3.xyz, r1, c5.x, c5.y 5996 mul r0, r3, v0 5997 mov oC0, r0 5998 5999// approximately 45 instruction slots used (2 texture, 43 arithmetic) 6000#endif 6001 6002const DWORD radial17[] = 6003{ 6004 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 6005 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 6006 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 6007 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 6008 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 6009 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 6010 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 6011 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 6012 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 6013 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 6014 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 6015 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 6016 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 6017 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0005, 6018 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 6019 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 6020 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 6021 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 6022 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 6023 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 6024 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6025 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6026 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6027 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 6028 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 6029 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 6030 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 6031 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 6032 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 6033 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 6034 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 6035 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 6036 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 6037 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 6038 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 6039 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 6040 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 6041 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 6042 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 6043 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 0x80020000, 0x80550003, 6044 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 0x80070000, 0x80e40000, 6045 0xa0aa0004, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 6046 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070003, 6047 0x80e40001, 0xa0000005, 0xa0550005, 0x03000005, 0x800f0000, 0x80e40003, 6048 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 6049}; 6050#if 0 6051// 6052// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6053// 6054// fxc /T ps_2_0 /Vn radial18 /Fh tmp.h tmp.hlsl 6055// 6056// 6057// Parameters: 6058// 6059// sampler2D colors; 6060// float2 fractions[4]; 6061// float3 m0; 6062// float3 m1; 6063// float3 precalc; 6064// 6065// 6066// Registers: 6067// 6068// Name Reg Size 6069// ------------ ----- ---- 6070// fractions c0 3 6071// m0 c16 1 6072// m1 c17 1 6073// precalc c18 1 6074// colors s0 1 6075// 6076 6077 ps_2_0 6078 def c3, 1, 0.0625, 0.03125, 0.5 6079 def c4, 0.416667014, 1.05499995, -0.0549999997, 0 6080 dcl t0.xy 6081 dcl v0 6082 dcl_2d s0 6083 mov r0.xy, t0 6084 mov r0.z, c3.x 6085 dp3 r0.w, r0, c17 6086 dp3 r0.x, r0, c16 6087 mul r0.y, r0.w, r0.w 6088 mul r0.y, r0.y, c18.y 6089 add r0.x, r0.x, -c18.x 6090 mad r0.y, r0.x, r0.x, r0.y 6091 rsq r0.y, r0.y 6092 rcp r0.y, r0.y 6093 mad r0.x, c18.x, r0.x, r0.y 6094 mul r0.x, r0.x, c18.z 6095 frc r0.x, r0.x 6096 add r0.y, r0.x, -c0.x 6097 mul_sat r0.y, r0.y, c0.y 6098 add r0.z, r0.x, -c1.x 6099 add r0.x, r0.x, -c2.x 6100 mul_sat r0.z, r0.z, c1.y 6101 add r0.y, r0.y, r0.z 6102 mul_sat r0.x, r0.x, c2.y 6103 add r0.x, r0.y, r0.x 6104 frc r0.y, r0.x 6105 add r0.x, r0.x, -r0.y 6106 add r0.z, r0.x, c3.x 6107 mad r1.x, r0.x, c3.y, c3.z 6108 mad r2.x, r0.z, c3.y, c3.z 6109 mov r2.y, c3.w 6110 mov r1.y, c3.w 6111 texld r2, r2, s0 6112 texld r1, r1, s0 6113 lrp r3, r0.y, r2, r1 6114 log r0.x, r3.x 6115 log r0.y, r3.y 6116 log r0.z, r3.z 6117 mul r0.xyz, r0, c4.x 6118 exp r1.x, r0.x 6119 exp r1.y, r0.y 6120 exp r1.z, r0.z 6121 mad r3.xyz, r1, c4.y, c4.z 6122 mul r0, r3, v0 6123 mov oC0, r0 6124 6125// approximately 41 instruction slots used (2 texture, 39 arithmetic) 6126#endif 6127 6128const DWORD radial18[] = 6129{ 6130 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 6131 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 6132 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020003, 6133 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 6134 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 6135 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 6136 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 6137 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 6138 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 6139 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 6140 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 6141 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0003, 6142 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0004, 6143 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 6144 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 6145 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 6146 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 6147 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 6148 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 6149 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6150 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6151 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6152 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 6153 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 6154 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 6155 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 6156 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 6157 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 6158 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 6159 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 6160 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 6161 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 6162 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 6163 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 6164 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 6165 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 6166 0x80020000, 0x80550003, 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 6167 0x80070000, 0x80e40000, 0xa0000004, 0x0200000e, 0x80010001, 0x80000000, 6168 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 6169 0x04000004, 0x80070003, 0x80e40001, 0xa0550004, 0xa0aa0004, 0x03000005, 6170 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 6171 0x0000ffff 6172}; 6173#if 0 6174// 6175// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6176// 6177// fxc /T ps_2_0 /Vn radial20 /Fh tmp.h tmp.hlsl 6178// 6179// 6180// Parameters: 6181// 6182// sampler2D colors; 6183// float2 fractions[8]; 6184// float3 m0; 6185// float3 m1; 6186// float3 precalc; 6187// 6188// 6189// Registers: 6190// 6191// Name Reg Size 6192// ------------ ----- ---- 6193// fractions c0 7 6194// m0 c16 1 6195// m1 c17 1 6196// precalc c18 1 6197// colors s0 1 6198// 6199 6200 ps_2_0 6201 def c7, 1, 0, 0.5, -1 6202 def c8, 1, 0.5, 0.0625, 0.03125 6203 def c9, 0.416667014, 1.05499995, -0.0549999997, 0 6204 dcl t0.xy 6205 dcl v0 6206 dcl_2d s0 6207 mov r0.z, c7.x 6208 mov r0.xy, t0 6209 dp3 r0.w, r0, c17 6210 mul r0.w, r0.w, r0.w 6211 mul r0.w, r0.w, c18.y 6212 dp3 r0.x, r0, c16 6213 add r0.x, r0.x, -c18.x 6214 mad r0.y, r0.x, r0.x, r0.w 6215 rsq r0.y, r0.y 6216 rcp r0.y, r0.y 6217 mad r0.x, c18.x, r0.x, r0.y 6218 mov r0.z, c18.z 6219 mad r0.y, r0.x, r0.z, -c0.x 6220 mul_sat r0.y, r0.y, c0.y 6221 mad r0.w, r0.x, r0.z, -c1.x 6222 mul_sat r0.w, r0.w, c1.y 6223 add r0.y, r0.y, r0.w 6224 mad r0.w, r0.x, r0.z, -c2.x 6225 mul_sat r0.w, r0.w, c2.y 6226 add r0.y, r0.y, r0.w 6227 mad r0.w, r0.x, r0.z, -c3.x 6228 mul_sat r0.w, r0.w, c3.y 6229 add r0.y, r0.y, r0.w 6230 mad r0.w, r0.x, r0.z, -c4.x 6231 mul_sat r0.w, r0.w, c4.y 6232 add r0.y, r0.y, r0.w 6233 mad r0.w, r0.x, r0.z, -c5.x 6234 mul_sat r0.w, r0.w, c5.y 6235 add r0.y, r0.y, r0.w 6236 mad r0.w, r0.x, r0.z, -c6.x 6237 mul_sat r0.w, r0.w, c6.y 6238 add r0.y, r0.y, r0.w 6239 frc r0.w, r0.y 6240 add r0.y, r0.y, -r0.w 6241 add r1.w, r0.y, c7.x 6242 mad r1.x, r1.w, c8.z, c8.w 6243 mul r1.z, r0.x, c18.z 6244 mad r1.w, r0.x, r0.z, c7.w 6245 mad r0.x, r0.y, c8.z, c8.w 6246 mov r0.y, c7.z 6247 mov r1.y, c7.z 6248 mov r2.xy, c8 6249 mov r3.xy, c7.yzxw 6250 texld r4, r0, s0 6251 texld r5, r1, s0 6252 texld r2, r2, s0 6253 texld r3, r3, s0 6254 lrp r6, r0.w, r5, r4 6255 cmp r0, r1.w, r2, r6 6256 cmp r0, -r1.z, r3, r0 6257 log r1.x, r0.x 6258 log r1.y, r0.y 6259 log r1.z, r0.z 6260 mul r1.xyz, r1, c9.x 6261 exp r2.x, r1.x 6262 exp r2.y, r1.y 6263 exp r2.z, r1.z 6264 mad r0.xyz, r2, c9.y, c9.z 6265 mul r0, r0, v0 6266 mov oC0, r0 6267 6268// approximately 60 instruction slots used (4 texture, 56 arithmetic) 6269#endif 6270 6271const DWORD radial20[] = 6272{ 6273 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 6274 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 6275 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 6276 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 6277 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 6278 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 6279 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 6280 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 6281 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 6282 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 6283 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 6284 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 6285 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 6286 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0009, 6287 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 6288 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 6289 0xa00f0800, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 6290 0xb0e40000, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 6291 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 6292 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 6293 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6294 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6295 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6296 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 6297 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 6298 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 6299 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 6300 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 6301 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 6302 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 6303 0x80aa0000, 0xa1000003, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550003, 6304 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 6305 0x80000000, 0x80aa0000, 0xa1000004, 0x03000005, 0x80180000, 0x80ff0000, 6306 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 6307 0x80080000, 0x80000000, 0x80aa0000, 0xa1000005, 0x03000005, 0x80180000, 6308 0x80ff0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 6309 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000006, 0x03000005, 6310 0x80180000, 0x80ff0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 6311 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 0x03000002, 0x80020000, 6312 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 0x80550000, 0xa0000007, 6313 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0008, 0xa0ff0008, 0x03000005, 6314 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 0x80080001, 0x80000000, 6315 0x80aa0000, 0xa0ff0007, 0x04000004, 0x80010000, 0x80550000, 0xa0aa0008, 6316 0xa0ff0008, 0x02000001, 0x80020000, 0xa0aa0007, 0x02000001, 0x80020001, 6317 0xa0aa0007, 0x02000001, 0x80030002, 0xa0e40008, 0x02000001, 0x80030003, 6318 0xa0c90007, 0x03000042, 0x800f0004, 0x80e40000, 0xa0e40800, 0x03000042, 6319 0x800f0005, 0x80e40001, 0xa0e40800, 0x03000042, 0x800f0002, 0x80e40002, 6320 0xa0e40800, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40800, 0x04000012, 6321 0x800f0006, 0x80ff0000, 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 6322 0x80ff0001, 0x80e40002, 0x80e40006, 0x04000058, 0x800f0000, 0x81aa0001, 6323 0x80e40003, 0x80e40000, 0x0200000f, 0x80010001, 0x80000000, 0x0200000f, 6324 0x80020001, 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 0x03000005, 6325 0x80070001, 0x80e40001, 0xa0000009, 0x0200000e, 0x80010002, 0x80000001, 6326 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 0x80aa0001, 6327 0x04000004, 0x80070000, 0x80e40002, 0xa0550009, 0xa0aa0009, 0x03000005, 6328 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 6329 0x0000ffff 6330}; 6331#if 0 6332// 6333// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6334// 6335// fxc /T ps_2_0 /Vn radial21 /Fh tmp.h tmp.hlsl 6336// 6337// 6338// Parameters: 6339// 6340// sampler2D colors; 6341// float2 fractions[8]; 6342// float3 m0; 6343// float3 m1; 6344// float3 precalc; 6345// 6346// 6347// Registers: 6348// 6349// Name Reg Size 6350// ------------ ----- ---- 6351// fractions c0 7 6352// m0 c16 1 6353// m1 c17 1 6354// precalc c18 1 6355// colors s0 1 6356// 6357 6358 ps_2_0 6359 def c7, 1, 0.5, -0.5, 2 6360 def c8, 0.0625, 0.03125, 0.416667014, 0 6361 def c9, 1.05499995, -0.0549999997, 0, 0 6362 dcl t0.xy 6363 dcl v0 6364 dcl_2d s0 6365 mov r0.xy, t0 6366 mov r0.z, c7.x 6367 dp3 r0.w, r0, c17 6368 dp3 r0.x, r0, c16 6369 mul r0.y, r0.w, r0.w 6370 mul r0.y, r0.y, c18.y 6371 add r0.x, r0.x, -c18.x 6372 mad r0.y, r0.x, r0.x, r0.y 6373 rsq r0.y, r0.y 6374 rcp r0.y, r0.y 6375 mad r0.x, c18.x, r0.x, r0.y 6376 mul r0.x, r0.x, c18.z 6377 mul r0.x, r0.x, c7.y 6378 frc r0.x, r0.x 6379 add r0.x, r0.x, c7.z 6380 abs r0.x, r0.x 6381 mad r0.x, r0.x, -c7.w, c7.x 6382 add r0.y, r0.x, -c0.x 6383 mul_sat r0.y, r0.y, c0.y 6384 add r0.z, r0.x, -c1.x 6385 mul_sat r0.z, r0.z, c1.y 6386 add r0.y, r0.y, r0.z 6387 add r0.z, r0.x, -c2.x 6388 mul_sat r0.z, r0.z, c2.y 6389 add r0.y, r0.y, r0.z 6390 add r0.z, r0.x, -c3.x 6391 mul_sat r0.z, r0.z, c3.y 6392 add r0.y, r0.y, r0.z 6393 add r0.z, r0.x, -c4.x 6394 mul_sat r0.z, r0.z, c4.y 6395 add r0.y, r0.y, r0.z 6396 add r0.z, r0.x, -c5.x 6397 add r0.x, r0.x, -c6.x 6398 mul_sat r0.z, r0.z, c5.y 6399 add r0.y, r0.y, r0.z 6400 mul_sat r0.x, r0.x, c6.y 6401 add r0.x, r0.y, r0.x 6402 frc r0.y, r0.x 6403 add r0.x, r0.x, -r0.y 6404 add r0.z, r0.x, c7.x 6405 mad r1.x, r0.x, c8.x, c8.y 6406 mad r2.x, r0.z, c8.x, c8.y 6407 mov r2.y, c7.y 6408 mov r1.y, c7.y 6409 texld r2, r2, s0 6410 texld r1, r1, s0 6411 lrp r3, r0.y, r2, r1 6412 log r0.x, r3.x 6413 log r0.y, r3.y 6414 log r0.z, r3.z 6415 mul r0.xyz, r0, c8.z 6416 exp r1.x, r0.x 6417 exp r1.y, r0.y 6418 exp r1.z, r0.z 6419 mad r3.xyz, r1, c9.x, c9.y 6420 mul r0, r3, v0 6421 mov oC0, r0 6422 6423// approximately 57 instruction slots used (2 texture, 55 arithmetic) 6424#endif 6425 6426const DWORD radial21[] = 6427{ 6428 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 6429 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 6430 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 6431 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 6432 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 6433 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 6434 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 6435 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 6436 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 6437 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 6438 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 6439 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 6440 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 6441 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0009, 6442 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 6443 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 6444 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 6445 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 6446 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 6447 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 6448 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6449 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6450 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6451 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 6452 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 6453 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 6454 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 6455 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 6456 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 6457 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 6458 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 6459 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 6460 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 6461 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 6462 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 6463 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 6464 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 6465 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 6466 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 6467 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 6468 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 6469 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 6470 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 6471 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 6472 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 6473 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 0x800f0001, 0x80e40001, 6474 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 0x80e40002, 0x80e40001, 6475 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 0x80020000, 0x80550003, 6476 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 0x80070000, 0x80e40000, 6477 0xa0aa0008, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 6478 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070003, 6479 0x80e40001, 0xa0000009, 0xa0550009, 0x03000005, 0x800f0000, 0x80e40003, 6480 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 6481}; 6482#if 0 6483// 6484// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6485// 6486// fxc /T ps_2_0 /Vn radial22 /Fh tmp.h tmp.hlsl 6487// 6488// 6489// Parameters: 6490// 6491// sampler2D colors; 6492// float2 fractions[8]; 6493// float3 m0; 6494// float3 m1; 6495// float3 precalc; 6496// 6497// 6498// Registers: 6499// 6500// Name Reg Size 6501// ------------ ----- ---- 6502// fractions c0 7 6503// m0 c16 1 6504// m1 c17 1 6505// precalc c18 1 6506// colors s0 1 6507// 6508 6509 ps_2_0 6510 def c7, 1, 0.0625, 0.03125, 0.5 6511 def c8, 0.416667014, 1.05499995, -0.0549999997, 0 6512 dcl t0.xy 6513 dcl v0 6514 dcl_2d s0 6515 mov r0.xy, t0 6516 mov r0.z, c7.x 6517 dp3 r0.w, r0, c17 6518 dp3 r0.x, r0, c16 6519 mul r0.y, r0.w, r0.w 6520 mul r0.y, r0.y, c18.y 6521 add r0.x, r0.x, -c18.x 6522 mad r0.y, r0.x, r0.x, r0.y 6523 rsq r0.y, r0.y 6524 rcp r0.y, r0.y 6525 mad r0.x, c18.x, r0.x, r0.y 6526 mul r0.x, r0.x, c18.z 6527 frc r0.x, r0.x 6528 add r0.y, r0.x, -c0.x 6529 mul_sat r0.y, r0.y, c0.y 6530 add r0.z, r0.x, -c1.x 6531 mul_sat r0.z, r0.z, c1.y 6532 add r0.y, r0.y, r0.z 6533 add r0.z, r0.x, -c2.x 6534 mul_sat r0.z, r0.z, c2.y 6535 add r0.y, r0.y, r0.z 6536 add r0.z, r0.x, -c3.x 6537 mul_sat r0.z, r0.z, c3.y 6538 add r0.y, r0.y, r0.z 6539 add r0.z, r0.x, -c4.x 6540 mul_sat r0.z, r0.z, c4.y 6541 add r0.y, r0.y, r0.z 6542 add r0.z, r0.x, -c5.x 6543 add r0.x, r0.x, -c6.x 6544 mul_sat r0.z, r0.z, c5.y 6545 add r0.y, r0.y, r0.z 6546 mul_sat r0.x, r0.x, c6.y 6547 add r0.x, r0.y, r0.x 6548 frc r0.y, r0.x 6549 add r0.x, r0.x, -r0.y 6550 add r0.z, r0.x, c7.x 6551 mad r1.x, r0.x, c7.y, c7.z 6552 mad r2.x, r0.z, c7.y, c7.z 6553 mov r2.y, c7.w 6554 mov r1.y, c7.w 6555 texld r2, r2, s0 6556 texld r1, r1, s0 6557 lrp r3, r0.y, r2, r1 6558 log r0.x, r3.x 6559 log r0.y, r3.y 6560 log r0.z, r3.z 6561 mul r0.xyz, r0, c8.x 6562 exp r1.x, r0.x 6563 exp r1.y, r0.y 6564 exp r1.z, r0.z 6565 mad r3.xyz, r1, c8.y, c8.z 6566 mul r0, r3, v0 6567 mov oC0, r0 6568 6569// approximately 53 instruction slots used (2 texture, 51 arithmetic) 6570#endif 6571 6572const DWORD radial22[] = 6573{ 6574 0xffff0200, 0x0044fffe, 0x42415443, 0x0000001c, 0x000000da, 0xffff0200, 6575 0x00000005, 0x0000001c, 0x20000100, 0x000000d3, 0x00000080, 0x00000003, 6576 0x00020001, 0x00000088, 0x00000000, 0x00000098, 0x00000002, 0x00020007, 6577 0x000000a4, 0x00000000, 0x000000b4, 0x00100002, 0x00420001, 0x000000b8, 6578 0x00000000, 0x000000c8, 0x00110002, 0x00460001, 0x000000b8, 0x00000000, 6579 0x000000cb, 0x00120002, 0x004a0001, 0x000000b8, 0x00000000, 0x6f6c6f63, 6580 0xab007372, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 6581 0x6e6f6974, 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 6582 0xab00306d, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x7000316d, 6583 0x61636572, 0x7000636c, 0x5f325f73, 0x694d0030, 0x736f7263, 0x2074666f, 6584 0x20295228, 0x4c534c48, 0x61685320, 0x20726564, 0x706d6f43, 0x72656c69, 6585 0x312e3920, 0x34392e39, 0x31322e39, 0xab003131, 0x05000051, 0xa00f0007, 6586 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0008, 6587 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 6588 0xb0030000, 0x0200001f, 0x80000000, 0x900f0000, 0x0200001f, 0x90000000, 6589 0xa00f0800, 0x02000001, 0x80030000, 0xb0e40000, 0x02000001, 0x80040000, 6590 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 6591 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 6592 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 6593 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6594 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6595 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6596 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 6597 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 6598 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 6599 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 6600 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 6601 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 6602 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 6603 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 6604 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 6605 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 6606 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 6607 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 6608 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 6609 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 6610 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 6611 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 6612 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 6613 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 6614 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 6615 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40800, 0x03000042, 6616 0x800f0001, 0x80e40001, 0xa0e40800, 0x04000012, 0x800f0003, 0x80550000, 6617 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 0x80000003, 0x0200000f, 6618 0x80020000, 0x80550003, 0x0200000f, 0x80040000, 0x80aa0003, 0x03000005, 6619 0x80070000, 0x80e40000, 0xa0000008, 0x0200000e, 0x80010001, 0x80000000, 6620 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 6621 0x04000004, 0x80070003, 0x80e40001, 0xa0550008, 0xa0aa0008, 0x03000005, 6622 0x800f0000, 0x80e40003, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 6623 0x0000ffff 6624}; 6625#if 0 6626// 6627// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6628// 6629// fxc /T ps_2_0 /Vn radial24 /Fh tmp.h tmp.hlsl 6630// 6631// 6632// Parameters: 6633// 6634// sampler2D colors; 6635// float2 fractions[4]; 6636// float3 m0; 6637// float3 m1; 6638// sampler2D mask; 6639// float3 precalc; 6640// 6641// 6642// Registers: 6643// 6644// Name Reg Size 6645// ------------ ----- ---- 6646// fractions c0 3 6647// m0 c16 1 6648// m1 c17 1 6649// precalc c18 1 6650// mask s0 1 6651// colors s1 1 6652// 6653 6654 ps_2_0 6655 def c3, 1, 0, 0.5, -1 6656 def c4, 1, 0.5, 0.0625, 0.03125 6657 def c5, 0.416667014, 1.05499995, -0.0549999997, 0 6658 dcl t0.xy 6659 dcl t1.xy 6660 dcl v0 6661 dcl_2d s0 6662 dcl_2d s1 6663 mov r0.z, c3.x 6664 mov r0.xy, t1 6665 dp3 r0.w, r0, c17 6666 mul r0.w, r0.w, r0.w 6667 mul r0.w, r0.w, c18.y 6668 dp3 r0.x, r0, c16 6669 add r0.x, r0.x, -c18.x 6670 mad r0.y, r0.x, r0.x, r0.w 6671 rsq r0.y, r0.y 6672 rcp r0.y, r0.y 6673 mad r0.x, c18.x, r0.x, r0.y 6674 mov r0.z, c18.z 6675 mad r0.y, r0.x, r0.z, -c0.x 6676 mul_sat r0.y, r0.y, c0.y 6677 mad r0.w, r0.x, r0.z, -c1.x 6678 mul_sat r0.w, r0.w, c1.y 6679 add r0.y, r0.y, r0.w 6680 mad r0.w, r0.x, r0.z, -c2.x 6681 mul_sat r0.w, r0.w, c2.y 6682 add r0.y, r0.y, r0.w 6683 frc r0.w, r0.y 6684 add r0.y, r0.y, -r0.w 6685 add r1.w, r0.y, c3.x 6686 mad r1.x, r1.w, c4.z, c4.w 6687 mul r1.z, r0.x, c18.z 6688 mad r1.w, r0.x, r0.z, c3.w 6689 mad r0.x, r0.y, c4.z, c4.w 6690 mov r0.y, c3.z 6691 mov r1.y, c3.z 6692 mov r2.xy, c4 6693 mov r3.xy, c3.yzxw 6694 texld r4, r0, s1 6695 texld r5, r1, s1 6696 texld r2, r2, s1 6697 texld r3, r3, s1 6698 texld r6, t0, s0 6699 lrp r7, r0.w, r5, r4 6700 cmp r0, r1.w, r2, r7 6701 cmp r0, -r1.z, r3, r0 6702 log r1.x, r0.x 6703 log r1.y, r0.y 6704 log r1.z, r0.z 6705 mul r1.xyz, r1, c5.x 6706 exp r2.x, r1.x 6707 exp r2.y, r1.y 6708 exp r2.z, r1.z 6709 mad r0.xyz, r2, c5.y, c5.z 6710 mul r0, r6.w, r0 6711 mul r0, r0, v0 6712 mov oC0, r0 6713 6714// approximately 50 instruction slots used (5 texture, 45 arithmetic) 6715#endif 6716 6717const DWORD radial24[] = 6718{ 6719 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 6720 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 6721 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 6722 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 6723 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 6724 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 6725 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 6726 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 6727 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 6728 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 6729 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 6730 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 6731 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 6732 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0004, 6733 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0005, 6734 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 6735 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 6736 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 6737 0xa00f0801, 0x02000001, 0x80040000, 0xa0000003, 0x02000001, 0x80030000, 6738 0xb0e40001, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 6739 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 6740 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 6741 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6742 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6743 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6744 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 6745 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 6746 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 6747 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 6748 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 6749 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 6750 0x80020000, 0x80550000, 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 6751 0x03000002, 0x80020000, 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 6752 0x80550000, 0xa0000003, 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0004, 6753 0xa0ff0004, 0x03000005, 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 6754 0x80080001, 0x80000000, 0x80aa0000, 0xa0ff0003, 0x04000004, 0x80010000, 6755 0x80550000, 0xa0aa0004, 0xa0ff0004, 0x02000001, 0x80020000, 0xa0aa0003, 6756 0x02000001, 0x80020001, 0xa0aa0003, 0x02000001, 0x80030002, 0xa0e40004, 6757 0x02000001, 0x80030003, 0xa0c90003, 0x03000042, 0x800f0004, 0x80e40000, 6758 0xa0e40801, 0x03000042, 0x800f0005, 0x80e40001, 0xa0e40801, 0x03000042, 6759 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0003, 0x80e40003, 6760 0xa0e40801, 0x03000042, 0x800f0006, 0xb0e40000, 0xa0e40800, 0x04000012, 6761 0x800f0007, 0x80ff0000, 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 6762 0x80ff0001, 0x80e40002, 0x80e40007, 0x04000058, 0x800f0000, 0x81aa0001, 6763 0x80e40003, 0x80e40000, 0x0200000f, 0x80010001, 0x80000000, 0x0200000f, 6764 0x80020001, 0x80550000, 0x0200000f, 0x80040001, 0x80aa0000, 0x03000005, 6765 0x80070001, 0x80e40001, 0xa0000005, 0x0200000e, 0x80010002, 0x80000001, 6766 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 0x80aa0001, 6767 0x04000004, 0x80070000, 0x80e40002, 0xa0550005, 0xa0aa0005, 0x03000005, 6768 0x800f0000, 0x80ff0006, 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 6769 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 6770}; 6771#if 0 6772// 6773// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6774// 6775// fxc /T ps_2_0 /Vn radial25 /Fh tmp.h tmp.hlsl 6776// 6777// 6778// Parameters: 6779// 6780// sampler2D colors; 6781// float2 fractions[4]; 6782// float3 m0; 6783// float3 m1; 6784// sampler2D mask; 6785// float3 precalc; 6786// 6787// 6788// Registers: 6789// 6790// Name Reg Size 6791// ------------ ----- ---- 6792// fractions c0 3 6793// m0 c16 1 6794// m1 c17 1 6795// precalc c18 1 6796// mask s0 1 6797// colors s1 1 6798// 6799 6800 ps_2_0 6801 def c3, 1, 0.5, -0.5, 2 6802 def c4, 0.0625, 0.03125, 0.416667014, 0 6803 def c5, 1.05499995, -0.0549999997, 0, 0 6804 dcl t0.xy 6805 dcl t1.xy 6806 dcl v0 6807 dcl_2d s0 6808 dcl_2d s1 6809 mov r0.xy, t1 6810 mov r0.z, c3.x 6811 dp3 r0.w, r0, c17 6812 dp3 r0.x, r0, c16 6813 mul r0.y, r0.w, r0.w 6814 mul r0.y, r0.y, c18.y 6815 add r0.x, r0.x, -c18.x 6816 mad r0.y, r0.x, r0.x, r0.y 6817 rsq r0.y, r0.y 6818 rcp r0.y, r0.y 6819 mad r0.x, c18.x, r0.x, r0.y 6820 mul r0.x, r0.x, c18.z 6821 mul r0.x, r0.x, c3.y 6822 frc r0.x, r0.x 6823 add r0.x, r0.x, c3.z 6824 abs r0.x, r0.x 6825 mad r0.x, r0.x, -c3.w, c3.x 6826 add r0.y, r0.x, -c0.x 6827 mul_sat r0.y, r0.y, c0.y 6828 add r0.z, r0.x, -c1.x 6829 add r0.x, r0.x, -c2.x 6830 mul_sat r0.z, r0.z, c1.y 6831 add r0.y, r0.y, r0.z 6832 mul_sat r0.x, r0.x, c2.y 6833 add r0.x, r0.y, r0.x 6834 frc r0.y, r0.x 6835 add r0.x, r0.x, -r0.y 6836 add r0.z, r0.x, c3.x 6837 mad r1.x, r0.x, c4.x, c4.y 6838 mad r2.x, r0.z, c4.x, c4.y 6839 mov r2.y, c3.y 6840 mov r1.y, c3.y 6841 texld r2, r2, s1 6842 texld r1, r1, s1 6843 texld r3, t0, s0 6844 lrp r4, r0.y, r2, r1 6845 log r0.x, r4.x 6846 log r0.y, r4.y 6847 log r0.z, r4.z 6848 mul r0.xyz, r0, c4.z 6849 exp r1.x, r0.x 6850 exp r1.y, r0.y 6851 exp r1.z, r0.z 6852 mad r4.xyz, r1, c5.x, c5.y 6853 mul r0, r3.w, r4 6854 mul r0, r0, v0 6855 mov oC0, r0 6856 6857// approximately 47 instruction slots used (3 texture, 44 arithmetic) 6858#endif 6859 6860const DWORD radial25[] = 6861{ 6862 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 6863 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 6864 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 6865 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 6866 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 6867 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 6868 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 6869 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 6870 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 6871 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 6872 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 6873 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 6874 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 6875 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0004, 6876 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0005, 6877 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 6878 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 6879 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 6880 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 6881 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 6882 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 6883 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 6884 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 6885 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 6886 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 6887 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 6888 0x80010000, 0x80000000, 0xa0550003, 0x02000013, 0x80010000, 0x80000000, 6889 0x03000002, 0x80010000, 0x80000000, 0xa0aa0003, 0x02000023, 0x80010000, 6890 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0003, 0xa0000003, 6891 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 6892 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 6893 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 6894 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 6895 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 0x03000002, 0x80010000, 6896 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 6897 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 6898 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 0xa0000004, 0xa0550004, 6899 0x04000004, 0x80010002, 0x80aa0000, 0xa0000004, 0xa0550004, 0x02000001, 6900 0x80020002, 0xa0550003, 0x02000001, 0x80020001, 0xa0550003, 0x03000042, 6901 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 6902 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 6903 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 6904 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 0x0200000f, 0x80040000, 6905 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 0xa0aa0004, 0x0200000e, 6906 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 6907 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 0x80e40001, 0xa0000005, 6908 0xa0550005, 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 6909 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 6910 0x0000ffff 6911}; 6912#if 0 6913// 6914// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 6915// 6916// fxc /T ps_2_0 /Vn radial26 /Fh tmp.h tmp.hlsl 6917// 6918// 6919// Parameters: 6920// 6921// sampler2D colors; 6922// float2 fractions[4]; 6923// float3 m0; 6924// float3 m1; 6925// sampler2D mask; 6926// float3 precalc; 6927// 6928// 6929// Registers: 6930// 6931// Name Reg Size 6932// ------------ ----- ---- 6933// fractions c0 3 6934// m0 c16 1 6935// m1 c17 1 6936// precalc c18 1 6937// mask s0 1 6938// colors s1 1 6939// 6940 6941 ps_2_0 6942 def c3, 1, 0.0625, 0.03125, 0.5 6943 def c4, 0.416667014, 1.05499995, -0.0549999997, 0 6944 dcl t0.xy 6945 dcl t1.xy 6946 dcl v0 6947 dcl_2d s0 6948 dcl_2d s1 6949 mov r0.xy, t1 6950 mov r0.z, c3.x 6951 dp3 r0.w, r0, c17 6952 dp3 r0.x, r0, c16 6953 mul r0.y, r0.w, r0.w 6954 mul r0.y, r0.y, c18.y 6955 add r0.x, r0.x, -c18.x 6956 mad r0.y, r0.x, r0.x, r0.y 6957 rsq r0.y, r0.y 6958 rcp r0.y, r0.y 6959 mad r0.x, c18.x, r0.x, r0.y 6960 mul r0.x, r0.x, c18.z 6961 frc r0.x, r0.x 6962 add r0.y, r0.x, -c0.x 6963 mul_sat r0.y, r0.y, c0.y 6964 add r0.z, r0.x, -c1.x 6965 add r0.x, r0.x, -c2.x 6966 mul_sat r0.z, r0.z, c1.y 6967 add r0.y, r0.y, r0.z 6968 mul_sat r0.x, r0.x, c2.y 6969 add r0.x, r0.y, r0.x 6970 frc r0.y, r0.x 6971 add r0.x, r0.x, -r0.y 6972 add r0.z, r0.x, c3.x 6973 mad r1.x, r0.x, c3.y, c3.z 6974 mad r2.x, r0.z, c3.y, c3.z 6975 mov r2.y, c3.w 6976 mov r1.y, c3.w 6977 texld r2, r2, s1 6978 texld r1, r1, s1 6979 texld r3, t0, s0 6980 lrp r4, r0.y, r2, r1 6981 log r0.x, r4.x 6982 log r0.y, r4.y 6983 log r0.z, r4.z 6984 mul r0.xyz, r0, c4.x 6985 exp r1.x, r0.x 6986 exp r1.y, r0.y 6987 exp r1.z, r0.z 6988 mad r4.xyz, r1, c4.y, c4.z 6989 mul r0, r3.w, r4 6990 mul r0, r0, v0 6991 mov oC0, r0 6992 6993// approximately 43 instruction slots used (3 texture, 40 arithmetic) 6994#endif 6995 6996const DWORD radial26[] = 6997{ 6998 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 6999 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 7000 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020003, 7001 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 7002 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 7003 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 7004 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 7005 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 7006 0xabab0073, 0x00030001, 0x00020001, 0x00000004, 0x00000000, 0xab00306d, 7007 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 7008 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 7009 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 7010 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0003, 7011 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0004, 7012 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 7013 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 7014 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 7015 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 7016 0xa0000003, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 7017 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 7018 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 7019 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 7020 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 7021 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 7022 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 7023 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 7024 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 7025 0x80000000, 0xa1000001, 0x03000002, 0x80010000, 0x80000000, 0xa1000002, 7026 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 7027 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550002, 7028 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 7029 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 7030 0x80040000, 0x80000000, 0xa0000003, 0x04000004, 0x80010001, 0x80000000, 7031 0xa0550003, 0xa0aa0003, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550003, 7032 0xa0aa0003, 0x02000001, 0x80020002, 0xa0ff0003, 0x02000001, 0x80020001, 7033 0xa0ff0003, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 7034 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 7035 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 7036 0x0200000f, 0x80010000, 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 7037 0x0200000f, 0x80040000, 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 7038 0xa0000004, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 7039 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 7040 0x80e40001, 0xa0550004, 0xa0aa0004, 0x03000005, 0x800f0000, 0x80ff0003, 7041 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 7042 0x800f0800, 0x80e40000, 0x0000ffff 7043}; 7044#if 0 7045// 7046// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 7047// 7048// fxc /T ps_2_0 /Vn radial28 /Fh tmp.h tmp.hlsl 7049// 7050// 7051// Parameters: 7052// 7053// sampler2D colors; 7054// float2 fractions[8]; 7055// float3 m0; 7056// float3 m1; 7057// sampler2D mask; 7058// float3 precalc; 7059// 7060// 7061// Registers: 7062// 7063// Name Reg Size 7064// ------------ ----- ---- 7065// fractions c0 7 7066// m0 c16 1 7067// m1 c17 1 7068// precalc c18 1 7069// mask s0 1 7070// colors s1 1 7071// 7072 7073 ps_2_0 7074 def c7, 1, 0, 0.5, -1 7075 def c8, 1, 0.5, 0.0625, 0.03125 7076 def c9, 0.416667014, 1.05499995, -0.0549999997, 0 7077 dcl t0.xy 7078 dcl t1.xy 7079 dcl v0 7080 dcl_2d s0 7081 dcl_2d s1 7082 mov r0.z, c7.x 7083 mov r0.xy, t1 7084 dp3 r0.w, r0, c17 7085 mul r0.w, r0.w, r0.w 7086 mul r0.w, r0.w, c18.y 7087 dp3 r0.x, r0, c16 7088 add r0.x, r0.x, -c18.x 7089 mad r0.y, r0.x, r0.x, r0.w 7090 rsq r0.y, r0.y 7091 rcp r0.y, r0.y 7092 mad r0.x, c18.x, r0.x, r0.y 7093 mov r0.z, c18.z 7094 mad r0.y, r0.x, r0.z, -c0.x 7095 mul_sat r0.y, r0.y, c0.y 7096 mad r0.w, r0.x, r0.z, -c1.x 7097 mul_sat r0.w, r0.w, c1.y 7098 add r0.y, r0.y, r0.w 7099 mad r0.w, r0.x, r0.z, -c2.x 7100 mul_sat r0.w, r0.w, c2.y 7101 add r0.y, r0.y, r0.w 7102 mad r0.w, r0.x, r0.z, -c3.x 7103 mul_sat r0.w, r0.w, c3.y 7104 add r0.y, r0.y, r0.w 7105 mad r0.w, r0.x, r0.z, -c4.x 7106 mul_sat r0.w, r0.w, c4.y 7107 add r0.y, r0.y, r0.w 7108 mad r0.w, r0.x, r0.z, -c5.x 7109 mul_sat r0.w, r0.w, c5.y 7110 add r0.y, r0.y, r0.w 7111 mad r0.w, r0.x, r0.z, -c6.x 7112 mul_sat r0.w, r0.w, c6.y 7113 add r0.y, r0.y, r0.w 7114 frc r0.w, r0.y 7115 add r0.y, r0.y, -r0.w 7116 add r1.w, r0.y, c7.x 7117 mad r1.x, r1.w, c8.z, c8.w 7118 mul r1.z, r0.x, c18.z 7119 mad r1.w, r0.x, r0.z, c7.w 7120 mad r0.x, r0.y, c8.z, c8.w 7121 mov r0.y, c7.z 7122 mov r1.y, c7.z 7123 mov r2.xy, c8 7124 mov r3.xy, c7.yzxw 7125 texld r4, r0, s1 7126 texld r5, r1, s1 7127 texld r2, r2, s1 7128 texld r3, r3, s1 7129 texld r6, t0, s0 7130 lrp r7, r0.w, r5, r4 7131 cmp r0, r1.w, r2, r7 7132 cmp r0, -r1.z, r3, r0 7133 log r1.x, r0.x 7134 log r1.y, r0.y 7135 log r1.z, r0.z 7136 mul r1.xyz, r1, c9.x 7137 exp r2.x, r1.x 7138 exp r2.y, r1.y 7139 exp r2.z, r1.z 7140 mad r0.xyz, r2, c9.y, c9.z 7141 mul r0, r6.w, r0 7142 mul r0, r0, v0 7143 mov oC0, r0 7144 7145// approximately 62 instruction slots used (5 texture, 57 arithmetic) 7146#endif 7147 7148const DWORD radial28[] = 7149{ 7150 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 7151 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 7152 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 7153 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 7154 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 7155 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 7156 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 7157 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 7158 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 7159 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 7160 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 7161 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 7162 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 7163 0x3f800000, 0x00000000, 0x3f000000, 0xbf800000, 0x05000051, 0xa00f0008, 7164 0x3f800000, 0x3f000000, 0x3d800000, 0x3d000000, 0x05000051, 0xa00f0009, 7165 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 7166 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 7167 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 7168 0xa00f0801, 0x02000001, 0x80040000, 0xa0000007, 0x02000001, 0x80030000, 7169 0xb0e40001, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000005, 7170 0x80080000, 0x80ff0000, 0x80ff0000, 0x03000005, 0x80080000, 0x80ff0000, 7171 0xa0550012, 0x03000008, 0x80010000, 0x80e40000, 0xa0e40010, 0x03000002, 7172 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 7173 0x80000000, 0x80ff0000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 7174 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 7175 0x80550000, 0x02000001, 0x80040000, 0xa0aa0012, 0x04000004, 0x80020000, 7176 0x80000000, 0x80aa0000, 0xa1000000, 0x03000005, 0x80120000, 0x80550000, 7177 0xa0550000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000001, 7178 0x03000005, 0x80180000, 0x80ff0000, 0xa0550001, 0x03000002, 0x80020000, 7179 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 7180 0xa1000002, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550002, 0x03000002, 7181 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 0x80000000, 7182 0x80aa0000, 0xa1000003, 0x03000005, 0x80180000, 0x80ff0000, 0xa0550003, 7183 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 0x80080000, 7184 0x80000000, 0x80aa0000, 0xa1000004, 0x03000005, 0x80180000, 0x80ff0000, 7185 0xa0550004, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 0x04000004, 7186 0x80080000, 0x80000000, 0x80aa0000, 0xa1000005, 0x03000005, 0x80180000, 7187 0x80ff0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80ff0000, 7188 0x04000004, 0x80080000, 0x80000000, 0x80aa0000, 0xa1000006, 0x03000005, 7189 0x80180000, 0x80ff0000, 0xa0550006, 0x03000002, 0x80020000, 0x80550000, 7190 0x80ff0000, 0x02000013, 0x80080000, 0x80550000, 0x03000002, 0x80020000, 7191 0x80550000, 0x81ff0000, 0x03000002, 0x80080001, 0x80550000, 0xa0000007, 7192 0x04000004, 0x80010001, 0x80ff0001, 0xa0aa0008, 0xa0ff0008, 0x03000005, 7193 0x80040001, 0x80000000, 0xa0aa0012, 0x04000004, 0x80080001, 0x80000000, 7194 0x80aa0000, 0xa0ff0007, 0x04000004, 0x80010000, 0x80550000, 0xa0aa0008, 7195 0xa0ff0008, 0x02000001, 0x80020000, 0xa0aa0007, 0x02000001, 0x80020001, 7196 0xa0aa0007, 0x02000001, 0x80030002, 0xa0e40008, 0x02000001, 0x80030003, 7197 0xa0c90007, 0x03000042, 0x800f0004, 0x80e40000, 0xa0e40801, 0x03000042, 7198 0x800f0005, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0002, 0x80e40002, 7199 0xa0e40801, 0x03000042, 0x800f0003, 0x80e40003, 0xa0e40801, 0x03000042, 7200 0x800f0006, 0xb0e40000, 0xa0e40800, 0x04000012, 0x800f0007, 0x80ff0000, 7201 0x80e40005, 0x80e40004, 0x04000058, 0x800f0000, 0x80ff0001, 0x80e40002, 7202 0x80e40007, 0x04000058, 0x800f0000, 0x81aa0001, 0x80e40003, 0x80e40000, 7203 0x0200000f, 0x80010001, 0x80000000, 0x0200000f, 0x80020001, 0x80550000, 7204 0x0200000f, 0x80040001, 0x80aa0000, 0x03000005, 0x80070001, 0x80e40001, 7205 0xa0000009, 0x0200000e, 0x80010002, 0x80000001, 0x0200000e, 0x80020002, 7206 0x80550001, 0x0200000e, 0x80040002, 0x80aa0001, 0x04000004, 0x80070000, 7207 0x80e40002, 0xa0550009, 0xa0aa0009, 0x03000005, 0x800f0000, 0x80ff0006, 7208 0x80e40000, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 7209 0x800f0800, 0x80e40000, 0x0000ffff 7210}; 7211#if 0 7212// 7213// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 7214// 7215// fxc /T ps_2_0 /Vn radial29 /Fh tmp.h tmp.hlsl 7216// 7217// 7218// Parameters: 7219// 7220// sampler2D colors; 7221// float2 fractions[8]; 7222// float3 m0; 7223// float3 m1; 7224// sampler2D mask; 7225// float3 precalc; 7226// 7227// 7228// Registers: 7229// 7230// Name Reg Size 7231// ------------ ----- ---- 7232// fractions c0 7 7233// m0 c16 1 7234// m1 c17 1 7235// precalc c18 1 7236// mask s0 1 7237// colors s1 1 7238// 7239 7240 ps_2_0 7241 def c7, 1, 0.5, -0.5, 2 7242 def c8, 0.0625, 0.03125, 0.416667014, 0 7243 def c9, 1.05499995, -0.0549999997, 0, 0 7244 dcl t0.xy 7245 dcl t1.xy 7246 dcl v0 7247 dcl_2d s0 7248 dcl_2d s1 7249 mov r0.xy, t1 7250 mov r0.z, c7.x 7251 dp3 r0.w, r0, c17 7252 dp3 r0.x, r0, c16 7253 mul r0.y, r0.w, r0.w 7254 mul r0.y, r0.y, c18.y 7255 add r0.x, r0.x, -c18.x 7256 mad r0.y, r0.x, r0.x, r0.y 7257 rsq r0.y, r0.y 7258 rcp r0.y, r0.y 7259 mad r0.x, c18.x, r0.x, r0.y 7260 mul r0.x, r0.x, c18.z 7261 mul r0.x, r0.x, c7.y 7262 frc r0.x, r0.x 7263 add r0.x, r0.x, c7.z 7264 abs r0.x, r0.x 7265 mad r0.x, r0.x, -c7.w, c7.x 7266 add r0.y, r0.x, -c0.x 7267 mul_sat r0.y, r0.y, c0.y 7268 add r0.z, r0.x, -c1.x 7269 mul_sat r0.z, r0.z, c1.y 7270 add r0.y, r0.y, r0.z 7271 add r0.z, r0.x, -c2.x 7272 mul_sat r0.z, r0.z, c2.y 7273 add r0.y, r0.y, r0.z 7274 add r0.z, r0.x, -c3.x 7275 mul_sat r0.z, r0.z, c3.y 7276 add r0.y, r0.y, r0.z 7277 add r0.z, r0.x, -c4.x 7278 mul_sat r0.z, r0.z, c4.y 7279 add r0.y, r0.y, r0.z 7280 add r0.z, r0.x, -c5.x 7281 add r0.x, r0.x, -c6.x 7282 mul_sat r0.z, r0.z, c5.y 7283 add r0.y, r0.y, r0.z 7284 mul_sat r0.x, r0.x, c6.y 7285 add r0.x, r0.y, r0.x 7286 frc r0.y, r0.x 7287 add r0.x, r0.x, -r0.y 7288 add r0.z, r0.x, c7.x 7289 mad r1.x, r0.x, c8.x, c8.y 7290 mad r2.x, r0.z, c8.x, c8.y 7291 mov r2.y, c7.y 7292 mov r1.y, c7.y 7293 texld r2, r2, s1 7294 texld r1, r1, s1 7295 texld r3, t0, s0 7296 lrp r4, r0.y, r2, r1 7297 log r0.x, r4.x 7298 log r0.y, r4.y 7299 log r0.z, r4.z 7300 mul r0.xyz, r0, c8.z 7301 exp r1.x, r0.x 7302 exp r1.y, r0.y 7303 exp r1.z, r0.z 7304 mad r4.xyz, r1, c9.x, c9.y 7305 mul r0, r3.w, r4 7306 mul r0, r0, v0 7307 mov oC0, r0 7308 7309// approximately 59 instruction slots used (3 texture, 56 arithmetic) 7310#endif 7311 7312const DWORD radial29[] = 7313{ 7314 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 7315 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 7316 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 7317 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 7318 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 7319 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 7320 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 7321 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 7322 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 7323 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 7324 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 7325 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 7326 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 7327 0x3f800000, 0x3f000000, 0xbf000000, 0x40000000, 0x05000051, 0xa00f0008, 7328 0x3d800000, 0x3d000000, 0x3ed55561, 0x00000000, 0x05000051, 0xa00f0009, 7329 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x00000000, 0x0200001f, 0x80000000, 7330 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 7331 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 7332 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 7333 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 7334 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 7335 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 7336 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 7337 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 7338 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 7339 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x03000005, 7340 0x80010000, 0x80000000, 0xa0550007, 0x02000013, 0x80010000, 0x80000000, 7341 0x03000002, 0x80010000, 0x80000000, 0xa0aa0007, 0x02000023, 0x80010000, 7342 0x80000000, 0x04000004, 0x80010000, 0x80000000, 0xa1ff0007, 0xa0000007, 7343 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 0x03000005, 0x80120000, 7344 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 0x80000000, 0xa1000001, 7345 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 0x03000002, 0x80020000, 7346 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000002, 7347 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 0x03000002, 0x80020000, 7348 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000003, 7349 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 0x03000002, 0x80020000, 7350 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000004, 7351 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 0x03000002, 0x80020000, 7352 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 0x80000000, 0xa1000005, 7353 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 0x03000005, 0x80140000, 7354 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 7355 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 0x03000002, 0x80010000, 7356 0x80550000, 0x80000000, 0x02000013, 0x80020000, 0x80000000, 0x03000002, 7357 0x80010000, 0x80000000, 0x81550000, 0x03000002, 0x80040000, 0x80000000, 7358 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 0xa0000008, 0xa0550008, 7359 0x04000004, 0x80010002, 0x80aa0000, 0xa0000008, 0xa0550008, 0x02000001, 7360 0x80020002, 0xa0550007, 0x02000001, 0x80020001, 0xa0550007, 0x03000042, 7361 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 0x800f0001, 0x80e40001, 7362 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 0xa0e40800, 0x04000012, 7363 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 0x0200000f, 0x80010000, 7364 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 0x0200000f, 0x80040000, 7365 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 0xa0aa0008, 0x0200000e, 7366 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 0x80550000, 0x0200000e, 7367 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 0x80e40001, 0xa0000009, 7368 0xa0550009, 0x03000005, 0x800f0000, 0x80ff0003, 0x80e40004, 0x03000005, 7369 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 7370 0x0000ffff 7371}; 7372#if 0 7373// 7374// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 7375// 7376// fxc /T ps_2_0 /Vn radial30 /Fh tmp.h tmp.hlsl 7377// 7378// 7379// Parameters: 7380// 7381// sampler2D colors; 7382// float2 fractions[8]; 7383// float3 m0; 7384// float3 m1; 7385// sampler2D mask; 7386// float3 precalc; 7387// 7388// 7389// Registers: 7390// 7391// Name Reg Size 7392// ------------ ----- ---- 7393// fractions c0 7 7394// m0 c16 1 7395// m1 c17 1 7396// precalc c18 1 7397// mask s0 1 7398// colors s1 1 7399// 7400 7401 ps_2_0 7402 def c7, 1, 0.0625, 0.03125, 0.5 7403 def c8, 0.416667014, 1.05499995, -0.0549999997, 0 7404 dcl t0.xy 7405 dcl t1.xy 7406 dcl v0 7407 dcl_2d s0 7408 dcl_2d s1 7409 mov r0.xy, t1 7410 mov r0.z, c7.x 7411 dp3 r0.w, r0, c17 7412 dp3 r0.x, r0, c16 7413 mul r0.y, r0.w, r0.w 7414 mul r0.y, r0.y, c18.y 7415 add r0.x, r0.x, -c18.x 7416 mad r0.y, r0.x, r0.x, r0.y 7417 rsq r0.y, r0.y 7418 rcp r0.y, r0.y 7419 mad r0.x, c18.x, r0.x, r0.y 7420 mul r0.x, r0.x, c18.z 7421 frc r0.x, r0.x 7422 add r0.y, r0.x, -c0.x 7423 mul_sat r0.y, r0.y, c0.y 7424 add r0.z, r0.x, -c1.x 7425 mul_sat r0.z, r0.z, c1.y 7426 add r0.y, r0.y, r0.z 7427 add r0.z, r0.x, -c2.x 7428 mul_sat r0.z, r0.z, c2.y 7429 add r0.y, r0.y, r0.z 7430 add r0.z, r0.x, -c3.x 7431 mul_sat r0.z, r0.z, c3.y 7432 add r0.y, r0.y, r0.z 7433 add r0.z, r0.x, -c4.x 7434 mul_sat r0.z, r0.z, c4.y 7435 add r0.y, r0.y, r0.z 7436 add r0.z, r0.x, -c5.x 7437 add r0.x, r0.x, -c6.x 7438 mul_sat r0.z, r0.z, c5.y 7439 add r0.y, r0.y, r0.z 7440 mul_sat r0.x, r0.x, c6.y 7441 add r0.x, r0.y, r0.x 7442 frc r0.y, r0.x 7443 add r0.x, r0.x, -r0.y 7444 add r0.z, r0.x, c7.x 7445 mad r1.x, r0.x, c7.y, c7.z 7446 mad r2.x, r0.z, c7.y, c7.z 7447 mov r2.y, c7.w 7448 mov r1.y, c7.w 7449 texld r2, r2, s1 7450 texld r1, r1, s1 7451 texld r3, t0, s0 7452 lrp r4, r0.y, r2, r1 7453 log r0.x, r4.x 7454 log r0.y, r4.y 7455 log r0.z, r4.z 7456 mul r0.xyz, r0, c8.x 7457 exp r1.x, r0.x 7458 exp r1.y, r0.y 7459 exp r1.z, r0.z 7460 mad r4.xyz, r1, c8.y, c8.z 7461 mul r0, r3.w, r4 7462 mul r0, r0, v0 7463 mov oC0, r0 7464 7465// approximately 55 instruction slots used (3 texture, 52 arithmetic) 7466#endif 7467 7468const DWORD radial30[] = 7469{ 7470 0xffff0200, 0x004afffe, 0x42415443, 0x0000001c, 0x000000f3, 0xffff0200, 7471 0x00000006, 0x0000001c, 0x20000100, 0x000000ec, 0x00000094, 0x00010003, 7472 0x00060001, 0x0000009c, 0x00000000, 0x000000ac, 0x00000002, 0x00020007, 7473 0x000000b8, 0x00000000, 0x000000c8, 0x00100002, 0x00420001, 0x000000cc, 7474 0x00000000, 0x000000dc, 0x00110002, 0x00460001, 0x000000cc, 0x00000000, 7475 0x000000df, 0x00000003, 0x00020001, 0x0000009c, 0x00000000, 0x000000e4, 7476 0x00120002, 0x004a0001, 0x000000cc, 0x00000000, 0x6f6c6f63, 0xab007372, 7477 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x63617266, 0x6e6f6974, 7478 0xabab0073, 0x00030001, 0x00020001, 0x00000008, 0x00000000, 0xab00306d, 7479 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x6d00316d, 0x006b7361, 7480 0x63657270, 0x00636c61, 0x325f7370, 0x4d00305f, 0x6f726369, 0x74666f73, 7481 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 0x6d6f4320, 0x656c6970, 7482 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 0x05000051, 0xa00f0007, 7483 0x3f800000, 0x3d800000, 0x3d000000, 0x3f000000, 0x05000051, 0xa00f0008, 7484 0x3ed55561, 0x3f870a3d, 0xbd6147ae, 0x00000000, 0x0200001f, 0x80000000, 7485 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 0x0200001f, 0x80000000, 7486 0x900f0000, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 0x90000000, 7487 0xa00f0801, 0x02000001, 0x80030000, 0xb0e40001, 0x02000001, 0x80040000, 7488 0xa0000007, 0x03000008, 0x80080000, 0x80e40000, 0xa0e40011, 0x03000008, 7489 0x80010000, 0x80e40000, 0xa0e40010, 0x03000005, 0x80020000, 0x80ff0000, 7490 0x80ff0000, 0x03000005, 0x80020000, 0x80550000, 0xa0550012, 0x03000002, 7491 0x80010000, 0x80000000, 0xa1000012, 0x04000004, 0x80020000, 0x80000000, 7492 0x80000000, 0x80550000, 0x02000007, 0x80020000, 0x80550000, 0x02000006, 7493 0x80020000, 0x80550000, 0x04000004, 0x80010000, 0xa0000012, 0x80000000, 7494 0x80550000, 0x03000005, 0x80010000, 0x80000000, 0xa0aa0012, 0x02000013, 7495 0x80010000, 0x80000000, 0x03000002, 0x80020000, 0x80000000, 0xa1000000, 7496 0x03000005, 0x80120000, 0x80550000, 0xa0550000, 0x03000002, 0x80040000, 7497 0x80000000, 0xa1000001, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550001, 7498 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 7499 0x80000000, 0xa1000002, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550002, 7500 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 7501 0x80000000, 0xa1000003, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550003, 7502 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 7503 0x80000000, 0xa1000004, 0x03000005, 0x80140000, 0x80aa0000, 0xa0550004, 7504 0x03000002, 0x80020000, 0x80550000, 0x80aa0000, 0x03000002, 0x80040000, 7505 0x80000000, 0xa1000005, 0x03000002, 0x80010000, 0x80000000, 0xa1000006, 7506 0x03000005, 0x80140000, 0x80aa0000, 0xa0550005, 0x03000002, 0x80020000, 7507 0x80550000, 0x80aa0000, 0x03000005, 0x80110000, 0x80000000, 0xa0550006, 7508 0x03000002, 0x80010000, 0x80550000, 0x80000000, 0x02000013, 0x80020000, 7509 0x80000000, 0x03000002, 0x80010000, 0x80000000, 0x81550000, 0x03000002, 7510 0x80040000, 0x80000000, 0xa0000007, 0x04000004, 0x80010001, 0x80000000, 7511 0xa0550007, 0xa0aa0007, 0x04000004, 0x80010002, 0x80aa0000, 0xa0550007, 7512 0xa0aa0007, 0x02000001, 0x80020002, 0xa0ff0007, 0x02000001, 0x80020001, 7513 0xa0ff0007, 0x03000042, 0x800f0002, 0x80e40002, 0xa0e40801, 0x03000042, 7514 0x800f0001, 0x80e40001, 0xa0e40801, 0x03000042, 0x800f0003, 0xb0e40000, 7515 0xa0e40800, 0x04000012, 0x800f0004, 0x80550000, 0x80e40002, 0x80e40001, 7516 0x0200000f, 0x80010000, 0x80000004, 0x0200000f, 0x80020000, 0x80550004, 7517 0x0200000f, 0x80040000, 0x80aa0004, 0x03000005, 0x80070000, 0x80e40000, 7518 0xa0000008, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 7519 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x04000004, 0x80070004, 7520 0x80e40001, 0xa0550008, 0xa0aa0008, 0x03000005, 0x800f0000, 0x80ff0003, 7521 0x80e40004, 0x03000005, 0x800f0000, 0x80e40000, 0x90e40000, 0x02000001, 7522 0x800f0800, 0x80e40000, 0x0000ffff 7523}; 7524const DWORD *radialShaders[] = 7525{ 7526 radial0, 7527 radial1, 7528 radial2, 7529 NULL, 7530 radial4, 7531 radial5, 7532 radial6, 7533 NULL, 7534 radial8, 7535 radial9, 7536 radial10, 7537 NULL, 7538 radial12, 7539 radial13, 7540 radial14, 7541 NULL, 7542 radial16, 7543 radial17, 7544 radial18, 7545 NULL, 7546 radial20, 7547 radial21, 7548 radial22, 7549 NULL, 7550 radial24, 7551 radial25, 7552 radial26, 7553 NULL, 7554 radial28, 7555 radial29, 7556 radial30, 7557 NULL, 7558}; 7559 7560#if 0 7561// 7562// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 7563// 7564// fxc /T ps_2_0 /Vn lcdtext0 /Fh tmp.h tmp.hlsl 7565// 7566// 7567// Parameters: 7568// 7569// sampler2D dstTex; 7570// float3 gamma; 7571// sampler2D glyphTex; 7572// float3 invgamma; 7573// float3 srcAdj; 7574// 7575// 7576// Registers: 7577// 7578// Name Reg Size 7579// ------------ ----- ---- 7580// srcAdj c0 1 7581// invgamma c1 1 7582// gamma c2 1 7583// glyphTex s0 1 7584// dstTex s1 1 7585// 7586 7587 ps_2_0 7588 def c3, -1, 0, 1, 0 7589 dcl t0.xy 7590 dcl t1.xy 7591 dcl_2d s0 7592 dcl_2d s1 7593 texld r0, t0, s0 7594 dp3 r0.w, r0, r0 7595 cmp r1, -r0.w, c3.x, c3.y 7596 texkill r1 7597 texld r1, t1, s1 7598 log r2.x, r1.x 7599 log r2.y, r1.y 7600 log r2.z, r1.z 7601 mul r1.xyz, r2, c1 7602 exp r2.x, r1.x 7603 exp r2.y, r1.y 7604 exp r2.z, r1.z 7605 lrp r1.xyz, r0, c0, r2 7606 log r0.x, r1.x 7607 log r0.y, r1.y 7608 log r0.z, r1.z 7609 mul r0.xyz, r0, c2 7610 exp r1.x, r0.x 7611 exp r1.y, r0.y 7612 exp r1.z, r0.z 7613 mov r1.w, c3.z 7614 mov oC0, r1 7615 7616// approximately 22 instruction slots used (2 texture, 20 arithmetic) 7617#endif 7618 7619const DWORD lcdtext0[] = 7620{ 7621 0xffff0200, 0x0042fffe, 0x42415443, 0x0000001c, 0x000000d0, 0xffff0200, 7622 0x00000005, 0x0000001c, 0x20000100, 0x000000c9, 0x00000080, 0x00010003, 7623 0x00060001, 0x00000088, 0x00000000, 0x00000098, 0x00020002, 0x000a0001, 7624 0x000000a0, 0x00000000, 0x000000b0, 0x00000003, 0x00020001, 0x00000088, 7625 0x00000000, 0x000000b9, 0x00010002, 0x00060001, 0x000000a0, 0x00000000, 7626 0x000000c2, 0x00000002, 0x00020001, 0x000000a0, 0x00000000, 0x54747364, 7627 0xab007865, 0x000c0004, 0x00010001, 0x00000001, 0x00000000, 0x6d6d6167, 7628 0xabab0061, 0x00030001, 0x00030001, 0x00000001, 0x00000000, 0x70796c67, 7629 0x78655468, 0x766e6900, 0x6d6d6167, 0x72730061, 0x6a644163, 0x5f737000, 7630 0x00305f32, 0x7263694d, 0x666f736f, 0x52282074, 0x4c482029, 0x53204c53, 7631 0x65646168, 0x6f432072, 0x6c69706d, 0x39207265, 0x2e39312e, 0x2e393439, 7632 0x31313132, 0xababab00, 0x05000051, 0xa00f0003, 0xbf800000, 0x80000000, 7633 0x3f800000, 0x00000000, 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 7634 0x80000000, 0xb0030001, 0x0200001f, 0x90000000, 0xa00f0800, 0x0200001f, 7635 0x90000000, 0xa00f0801, 0x03000042, 0x800f0000, 0xb0e40000, 0xa0e40800, 7636 0x03000008, 0x80080000, 0x80e40000, 0x80e40000, 0x04000058, 0x800f0001, 7637 0x81ff0000, 0xa0000003, 0xa0550003, 0x01000041, 0x800f0001, 0x03000042, 7638 0x800f0001, 0xb0e40001, 0xa0e40801, 0x0200000f, 0x80010002, 0x80000001, 7639 0x0200000f, 0x80020002, 0x80550001, 0x0200000f, 0x80040002, 0x80aa0001, 7640 0x03000005, 0x80070001, 0x80e40002, 0xa0e40001, 0x0200000e, 0x80010002, 7641 0x80000001, 0x0200000e, 0x80020002, 0x80550001, 0x0200000e, 0x80040002, 7642 0x80aa0001, 0x04000012, 0x80070001, 0x80e40000, 0xa0e40000, 0x80e40002, 7643 0x0200000f, 0x80010000, 0x80000001, 0x0200000f, 0x80020000, 0x80550001, 7644 0x0200000f, 0x80040000, 0x80aa0001, 0x03000005, 0x80070000, 0x80e40000, 7645 0xa0e40002, 0x0200000e, 0x80010001, 0x80000000, 0x0200000e, 0x80020001, 7646 0x80550000, 0x0200000e, 0x80040001, 0x80aa0000, 0x02000001, 0x80080001, 7647 0xa0aa0003, 0x02000001, 0x800f0800, 0x80e40001, 0x0000ffff 7648}; 7649#if 0 7650// 7651// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.2111 7652// 7653// fxc /T ps_2_a /Vn aapgram0 /Fh tmp.h tmp.hlsl 7654// 7655 ps_2_x 7656 dcl t0.xy 7657 dcl t1.xy 7658 dcl v0 7659 dsx r0.xy, t1.yxzw 7660 add r0.xy, r0, t1.yxzw 7661 min r1.xy, r0, t1.yxzw 7662 dsy r0.zw, t1.xyyx 7663 add r1.zw, r0, t1.xyyx 7664 add r0.zw, r0.xyxy, r0 7665 max r2.xy, t1.yxzw, r0 7666 min r0.xy, r1.zwzw, r1 7667 max r3.xy, r2, r1.zwzw 7668 min r1.xy, r0.zwzw, r0 7669 max r1.zw, r3.xyxy, r0 7670 mov_sat r0.xy, r1 7671 add r0.zw, -r1.xyxy, r1 7672 mov_sat r1.zw, r1 7673 add r0.xy, -r0, r1.zwzw 7674 mul r0.xy, r0.ywzw, r0.xzzw 7675 rcp r0.y, r0.y 7676 mul r0.x, r0.x, r0.y 7677 dsx r0.yz, t0.xyxw 7678 add r0.yz, r0, t0.xyxw 7679 min r1.xy, r0.yzzw, t0.yxzw 7680 dsy r1.zw, t0.xyyx 7681 add r2.xy, r1.zwzw, t0.yxzw 7682 add r1.zw, r0.xyyz, r1 7683 max r2.zw, t0.xyyx, r0.xyyz 7684 min r0.yz, r2.xxyw, r1.xxyw 7685 max r1.xy, r2.zwzw, r2 7686 min r2.xy, r1.zwzw, r0.yzzw 7687 max r0.yz, r1.xxyw, r1.xzww 7688 mov_sat r1.xy, r2 7689 add r1.zw, -r2.xyxy, r0.xyyz 7690 mov_sat r0.yz, r0 7691 add r0.yz, -r1.xxyw, r0 7692 mul r0.y, r0.z, r0.y 7693 mul r0.z, r1.w, r1.z 7694 rcp r0.z, r0.z 7695 mad r0.x, r0.y, r0.z, -r0.x 7696 mul r0, r0.x, v0 7697 mov oC0, r0 7698 7699// approximately 43 instruction slots used 7700#endif 7701 7702const DWORD aapgram0[] = 7703{ 7704 0xffff0201, 0x0016fffe, 0x42415443, 0x0000001c, 0x00000023, 0xffff0201, 7705 0x00000000, 0x00000000, 0x20000100, 0x0000001c, 0x325f7370, 0x4d00615f, 7706 0x6f726369, 0x74666f73, 0x29522820, 0x534c4820, 0x6853204c, 0x72656461, 7707 0x6d6f4320, 0x656c6970, 0x2e392072, 0x392e3931, 0x322e3934, 0x00313131, 7708 0x0200001f, 0x80000000, 0xb0030000, 0x0200001f, 0x80000000, 0xb0030001, 7709 0x0200001f, 0x80000000, 0x900f0000, 0x0200005b, 0x80030000, 0xb0e10001, 7710 0x03000002, 0x80030000, 0x80e40000, 0xb0e10001, 0x0300000a, 0x80030001, 7711 0x80e40000, 0xb0e10001, 0x0200005c, 0x800c0000, 0xb0140001, 0x03000002, 7712 0x800c0001, 0x80e40000, 0xb0140001, 0x03000002, 0x800c0000, 0x80440000, 7713 0x80e40000, 0x0300000b, 0x80030002, 0xb0e10001, 0x80e40000, 0x0300000a, 7714 0x80030000, 0x80ee0001, 0x80e40001, 0x0300000b, 0x80030003, 0x80e40002, 7715 0x80ee0001, 0x0300000a, 0x80030001, 0x80ee0000, 0x80e40000, 0x0300000b, 7716 0x800c0001, 0x80440003, 0x80e40000, 0x02000001, 0x80130000, 0x80e40001, 7717 0x03000002, 0x800c0000, 0x81440001, 0x80e40001, 0x02000001, 0x801c0001, 7718 0x80e40001, 0x03000002, 0x80030000, 0x81e40000, 0x80ee0001, 0x03000005, 7719 0x80030000, 0x80ed0000, 0x80e80000, 0x02000006, 0x80020000, 0x80550000, 7720 0x03000005, 0x80010000, 0x80000000, 0x80550000, 0x0200005b, 0x80060000, 7721 0xb0c40000, 0x03000002, 0x80060000, 0x80e40000, 0xb0c40000, 0x0300000a, 7722 0x80030001, 0x80e90000, 0xb0e10000, 0x0200005c, 0x800c0001, 0xb0140000, 7723 0x03000002, 0x80030002, 0x80ee0001, 0xb0e10000, 0x03000002, 0x800c0001, 7724 0x80940000, 0x80e40001, 0x0300000b, 0x800c0002, 0xb0140000, 0x80940000, 7725 0x0300000a, 0x80060000, 0x80d00002, 0x80d00001, 0x0300000b, 0x80030001, 7726 0x80ee0002, 0x80e40002, 0x0300000a, 0x80030002, 0x80ee0001, 0x80e90000, 7727 0x0300000b, 0x80060000, 0x80d00001, 0x80f80001, 0x02000001, 0x80130001, 7728 0x80e40002, 0x03000002, 0x800c0001, 0x81440002, 0x80940000, 0x02000001, 7729 0x80160000, 0x80e40000, 0x03000002, 0x80060000, 0x81d00001, 0x80e40000, 7730 0x03000005, 0x80020000, 0x80aa0000, 0x80550000, 0x03000005, 0x80040000, 7731 0x80ff0001, 0x80aa0001, 0x02000006, 0x80040000, 0x80aa0000, 0x04000004, 7732 0x80010000, 0x80550000, 0x80aa0000, 0x81000000, 0x03000005, 0x800f0000, 7733 0x80000000, 0x90e40000, 0x02000001, 0x800f0800, 0x80e40000, 0x0000ffff 7734}; 7735