Qt 4.8
fragmentprograms_p.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 ** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
4 ** Contact: http://www.qt-project.org/legal
5 **
6 ** This file is part of the QtOpenGL module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and Digia. For licensing terms and
14 ** conditions see http://qt.digia.com/licensing. For further information
15 ** use the contact form at http://qt.digia.com/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 2.1 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 2.1 requirements
23 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
24 **
25 ** In addition, as a special exception, Digia gives you certain additional
26 ** rights. These rights are described in the Digia Qt LGPL Exception
27 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
28 **
29 ** GNU General Public License Usage
30 ** Alternatively, this file may be used under the terms of the GNU
31 ** General Public License version 3.0 as published by the Free Software
32 ** Foundation and appearing in the file LICENSE.GPL included in the
33 ** packaging of this file. Please review the following information to
34 ** ensure the GNU General Public License version 3.0 requirements will be
35 ** met: http://www.gnu.org/copyleft/gpl.html.
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41 
42 #ifndef FRAGMENTPROGRAMS_P_H
43 #define FRAGMENTPROGRAMS_P_H
44 
45 //
46 // W A R N I N G
47 // -------------
48 //
49 // This file is not part of the Qt API. It exists purely as an
50 // implementation detail. This header file may change from version to
51 // version without notice, or even be removed.
52 //
53 // We mean it.
54 //
55 
76 };
77 
85 };
86 
114 };
115 
119 };
120 
121 static const unsigned int num_fragment_variables = 19;
122 
123 static const unsigned int num_fragment_brushes = 6;
124 static const unsigned int num_fragment_composition_modes = 26;
125 static const unsigned int num_fragment_masks = 2;
126 
128  "!!ARBfp1.0\n"
129  "PARAM c[1] = { { 0.5, 2 } };\n"
130  "TEMP R0;\n"
131  "TEMP R1;\n"
132  "TEMP R2;\n"
133  "TEMP R3;\n"
134  "TEMP R4;\n"
135  "ADD R3.z, fragment.position.x, c[0].x;\n"
136  "ADD R0.y, fragment.position, -c[0].x;\n"
137  "MAX R4.x, fragment.texcoord[0].y, R0.y;\n"
138  "ADD R0.x, fragment.position.y, c[0];\n"
139  "MIN R3.w, R0.x, fragment.texcoord[0].x;\n"
140  "ADD R2.z, fragment.position.x, -c[0].x;\n"
141  "MOV R2.w, R3.z;\n"
142  "MOV R0.yw, R4.x;\n"
143  "MOV R0.xz, R3.w;\n"
144  "MAD R0, fragment.texcoord[1].xxzz, R0, fragment.texcoord[1].yyww;\n"
145  "MAD R0.zw, fragment.position.x, c[0].y, -R0;\n"
146  "MOV R2.x, R0;\n"
147  "MOV R2.y, R0.z;\n"
148  "MOV R1.w, R0;\n"
149  "MOV R1.z, R0.y;\n"
150  "MIN R1.xy, R2, R1.zwzw;\n"
151  "SGE R0.xy, R1.zwzw, R2;\n"
152  "ADD R0.zw, -fragment.texcoord[0], -fragment.texcoord[0];\n"
153  "MAD R3.xy, R0, R0.zwzw, fragment.texcoord[0].zwzw;\n"
154  "ADD R0, -R1.xxyy, R2.zwzw;\n"
155  "MAD R0, R0, R3.xxyy, R4.x;\n"
156  "ADD R3.xy, R0.ywzw, R0.xzzw;\n"
157  "ADD R4.zw, R3.w, -R0.xyxz;\n"
158  "ADD R0.zw, -R4.x, R0.xyyw;\n"
159  "ADD R0.xy, R3.z, -R1;\n"
160  "MAX R1.zw, R2.xyxy, R1;\n"
161  "MUL R0.xy, R0, R0.zwzw;\n"
162  "MAD R3.xy, -R3, c[0].x, R3.w;\n"
163  "ADD R2.w, R3.z, -R2.z;\n"
164  "MUL R2.xy, R3, R2.w;\n"
165  "ADD R2.w, R3, -R4.x;\n"
166  "ADD R3.xy, -R2.z, R1.zwzw;\n"
167  "MUL R3.xy, R4.zwzw, R3;\n"
168  "ADD R4.zw, R1.xyxy, R1;\n"
169  "MAD R0.zw, R4, c[0].x, -R2.z;\n"
170  "MAD R0.xy, -R0, c[0].x, R2.w;\n"
171  "MAD R4.zw, R0, R2.w, -R0.xyxy;\n"
172  "SGE R0.zw, R3.z, R1;\n"
173  "MAD R0.xy, R0.zwzw, R4.zwzw, R0;\n"
174  "MAD R3.xy, R3, c[0].x, -R2;\n"
175  "MAD R0.zw, R0, R3.xyxy, R2.xyxy;\n"
176  "ADD R2.xy, R0.zwzw, -R0;\n"
177  "SGE R0.zw, R2.z, R1.xyxy;\n"
178  "MAD R0.xy, R0.zwzw, R2, R0;\n"
179  "SGE R0.zw, R1, R2.z;\n"
180  "ADD R0.xy, R0, -R2.w;\n"
181  "SGE R1.xy, R3.z, R1;\n"
182  "MAD R0.xy, R1, R0, R2.w;\n"
183  "MAD R0.x, -R0, R0.z, R2.w;\n"
184  "SGE R0.z, R3.w, R4.x;\n"
185  "MAD R0.x, -R0.y, R0.w, R0;\n"
186  "MUL result.color, R0.x, R0.z;\n"
187  "END\n"
188  ;
189 
191  "!!ARBfp1.0\n"
192  "PARAM c[6] = { program.local[0..3],\n"
193  " { -2, 1, -0.5, 2 },\n"
194  " { 3 } };\n"
195  "TEMP R0;\n"
196  "TEMP R1;\n"
197  "TEMP R2;\n"
198  "ADD R0.xy, fragment.position, c[3];\n"
199  "MUL R1.xyz, R0.y, c[1];\n"
200  "MAD R0.xyz, R0.x, c[0], R1;\n"
201  "ADD R0.xyz, R0, c[2];\n"
202  "RCP R2.z, R0.z;\n"
203  "MUL R0.zw, R0.xyxy, R2.z;\n"
204  "MUL R2.xy, R0.zwzw, fragment.texcoord[0];\n"
205  "MOV R1.xy, c[0];\n"
206  "MOV R1.zw, c[1].xyxy;\n"
207  "MOV R0.x, c[0].z;\n"
208  "MOV R0.y, c[1].z;\n"
209  "MAD R0, R0.zzww, -R0.xyxy, R1.xzyw;\n"
210  "MUL R1.xy, R2, fragment.texcoord[0];\n"
211  "MUL R0, R2.z, R0;\n"
212  "MUL R1.xy, R1, c[4].x;\n"
213  "MUL R1.zw, R1.xyxy, R0.xyxz;\n"
214  "MUL R0.zw, R1.xyxy, R0.xyyw;\n"
215  "ADD R0.y, R0.z, R0.w;\n"
216  "ADD R0.x, R1.z, R1.w;\n"
217  "MUL R0.xy, R0, R0;\n"
218  "ADD R0.x, R0, R0.y;\n"
219  "MUL R0.zw, R2.xyxy, R2.xyxy;\n"
220  "ADD R0.z, R0, R0.w;\n"
221  "ADD R0.y, -R0.z, c[4];\n"
222  "RSQ R0.x, R0.x;\n"
223  "MAD_SAT R0.x, R0, R0.y, -c[4].z;\n"
224  "MUL R0.y, -R0.x, c[4].w;\n"
225  "ADD R0.y, R0, c[5].x;\n"
226  "MUL R0.x, R0, R0;\n"
227  "MUL result.color, R0.x, R0.y;\n"
228  "END\n"
229  ;
230 
232  "!!ARBfp1.0\n"
233  "PARAM c[7] = { program.local[0..5],\n"
234  " { 1 } };\n"
235  "TEMP R0;\n"
236  "TEMP R1;\n"
237  "TEMP R2;\n"
238  "TEMP R3;\n"
239  "MUL R0.xy, fragment.position, c[3];\n"
240  "TEX R0, R0, texture[0], 2D;\n"
241  "MUL R1.xyz, R0, c[0].y;\n"
242  "MUL R2.xyz, fragment.color.primary.w, R1;\n"
243  "MUL R1.xyz, fragment.color.primary, c[0].x;\n"
244  "MAD R2.xyz, R0.w, R1, R2;\n"
245  "ADD R3.xy, fragment.position, c[4];\n"
246  "ADD R1.w, -R0, c[6].x;\n"
247  "MUL R1.xyz, fragment.color.primary, c[1].y;\n"
248  "MAD R2.xyz, R1.w, R1, R2;\n"
249  "MUL R1.xyz, R0, c[1].z;\n"
250  "ADD R2.w, -fragment.color.primary, c[6].x;\n"
251  "MAD R2.xyz, R2.w, R1, R2;\n"
252  "MUL R1.z, R0.w, R2.w;\n"
253  "MUL R1.x, fragment.color.primary.w, R0.w;\n"
254  "MUL R1.y, fragment.color.primary.w, R1.w;\n"
255  "DP3 R2.w, R1, c[1];\n"
256  "MUL R3.xy, R3, c[2];\n"
257  "TEX R1, R3, texture[1], 2D;\n"
258  "ADD R2, R2, -R0;\n"
259  "DP4 R1.x, R1, c[5];\n"
260  "MAD result.color, R1.x, R2, R0;\n"
261  "END\n"
262  ;
263 
265  "!!ARBfp1.0\n"
266  "PARAM c[5] = { program.local[0..3],\n"
267  " { 1 } };\n"
268  "TEMP R0;\n"
269  "TEMP R1;\n"
270  "TEMP R2;\n"
271  "MUL R0.xy, fragment.position, c[1];\n"
272  "TEX R0, R0, texture[0], 2D;\n"
273  "ADD R1.x, -R0.w, c[4];\n"
274  "MUL R1.xyz, fragment.color.primary, R1.x;\n"
275  "MAD R1.xyz, fragment.color.primary, R0, R1;\n"
276  "ADD R1.w, -fragment.color.primary, c[4].x;\n"
277  "MAD R2.xyz, R0, R1.w, R1;\n"
278  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
279  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
280  "ADD R1.xy, fragment.position, c[2];\n"
281  "MUL R1.xy, R1, c[0];\n"
282  "TEX R1, R1, texture[1], 2D;\n"
283  "ADD R2, R2, -R0;\n"
284  "DP4 R1.x, R1, c[3];\n"
285  "MAD result.color, R1.x, R2, R0;\n"
286  "END\n"
287  ;
288 
290  "!!ARBfp1.0\n"
291  "PARAM c[4] = { program.local[0..3] };\n"
292  "TEMP R0;\n"
293  "TEMP R1;\n"
294  "TEMP R2;\n"
295  "MUL R0.xy, fragment.position, c[1];\n"
296  "TEX R0, R0, texture[0], 2D;\n"
297  "ADD R1.xy, fragment.position, c[2];\n"
298  "ADD R2, fragment.color.primary, R0;\n"
299  "MUL R1.xy, R1, c[0];\n"
300  "MAD R2, -fragment.color.primary, R0, R2;\n"
301  "TEX R1, R1, texture[1], 2D;\n"
302  "ADD R2, R2, -R0;\n"
303  "DP4 R1.x, R1, c[3];\n"
304  "MAD result.color, R1.x, R2, R0;\n"
305  "END\n"
306  ;
307 
309  "!!ARBfp1.0\n"
310  "PARAM c[5] = { program.local[0..3],\n"
311  " { 2, 1 } };\n"
312  "TEMP R0;\n"
313  "TEMP R1;\n"
314  "TEMP R2;\n"
315  "TEMP R3;\n"
316  "MUL R0.xy, fragment.position, c[1];\n"
317  "TEX R1, R0, texture[0], 2D;\n"
318  "ADD R0.w, -R1, c[4].y;\n"
319  "MUL R3.xyz, fragment.color.primary, R0.w;\n"
320  "ADD R2.xyz, fragment.color.primary.w, -fragment.color.primary;\n"
321  "ADD R0.xyz, R1.w, -R1;\n"
322  "MUL R0.xyz, R0, R2;\n"
323  "MUL R0.xyz, R0, c[4].x;\n"
324  "MAD R0.xyz, fragment.color.primary.w, R1.w, -R0;\n"
325  "MAD R0.xyz, fragment.color.primary, R0.w, R0;\n"
326  "MUL R2.xyz, fragment.color.primary, R1;\n"
327  "MAD R2.xyz, R2, c[4].x, R3;\n"
328  "ADD R0.w, -fragment.color.primary, c[4].y;\n"
329  "MAD R3.xyz, R1, R0.w, R0;\n"
330  "MAD R2.xyz, R1, R0.w, R2;\n"
331  "MUL R0.xyz, R1, c[4].x;\n"
332  "SGE R0.xyz, R0, R1.w;\n"
333  "ADD R3.xyz, R3, -R2;\n"
334  "MAD R2.xyz, R0, R3, R2;\n"
335  "ADD R0.z, fragment.color.primary.w, R1.w;\n"
336  "MAD R2.w, -fragment.color.primary, R1, R0.z;\n"
337  "ADD R0.xy, fragment.position, c[2];\n"
338  "MUL R0.xy, R0, c[0];\n"
339  "TEX R0, R0, texture[1], 2D;\n"
340  "ADD R2, R2, -R1;\n"
341  "DP4 R0.x, R0, c[3];\n"
342  "MAD result.color, R0.x, R2, R1;\n"
343  "END\n"
344  ;
345 
347  "!!ARBfp1.0\n"
348  "PARAM c[5] = { program.local[0..3],\n"
349  " { 1 } };\n"
350  "TEMP R0;\n"
351  "TEMP R1;\n"
352  "TEMP R2;\n"
353  "MUL R0.xy, fragment.position, c[1];\n"
354  "TEX R0, R0, texture[0], 2D;\n"
355  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
356  "MUL R1.xyz, fragment.color.primary, R0.w;\n"
357  "MIN R1.xyz, R1, R2;\n"
358  "ADD R1.w, -R0, c[4].x;\n"
359  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
360  "ADD R1.w, -fragment.color.primary, c[4].x;\n"
361  "MAD R2.xyz, R0, R1.w, R1;\n"
362  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
363  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
364  "ADD R1.xy, fragment.position, c[2];\n"
365  "MUL R1.xy, R1, c[0];\n"
366  "TEX R1, R1, texture[1], 2D;\n"
367  "ADD R2, R2, -R0;\n"
368  "DP4 R1.x, R1, c[3];\n"
369  "MAD result.color, R1.x, R2, R0;\n"
370  "END\n"
371  ;
372 
374  "!!ARBfp1.0\n"
375  "PARAM c[5] = { program.local[0..3],\n"
376  " { 1 } };\n"
377  "TEMP R0;\n"
378  "TEMP R1;\n"
379  "TEMP R2;\n"
380  "MUL R0.xy, fragment.position, c[1];\n"
381  "TEX R0, R0, texture[0], 2D;\n"
382  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
383  "MUL R1.xyz, fragment.color.primary, R0.w;\n"
384  "MAX R1.xyz, R1, R2;\n"
385  "ADD R1.w, -R0, c[4].x;\n"
386  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
387  "ADD R1.w, -fragment.color.primary, c[4].x;\n"
388  "MAD R2.xyz, R0, R1.w, R1;\n"
389  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
390  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
391  "ADD R1.xy, fragment.position, c[2];\n"
392  "MUL R1.xy, R1, c[0];\n"
393  "TEX R1, R1, texture[1], 2D;\n"
394  "ADD R2, R2, -R0;\n"
395  "DP4 R1.x, R1, c[3];\n"
396  "MAD result.color, R1.x, R2, R0;\n"
397  "END\n"
398  ;
399 
401  "!!ARBfp1.0\n"
402  "PARAM c[5] = { program.local[0..3],\n"
403  " { 1, 1e-006 } };\n"
404  "TEMP R0;\n"
405  "TEMP R1;\n"
406  "TEMP R2;\n"
407  "TEMP R3;\n"
408  "MUL R0.xy, fragment.position, c[1];\n"
409  "TEX R0, R0, texture[0], 2D;\n"
410  "ADD R1.x, -fragment.color.primary.w, c[4];\n"
411  "MAX R1.y, fragment.color.primary.w, c[4];\n"
412  "MUL R2.xyz, R0, R1.x;\n"
413  "ADD R1.w, -R0, c[4].x;\n"
414  "MAD R3.xyz, fragment.color.primary, R1.w, R2;\n"
415  "RCP R1.y, R1.y;\n"
416  "MAD R1.xyz, -fragment.color.primary, R1.y, c[4].x;\n"
417  "MAX R1.xyz, R1, c[4].y;\n"
418  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
419  "MUL R1.w, fragment.color.primary, R0;\n"
420  "RCP R1.x, R1.x;\n"
421  "RCP R1.y, R1.y;\n"
422  "RCP R1.z, R1.z;\n"
423  "MAD R1.xyz, R2, R1, R3;\n"
424  "MAD R3.xyz, fragment.color.primary.w, R0.w, R3;\n"
425  "MAD R2.xyz, fragment.color.primary, R0.w, R2;\n"
426  "ADD R3.xyz, R3, -R1;\n"
427  "SGE R2.xyz, R2, R1.w;\n"
428  "MAD R2.xyz, R2, R3, R1;\n"
429  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
430  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
431  "ADD R1.xy, fragment.position, c[2];\n"
432  "MUL R1.xy, R1, c[0];\n"
433  "TEX R1, R1, texture[1], 2D;\n"
434  "ADD R2, R2, -R0;\n"
435  "DP4 R1.x, R1, c[3];\n"
436  "MAD result.color, R1.x, R2, R0;\n"
437  "END\n"
438  ;
439 
441  "!!ARBfp1.0\n"
442  "PARAM c[5] = { program.local[0..3],\n"
443  " { 1, 9.9999997e-006 } };\n"
444  "TEMP R0;\n"
445  "TEMP R1;\n"
446  "TEMP R2;\n"
447  "TEMP R3;\n"
448  "TEMP R4;\n"
449  "MUL R0.xy, fragment.position, c[1];\n"
450  "TEX R0, R0, texture[0], 2D;\n"
451  "ADD R1.w, -R0, c[4].x;\n"
452  "MUL R1.xyz, fragment.color.primary.w, R0;\n"
453  "MAD R2.xyz, fragment.color.primary, R0.w, R1;\n"
454  "MAD R1.xyz, -fragment.color.primary.w, R0.w, R2;\n"
455  "MUL R3.xyz, fragment.color.primary.w, R1;\n"
456  "MAX R1.xyz, fragment.color.primary, c[4].y;\n"
457  "ADD R2.w, -fragment.color.primary, c[4].x;\n"
458  "MUL R4.xyz, fragment.color.primary, R1.w;\n"
459  "RCP R1.x, R1.x;\n"
460  "RCP R1.y, R1.y;\n"
461  "RCP R1.z, R1.z;\n"
462  "MAD R3.xyz, R3, R1, R4;\n"
463  "MUL R1.xyz, R0, R2.w;\n"
464  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
465  "MAD R3.xyz, R0, R2.w, R3;\n"
466  "MUL R1.w, fragment.color.primary, R0;\n"
467  "ADD R3.xyz, R3, -R1;\n"
468  "SGE R2.xyz, R2, R1.w;\n"
469  "MAD R2.xyz, R2, R3, R1;\n"
470  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
471  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
472  "ADD R1.xy, fragment.position, c[2];\n"
473  "MUL R1.xy, R1, c[0];\n"
474  "TEX R1, R1, texture[1], 2D;\n"
475  "ADD R2, R2, -R0;\n"
476  "DP4 R1.x, R1, c[3];\n"
477  "MAD result.color, R1.x, R2, R0;\n"
478  "END\n"
479  ;
480 
482  "!!ARBfp1.0\n"
483  "PARAM c[5] = { program.local[0..3],\n"
484  " { 2, 1 } };\n"
485  "TEMP R0;\n"
486  "TEMP R1;\n"
487  "TEMP R2;\n"
488  "TEMP R3;\n"
489  "MUL R0.xy, fragment.position, c[1];\n"
490  "TEX R1, R0, texture[0], 2D;\n"
491  "ADD R0.w, -R1, c[4].y;\n"
492  "MUL R3.xyz, fragment.color.primary, R0.w;\n"
493  "ADD R2.xyz, fragment.color.primary.w, -fragment.color.primary;\n"
494  "ADD R0.xyz, R1.w, -R1;\n"
495  "MUL R0.xyz, R0, R2;\n"
496  "MUL R0.xyz, R0, c[4].x;\n"
497  "MAD R0.xyz, fragment.color.primary.w, R1.w, -R0;\n"
498  "MAD R0.xyz, fragment.color.primary, R0.w, R0;\n"
499  "MUL R2.xyz, fragment.color.primary, R1;\n"
500  "MAD R2.xyz, R2, c[4].x, R3;\n"
501  "ADD R0.w, -fragment.color.primary, c[4].y;\n"
502  "MAD R3.xyz, R1, R0.w, R0;\n"
503  "MAD R2.xyz, R1, R0.w, R2;\n"
504  "MUL R0.xyz, fragment.color.primary, c[4].x;\n"
505  "SGE R0.xyz, R0, fragment.color.primary.w;\n"
506  "ADD R3.xyz, R3, -R2;\n"
507  "MAD R2.xyz, R0, R3, R2;\n"
508  "ADD R0.z, fragment.color.primary.w, R1.w;\n"
509  "MAD R2.w, -fragment.color.primary, R1, R0.z;\n"
510  "ADD R0.xy, fragment.position, c[2];\n"
511  "MUL R0.xy, R0, c[0];\n"
512  "TEX R0, R0, texture[1], 2D;\n"
513  "ADD R2, R2, -R1;\n"
514  "DP4 R0.x, R0, c[3];\n"
515  "MAD result.color, R0.x, R2, R1;\n"
516  "END\n"
517  ;
518 
520  "!!ARBfp1.0\n"
521  "PARAM c[6] = { program.local[0..3],\n"
522  " { 1, 2, 9.9999997e-006, 4 },\n"
523  " { 16, 12, 3 } };\n"
524  "TEMP R0;\n"
525  "TEMP R1;\n"
526  "TEMP R2;\n"
527  "TEMP R3;\n"
528  "TEMP R4;\n"
529  "TEMP R5;\n"
530  "MUL R0.xy, fragment.position, c[1];\n"
531  "TEX R0, R0, texture[0], 2D;\n"
532  "MAX R1.x, R0.w, c[4].z;\n"
533  "RCP R1.x, R1.x;\n"
534  "MUL R2.xyz, R0, R1.x;\n"
535  "MAD R1.xyz, R2, c[5].x, -c[5].y;\n"
536  "MAD R3.xyz, R2, R1, c[5].z;\n"
537  "MAD R1.xyz, fragment.color.primary, c[4].y, -fragment.color.primary.w;\n"
538  "MUL R4.xyz, R0.w, R1;\n"
539  "MUL R5.xyz, R4, R3;\n"
540  "RSQ R1.w, R2.x;\n"
541  "RSQ R2.w, R2.z;\n"
542  "RCP R3.x, R1.w;\n"
543  "RSQ R1.w, R2.y;\n"
544  "MUL R5.xyz, R2, R5;\n"
545  "RCP R3.z, R2.w;\n"
546  "RCP R3.y, R1.w;\n"
547  "ADD R3.xyz, -R2, R3;\n"
548  "MUL R3.xyz, R4, R3;\n"
549  "ADD R2.xyz, -R2, c[4].x;\n"
550  "MAD R1.xyz, R1, R2, fragment.color.primary.w;\n"
551  "MUL R2.xyz, fragment.color.primary, c[4].y;\n"
552  "MAD R4.xyz, fragment.color.primary.w, R0, R5;\n"
553  "MAD R3.xyz, fragment.color.primary.w, R0, R3;\n"
554  "ADD R5.xyz, R3, -R4;\n"
555  "MUL R3.xyz, R0, c[4].w;\n"
556  "SGE R3.xyz, R3, R0.w;\n"
557  "MAD R3.xyz, R3, R5, R4;\n"
558  "MAD R3.xyz, -R0, R1, R3;\n"
559  "MUL R1.xyz, R0, R1;\n"
560  "SGE R2.xyz, R2, fragment.color.primary.w;\n"
561  "MAD R2.xyz, R2, R3, R1;\n"
562  "ADD R1.x, -R0.w, c[4];\n"
563  "MAD R2.xyz, fragment.color.primary, R1.x, R2;\n"
564  "ADD R1.x, -fragment.color.primary.w, c[4];\n"
565  "MAD R2.xyz, R0, R1.x, R2;\n"
566  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
567  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
568  "ADD R1.xy, fragment.position, c[2];\n"
569  "MUL R1.xy, R1, c[0];\n"
570  "TEX R1, R1, texture[1], 2D;\n"
571  "ADD R2, R2, -R0;\n"
572  "DP4 R1.x, R1, c[3];\n"
573  "MAD result.color, R1.x, R2, R0;\n"
574  "END\n"
575  ;
576 
578  "!!ARBfp1.0\n"
579  "PARAM c[5] = { program.local[0..3],\n"
580  " { 2 } };\n"
581  "TEMP R0;\n"
582  "TEMP R1;\n"
583  "TEMP R2;\n"
584  "TEMP R3;\n"
585  "MUL R0.xy, fragment.position, c[1];\n"
586  "TEX R0, R0, texture[0], 2D;\n"
587  "ADD R1.xyz, fragment.color.primary, R0;\n"
588  "MUL R3.xyz, fragment.color.primary.w, R0;\n"
589  "MUL R2.xyz, fragment.color.primary, R0.w;\n"
590  "MIN R2.xyz, R2, R3;\n"
591  "MAD R2.xyz, -R2, c[4].x, R1;\n"
592  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
593  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
594  "ADD R1.xy, fragment.position, c[2];\n"
595  "MUL R1.xy, R1, c[0];\n"
596  "TEX R1, R1, texture[1], 2D;\n"
597  "ADD R2, R2, -R0;\n"
598  "DP4 R1.x, R1, c[3];\n"
599  "MAD result.color, R1.x, R2, R0;\n"
600  "END\n"
601  ;
602 
604  "!!ARBfp1.0\n"
605  "PARAM c[5] = { program.local[0..3],\n"
606  " { 2, 1 } };\n"
607  "TEMP R0;\n"
608  "TEMP R1;\n"
609  "TEMP R2;\n"
610  "MUL R0.xy, fragment.position, c[1];\n"
611  "TEX R0, R0, texture[0], 2D;\n"
612  "MUL R1.xyz, fragment.color.primary.w, R0;\n"
613  "MAD R2.xyz, fragment.color.primary, R0.w, R1;\n"
614  "MUL R1.xyz, fragment.color.primary, R0;\n"
615  "MAD R1.xyz, -R1, c[4].x, R2;\n"
616  "ADD R1.w, -R0, c[4].y;\n"
617  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
618  "ADD R1.w, -fragment.color.primary, c[4].y;\n"
619  "MAD R2.xyz, R0, R1.w, R1;\n"
620  "ADD R1.z, fragment.color.primary.w, R0.w;\n"
621  "MAD R2.w, -fragment.color.primary, R0, R1.z;\n"
622  "ADD R1.xy, fragment.position, c[2];\n"
623  "MUL R1.xy, R1, c[0];\n"
624  "TEX R1, R1, texture[1], 2D;\n"
625  "ADD R2, R2, -R0;\n"
626  "DP4 R1.x, R1, c[3];\n"
627  "MAD result.color, R1.x, R2, R0;\n"
628  "END\n"
629  ;
630 
632  "!!ARBfp1.0\n"
633  "PARAM c[4] = { program.local[0..2],\n"
634  " { 1 } };\n"
635  "TEMP R0;\n"
636  "TEMP R1;\n"
637  "TEMP R2;\n"
638  "MUL R0.xy, fragment.position, c[2];\n"
639  "TEX R0, R0, texture[0], 2D;\n"
640  "MUL R1.xyz, R0, c[0].y;\n"
641  "MUL R2.xyz, fragment.color.primary.w, R1;\n"
642  "MUL R1.xyz, fragment.color.primary, c[0].x;\n"
643  "MAD R2.xyz, R0.w, R1, R2;\n"
644  "MUL R0.xyz, R0, c[1].z;\n"
645  "ADD R1.w, -R0, c[3].x;\n"
646  "MUL R1.xyz, fragment.color.primary, c[1].y;\n"
647  "MAD R1.xyz, R1.w, R1, R2;\n"
648  "ADD R2.x, -fragment.color.primary.w, c[3];\n"
649  "MAD result.color.xyz, R2.x, R0, R1;\n"
650  "MUL R0.x, fragment.color.primary.w, R0.w;\n"
651  "MUL R0.z, R0.w, R2.x;\n"
652  "MUL R0.y, fragment.color.primary.w, R1.w;\n"
653  "DP3 result.color.w, R0, c[1];\n"
654  "END\n"
655  ;
656 
658  "!!ARBfp1.0\n"
659  "PARAM c[2] = { program.local[0],\n"
660  " { 1 } };\n"
661  "TEMP R0;\n"
662  "TEMP R1;\n"
663  "TEMP R2;\n"
664  "MUL R0.xy, fragment.position, c[0];\n"
665  "TEX R0, R0, texture[0], 2D;\n"
666  "ADD R1.x, -R0.w, c[1];\n"
667  "MUL R1.xyz, fragment.color.primary, R1.x;\n"
668  "ADD R1.w, fragment.color.primary, R0;\n"
669  "MAD R1.xyz, fragment.color.primary, R0, R1;\n"
670  "ADD R2.x, -fragment.color.primary.w, c[1];\n"
671  "MAD result.color.xyz, R0, R2.x, R1;\n"
672  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
673  "END\n"
674  ;
675 
677  "!!ARBfp1.0\n"
678  "PARAM c[1] = { program.local[0] };\n"
679  "TEMP R0;\n"
680  "TEMP R1;\n"
681  "MUL R0.xy, fragment.position, c[0];\n"
682  "TEX R0, R0, texture[0], 2D;\n"
683  "ADD R1, fragment.color.primary, R0;\n"
684  "MAD result.color, -fragment.color.primary, R0, R1;\n"
685  "END\n"
686  ;
687 
689  "!!ARBfp1.0\n"
690  "PARAM c[2] = { program.local[0],\n"
691  " { 2, 1 } };\n"
692  "TEMP R0;\n"
693  "TEMP R1;\n"
694  "TEMP R2;\n"
695  "TEMP R3;\n"
696  "MUL R0.xy, fragment.position, c[0];\n"
697  "TEX R0, R0, texture[0], 2D;\n"
698  "ADD R1.w, -R0, c[1].y;\n"
699  "ADD R2.xyz, fragment.color.primary.w, -fragment.color.primary;\n"
700  "ADD R1.xyz, R0.w, -R0;\n"
701  "MUL R1.xyz, R1, R2;\n"
702  "MUL R1.xyz, R1, c[1].x;\n"
703  "MAD R1.xyz, fragment.color.primary.w, R0.w, -R1;\n"
704  "MUL R3.xyz, fragment.color.primary, R1.w;\n"
705  "MUL R2.xyz, fragment.color.primary, R0;\n"
706  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
707  "ADD R1.w, -fragment.color.primary, c[1].y;\n"
708  "MAD R2.xyz, R2, c[1].x, R3;\n"
709  "MAD R2.xyz, R0, R1.w, R2;\n"
710  "MAD R1.xyz, R0, R1.w, R1;\n"
711  "MUL R0.xyz, R0, c[1].x;\n"
712  "ADD R1.w, fragment.color.primary, R0;\n"
713  "ADD R1.xyz, R1, -R2;\n"
714  "SGE R0.xyz, R0, R0.w;\n"
715  "MAD result.color.xyz, R0, R1, R2;\n"
716  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
717  "END\n"
718  ;
719 
721  "!!ARBfp1.0\n"
722  "PARAM c[2] = { program.local[0],\n"
723  " { 1 } };\n"
724  "TEMP R0;\n"
725  "TEMP R1;\n"
726  "TEMP R2;\n"
727  "MUL R0.xy, fragment.position, c[0];\n"
728  "TEX R0, R0, texture[0], 2D;\n"
729  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
730  "MUL R1.xyz, fragment.color.primary, R0.w;\n"
731  "MIN R1.xyz, R1, R2;\n"
732  "ADD R1.w, -R0, c[1].x;\n"
733  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
734  "ADD R1.w, fragment.color.primary, R0;\n"
735  "ADD R2.x, -fragment.color.primary.w, c[1];\n"
736  "MAD result.color.xyz, R0, R2.x, R1;\n"
737  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
738  "END\n"
739  ;
740 
742  "!!ARBfp1.0\n"
743  "PARAM c[2] = { program.local[0],\n"
744  " { 1 } };\n"
745  "TEMP R0;\n"
746  "TEMP R1;\n"
747  "TEMP R2;\n"
748  "MUL R0.xy, fragment.position, c[0];\n"
749  "TEX R0, R0, texture[0], 2D;\n"
750  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
751  "MUL R1.xyz, fragment.color.primary, R0.w;\n"
752  "MAX R1.xyz, R1, R2;\n"
753  "ADD R1.w, -R0, c[1].x;\n"
754  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
755  "ADD R1.w, fragment.color.primary, R0;\n"
756  "ADD R2.x, -fragment.color.primary.w, c[1];\n"
757  "MAD result.color.xyz, R0, R2.x, R1;\n"
758  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
759  "END\n"
760  ;
761 
763  "!!ARBfp1.0\n"
764  "PARAM c[2] = { program.local[0],\n"
765  " { 1, 1e-006 } };\n"
766  "TEMP R0;\n"
767  "TEMP R1;\n"
768  "TEMP R2;\n"
769  "MAX R1.y, fragment.color.primary.w, c[1];\n"
770  "RCP R2.x, R1.y;\n"
771  "MUL R0.xy, fragment.position, c[0];\n"
772  "TEX R0, R0, texture[0], 2D;\n"
773  "ADD R1.x, -fragment.color.primary.w, c[1];\n"
774  "MUL R1.xyz, R0, R1.x;\n"
775  "ADD R1.w, -R0, c[1].x;\n"
776  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
777  "MAD R2.xyz, -fragment.color.primary, R2.x, c[1].x;\n"
778  "MAX R2.xyz, R2, c[1].y;\n"
779  "MUL R0.xyz, fragment.color.primary.w, R0;\n"
780  "MUL R1.w, fragment.color.primary, R0;\n"
781  "RCP R2.x, R2.x;\n"
782  "RCP R2.y, R2.y;\n"
783  "RCP R2.z, R2.z;\n"
784  "MAD R2.xyz, R0, R2, R1;\n"
785  "MAD R1.xyz, fragment.color.primary.w, R0.w, R1;\n"
786  "MAD R0.xyz, fragment.color.primary, R0.w, R0;\n"
787  "SGE R0.xyz, R0, R1.w;\n"
788  "ADD R1.xyz, R1, -R2;\n"
789  "ADD R1.w, fragment.color.primary, R0;\n"
790  "MAD result.color.xyz, R0, R1, R2;\n"
791  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
792  "END\n"
793  ;
794 
796  "!!ARBfp1.0\n"
797  "PARAM c[2] = { program.local[0],\n"
798  " { 1, 9.9999997e-006 } };\n"
799  "TEMP R0;\n"
800  "TEMP R1;\n"
801  "TEMP R2;\n"
802  "TEMP R3;\n"
803  "TEMP R4;\n"
804  "MUL R0.xy, fragment.position, c[0];\n"
805  "TEX R0, R0, texture[0], 2D;\n"
806  "MUL R1.xyz, fragment.color.primary.w, R0;\n"
807  "MAD R2.xyz, fragment.color.primary, R0.w, R1;\n"
808  "MAD R1.xyz, -fragment.color.primary.w, R0.w, R2;\n"
809  "MUL R3.xyz, fragment.color.primary.w, R1;\n"
810  "MAX R1.xyz, fragment.color.primary, c[1].y;\n"
811  "ADD R1.w, -R0, c[1].x;\n"
812  "MUL R4.xyz, fragment.color.primary, R1.w;\n"
813  "ADD R2.w, -fragment.color.primary, c[1].x;\n"
814  "RCP R1.x, R1.x;\n"
815  "RCP R1.y, R1.y;\n"
816  "RCP R1.z, R1.z;\n"
817  "MAD R1.xyz, R3, R1, R4;\n"
818  "MUL R3.xyz, R0, R2.w;\n"
819  "MAD R0.xyz, R0, R2.w, R1;\n"
820  "MAD R1.xyz, fragment.color.primary, R1.w, R3;\n"
821  "MUL R1.w, fragment.color.primary, R0;\n"
822  "SGE R2.xyz, R2, R1.w;\n"
823  "ADD R0.xyz, R0, -R1;\n"
824  "ADD R1.w, fragment.color.primary, R0;\n"
825  "MAD result.color.xyz, R2, R0, R1;\n"
826  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
827  "END\n"
828  ;
829 
831  "!!ARBfp1.0\n"
832  "PARAM c[2] = { program.local[0],\n"
833  " { 2, 1 } };\n"
834  "TEMP R0;\n"
835  "TEMP R1;\n"
836  "TEMP R2;\n"
837  "TEMP R3;\n"
838  "MUL R0.xy, fragment.position, c[0];\n"
839  "TEX R0, R0, texture[0], 2D;\n"
840  "ADD R1.w, -R0, c[1].y;\n"
841  "ADD R2.xyz, fragment.color.primary.w, -fragment.color.primary;\n"
842  "ADD R1.xyz, R0.w, -R0;\n"
843  "MUL R1.xyz, R1, R2;\n"
844  "MUL R1.xyz, R1, c[1].x;\n"
845  "MAD R1.xyz, fragment.color.primary.w, R0.w, -R1;\n"
846  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
847  "MUL R3.xyz, fragment.color.primary, R1.w;\n"
848  "MUL R2.xyz, fragment.color.primary, R0;\n"
849  "ADD R1.w, -fragment.color.primary, c[1].y;\n"
850  "MAD R2.xyz, R2, c[1].x, R3;\n"
851  "MAD R2.xyz, R0, R1.w, R2;\n"
852  "MAD R0.xyz, R0, R1.w, R1;\n"
853  "ADD R1.xyz, R0, -R2;\n"
854  "MUL R0.xyz, fragment.color.primary, c[1].x;\n"
855  "ADD R1.w, fragment.color.primary, R0;\n"
856  "SGE R0.xyz, R0, fragment.color.primary.w;\n"
857  "MAD result.color.xyz, R0, R1, R2;\n"
858  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
859  "END\n"
860  ;
861 
863  "!!ARBfp1.0\n"
864  "PARAM c[3] = { program.local[0],\n"
865  " { 1, 2, 9.9999997e-006, 4 },\n"
866  " { 16, 12, 3 } };\n"
867  "TEMP R0;\n"
868  "TEMP R1;\n"
869  "TEMP R2;\n"
870  "TEMP R3;\n"
871  "TEMP R4;\n"
872  "TEMP R5;\n"
873  "MUL R0.xy, fragment.position, c[0];\n"
874  "TEX R0, R0, texture[0], 2D;\n"
875  "MAX R1.x, R0.w, c[1].z;\n"
876  "RCP R1.x, R1.x;\n"
877  "MUL R2.xyz, R0, R1.x;\n"
878  "MAD R1.xyz, R2, c[2].x, -c[2].y;\n"
879  "MAD R3.xyz, R2, R1, c[2].z;\n"
880  "MAD R1.xyz, fragment.color.primary, c[1].y, -fragment.color.primary.w;\n"
881  "MUL R4.xyz, R0.w, R1;\n"
882  "MUL R5.xyz, R4, R3;\n"
883  "RSQ R1.w, R2.x;\n"
884  "RCP R3.x, R1.w;\n"
885  "RSQ R2.w, R2.z;\n"
886  "RSQ R1.w, R2.y;\n"
887  "MUL R5.xyz, R2, R5;\n"
888  "RCP R3.z, R2.w;\n"
889  "RCP R3.y, R1.w;\n"
890  "ADD R3.xyz, -R2, R3;\n"
891  "MUL R3.xyz, R4, R3;\n"
892  "ADD R2.xyz, -R2, c[1].x;\n"
893  "MAD R1.xyz, R1, R2, fragment.color.primary.w;\n"
894  "MUL R2.xyz, fragment.color.primary, c[1].y;\n"
895  "MAD R4.xyz, fragment.color.primary.w, R0, R5;\n"
896  "MAD R3.xyz, fragment.color.primary.w, R0, R3;\n"
897  "ADD R5.xyz, R3, -R4;\n"
898  "MUL R3.xyz, R0, c[1].w;\n"
899  "SGE R3.xyz, R3, R0.w;\n"
900  "MAD R3.xyz, R3, R5, R4;\n"
901  "MAD R3.xyz, -R0, R1, R3;\n"
902  "MUL R1.xyz, R0, R1;\n"
903  "SGE R2.xyz, R2, fragment.color.primary.w;\n"
904  "MAD R2.xyz, R2, R3, R1;\n"
905  "ADD R1.x, -R0.w, c[1];\n"
906  "MAD R2.xyz, fragment.color.primary, R1.x, R2;\n"
907  "ADD R1.x, fragment.color.primary.w, R0.w;\n"
908  "ADD R1.y, -fragment.color.primary.w, c[1].x;\n"
909  "MAD result.color.xyz, R0, R1.y, R2;\n"
910  "MAD result.color.w, -fragment.color.primary, R0, R1.x;\n"
911  "END\n"
912  ;
913 
915  "!!ARBfp1.0\n"
916  "PARAM c[2] = { program.local[0],\n"
917  " { 2 } };\n"
918  "TEMP R0;\n"
919  "TEMP R1;\n"
920  "TEMP R2;\n"
921  "MUL R0.xy, fragment.position, c[0];\n"
922  "TEX R0, R0, texture[0], 2D;\n"
923  "MUL R2.xyz, fragment.color.primary.w, R0;\n"
924  "MUL R1.xyz, fragment.color.primary, R0.w;\n"
925  "ADD R1.w, fragment.color.primary, R0;\n"
926  "MIN R1.xyz, R1, R2;\n"
927  "ADD R0.xyz, fragment.color.primary, R0;\n"
928  "MAD result.color.xyz, -R1, c[1].x, R0;\n"
929  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
930  "END\n"
931  ;
932 
934  "!!ARBfp1.0\n"
935  "PARAM c[2] = { program.local[0],\n"
936  " { 2, 1 } };\n"
937  "TEMP R0;\n"
938  "TEMP R1;\n"
939  "TEMP R2;\n"
940  "MUL R0.xy, fragment.position, c[0];\n"
941  "TEX R0, R0, texture[0], 2D;\n"
942  "MUL R1.xyz, fragment.color.primary.w, R0;\n"
943  "MAD R2.xyz, fragment.color.primary, R0.w, R1;\n"
944  "MUL R1.xyz, fragment.color.primary, R0;\n"
945  "MAD R1.xyz, -R1, c[1].x, R2;\n"
946  "ADD R1.w, -R0, c[1].y;\n"
947  "MAD R1.xyz, fragment.color.primary, R1.w, R1;\n"
948  "ADD R1.w, fragment.color.primary, R0;\n"
949  "ADD R2.x, -fragment.color.primary.w, c[1].y;\n"
950  "MAD result.color.xyz, R0, R2.x, R1;\n"
951  "MAD result.color.w, -fragment.color.primary, R0, R1;\n"
952  "END\n"
953  ;
954 
956  "!!ARBfp1.0\n"
957  "PARAM c[3] = { program.local[0..2] };\n"
958  "TEMP R0;\n"
959  "ADD R0.xy, fragment.position, c[1];\n"
960  "MUL R0.xy, R0, c[0];\n"
961  "TEX R0, R0, texture[0], 2D;\n"
962  "DP4 R0.x, R0, c[2];\n"
963  "MUL result.color, fragment.color.primary, R0.x;\n"
964  "END\n"
965  ;
966 
968  "!!ARBfp1.0\n"
969  "MOV result.color, fragment.color.primary;\n"
970  "END\n"
971  ;
972 
974  "!!ARBfp1.0\n"
975  "PARAM c[12] = { program.local[0..10],\n"
976  " { 2, 4, 1 } };\n"
977  "TEMP R0;\n"
978  "TEMP R1;\n"
979  "TEMP R2;\n"
980  "TEMP R3;\n"
981  "MUL R0.xyz, fragment.position.y, c[3];\n"
982  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
983  "ADD R0.xyz, R0, c[4];\n"
984  "RCP R0.z, R0.z;\n"
985  "MUL R0.xy, R0, R0.z;\n"
986  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
987  "ADD R0.z, R0, R0.w;\n"
988  "MUL R0.xy, R0, c[0];\n"
989  "ADD R0.x, R0, R0.y;\n"
990  "MUL R0.z, -R0, c[1].x;\n"
991  "MUL R0.y, R0.x, c[11].x;\n"
992  "MUL R0.z, R0, c[11].y;\n"
993  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
994  "RSQ R0.x, R0.x;\n"
995  "RCP R0.z, R0.x;\n"
996  "ADD R1.x, -R0.y, R0.z;\n"
997  "MOV R0.x, c[11];\n"
998  "MUL R0.z, R0.x, c[1].x;\n"
999  "RCP R1.y, R0.z;\n"
1000  "MUL R0.xy, fragment.position, c[8];\n"
1001  "TEX R0, R0, texture[0], 2D;\n"
1002  "MUL R1.x, R1, R1.y;\n"
1003  "TEX R1, R1, texture[2], 1D;\n"
1004  "MUL R2.xyz, R0, c[5].y;\n"
1005  "MUL R3.xyz, R1.w, R2;\n"
1006  "MUL R2.xyz, R1, c[5].x;\n"
1007  "MAD R2.xyz, R0.w, R2, R3;\n"
1008  "ADD R3.xy, fragment.position, c[9];\n"
1009  "ADD R2.w, -R0, c[11].z;\n"
1010  "MUL R1.xyz, R1, c[6].y;\n"
1011  "MAD R2.xyz, R2.w, R1, R2;\n"
1012  "MUL R1.xyz, R0, c[6].z;\n"
1013  "ADD R3.z, -R1.w, c[11];\n"
1014  "MAD R2.xyz, R3.z, R1, R2;\n"
1015  "MUL R1.y, R1.w, R2.w;\n"
1016  "MUL R1.x, R1.w, R0.w;\n"
1017  "MUL R1.z, R0.w, R3;\n"
1018  "DP3 R2.w, R1, c[6];\n"
1019  "MUL R3.xy, R3, c[7];\n"
1020  "TEX R1, R3, texture[1], 2D;\n"
1021  "ADD R2, R2, -R0;\n"
1022  "DP4 R1.x, R1, c[10];\n"
1023  "MAD result.color, R1.x, R2, R0;\n"
1024  "END\n"
1025  ;
1026 
1028  "!!ARBfp1.0\n"
1029  "PARAM c[10] = { program.local[0..8],\n"
1030  " { 2, 4, 1 } };\n"
1031  "TEMP R0;\n"
1032  "TEMP R1;\n"
1033  "TEMP R2;\n"
1034  "MUL R0.xyz, fragment.position.y, c[3];\n"
1035  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1036  "ADD R0.xyz, R0, c[4];\n"
1037  "RCP R0.z, R0.z;\n"
1038  "MUL R0.xy, R0, R0.z;\n"
1039  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1040  "ADD R0.z, R0, R0.w;\n"
1041  "MUL R0.xy, R0, c[0];\n"
1042  "ADD R0.x, R0, R0.y;\n"
1043  "MUL R0.z, -R0, c[1].x;\n"
1044  "MUL R0.y, R0.x, c[9].x;\n"
1045  "MUL R0.z, R0, c[9].y;\n"
1046  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1047  "RSQ R0.x, R0.x;\n"
1048  "RCP R0.z, R0.x;\n"
1049  "ADD R1.x, -R0.y, R0.z;\n"
1050  "MOV R0.x, c[9];\n"
1051  "MUL R0.z, R0.x, c[1].x;\n"
1052  "RCP R1.y, R0.z;\n"
1053  "MUL R0.xy, fragment.position, c[6];\n"
1054  "TEX R0, R0, texture[0], 2D;\n"
1055  "MUL R1.x, R1, R1.y;\n"
1056  "TEX R1, R1, texture[2], 1D;\n"
1057  "ADD R2.x, -R0.w, c[9].z;\n"
1058  "MUL R2.xyz, R1, R2.x;\n"
1059  "MAD R1.xyz, R1, R0, R2;\n"
1060  "ADD R2.x, -R1.w, c[9].z;\n"
1061  "MAD R2.xyz, R0, R2.x, R1;\n"
1062  "ADD R1.z, R1.w, R0.w;\n"
1063  "MAD R2.w, -R1, R0, R1.z;\n"
1064  "ADD R1.xy, fragment.position, c[7];\n"
1065  "MUL R1.xy, R1, c[5];\n"
1066  "TEX R1, R1, texture[1], 2D;\n"
1067  "ADD R2, R2, -R0;\n"
1068  "DP4 R1.x, R1, c[8];\n"
1069  "MAD result.color, R1.x, R2, R0;\n"
1070  "END\n"
1071  ;
1072 
1074  "!!ARBfp1.0\n"
1075  "PARAM c[10] = { program.local[0..8],\n"
1076  " { 2, 4 } };\n"
1077  "TEMP R0;\n"
1078  "TEMP R1;\n"
1079  "TEMP R2;\n"
1080  "TEMP R3;\n"
1081  "MUL R0.xyz, fragment.position.y, c[3];\n"
1082  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1083  "ADD R0.xyz, R0, c[4];\n"
1084  "RCP R0.z, R0.z;\n"
1085  "MUL R0.xy, R0, R0.z;\n"
1086  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1087  "ADD R0.z, R0, R0.w;\n"
1088  "MUL R0.xy, R0, c[0];\n"
1089  "ADD R0.x, R0, R0.y;\n"
1090  "MUL R0.y, R0.x, c[9].x;\n"
1091  "MOV R0.x, c[9];\n"
1092  "MUL R0.z, -R0, c[1].x;\n"
1093  "MUL R0.z, R0, c[9].y;\n"
1094  "MAD R0.z, R0.y, R0.y, -R0;\n"
1095  "ADD R3.xy, fragment.position, c[7];\n"
1096  "MUL R0.w, R0.x, c[1].x;\n"
1097  "RSQ R0.z, R0.z;\n"
1098  "RCP R0.x, R0.z;\n"
1099  "RCP R0.z, R0.w;\n"
1100  "ADD R0.x, -R0.y, R0;\n"
1101  "MUL R0.z, R0.x, R0;\n"
1102  "TEX R1, R0.z, texture[2], 1D;\n"
1103  "MUL R0.xy, fragment.position, c[6];\n"
1104  "TEX R0, R0, texture[0], 2D;\n"
1105  "ADD R2, R1, R0;\n"
1106  "MAD R2, -R1, R0, R2;\n"
1107  "MUL R3.xy, R3, c[5];\n"
1108  "TEX R1, R3, texture[1], 2D;\n"
1109  "ADD R2, R2, -R0;\n"
1110  "DP4 R1.x, R1, c[8];\n"
1111  "MAD result.color, R1.x, R2, R0;\n"
1112  "END\n"
1113  ;
1114 
1116  "!!ARBfp1.0\n"
1117  "PARAM c[10] = { program.local[0..8],\n"
1118  " { 2, 4, 1 } };\n"
1119  "TEMP R0;\n"
1120  "TEMP R1;\n"
1121  "TEMP R2;\n"
1122  "TEMP R3;\n"
1123  "TEMP R4;\n"
1124  "MUL R0.xyz, fragment.position.y, c[3];\n"
1125  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1126  "ADD R0.xyz, R0, c[4];\n"
1127  "RCP R0.z, R0.z;\n"
1128  "MUL R0.xy, R0, R0.z;\n"
1129  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1130  "ADD R0.z, R0, R0.w;\n"
1131  "MUL R0.xy, R0, c[0];\n"
1132  "ADD R0.x, R0, R0.y;\n"
1133  "MUL R0.y, R0.x, c[9].x;\n"
1134  "MOV R0.x, c[9];\n"
1135  "MUL R0.z, -R0, c[1].x;\n"
1136  "MUL R0.z, R0, c[9].y;\n"
1137  "MAD R0.z, R0.y, R0.y, -R0;\n"
1138  "MUL R1.xy, fragment.position, c[6];\n"
1139  "TEX R1, R1, texture[0], 2D;\n"
1140  "MUL R0.w, R0.x, c[1].x;\n"
1141  "RSQ R0.z, R0.z;\n"
1142  "RCP R0.x, R0.z;\n"
1143  "ADD R2.w, -R1, c[9].z;\n"
1144  "RCP R0.z, R0.w;\n"
1145  "ADD R0.x, -R0.y, R0;\n"
1146  "MUL R0.x, R0, R0.z;\n"
1147  "TEX R0, R0, texture[2], 1D;\n"
1148  "ADD R3.xyz, R0.w, -R0;\n"
1149  "ADD R2.xyz, R1.w, -R1;\n"
1150  "MUL R2.xyz, R2, R3;\n"
1151  "MUL R2.xyz, R2, c[9].x;\n"
1152  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
1153  "MUL R4.xyz, R0, R2.w;\n"
1154  "MUL R3.xyz, R0, R1;\n"
1155  "MAD R0.xyz, R0, R2.w, R2;\n"
1156  "ADD R2.x, -R0.w, c[9].z;\n"
1157  "MAD R3.xyz, R3, c[9].x, R4;\n"
1158  "MAD R3.xyz, R1, R2.x, R3;\n"
1159  "MAD R0.xyz, R1, R2.x, R0;\n"
1160  "MUL R2.xyz, R1, c[9].x;\n"
1161  "ADD R0.xyz, R0, -R3;\n"
1162  "SGE R2.xyz, R2, R1.w;\n"
1163  "MAD R2.xyz, R2, R0, R3;\n"
1164  "ADD R0.z, R0.w, R1.w;\n"
1165  "MAD R2.w, -R0, R1, R0.z;\n"
1166  "ADD R0.xy, fragment.position, c[7];\n"
1167  "MUL R0.xy, R0, c[5];\n"
1168  "TEX R0, R0, texture[1], 2D;\n"
1169  "ADD R2, R2, -R1;\n"
1170  "DP4 R0.x, R0, c[8];\n"
1171  "MAD result.color, R0.x, R2, R1;\n"
1172  "END\n"
1173  ;
1174 
1176  "!!ARBfp1.0\n"
1177  "PARAM c[10] = { program.local[0..8],\n"
1178  " { 2, 4, 1 } };\n"
1179  "TEMP R0;\n"
1180  "TEMP R1;\n"
1181  "TEMP R2;\n"
1182  "TEMP R3;\n"
1183  "MUL R0.xyz, fragment.position.y, c[3];\n"
1184  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1185  "ADD R0.xyz, R0, c[4];\n"
1186  "RCP R0.z, R0.z;\n"
1187  "MUL R0.xy, R0, R0.z;\n"
1188  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1189  "ADD R0.z, R0, R0.w;\n"
1190  "MUL R0.xy, R0, c[0];\n"
1191  "ADD R0.x, R0, R0.y;\n"
1192  "MUL R0.z, -R0, c[1].x;\n"
1193  "MUL R0.y, R0.x, c[9].x;\n"
1194  "MUL R0.z, R0, c[9].y;\n"
1195  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1196  "RSQ R0.z, R0.x;\n"
1197  "MOV R0.x, c[9];\n"
1198  "MUL R0.x, R0, c[1];\n"
1199  "RCP R0.z, R0.z;\n"
1200  "ADD R0.z, -R0.y, R0;\n"
1201  "RCP R0.w, R0.x;\n"
1202  "MUL R1.x, R0.z, R0.w;\n"
1203  "MUL R0.xy, fragment.position, c[6];\n"
1204  "TEX R0, R0, texture[0], 2D;\n"
1205  "TEX R1, R1, texture[2], 1D;\n"
1206  "MUL R3.xyz, R1.w, R0;\n"
1207  "MUL R2.xyz, R1, R0.w;\n"
1208  "MIN R2.xyz, R2, R3;\n"
1209  "ADD R2.w, -R0, c[9].z;\n"
1210  "MAD R1.xyz, R1, R2.w, R2;\n"
1211  "ADD R2.x, -R1.w, c[9].z;\n"
1212  "MAD R2.xyz, R0, R2.x, R1;\n"
1213  "ADD R1.z, R1.w, R0.w;\n"
1214  "MAD R2.w, -R1, R0, R1.z;\n"
1215  "ADD R1.xy, fragment.position, c[7];\n"
1216  "MUL R1.xy, R1, c[5];\n"
1217  "TEX R1, R1, texture[1], 2D;\n"
1218  "ADD R2, R2, -R0;\n"
1219  "DP4 R1.x, R1, c[8];\n"
1220  "MAD result.color, R1.x, R2, R0;\n"
1221  "END\n"
1222  ;
1223 
1225  "!!ARBfp1.0\n"
1226  "PARAM c[10] = { program.local[0..8],\n"
1227  " { 2, 4, 1 } };\n"
1228  "TEMP R0;\n"
1229  "TEMP R1;\n"
1230  "TEMP R2;\n"
1231  "TEMP R3;\n"
1232  "MUL R0.xyz, fragment.position.y, c[3];\n"
1233  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1234  "ADD R0.xyz, R0, c[4];\n"
1235  "RCP R0.z, R0.z;\n"
1236  "MUL R0.xy, R0, R0.z;\n"
1237  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1238  "ADD R0.z, R0, R0.w;\n"
1239  "MUL R0.xy, R0, c[0];\n"
1240  "ADD R0.x, R0, R0.y;\n"
1241  "MUL R0.z, -R0, c[1].x;\n"
1242  "MUL R0.y, R0.x, c[9].x;\n"
1243  "MUL R0.z, R0, c[9].y;\n"
1244  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1245  "RSQ R0.z, R0.x;\n"
1246  "MOV R0.x, c[9];\n"
1247  "MUL R0.x, R0, c[1];\n"
1248  "RCP R0.z, R0.z;\n"
1249  "ADD R0.z, -R0.y, R0;\n"
1250  "RCP R0.w, R0.x;\n"
1251  "MUL R1.x, R0.z, R0.w;\n"
1252  "MUL R0.xy, fragment.position, c[6];\n"
1253  "TEX R0, R0, texture[0], 2D;\n"
1254  "TEX R1, R1, texture[2], 1D;\n"
1255  "MUL R3.xyz, R1.w, R0;\n"
1256  "MUL R2.xyz, R1, R0.w;\n"
1257  "MAX R2.xyz, R2, R3;\n"
1258  "ADD R2.w, -R0, c[9].z;\n"
1259  "MAD R1.xyz, R1, R2.w, R2;\n"
1260  "ADD R2.x, -R1.w, c[9].z;\n"
1261  "MAD R2.xyz, R0, R2.x, R1;\n"
1262  "ADD R1.z, R1.w, R0.w;\n"
1263  "MAD R2.w, -R1, R0, R1.z;\n"
1264  "ADD R1.xy, fragment.position, c[7];\n"
1265  "MUL R1.xy, R1, c[5];\n"
1266  "TEX R1, R1, texture[1], 2D;\n"
1267  "ADD R2, R2, -R0;\n"
1268  "DP4 R1.x, R1, c[8];\n"
1269  "MAD result.color, R1.x, R2, R0;\n"
1270  "END\n"
1271  ;
1272 
1274  "!!ARBfp1.0\n"
1275  "PARAM c[10] = { program.local[0..8],\n"
1276  " { 2, 4, 1, 1e-006 } };\n"
1277  "TEMP R0;\n"
1278  "TEMP R1;\n"
1279  "TEMP R2;\n"
1280  "TEMP R3;\n"
1281  "TEMP R4;\n"
1282  "MUL R0.xyz, fragment.position.y, c[3];\n"
1283  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1284  "ADD R0.xyz, R0, c[4];\n"
1285  "RCP R0.z, R0.z;\n"
1286  "MUL R0.xy, R0, R0.z;\n"
1287  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1288  "ADD R0.z, R0, R0.w;\n"
1289  "MUL R0.xy, R0, c[0];\n"
1290  "ADD R0.x, R0, R0.y;\n"
1291  "MUL R0.y, R0.x, c[9].x;\n"
1292  "MOV R0.x, c[9];\n"
1293  "MUL R0.z, -R0, c[1].x;\n"
1294  "MUL R0.z, R0, c[9].y;\n"
1295  "MAD R0.z, R0.y, R0.y, -R0;\n"
1296  "MUL R0.w, R0.x, c[1].x;\n"
1297  "RSQ R0.z, R0.z;\n"
1298  "RCP R0.x, R0.z;\n"
1299  "RCP R0.z, R0.w;\n"
1300  "ADD R0.x, -R0.y, R0;\n"
1301  "MUL R0.x, R0, R0.z;\n"
1302  "TEX R0, R0, texture[2], 1D;\n"
1303  "MAX R1.x, R0.w, c[9].w;\n"
1304  "RCP R1.x, R1.x;\n"
1305  "MAD R1.xyz, -R0, R1.x, c[9].z;\n"
1306  "MAX R2.xyz, R1, c[9].w;\n"
1307  "MUL R1.xy, fragment.position, c[6];\n"
1308  "TEX R1, R1, texture[0], 2D;\n"
1309  "ADD R2.w, -R0, c[9].z;\n"
1310  "MUL R3.xyz, R1, R2.w;\n"
1311  "ADD R2.w, -R1, c[9].z;\n"
1312  "MAD R4.xyz, R0, R2.w, R3;\n"
1313  "MUL R3.xyz, R0.w, R1;\n"
1314  "MUL R2.w, R0, R1;\n"
1315  "MAD R0.xyz, R0, R1.w, R3;\n"
1316  "SGE R0.xyz, R0, R2.w;\n"
1317  "RCP R2.x, R2.x;\n"
1318  "RCP R2.y, R2.y;\n"
1319  "RCP R2.z, R2.z;\n"
1320  "MAD R2.xyz, R3, R2, R4;\n"
1321  "MAD R4.xyz, R0.w, R1.w, R4;\n"
1322  "ADD R4.xyz, R4, -R2;\n"
1323  "MAD R2.xyz, R0, R4, R2;\n"
1324  "ADD R0.z, R0.w, R1.w;\n"
1325  "MAD R2.w, -R0, R1, R0.z;\n"
1326  "ADD R0.xy, fragment.position, c[7];\n"
1327  "MUL R0.xy, R0, c[5];\n"
1328  "TEX R0, R0, texture[1], 2D;\n"
1329  "ADD R2, R2, -R1;\n"
1330  "DP4 R0.x, R0, c[8];\n"
1331  "MAD result.color, R0.x, R2, R1;\n"
1332  "END\n"
1333  ;
1334 
1336  "!!ARBfp1.0\n"
1337  "PARAM c[10] = { program.local[0..8],\n"
1338  " { 2, 4, 1, 9.9999997e-006 } };\n"
1339  "TEMP R0;\n"
1340  "TEMP R1;\n"
1341  "TEMP R2;\n"
1342  "TEMP R3;\n"
1343  "TEMP R4;\n"
1344  "TEMP R5;\n"
1345  "MUL R0.xyz, fragment.position.y, c[3];\n"
1346  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1347  "ADD R0.xyz, R0, c[4];\n"
1348  "RCP R0.z, R0.z;\n"
1349  "MUL R0.xy, R0, R0.z;\n"
1350  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1351  "ADD R0.z, R0, R0.w;\n"
1352  "MUL R0.xy, R0, c[0];\n"
1353  "ADD R0.x, R0, R0.y;\n"
1354  "MUL R0.z, -R0, c[1].x;\n"
1355  "MUL R0.y, R0.x, c[9].x;\n"
1356  "MUL R0.z, R0, c[9].y;\n"
1357  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1358  "RSQ R0.z, R0.x;\n"
1359  "MOV R0.x, c[9];\n"
1360  "MUL R0.w, R0.x, c[1].x;\n"
1361  "RCP R0.z, R0.z;\n"
1362  "ADD R0.x, -R0.y, R0.z;\n"
1363  "RCP R0.y, R0.w;\n"
1364  "MUL R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
1365  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1366  "MUL R0.x, R0, R0.y;\n"
1367  "TEX R0, R0, texture[2], 1D;\n"
1368  "MUL R2.xyz, R0.w, R1;\n"
1369  "MAD R3.xyz, R0, R1.w, R2;\n"
1370  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
1371  "MUL R4.xyz, R0.w, R2;\n"
1372  "MAX R2.xyz, R0, c[9].w;\n"
1373  "ADD R2.w, -R1, c[9].z;\n"
1374  "MUL R5.xyz, R0, R2.w;\n"
1375  "ADD R3.w, -R0, c[9].z;\n"
1376  "RCP R2.x, R2.x;\n"
1377  "RCP R2.y, R2.y;\n"
1378  "RCP R2.z, R2.z;\n"
1379  "MAD R2.xyz, R4, R2, R5;\n"
1380  "MUL R4.xyz, R1, R3.w;\n"
1381  "MAD R0.xyz, R0, R2.w, R4;\n"
1382  "MUL R2.w, R0, R1;\n"
1383  "MAD R2.xyz, R1, R3.w, R2;\n"
1384  "ADD R2.xyz, R2, -R0;\n"
1385  "SGE R3.xyz, R3, R2.w;\n"
1386  "MAD R2.xyz, R3, R2, R0;\n"
1387  "ADD R0.z, R0.w, R1.w;\n"
1388  "MAD R2.w, -R0, R1, R0.z;\n"
1389  "ADD R0.xy, fragment.position, c[7];\n"
1390  "MUL R0.xy, R0, c[5];\n"
1391  "TEX R0, R0, texture[1], 2D;\n"
1392  "ADD R2, R2, -R1;\n"
1393  "DP4 R0.x, R0, c[8];\n"
1394  "MAD result.color, R0.x, R2, R1;\n"
1395  "END\n"
1396  ;
1397 
1399  "!!ARBfp1.0\n"
1400  "PARAM c[10] = { program.local[0..8],\n"
1401  " { 2, 4, 1 } };\n"
1402  "TEMP R0;\n"
1403  "TEMP R1;\n"
1404  "TEMP R2;\n"
1405  "TEMP R3;\n"
1406  "TEMP R4;\n"
1407  "MUL R0.xyz, fragment.position.y, c[3];\n"
1408  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1409  "ADD R0.xyz, R0, c[4];\n"
1410  "RCP R0.z, R0.z;\n"
1411  "MUL R0.xy, R0, R0.z;\n"
1412  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1413  "ADD R0.z, R0, R0.w;\n"
1414  "MUL R0.xy, R0, c[0];\n"
1415  "ADD R0.x, R0, R0.y;\n"
1416  "MUL R0.y, R0.x, c[9].x;\n"
1417  "MOV R0.x, c[9];\n"
1418  "MUL R0.z, -R0, c[1].x;\n"
1419  "MUL R0.z, R0, c[9].y;\n"
1420  "MAD R0.z, R0.y, R0.y, -R0;\n"
1421  "MUL R1.xy, fragment.position, c[6];\n"
1422  "TEX R1, R1, texture[0], 2D;\n"
1423  "MUL R0.w, R0.x, c[1].x;\n"
1424  "RSQ R0.z, R0.z;\n"
1425  "RCP R0.x, R0.z;\n"
1426  "ADD R2.w, -R1, c[9].z;\n"
1427  "RCP R0.z, R0.w;\n"
1428  "ADD R0.x, -R0.y, R0;\n"
1429  "MUL R0.x, R0, R0.z;\n"
1430  "TEX R0, R0, texture[2], 1D;\n"
1431  "ADD R3.xyz, R0.w, -R0;\n"
1432  "ADD R2.xyz, R1.w, -R1;\n"
1433  "MUL R2.xyz, R2, R3;\n"
1434  "MUL R2.xyz, R2, c[9].x;\n"
1435  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
1436  "MUL R4.xyz, R0, R2.w;\n"
1437  "MAD R2.xyz, R0, R2.w, R2;\n"
1438  "MUL R3.xyz, R0, R1;\n"
1439  "ADD R2.w, -R0, c[9].z;\n"
1440  "MAD R3.xyz, R3, c[9].x, R4;\n"
1441  "MUL R0.xyz, R0, c[9].x;\n"
1442  "SGE R0.xyz, R0, R0.w;\n"
1443  "MAD R3.xyz, R1, R2.w, R3;\n"
1444  "MAD R2.xyz, R1, R2.w, R2;\n"
1445  "ADD R2.xyz, R2, -R3;\n"
1446  "MAD R2.xyz, R0, R2, R3;\n"
1447  "ADD R0.z, R0.w, R1.w;\n"
1448  "MAD R2.w, -R0, R1, R0.z;\n"
1449  "ADD R0.xy, fragment.position, c[7];\n"
1450  "MUL R0.xy, R0, c[5];\n"
1451  "TEX R0, R0, texture[1], 2D;\n"
1452  "ADD R2, R2, -R1;\n"
1453  "DP4 R0.x, R0, c[8];\n"
1454  "MAD result.color, R0.x, R2, R1;\n"
1455  "END\n"
1456  ;
1457 
1459  "!!ARBfp1.0\n"
1460  "PARAM c[11] = { program.local[0..8],\n"
1461  " { 2, 4, 1, 9.9999997e-006 },\n"
1462  " { 16, 12, 3 } };\n"
1463  "TEMP R0;\n"
1464  "TEMP R1;\n"
1465  "TEMP R2;\n"
1466  "TEMP R3;\n"
1467  "TEMP R4;\n"
1468  "TEMP R5;\n"
1469  "TEMP R6;\n"
1470  "MUL R0.xyz, fragment.position.y, c[3];\n"
1471  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1472  "ADD R0.xyz, R0, c[4];\n"
1473  "RCP R0.z, R0.z;\n"
1474  "MUL R0.xy, R0, R0.z;\n"
1475  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1476  "ADD R0.z, R0, R0.w;\n"
1477  "MUL R0.xy, R0, c[0];\n"
1478  "ADD R0.x, R0, R0.y;\n"
1479  "MUL R0.z, -R0, c[1].x;\n"
1480  "MUL R0.y, R0.z, c[9];\n"
1481  "MUL R0.x, R0, c[9];\n"
1482  "MUL R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
1483  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1484  "MAD R0.y, R0.x, R0.x, -R0;\n"
1485  "RSQ R0.y, R0.y;\n"
1486  "RCP R0.y, R0.y;\n"
1487  "ADD R0.y, -R0.x, R0;\n"
1488  "MOV R0.x, c[9];\n"
1489  "MUL R0.x, R0, c[1];\n"
1490  "MAX R0.z, R1.w, c[9].w;\n"
1491  "RCP R0.z, R0.z;\n"
1492  "MUL R3.xyz, R1, R0.z;\n"
1493  "MAD R4.xyz, R3, c[10].x, -c[10].y;\n"
1494  "RCP R0.x, R0.x;\n"
1495  "MUL R0.x, R0.y, R0;\n"
1496  "TEX R0, R0, texture[2], 1D;\n"
1497  "MAD R2.xyz, R0, c[9].x, -R0.w;\n"
1498  "MAD R4.xyz, R3, R4, c[10].z;\n"
1499  "MUL R5.xyz, R1.w, R2;\n"
1500  "MUL R6.xyz, R5, R4;\n"
1501  "RSQ R2.w, R3.x;\n"
1502  "RCP R4.x, R2.w;\n"
1503  "RSQ R2.w, R3.y;\n"
1504  "RSQ R3.w, R3.z;\n"
1505  "RCP R4.y, R2.w;\n"
1506  "RCP R4.z, R3.w;\n"
1507  "ADD R4.xyz, -R3, R4;\n"
1508  "MUL R6.xyz, R3, R6;\n"
1509  "MUL R4.xyz, R5, R4;\n"
1510  "ADD R3.xyz, -R3, c[9].z;\n"
1511  "MAD R2.xyz, R2, R3, R0.w;\n"
1512  "MUL R3.xyz, R0, c[9].x;\n"
1513  "MAD R5.xyz, R0.w, R1, R6;\n"
1514  "MAD R4.xyz, R0.w, R1, R4;\n"
1515  "ADD R6.xyz, R4, -R5;\n"
1516  "MUL R4.xyz, R1, c[9].y;\n"
1517  "SGE R4.xyz, R4, R1.w;\n"
1518  "MAD R4.xyz, R4, R6, R5;\n"
1519  "MAD R4.xyz, -R1, R2, R4;\n"
1520  "SGE R3.xyz, R3, R0.w;\n"
1521  "MUL R2.xyz, R1, R2;\n"
1522  "ADD R2.w, -R1, c[9].z;\n"
1523  "MAD R2.xyz, R3, R4, R2;\n"
1524  "MAD R2.xyz, R0, R2.w, R2;\n"
1525  "ADD R0.x, -R0.w, c[9].z;\n"
1526  "MAD R2.xyz, R1, R0.x, R2;\n"
1527  "ADD R0.z, R0.w, R1.w;\n"
1528  "MAD R2.w, -R0, R1, R0.z;\n"
1529  "ADD R0.xy, fragment.position, c[7];\n"
1530  "MUL R0.xy, R0, c[5];\n"
1531  "TEX R0, R0, texture[1], 2D;\n"
1532  "ADD R2, R2, -R1;\n"
1533  "DP4 R0.x, R0, c[8];\n"
1534  "MAD result.color, R0.x, R2, R1;\n"
1535  "END\n"
1536  ;
1537 
1539  "!!ARBfp1.0\n"
1540  "PARAM c[10] = { program.local[0..8],\n"
1541  " { 2, 4 } };\n"
1542  "TEMP R0;\n"
1543  "TEMP R1;\n"
1544  "TEMP R2;\n"
1545  "TEMP R3;\n"
1546  "MUL R0.xyz, fragment.position.y, c[3];\n"
1547  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1548  "ADD R0.xyz, R0, c[4];\n"
1549  "RCP R0.z, R0.z;\n"
1550  "MUL R0.xy, R0, R0.z;\n"
1551  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1552  "ADD R0.z, R0, R0.w;\n"
1553  "MUL R0.xy, R0, c[0];\n"
1554  "ADD R0.x, R0, R0.y;\n"
1555  "MUL R0.z, -R0, c[1].x;\n"
1556  "MUL R0.y, R0.x, c[9].x;\n"
1557  "MUL R0.z, R0, c[9].y;\n"
1558  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1559  "RSQ R0.z, R0.x;\n"
1560  "MOV R0.x, c[9];\n"
1561  "MUL R0.x, R0, c[1];\n"
1562  "RCP R0.z, R0.z;\n"
1563  "ADD R0.z, -R0.y, R0;\n"
1564  "RCP R0.w, R0.x;\n"
1565  "MUL R1.x, R0.z, R0.w;\n"
1566  "MUL R0.xy, fragment.position, c[6];\n"
1567  "TEX R0, R0, texture[0], 2D;\n"
1568  "TEX R1, R1, texture[2], 1D;\n"
1569  "ADD R2.xyz, R1, R0;\n"
1570  "MUL R3.xyz, R1.w, R0;\n"
1571  "MUL R1.xyz, R1, R0.w;\n"
1572  "MIN R1.xyz, R1, R3;\n"
1573  "MAD R2.xyz, -R1, c[9].x, R2;\n"
1574  "ADD R1.z, R1.w, R0.w;\n"
1575  "MAD R2.w, -R1, R0, R1.z;\n"
1576  "ADD R1.xy, fragment.position, c[7];\n"
1577  "MUL R1.xy, R1, c[5];\n"
1578  "TEX R1, R1, texture[1], 2D;\n"
1579  "ADD R2, R2, -R0;\n"
1580  "DP4 R1.x, R1, c[8];\n"
1581  "MAD result.color, R1.x, R2, R0;\n"
1582  "END\n"
1583  ;
1584 
1586  "!!ARBfp1.0\n"
1587  "PARAM c[10] = { program.local[0..8],\n"
1588  " { 2, 4, 1 } };\n"
1589  "TEMP R0;\n"
1590  "TEMP R1;\n"
1591  "TEMP R2;\n"
1592  "TEMP R3;\n"
1593  "MUL R0.xyz, fragment.position.y, c[3];\n"
1594  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1595  "ADD R0.xyz, R0, c[4];\n"
1596  "RCP R0.z, R0.z;\n"
1597  "MUL R0.xy, R0, R0.z;\n"
1598  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1599  "ADD R0.z, R0, R0.w;\n"
1600  "MUL R0.xy, R0, c[0];\n"
1601  "ADD R0.x, R0, R0.y;\n"
1602  "MUL R0.z, -R0, c[1].x;\n"
1603  "MUL R0.y, R0.x, c[9].x;\n"
1604  "MUL R0.z, R0, c[9].y;\n"
1605  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1606  "RSQ R0.z, R0.x;\n"
1607  "MOV R0.x, c[9];\n"
1608  "MUL R0.x, R0, c[1];\n"
1609  "RCP R0.z, R0.z;\n"
1610  "ADD R0.z, -R0.y, R0;\n"
1611  "RCP R0.w, R0.x;\n"
1612  "MUL R1.x, R0.z, R0.w;\n"
1613  "MUL R0.xy, fragment.position, c[6];\n"
1614  "TEX R0, R0, texture[0], 2D;\n"
1615  "TEX R1, R1, texture[2], 1D;\n"
1616  "MUL R2.xyz, R1.w, R0;\n"
1617  "MAD R3.xyz, R1, R0.w, R2;\n"
1618  "MUL R2.xyz, R1, R0;\n"
1619  "MAD R2.xyz, -R2, c[9].x, R3;\n"
1620  "ADD R2.w, -R0, c[9].z;\n"
1621  "MAD R1.xyz, R1, R2.w, R2;\n"
1622  "ADD R2.x, -R1.w, c[9].z;\n"
1623  "MAD R2.xyz, R0, R2.x, R1;\n"
1624  "ADD R1.z, R1.w, R0.w;\n"
1625  "MAD R2.w, -R1, R0, R1.z;\n"
1626  "ADD R1.xy, fragment.position, c[7];\n"
1627  "MUL R1.xy, R1, c[5];\n"
1628  "TEX R1, R1, texture[1], 2D;\n"
1629  "ADD R2, R2, -R0;\n"
1630  "DP4 R1.x, R1, c[8];\n"
1631  "MAD result.color, R1.x, R2, R0;\n"
1632  "END\n"
1633  ;
1634 
1636  "!!ARBfp1.0\n"
1637  "PARAM c[9] = { program.local[0..7],\n"
1638  " { 2, 4, 1 } };\n"
1639  "TEMP R0;\n"
1640  "TEMP R1;\n"
1641  "TEMP R2;\n"
1642  "TEMP R3;\n"
1643  "MUL R0.xyz, fragment.position.y, c[3];\n"
1644  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1645  "ADD R0.xyz, R0, c[4];\n"
1646  "RCP R0.z, R0.z;\n"
1647  "MUL R0.xy, R0, R0.z;\n"
1648  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1649  "ADD R0.z, R0, R0.w;\n"
1650  "MUL R0.xy, R0, c[0];\n"
1651  "ADD R0.x, R0, R0.y;\n"
1652  "MUL R0.z, -R0, c[1].x;\n"
1653  "MUL R0.y, R0.x, c[8].x;\n"
1654  "MUL R0.z, R0, c[8].y;\n"
1655  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1656  "RSQ R0.x, R0.x;\n"
1657  "RCP R0.z, R0.x;\n"
1658  "ADD R0.y, -R0, R0.z;\n"
1659  "MUL R0.zw, fragment.position.xyxy, c[7].xyxy;\n"
1660  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1661  "MUL R2.xyz, R1, c[5].y;\n"
1662  "MOV R0.x, c[8];\n"
1663  "MUL R0.x, R0, c[1];\n"
1664  "RCP R0.x, R0.x;\n"
1665  "MUL R0.x, R0.y, R0;\n"
1666  "TEX R0, R0, texture[1], 1D;\n"
1667  "MUL R3.xyz, R0.w, R2;\n"
1668  "MUL R2.xyz, R0, c[5].x;\n"
1669  "MAD R2.xyz, R1.w, R2, R3;\n"
1670  "ADD R2.w, -R1, c[8].z;\n"
1671  "MUL R0.xyz, R0, c[6].y;\n"
1672  "MAD R0.xyz, R2.w, R0, R2;\n"
1673  "ADD R2.x, -R0.w, c[8].z;\n"
1674  "MUL R1.xyz, R1, c[6].z;\n"
1675  "MAD result.color.xyz, R2.x, R1, R0;\n"
1676  "MUL R0.x, R0.w, R1.w;\n"
1677  "MUL R0.z, R1.w, R2.x;\n"
1678  "MUL R0.y, R0.w, R2.w;\n"
1679  "DP3 result.color.w, R0, c[6];\n"
1680  "END\n"
1681  ;
1682 
1684  "!!ARBfp1.0\n"
1685  "PARAM c[7] = { program.local[0..5],\n"
1686  " { 2, 4, 1 } };\n"
1687  "TEMP R0;\n"
1688  "TEMP R1;\n"
1689  "TEMP R2;\n"
1690  "MUL R0.xyz, fragment.position.y, c[3];\n"
1691  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1692  "ADD R0.xyz, R0, c[4];\n"
1693  "RCP R0.z, R0.z;\n"
1694  "MUL R0.xy, R0, R0.z;\n"
1695  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1696  "ADD R0.z, R0, R0.w;\n"
1697  "MUL R0.xy, R0, c[0];\n"
1698  "ADD R0.x, R0, R0.y;\n"
1699  "MUL R0.z, -R0, c[1].x;\n"
1700  "MUL R0.y, R0.x, c[6].x;\n"
1701  "MUL R0.z, R0, c[6].y;\n"
1702  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1703  "RSQ R0.x, R0.x;\n"
1704  "RCP R0.z, R0.x;\n"
1705  "ADD R0.y, -R0, R0.z;\n"
1706  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
1707  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1708  "MOV R0.x, c[6];\n"
1709  "MUL R0.x, R0, c[1];\n"
1710  "RCP R0.x, R0.x;\n"
1711  "MUL R0.x, R0.y, R0;\n"
1712  "TEX R0, R0, texture[1], 1D;\n"
1713  "ADD R2.x, -R1.w, c[6].z;\n"
1714  "MUL R2.xyz, R0, R2.x;\n"
1715  "MAD R0.xyz, R0, R1, R2;\n"
1716  "ADD R2.x, R0.w, R1.w;\n"
1717  "ADD R2.y, -R0.w, c[6].z;\n"
1718  "MAD result.color.xyz, R1, R2.y, R0;\n"
1719  "MAD result.color.w, -R0, R1, R2.x;\n"
1720  "END\n"
1721  ;
1722 
1724  "!!ARBfp1.0\n"
1725  "PARAM c[7] = { program.local[0..5],\n"
1726  " { 2, 4 } };\n"
1727  "TEMP R0;\n"
1728  "TEMP R1;\n"
1729  "TEMP R2;\n"
1730  "MUL R0.xyz, fragment.position.y, c[3];\n"
1731  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1732  "ADD R0.xyz, R0, c[4];\n"
1733  "RCP R0.z, R0.z;\n"
1734  "MUL R0.xy, R0, R0.z;\n"
1735  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1736  "ADD R0.z, R0, R0.w;\n"
1737  "MUL R0.xy, R0, c[0];\n"
1738  "ADD R0.x, R0, R0.y;\n"
1739  "MUL R0.z, -R0, c[1].x;\n"
1740  "MUL R0.y, R0.x, c[6].x;\n"
1741  "MUL R0.z, R0, c[6].y;\n"
1742  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1743  "RSQ R0.z, R0.x;\n"
1744  "MOV R0.x, c[6];\n"
1745  "MUL R0.w, R0.x, c[1].x;\n"
1746  "RCP R0.z, R0.z;\n"
1747  "ADD R0.x, -R0.y, R0.z;\n"
1748  "RCP R0.y, R0.w;\n"
1749  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
1750  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1751  "MUL R0.x, R0, R0.y;\n"
1752  "TEX R0, R0, texture[1], 1D;\n"
1753  "ADD R2, R0, R1;\n"
1754  "MAD result.color, -R0, R1, R2;\n"
1755  "END\n"
1756  ;
1757 
1759  "!!ARBfp1.0\n"
1760  "PARAM c[7] = { program.local[0..5],\n"
1761  " { 2, 4, 1 } };\n"
1762  "TEMP R0;\n"
1763  "TEMP R1;\n"
1764  "TEMP R2;\n"
1765  "TEMP R3;\n"
1766  "MUL R0.xyz, fragment.position.y, c[3];\n"
1767  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1768  "ADD R0.xyz, R0, c[4];\n"
1769  "RCP R0.z, R0.z;\n"
1770  "MUL R0.xy, R0, R0.z;\n"
1771  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1772  "ADD R0.z, R0, R0.w;\n"
1773  "MUL R0.xy, R0, c[0];\n"
1774  "ADD R0.x, R0, R0.y;\n"
1775  "MUL R0.y, R0.x, c[6].x;\n"
1776  "MOV R0.x, c[6];\n"
1777  "MUL R0.z, -R0, c[1].x;\n"
1778  "MUL R0.z, R0, c[6].y;\n"
1779  "MAD R0.z, R0.y, R0.y, -R0;\n"
1780  "MUL R1.xy, fragment.position, c[5];\n"
1781  "TEX R1, R1, texture[0], 2D;\n"
1782  "MUL R0.w, R0.x, c[1].x;\n"
1783  "RSQ R0.z, R0.z;\n"
1784  "RCP R0.x, R0.z;\n"
1785  "ADD R2.w, -R1, c[6].z;\n"
1786  "RCP R0.z, R0.w;\n"
1787  "ADD R0.x, -R0.y, R0;\n"
1788  "MUL R0.x, R0, R0.z;\n"
1789  "TEX R0, R0, texture[1], 1D;\n"
1790  "ADD R3.xyz, R0.w, -R0;\n"
1791  "ADD R2.xyz, R1.w, -R1;\n"
1792  "MUL R2.xyz, R2, R3;\n"
1793  "MUL R2.xyz, R2, c[6].x;\n"
1794  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
1795  "MAD R2.xyz, R0, R2.w, R2;\n"
1796  "MUL R3.xyz, R0, R2.w;\n"
1797  "MUL R0.xyz, R0, R1;\n"
1798  "ADD R2.w, -R0, c[6].z;\n"
1799  "MAD R0.xyz, R0, c[6].x, R3;\n"
1800  "MAD R0.xyz, R1, R2.w, R0;\n"
1801  "MAD R2.xyz, R1, R2.w, R2;\n"
1802  "MUL R1.xyz, R1, c[6].x;\n"
1803  "ADD R2.w, R0, R1;\n"
1804  "ADD R2.xyz, R2, -R0;\n"
1805  "SGE R1.xyz, R1, R1.w;\n"
1806  "MAD result.color.xyz, R1, R2, R0;\n"
1807  "MAD result.color.w, -R0, R1, R2;\n"
1808  "END\n"
1809  ;
1810 
1812  "!!ARBfp1.0\n"
1813  "PARAM c[7] = { program.local[0..5],\n"
1814  " { 2, 4, 1 } };\n"
1815  "TEMP R0;\n"
1816  "TEMP R1;\n"
1817  "TEMP R2;\n"
1818  "TEMP R3;\n"
1819  "MUL R0.xyz, fragment.position.y, c[3];\n"
1820  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1821  "ADD R0.xyz, R0, c[4];\n"
1822  "RCP R0.z, R0.z;\n"
1823  "MUL R0.xy, R0, R0.z;\n"
1824  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1825  "ADD R0.z, R0, R0.w;\n"
1826  "MUL R0.xy, R0, c[0];\n"
1827  "ADD R0.x, R0, R0.y;\n"
1828  "MUL R0.z, -R0, c[1].x;\n"
1829  "MUL R0.y, R0.x, c[6].x;\n"
1830  "MUL R0.z, R0, c[6].y;\n"
1831  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1832  "RSQ R0.z, R0.x;\n"
1833  "MOV R0.x, c[6];\n"
1834  "MUL R0.w, R0.x, c[1].x;\n"
1835  "RCP R0.z, R0.z;\n"
1836  "ADD R0.x, -R0.y, R0.z;\n"
1837  "RCP R0.y, R0.w;\n"
1838  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
1839  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1840  "MUL R0.x, R0, R0.y;\n"
1841  "TEX R0, R0, texture[1], 1D;\n"
1842  "MUL R2.xyz, R0, R1.w;\n"
1843  "MUL R3.xyz, R0.w, R1;\n"
1844  "MIN R2.xyz, R2, R3;\n"
1845  "ADD R2.w, -R1, c[6].z;\n"
1846  "MAD R0.xyz, R0, R2.w, R2;\n"
1847  "ADD R2.x, R0.w, R1.w;\n"
1848  "ADD R2.y, -R0.w, c[6].z;\n"
1849  "MAD result.color.xyz, R1, R2.y, R0;\n"
1850  "MAD result.color.w, -R0, R1, R2.x;\n"
1851  "END\n"
1852  ;
1853 
1855  "!!ARBfp1.0\n"
1856  "PARAM c[7] = { program.local[0..5],\n"
1857  " { 2, 4, 1 } };\n"
1858  "TEMP R0;\n"
1859  "TEMP R1;\n"
1860  "TEMP R2;\n"
1861  "TEMP R3;\n"
1862  "MUL R0.xyz, fragment.position.y, c[3];\n"
1863  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1864  "ADD R0.xyz, R0, c[4];\n"
1865  "RCP R0.z, R0.z;\n"
1866  "MUL R0.xy, R0, R0.z;\n"
1867  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1868  "ADD R0.z, R0, R0.w;\n"
1869  "MUL R0.xy, R0, c[0];\n"
1870  "ADD R0.x, R0, R0.y;\n"
1871  "MUL R0.z, -R0, c[1].x;\n"
1872  "MUL R0.y, R0.x, c[6].x;\n"
1873  "MUL R0.z, R0, c[6].y;\n"
1874  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1875  "RSQ R0.z, R0.x;\n"
1876  "MOV R0.x, c[6];\n"
1877  "MUL R0.w, R0.x, c[1].x;\n"
1878  "RCP R0.z, R0.z;\n"
1879  "ADD R0.x, -R0.y, R0.z;\n"
1880  "RCP R0.y, R0.w;\n"
1881  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
1882  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1883  "MUL R0.x, R0, R0.y;\n"
1884  "TEX R0, R0, texture[1], 1D;\n"
1885  "MUL R2.xyz, R0, R1.w;\n"
1886  "MUL R3.xyz, R0.w, R1;\n"
1887  "MAX R2.xyz, R2, R3;\n"
1888  "ADD R2.w, -R1, c[6].z;\n"
1889  "MAD R0.xyz, R0, R2.w, R2;\n"
1890  "ADD R2.x, R0.w, R1.w;\n"
1891  "ADD R2.y, -R0.w, c[6].z;\n"
1892  "MAD result.color.xyz, R1, R2.y, R0;\n"
1893  "MAD result.color.w, -R0, R1, R2.x;\n"
1894  "END\n"
1895  ;
1896 
1898  "!!ARBfp1.0\n"
1899  "PARAM c[7] = { program.local[0..5],\n"
1900  " { 2, 4, 1, 1e-006 } };\n"
1901  "TEMP R0;\n"
1902  "TEMP R1;\n"
1903  "TEMP R2;\n"
1904  "TEMP R3;\n"
1905  "MUL R0.xyz, fragment.position.y, c[3];\n"
1906  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1907  "ADD R0.xyz, R0, c[4];\n"
1908  "RCP R0.z, R0.z;\n"
1909  "MUL R0.xy, R0, R0.z;\n"
1910  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1911  "ADD R0.z, R0, R0.w;\n"
1912  "MUL R0.xy, R0, c[0];\n"
1913  "ADD R0.x, R0, R0.y;\n"
1914  "MUL R0.y, R0.x, c[6].x;\n"
1915  "MOV R0.x, c[6];\n"
1916  "MUL R0.z, -R0, c[1].x;\n"
1917  "MUL R0.z, R0, c[6].y;\n"
1918  "MAD R0.z, R0.y, R0.y, -R0;\n"
1919  "MUL R0.w, R0.x, c[1].x;\n"
1920  "RSQ R0.z, R0.z;\n"
1921  "RCP R0.x, R0.z;\n"
1922  "RCP R0.z, R0.w;\n"
1923  "ADD R0.x, -R0.y, R0;\n"
1924  "MUL R0.x, R0, R0.z;\n"
1925  "TEX R0, R0, texture[1], 1D;\n"
1926  "MAX R1.x, R0.w, c[6].w;\n"
1927  "RCP R1.x, R1.x;\n"
1928  "MAD R1.xyz, -R0, R1.x, c[6].z;\n"
1929  "MAX R2.xyz, R1, c[6].w;\n"
1930  "MUL R1.xy, fragment.position, c[5];\n"
1931  "TEX R1, R1, texture[0], 2D;\n"
1932  "ADD R2.w, -R0, c[6].z;\n"
1933  "MUL R3.xyz, R1, R2.w;\n"
1934  "ADD R2.w, -R1, c[6].z;\n"
1935  "MAD R3.xyz, R0, R2.w, R3;\n"
1936  "MUL R1.xyz, R0.w, R1;\n"
1937  "MAD R0.xyz, R0, R1.w, R1;\n"
1938  "MUL R2.w, R0, R1;\n"
1939  "RCP R2.x, R2.x;\n"
1940  "RCP R2.y, R2.y;\n"
1941  "RCP R2.z, R2.z;\n"
1942  "MAD R2.xyz, R1, R2, R3;\n"
1943  "MAD R3.xyz, R0.w, R1.w, R3;\n"
1944  "ADD R1.x, R0.w, R1.w;\n"
1945  "ADD R3.xyz, R3, -R2;\n"
1946  "SGE R0.xyz, R0, R2.w;\n"
1947  "MAD result.color.xyz, R0, R3, R2;\n"
1948  "MAD result.color.w, -R0, R1, R1.x;\n"
1949  "END\n"
1950  ;
1951 
1953  "!!ARBfp1.0\n"
1954  "PARAM c[7] = { program.local[0..5],\n"
1955  " { 2, 4, 1, 9.9999997e-006 } };\n"
1956  "TEMP R0;\n"
1957  "TEMP R1;\n"
1958  "TEMP R2;\n"
1959  "TEMP R3;\n"
1960  "TEMP R4;\n"
1961  "TEMP R5;\n"
1962  "MUL R0.xyz, fragment.position.y, c[3];\n"
1963  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
1964  "ADD R0.xyz, R0, c[4];\n"
1965  "RCP R0.z, R0.z;\n"
1966  "MUL R0.xy, R0, R0.z;\n"
1967  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
1968  "ADD R0.z, R0, R0.w;\n"
1969  "MUL R0.xy, R0, c[0];\n"
1970  "ADD R0.x, R0, R0.y;\n"
1971  "MUL R0.z, -R0, c[1].x;\n"
1972  "MUL R0.y, R0.x, c[6].x;\n"
1973  "MUL R0.z, R0, c[6].y;\n"
1974  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
1975  "RSQ R0.z, R0.x;\n"
1976  "MOV R0.x, c[6];\n"
1977  "MUL R0.w, R0.x, c[1].x;\n"
1978  "RCP R0.z, R0.z;\n"
1979  "ADD R0.x, -R0.y, R0.z;\n"
1980  "RCP R0.y, R0.w;\n"
1981  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
1982  "TEX R1, R0.zwzw, texture[0], 2D;\n"
1983  "MUL R0.x, R0, R0.y;\n"
1984  "TEX R0, R0, texture[1], 1D;\n"
1985  "MUL R2.xyz, R0.w, R1;\n"
1986  "MAD R3.xyz, R0, R1.w, R2;\n"
1987  "ADD R2.w, -R1, c[6].z;\n"
1988  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
1989  "MUL R4.xyz, R0.w, R2;\n"
1990  "MAX R2.xyz, R0, c[6].w;\n"
1991  "MUL R5.xyz, R0, R2.w;\n"
1992  "ADD R3.w, -R0, c[6].z;\n"
1993  "RCP R2.x, R2.x;\n"
1994  "RCP R2.y, R2.y;\n"
1995  "RCP R2.z, R2.z;\n"
1996  "MAD R2.xyz, R4, R2, R5;\n"
1997  "MUL R4.xyz, R1, R3.w;\n"
1998  "MAD R1.xyz, R1, R3.w, R2;\n"
1999  "MAD R0.xyz, R0, R2.w, R4;\n"
2000  "MUL R2.x, R0.w, R1.w;\n"
2001  "ADD R2.w, R0, R1;\n"
2002  "ADD R1.xyz, R1, -R0;\n"
2003  "SGE R2.xyz, R3, R2.x;\n"
2004  "MAD result.color.xyz, R2, R1, R0;\n"
2005  "MAD result.color.w, -R0, R1, R2;\n"
2006  "END\n"
2007  ;
2008 
2010  "!!ARBfp1.0\n"
2011  "PARAM c[7] = { program.local[0..5],\n"
2012  " { 2, 4, 1 } };\n"
2013  "TEMP R0;\n"
2014  "TEMP R1;\n"
2015  "TEMP R2;\n"
2016  "TEMP R3;\n"
2017  "TEMP R4;\n"
2018  "MUL R0.xyz, fragment.position.y, c[3];\n"
2019  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2020  "ADD R0.xyz, R0, c[4];\n"
2021  "RCP R0.z, R0.z;\n"
2022  "MUL R0.xy, R0, R0.z;\n"
2023  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2024  "ADD R0.z, R0, R0.w;\n"
2025  "MUL R0.xy, R0, c[0];\n"
2026  "ADD R0.x, R0, R0.y;\n"
2027  "MUL R0.y, R0.x, c[6].x;\n"
2028  "MOV R0.x, c[6];\n"
2029  "MUL R0.z, -R0, c[1].x;\n"
2030  "MUL R0.z, R0, c[6].y;\n"
2031  "MAD R0.z, R0.y, R0.y, -R0;\n"
2032  "MUL R1.xy, fragment.position, c[5];\n"
2033  "TEX R1, R1, texture[0], 2D;\n"
2034  "MUL R0.w, R0.x, c[1].x;\n"
2035  "RSQ R0.z, R0.z;\n"
2036  "RCP R0.x, R0.z;\n"
2037  "ADD R2.w, -R1, c[6].z;\n"
2038  "RCP R0.z, R0.w;\n"
2039  "ADD R0.x, -R0.y, R0;\n"
2040  "MUL R0.x, R0, R0.z;\n"
2041  "TEX R0, R0, texture[1], 1D;\n"
2042  "ADD R3.xyz, R0.w, -R0;\n"
2043  "ADD R2.xyz, R1.w, -R1;\n"
2044  "MUL R2.xyz, R2, R3;\n"
2045  "MUL R2.xyz, R2, c[6].x;\n"
2046  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
2047  "MUL R4.xyz, R0, R2.w;\n"
2048  "MUL R3.xyz, R0, R1;\n"
2049  "MAD R2.xyz, R0, R2.w, R2;\n"
2050  "ADD R2.w, -R0, c[6].z;\n"
2051  "MUL R0.xyz, R0, c[6].x;\n"
2052  "MAD R2.xyz, R1, R2.w, R2;\n"
2053  "MAD R3.xyz, R3, c[6].x, R4;\n"
2054  "MAD R1.xyz, R1, R2.w, R3;\n"
2055  "ADD R2.w, R0, R1;\n"
2056  "ADD R2.xyz, R2, -R1;\n"
2057  "SGE R0.xyz, R0, R0.w;\n"
2058  "MAD result.color.xyz, R0, R2, R1;\n"
2059  "MAD result.color.w, -R0, R1, R2;\n"
2060  "END\n"
2061  ;
2062 
2064  "!!ARBfp1.0\n"
2065  "PARAM c[8] = { program.local[0..5],\n"
2066  " { 2, 4, 1, 9.9999997e-006 },\n"
2067  " { 16, 12, 3 } };\n"
2068  "TEMP R0;\n"
2069  "TEMP R1;\n"
2070  "TEMP R2;\n"
2071  "TEMP R3;\n"
2072  "TEMP R4;\n"
2073  "TEMP R5;\n"
2074  "TEMP R6;\n"
2075  "MUL R0.xyz, fragment.position.y, c[3];\n"
2076  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2077  "ADD R0.xyz, R0, c[4];\n"
2078  "RCP R0.z, R0.z;\n"
2079  "MUL R0.xy, R0, R0.z;\n"
2080  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2081  "ADD R0.z, R0, R0.w;\n"
2082  "MUL R0.xy, R0, c[0];\n"
2083  "ADD R0.x, R0, R0.y;\n"
2084  "MUL R0.z, -R0, c[1].x;\n"
2085  "MUL R0.y, R0.z, c[6];\n"
2086  "MUL R0.x, R0, c[6];\n"
2087  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
2088  "TEX R1, R0.zwzw, texture[0], 2D;\n"
2089  "MAD R0.y, R0.x, R0.x, -R0;\n"
2090  "RSQ R0.y, R0.y;\n"
2091  "RCP R0.y, R0.y;\n"
2092  "ADD R0.y, -R0.x, R0;\n"
2093  "MOV R0.x, c[6];\n"
2094  "MUL R0.x, R0, c[1];\n"
2095  "MAX R0.z, R1.w, c[6].w;\n"
2096  "RCP R0.z, R0.z;\n"
2097  "MUL R3.xyz, R1, R0.z;\n"
2098  "MAD R4.xyz, R3, c[7].x, -c[7].y;\n"
2099  "RCP R0.x, R0.x;\n"
2100  "MUL R0.x, R0.y, R0;\n"
2101  "TEX R0, R0, texture[1], 1D;\n"
2102  "MAD R2.xyz, R0, c[6].x, -R0.w;\n"
2103  "MAD R4.xyz, R3, R4, c[7].z;\n"
2104  "MUL R5.xyz, R1.w, R2;\n"
2105  "MUL R6.xyz, R5, R4;\n"
2106  "RSQ R2.w, R3.x;\n"
2107  "RCP R4.x, R2.w;\n"
2108  "RSQ R2.w, R3.y;\n"
2109  "RSQ R3.w, R3.z;\n"
2110  "RCP R4.y, R2.w;\n"
2111  "RCP R4.z, R3.w;\n"
2112  "ADD R4.xyz, -R3, R4;\n"
2113  "MUL R6.xyz, R3, R6;\n"
2114  "MUL R4.xyz, R5, R4;\n"
2115  "ADD R3.xyz, -R3, c[6].z;\n"
2116  "MAD R2.xyz, R2, R3, R0.w;\n"
2117  "MUL R3.xyz, R0, c[6].x;\n"
2118  "MAD R5.xyz, R0.w, R1, R6;\n"
2119  "MAD R4.xyz, R0.w, R1, R4;\n"
2120  "ADD R6.xyz, R4, -R5;\n"
2121  "MUL R4.xyz, R1, c[6].y;\n"
2122  "SGE R4.xyz, R4, R1.w;\n"
2123  "MAD R4.xyz, R4, R6, R5;\n"
2124  "MAD R4.xyz, -R1, R2, R4;\n"
2125  "MUL R2.xyz, R1, R2;\n"
2126  "SGE R3.xyz, R3, R0.w;\n"
2127  "MAD R2.xyz, R3, R4, R2;\n"
2128  "ADD R2.w, -R1, c[6].z;\n"
2129  "MAD R2.xyz, R0, R2.w, R2;\n"
2130  "ADD R0.x, R0.w, R1.w;\n"
2131  "ADD R0.y, -R0.w, c[6].z;\n"
2132  "MAD result.color.xyz, R1, R0.y, R2;\n"
2133  "MAD result.color.w, -R0, R1, R0.x;\n"
2134  "END\n"
2135  ;
2136 
2138  "!!ARBfp1.0\n"
2139  "PARAM c[7] = { program.local[0..5],\n"
2140  " { 2, 4 } };\n"
2141  "TEMP R0;\n"
2142  "TEMP R1;\n"
2143  "TEMP R2;\n"
2144  "TEMP R3;\n"
2145  "MUL R0.xyz, fragment.position.y, c[3];\n"
2146  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2147  "ADD R0.xyz, R0, c[4];\n"
2148  "RCP R0.z, R0.z;\n"
2149  "MUL R0.xy, R0, R0.z;\n"
2150  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2151  "ADD R0.z, R0, R0.w;\n"
2152  "MUL R0.xy, R0, c[0];\n"
2153  "ADD R0.x, R0, R0.y;\n"
2154  "MUL R0.z, -R0, c[1].x;\n"
2155  "MUL R0.y, R0.x, c[6].x;\n"
2156  "MUL R0.z, R0, c[6].y;\n"
2157  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
2158  "RSQ R0.z, R0.x;\n"
2159  "MOV R0.x, c[6];\n"
2160  "MUL R0.w, R0.x, c[1].x;\n"
2161  "RCP R0.z, R0.z;\n"
2162  "ADD R0.x, -R0.y, R0.z;\n"
2163  "RCP R0.y, R0.w;\n"
2164  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
2165  "TEX R1, R0.zwzw, texture[0], 2D;\n"
2166  "MUL R0.x, R0, R0.y;\n"
2167  "TEX R0, R0, texture[1], 1D;\n"
2168  "MUL R2.xyz, R0, R1.w;\n"
2169  "MUL R3.xyz, R0.w, R1;\n"
2170  "ADD R0.xyz, R0, R1;\n"
2171  "MIN R2.xyz, R2, R3;\n"
2172  "ADD R1.x, R0.w, R1.w;\n"
2173  "MAD result.color.xyz, -R2, c[6].x, R0;\n"
2174  "MAD result.color.w, -R0, R1, R1.x;\n"
2175  "END\n"
2176  ;
2177 
2179  "!!ARBfp1.0\n"
2180  "PARAM c[7] = { program.local[0..5],\n"
2181  " { 2, 4, 1 } };\n"
2182  "TEMP R0;\n"
2183  "TEMP R1;\n"
2184  "TEMP R2;\n"
2185  "TEMP R3;\n"
2186  "MUL R0.xyz, fragment.position.y, c[3];\n"
2187  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2188  "ADD R0.xyz, R0, c[4];\n"
2189  "RCP R0.z, R0.z;\n"
2190  "MUL R0.xy, R0, R0.z;\n"
2191  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2192  "ADD R0.z, R0, R0.w;\n"
2193  "MUL R0.xy, R0, c[0];\n"
2194  "ADD R0.x, R0, R0.y;\n"
2195  "MUL R0.z, -R0, c[1].x;\n"
2196  "MUL R0.y, R0.x, c[6].x;\n"
2197  "MUL R0.z, R0, c[6].y;\n"
2198  "MAD R0.x, R0.y, R0.y, -R0.z;\n"
2199  "RSQ R0.z, R0.x;\n"
2200  "MOV R0.x, c[6];\n"
2201  "MUL R0.w, R0.x, c[1].x;\n"
2202  "RCP R0.z, R0.z;\n"
2203  "ADD R0.x, -R0.y, R0.z;\n"
2204  "RCP R0.y, R0.w;\n"
2205  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
2206  "TEX R1, R0.zwzw, texture[0], 2D;\n"
2207  "MUL R0.x, R0, R0.y;\n"
2208  "TEX R0, R0, texture[1], 1D;\n"
2209  "MUL R2.xyz, R0.w, R1;\n"
2210  "MAD R3.xyz, R0, R1.w, R2;\n"
2211  "MUL R2.xyz, R0, R1;\n"
2212  "MAD R2.xyz, -R2, c[6].x, R3;\n"
2213  "ADD R2.w, -R1, c[6].z;\n"
2214  "MAD R0.xyz, R0, R2.w, R2;\n"
2215  "ADD R2.x, R0.w, R1.w;\n"
2216  "ADD R2.y, -R0.w, c[6].z;\n"
2217  "MAD result.color.xyz, R1, R2.y, R0;\n"
2218  "MAD result.color.w, -R0, R1, R2.x;\n"
2219  "END\n"
2220  ;
2221 
2223  "!!ARBfp1.0\n"
2224  "PARAM c[9] = { program.local[0..7],\n"
2225  " { 2, 4 } };\n"
2226  "TEMP R0;\n"
2227  "TEMP R1;\n"
2228  "MUL R0.xyz, fragment.position.y, c[3];\n"
2229  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2230  "ADD R0.xyz, R0, c[4];\n"
2231  "RCP R0.z, R0.z;\n"
2232  "MUL R0.xy, R0, R0.z;\n"
2233  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2234  "ADD R0.z, R0, R0.w;\n"
2235  "MUL R0.xy, R0, c[0];\n"
2236  "ADD R0.x, R0, R0.y;\n"
2237  "MUL R0.z, -R0, c[1].x;\n"
2238  "MUL R0.y, R0.z, c[8];\n"
2239  "MUL R0.x, R0, c[8];\n"
2240  "MAD R0.y, R0.x, R0.x, -R0;\n"
2241  "RSQ R0.y, R0.y;\n"
2242  "RCP R0.y, R0.y;\n"
2243  "ADD R1.x, -R0, R0.y;\n"
2244  "MOV R0.x, c[8];\n"
2245  "MUL R0.x, R0, c[1];\n"
2246  "RCP R1.y, R0.x;\n"
2247  "ADD R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
2248  "MUL R0.zw, R0, c[5].xyxy;\n"
2249  "TEX R0, R0.zwzw, texture[0], 2D;\n"
2250  "MUL R1.x, R1, R1.y;\n"
2251  "DP4 R1.y, R0, c[7];\n"
2252  "TEX R0, R1, texture[1], 1D;\n"
2253  "MUL result.color, R0, R1.y;\n"
2254  "END\n"
2255  ;
2256 
2258  "!!ARBfp1.0\n"
2259  "PARAM c[6] = { program.local[0..4],\n"
2260  " { 2, 4 } };\n"
2261  "TEMP R0;\n"
2262  "MUL R0.xyz, fragment.position.y, c[3];\n"
2263  "MAD R0.xyz, fragment.position.x, c[2], R0;\n"
2264  "ADD R0.xyz, R0, c[4];\n"
2265  "RCP R0.z, R0.z;\n"
2266  "MUL R0.xy, R0, R0.z;\n"
2267  "MUL R0.zw, R0.xyxy, R0.xyxy;\n"
2268  "MUL R0.xy, R0, c[0];\n"
2269  "ADD R0.z, R0, R0.w;\n"
2270  "ADD R0.x, R0, R0.y;\n"
2271  "MUL R0.z, -R0, c[1].x;\n"
2272  "MUL R0.y, R0.z, c[5];\n"
2273  "MUL R0.x, R0, c[5];\n"
2274  "MAD R0.z, R0.x, R0.x, -R0.y;\n"
2275  "MOV R0.y, c[5].x;\n"
2276  "RSQ R0.z, R0.z;\n"
2277  "MUL R0.w, R0.y, c[1].x;\n"
2278  "RCP R0.y, R0.z;\n"
2279  "RCP R0.z, R0.w;\n"
2280  "ADD R0.x, -R0, R0.y;\n"
2281  "MUL R0.x, R0, R0.z;\n"
2282  "TEX result.color, R0, texture[0], 1D;\n"
2283  "END\n"
2284  ;
2285 
2287  "!!ARBfp1.0\n"
2288  "PARAM c[13] = { program.local[0..9],\n"
2289  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
2290  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
2291  " { 0.33299461, 0.99999559, 1 } };\n"
2292  "TEMP R0;\n"
2293  "TEMP R1;\n"
2294  "TEMP R2;\n"
2295  "TEMP R3;\n"
2296  "MUL R0.xyz, fragment.position.y, c[2];\n"
2297  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2298  "ADD R0.xyz, R0, c[3];\n"
2299  "RCP R0.z, R0.z;\n"
2300  "MUL R0.xy, R0, R0.z;\n"
2301  "ABS R0.z, R0.x;\n"
2302  "ABS R0.w, R0.y;\n"
2303  "ADD R0.w, R0, -R0.z;\n"
2304  "ADD R1.x, R0.y, c[10].y;\n"
2305  "ABS R0.w, R0;\n"
2306  "CMP R0.y, -R0.w, R0, R1.x;\n"
2307  "ABS R0.w, -R0.y;\n"
2308  "MAX R1.x, R0.z, R0.w;\n"
2309  "RCP R1.y, R1.x;\n"
2310  "MIN R1.x, R0.z, R0.w;\n"
2311  "MUL R1.x, R1, R1.y;\n"
2312  "MUL R1.y, R1.x, R1.x;\n"
2313  "MAD R1.z, R1.y, c[11].x, c[11].y;\n"
2314  "MAD R1.z, R1, R1.y, -c[11];\n"
2315  "MAD R1.z, R1, R1.y, c[11].w;\n"
2316  "MAD R1.z, R1, R1.y, -c[12].x;\n"
2317  "MAD R1.y, R1.z, R1, c[12];\n"
2318  "MUL R1.x, R1.y, R1;\n"
2319  "ADD R1.y, -R1.x, c[10].w;\n"
2320  "ADD R0.z, -R0, R0.w;\n"
2321  "CMP R0.z, -R0, R1.y, R1.x;\n"
2322  "ADD R0.w, -R0.z, c[10].z;\n"
2323  "CMP R0.x, R0, R0.w, R0.z;\n"
2324  "CMP R0.x, -R0.y, -R0, R0;\n"
2325  "ADD R0.x, R0, c[0];\n"
2326  "MUL R1.x, R0, c[10];\n"
2327  "FLR R1.y, R1.x;\n"
2328  "MUL R0.xy, fragment.position, c[7];\n"
2329  "TEX R0, R0, texture[0], 2D;\n"
2330  "ADD R1.x, R1, -R1.y;\n"
2331  "TEX R1, R1, texture[2], 1D;\n"
2332  "MUL R2.xyz, R0, c[4].y;\n"
2333  "MUL R3.xyz, R1.w, R2;\n"
2334  "MUL R2.xyz, R1, c[4].x;\n"
2335  "MAD R2.xyz, R0.w, R2, R3;\n"
2336  "ADD R3.xy, fragment.position, c[8];\n"
2337  "ADD R2.w, -R0, c[12].z;\n"
2338  "MUL R1.xyz, R1, c[5].y;\n"
2339  "MAD R2.xyz, R2.w, R1, R2;\n"
2340  "MUL R1.xyz, R0, c[5].z;\n"
2341  "ADD R3.z, -R1.w, c[12];\n"
2342  "MAD R2.xyz, R3.z, R1, R2;\n"
2343  "MUL R1.y, R1.w, R2.w;\n"
2344  "MUL R1.x, R1.w, R0.w;\n"
2345  "MUL R1.z, R0.w, R3;\n"
2346  "DP3 R2.w, R1, c[5];\n"
2347  "MUL R3.xy, R3, c[6];\n"
2348  "TEX R1, R3, texture[1], 2D;\n"
2349  "ADD R2, R2, -R0;\n"
2350  "DP4 R1.x, R1, c[9];\n"
2351  "MAD result.color, R1.x, R2, R0;\n"
2352  "END\n"
2353  ;
2354 
2356  "!!ARBfp1.0\n"
2357  "PARAM c[11] = { program.local[0..7],\n"
2358  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
2359  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
2360  " { 0.33299461, 0.99999559, 1 } };\n"
2361  "TEMP R0;\n"
2362  "TEMP R1;\n"
2363  "TEMP R2;\n"
2364  "MUL R0.xyz, fragment.position.y, c[2];\n"
2365  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2366  "ADD R0.xyz, R0, c[3];\n"
2367  "RCP R0.z, R0.z;\n"
2368  "MUL R0.xy, R0, R0.z;\n"
2369  "ABS R0.z, R0.x;\n"
2370  "ABS R0.w, R0.y;\n"
2371  "ADD R0.w, R0, -R0.z;\n"
2372  "ADD R1.x, R0.y, c[8].y;\n"
2373  "ABS R0.w, R0;\n"
2374  "CMP R0.y, -R0.w, R0, R1.x;\n"
2375  "ABS R0.w, -R0.y;\n"
2376  "MAX R1.x, R0.z, R0.w;\n"
2377  "RCP R1.y, R1.x;\n"
2378  "MIN R1.x, R0.z, R0.w;\n"
2379  "MUL R1.x, R1, R1.y;\n"
2380  "MUL R1.y, R1.x, R1.x;\n"
2381  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
2382  "MAD R1.z, R1, R1.y, -c[9];\n"
2383  "MAD R1.z, R1, R1.y, c[9].w;\n"
2384  "MAD R1.z, R1, R1.y, -c[10].x;\n"
2385  "MAD R1.y, R1.z, R1, c[10];\n"
2386  "MUL R1.x, R1.y, R1;\n"
2387  "ADD R1.y, -R1.x, c[8].w;\n"
2388  "ADD R0.z, -R0, R0.w;\n"
2389  "CMP R0.z, -R0, R1.y, R1.x;\n"
2390  "ADD R0.w, -R0.z, c[8].z;\n"
2391  "CMP R0.x, R0, R0.w, R0.z;\n"
2392  "CMP R0.x, -R0.y, -R0, R0;\n"
2393  "ADD R0.x, R0, c[0];\n"
2394  "MUL R1.x, R0, c[8];\n"
2395  "FLR R1.y, R1.x;\n"
2396  "MUL R0.xy, fragment.position, c[5];\n"
2397  "TEX R0, R0, texture[0], 2D;\n"
2398  "ADD R1.x, R1, -R1.y;\n"
2399  "TEX R1, R1, texture[2], 1D;\n"
2400  "ADD R2.x, -R0.w, c[10].z;\n"
2401  "MUL R2.xyz, R1, R2.x;\n"
2402  "MAD R1.xyz, R1, R0, R2;\n"
2403  "ADD R2.x, -R1.w, c[10].z;\n"
2404  "MAD R2.xyz, R0, R2.x, R1;\n"
2405  "ADD R1.z, R1.w, R0.w;\n"
2406  "MAD R2.w, -R1, R0, R1.z;\n"
2407  "ADD R1.xy, fragment.position, c[6];\n"
2408  "MUL R1.xy, R1, c[4];\n"
2409  "TEX R1, R1, texture[1], 2D;\n"
2410  "ADD R2, R2, -R0;\n"
2411  "DP4 R1.x, R1, c[7];\n"
2412  "MAD result.color, R1.x, R2, R0;\n"
2413  "END\n"
2414  ;
2415 
2417  "!!ARBfp1.0\n"
2418  "PARAM c[11] = { program.local[0..7],\n"
2419  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
2420  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
2421  " { 0.33299461, 0.99999559 } };\n"
2422  "TEMP R0;\n"
2423  "TEMP R1;\n"
2424  "TEMP R2;\n"
2425  "TEMP R3;\n"
2426  "MUL R0.xyz, fragment.position.y, c[2];\n"
2427  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2428  "ADD R0.xyz, R0, c[3];\n"
2429  "RCP R0.z, R0.z;\n"
2430  "MUL R0.xy, R0, R0.z;\n"
2431  "ADD R3.xy, fragment.position, c[6];\n"
2432  "ABS R0.z, R0.x;\n"
2433  "ABS R0.w, R0.y;\n"
2434  "ADD R0.w, R0, -R0.z;\n"
2435  "ADD R1.x, R0.y, c[8].y;\n"
2436  "ABS R0.w, R0;\n"
2437  "CMP R0.y, -R0.w, R0, R1.x;\n"
2438  "ABS R0.w, -R0.y;\n"
2439  "MAX R1.x, R0.z, R0.w;\n"
2440  "RCP R1.y, R1.x;\n"
2441  "MIN R1.x, R0.z, R0.w;\n"
2442  "MUL R1.x, R1, R1.y;\n"
2443  "MUL R1.y, R1.x, R1.x;\n"
2444  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
2445  "MAD R1.z, R1, R1.y, -c[9];\n"
2446  "MAD R1.z, R1, R1.y, c[9].w;\n"
2447  "MAD R1.z, R1, R1.y, -c[10].x;\n"
2448  "MAD R1.y, R1.z, R1, c[10];\n"
2449  "MUL R1.x, R1.y, R1;\n"
2450  "ADD R0.z, -R0, R0.w;\n"
2451  "ADD R1.y, -R1.x, c[8].w;\n"
2452  "CMP R0.z, -R0, R1.y, R1.x;\n"
2453  "ADD R0.w, -R0.z, c[8].z;\n"
2454  "CMP R0.x, R0, R0.w, R0.z;\n"
2455  "CMP R0.x, -R0.y, -R0, R0;\n"
2456  "ADD R0.x, R0, c[0];\n"
2457  "MUL R0.x, R0, c[8];\n"
2458  "FLR R0.y, R0.x;\n"
2459  "ADD R0.z, R0.x, -R0.y;\n"
2460  "TEX R1, R0.z, texture[2], 1D;\n"
2461  "MUL R0.xy, fragment.position, c[5];\n"
2462  "TEX R0, R0, texture[0], 2D;\n"
2463  "ADD R2, R1, R0;\n"
2464  "MAD R2, -R1, R0, R2;\n"
2465  "MUL R3.xy, R3, c[4];\n"
2466  "TEX R1, R3, texture[1], 2D;\n"
2467  "ADD R2, R2, -R0;\n"
2468  "DP4 R1.x, R1, c[7];\n"
2469  "MAD result.color, R1.x, R2, R0;\n"
2470  "END\n"
2471  ;
2472 
2474  "!!ARBfp1.0\n"
2475  "PARAM c[11] = { program.local[0..7],\n"
2476  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
2477  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
2478  " { 3.141593, 0.15915494, 2, 1 } };\n"
2479  "TEMP R0;\n"
2480  "TEMP R1;\n"
2481  "TEMP R2;\n"
2482  "TEMP R3;\n"
2483  "TEMP R4;\n"
2484  "MUL R0.xyz, fragment.position.y, c[2];\n"
2485  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2486  "ADD R0.xyz, R0, c[3];\n"
2487  "RCP R0.z, R0.z;\n"
2488  "MUL R0.xy, R0, R0.z;\n"
2489  "ABS R0.z, R0.x;\n"
2490  "ABS R0.w, R0.y;\n"
2491  "ADD R0.w, R0, -R0.z;\n"
2492  "ADD R1.x, R0.y, c[8];\n"
2493  "ABS R0.w, R0;\n"
2494  "CMP R0.y, -R0.w, R0, R1.x;\n"
2495  "ABS R0.w, -R0.y;\n"
2496  "MAX R1.x, R0.z, R0.w;\n"
2497  "RCP R1.y, R1.x;\n"
2498  "MIN R1.x, R0.z, R0.w;\n"
2499  "MUL R1.x, R1, R1.y;\n"
2500  "MUL R1.y, R1.x, R1.x;\n"
2501  "MAD R1.z, R1.y, c[8].y, c[8];\n"
2502  "MAD R1.z, R1, R1.y, -c[8].w;\n"
2503  "MAD R1.z, R1, R1.y, c[9].x;\n"
2504  "MAD R1.z, R1, R1.y, -c[9].y;\n"
2505  "MAD R1.y, R1.z, R1, c[9].z;\n"
2506  "MUL R1.x, R1.y, R1;\n"
2507  "ADD R0.z, -R0, R0.w;\n"
2508  "ADD R1.y, -R1.x, c[9].w;\n"
2509  "CMP R0.z, -R0, R1.y, R1.x;\n"
2510  "ADD R0.w, -R0.z, c[10].x;\n"
2511  "CMP R0.x, R0, R0.w, R0.z;\n"
2512  "CMP R0.x, -R0.y, -R0, R0;\n"
2513  "ADD R0.x, R0, c[0];\n"
2514  "MUL R0.x, R0, c[10].y;\n"
2515  "FLR R0.y, R0.x;\n"
2516  "ADD R0.x, R0, -R0.y;\n"
2517  "TEX R0, R0, texture[2], 1D;\n"
2518  "MUL R1.xy, fragment.position, c[5];\n"
2519  "TEX R1, R1, texture[0], 2D;\n"
2520  "ADD R2.w, -R1, c[10];\n"
2521  "ADD R3.xyz, R0.w, -R0;\n"
2522  "ADD R2.xyz, R1.w, -R1;\n"
2523  "MUL R2.xyz, R2, R3;\n"
2524  "MUL R2.xyz, R2, c[10].z;\n"
2525  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
2526  "MUL R4.xyz, R0, R2.w;\n"
2527  "MUL R3.xyz, R0, R1;\n"
2528  "MAD R0.xyz, R0, R2.w, R2;\n"
2529  "ADD R2.x, -R0.w, c[10].w;\n"
2530  "MAD R3.xyz, R3, c[10].z, R4;\n"
2531  "MAD R3.xyz, R1, R2.x, R3;\n"
2532  "MAD R0.xyz, R1, R2.x, R0;\n"
2533  "MUL R2.xyz, R1, c[10].z;\n"
2534  "ADD R0.xyz, R0, -R3;\n"
2535  "SGE R2.xyz, R2, R1.w;\n"
2536  "MAD R2.xyz, R2, R0, R3;\n"
2537  "ADD R0.z, R0.w, R1.w;\n"
2538  "MAD R2.w, -R0, R1, R0.z;\n"
2539  "ADD R0.xy, fragment.position, c[6];\n"
2540  "MUL R0.xy, R0, c[4];\n"
2541  "TEX R0, R0, texture[1], 2D;\n"
2542  "ADD R2, R2, -R1;\n"
2543  "DP4 R0.x, R0, c[7];\n"
2544  "MAD result.color, R0.x, R2, R1;\n"
2545  "END\n"
2546  ;
2547 
2549  "!!ARBfp1.0\n"
2550  "PARAM c[11] = { program.local[0..7],\n"
2551  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
2552  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
2553  " { 0.33299461, 0.99999559, 1 } };\n"
2554  "TEMP R0;\n"
2555  "TEMP R1;\n"
2556  "TEMP R2;\n"
2557  "TEMP R3;\n"
2558  "MUL R0.xyz, fragment.position.y, c[2];\n"
2559  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2560  "ADD R0.xyz, R0, c[3];\n"
2561  "RCP R0.z, R0.z;\n"
2562  "MUL R0.xy, R0, R0.z;\n"
2563  "ABS R0.z, R0.x;\n"
2564  "ABS R0.w, R0.y;\n"
2565  "ADD R0.w, R0, -R0.z;\n"
2566  "ADD R1.x, R0.y, c[8].y;\n"
2567  "ABS R0.w, R0;\n"
2568  "CMP R0.y, -R0.w, R0, R1.x;\n"
2569  "ABS R0.w, -R0.y;\n"
2570  "MAX R1.x, R0.z, R0.w;\n"
2571  "RCP R1.y, R1.x;\n"
2572  "MIN R1.x, R0.z, R0.w;\n"
2573  "MUL R1.x, R1, R1.y;\n"
2574  "MUL R1.y, R1.x, R1.x;\n"
2575  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
2576  "MAD R1.z, R1, R1.y, -c[9];\n"
2577  "MAD R1.z, R1, R1.y, c[9].w;\n"
2578  "MAD R1.z, R1, R1.y, -c[10].x;\n"
2579  "MAD R1.y, R1.z, R1, c[10];\n"
2580  "MUL R1.x, R1.y, R1;\n"
2581  "ADD R1.y, -R1.x, c[8].w;\n"
2582  "ADD R0.z, -R0, R0.w;\n"
2583  "CMP R0.z, -R0, R1.y, R1.x;\n"
2584  "ADD R0.w, -R0.z, c[8].z;\n"
2585  "CMP R0.x, R0, R0.w, R0.z;\n"
2586  "CMP R0.x, -R0.y, -R0, R0;\n"
2587  "ADD R0.x, R0, c[0];\n"
2588  "MUL R0.z, R0.x, c[8].x;\n"
2589  "FLR R0.w, R0.z;\n"
2590  "ADD R1.x, R0.z, -R0.w;\n"
2591  "MUL R0.xy, fragment.position, c[5];\n"
2592  "TEX R0, R0, texture[0], 2D;\n"
2593  "TEX R1, R1, texture[2], 1D;\n"
2594  "MUL R3.xyz, R1.w, R0;\n"
2595  "MUL R2.xyz, R1, R0.w;\n"
2596  "MIN R2.xyz, R2, R3;\n"
2597  "ADD R2.w, -R0, c[10].z;\n"
2598  "MAD R1.xyz, R1, R2.w, R2;\n"
2599  "ADD R2.x, -R1.w, c[10].z;\n"
2600  "MAD R2.xyz, R0, R2.x, R1;\n"
2601  "ADD R1.z, R1.w, R0.w;\n"
2602  "MAD R2.w, -R1, R0, R1.z;\n"
2603  "ADD R1.xy, fragment.position, c[6];\n"
2604  "MUL R1.xy, R1, c[4];\n"
2605  "TEX R1, R1, texture[1], 2D;\n"
2606  "ADD R2, R2, -R0;\n"
2607  "DP4 R1.x, R1, c[7];\n"
2608  "MAD result.color, R1.x, R2, R0;\n"
2609  "END\n"
2610  ;
2611 
2613  "!!ARBfp1.0\n"
2614  "PARAM c[11] = { program.local[0..7],\n"
2615  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
2616  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
2617  " { 0.33299461, 0.99999559, 1 } };\n"
2618  "TEMP R0;\n"
2619  "TEMP R1;\n"
2620  "TEMP R2;\n"
2621  "TEMP R3;\n"
2622  "MUL R0.xyz, fragment.position.y, c[2];\n"
2623  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2624  "ADD R0.xyz, R0, c[3];\n"
2625  "RCP R0.z, R0.z;\n"
2626  "MUL R0.xy, R0, R0.z;\n"
2627  "ABS R0.z, R0.x;\n"
2628  "ABS R0.w, R0.y;\n"
2629  "ADD R0.w, R0, -R0.z;\n"
2630  "ADD R1.x, R0.y, c[8].y;\n"
2631  "ABS R0.w, R0;\n"
2632  "CMP R0.y, -R0.w, R0, R1.x;\n"
2633  "ABS R0.w, -R0.y;\n"
2634  "MAX R1.x, R0.z, R0.w;\n"
2635  "RCP R1.y, R1.x;\n"
2636  "MIN R1.x, R0.z, R0.w;\n"
2637  "MUL R1.x, R1, R1.y;\n"
2638  "MUL R1.y, R1.x, R1.x;\n"
2639  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
2640  "MAD R1.z, R1, R1.y, -c[9];\n"
2641  "MAD R1.z, R1, R1.y, c[9].w;\n"
2642  "MAD R1.z, R1, R1.y, -c[10].x;\n"
2643  "MAD R1.y, R1.z, R1, c[10];\n"
2644  "MUL R1.x, R1.y, R1;\n"
2645  "ADD R1.y, -R1.x, c[8].w;\n"
2646  "ADD R0.z, -R0, R0.w;\n"
2647  "CMP R0.z, -R0, R1.y, R1.x;\n"
2648  "ADD R0.w, -R0.z, c[8].z;\n"
2649  "CMP R0.x, R0, R0.w, R0.z;\n"
2650  "CMP R0.x, -R0.y, -R0, R0;\n"
2651  "ADD R0.x, R0, c[0];\n"
2652  "MUL R0.z, R0.x, c[8].x;\n"
2653  "FLR R0.w, R0.z;\n"
2654  "ADD R1.x, R0.z, -R0.w;\n"
2655  "MUL R0.xy, fragment.position, c[5];\n"
2656  "TEX R0, R0, texture[0], 2D;\n"
2657  "TEX R1, R1, texture[2], 1D;\n"
2658  "MUL R3.xyz, R1.w, R0;\n"
2659  "MUL R2.xyz, R1, R0.w;\n"
2660  "MAX R2.xyz, R2, R3;\n"
2661  "ADD R2.w, -R0, c[10].z;\n"
2662  "MAD R1.xyz, R1, R2.w, R2;\n"
2663  "ADD R2.x, -R1.w, c[10].z;\n"
2664  "MAD R2.xyz, R0, R2.x, R1;\n"
2665  "ADD R1.z, R1.w, R0.w;\n"
2666  "MAD R2.w, -R1, R0, R1.z;\n"
2667  "ADD R1.xy, fragment.position, c[6];\n"
2668  "MUL R1.xy, R1, c[4];\n"
2669  "TEX R1, R1, texture[1], 2D;\n"
2670  "ADD R2, R2, -R0;\n"
2671  "DP4 R1.x, R1, c[7];\n"
2672  "MAD result.color, R1.x, R2, R0;\n"
2673  "END\n"
2674  ;
2675 
2677  "!!ARBfp1.0\n"
2678  "PARAM c[11] = { program.local[0..7],\n"
2679  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
2680  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
2681  " { 3.141593, 0.15915494, 1, 1e-006 } };\n"
2682  "TEMP R0;\n"
2683  "TEMP R1;\n"
2684  "TEMP R2;\n"
2685  "TEMP R3;\n"
2686  "TEMP R4;\n"
2687  "MUL R0.xyz, fragment.position.y, c[2];\n"
2688  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2689  "ADD R0.xyz, R0, c[3];\n"
2690  "RCP R0.z, R0.z;\n"
2691  "MUL R0.xy, R0, R0.z;\n"
2692  "ABS R0.z, R0.x;\n"
2693  "ABS R0.w, R0.y;\n"
2694  "ADD R0.w, R0, -R0.z;\n"
2695  "ADD R1.x, R0.y, c[8];\n"
2696  "ABS R0.w, R0;\n"
2697  "CMP R0.y, -R0.w, R0, R1.x;\n"
2698  "ABS R0.w, -R0.y;\n"
2699  "MAX R1.x, R0.z, R0.w;\n"
2700  "RCP R1.y, R1.x;\n"
2701  "MIN R1.x, R0.z, R0.w;\n"
2702  "MUL R1.x, R1, R1.y;\n"
2703  "MUL R1.y, R1.x, R1.x;\n"
2704  "MAD R1.z, R1.y, c[8].y, c[8];\n"
2705  "MAD R1.z, R1, R1.y, -c[8].w;\n"
2706  "MAD R1.z, R1, R1.y, c[9].x;\n"
2707  "MAD R1.z, R1, R1.y, -c[9].y;\n"
2708  "MAD R1.y, R1.z, R1, c[9].z;\n"
2709  "MUL R1.x, R1.y, R1;\n"
2710  "ADD R1.y, -R1.x, c[9].w;\n"
2711  "ADD R0.z, -R0, R0.w;\n"
2712  "CMP R0.z, -R0, R1.y, R1.x;\n"
2713  "ADD R0.w, -R0.z, c[10].x;\n"
2714  "CMP R0.x, R0, R0.w, R0.z;\n"
2715  "CMP R0.x, -R0.y, -R0, R0;\n"
2716  "ADD R0.x, R0, c[0];\n"
2717  "MUL R0.x, R0, c[10].y;\n"
2718  "FLR R0.y, R0.x;\n"
2719  "ADD R0.x, R0, -R0.y;\n"
2720  "TEX R0, R0, texture[2], 1D;\n"
2721  "MAX R1.x, R0.w, c[10].w;\n"
2722  "RCP R1.x, R1.x;\n"
2723  "MAD R1.xyz, -R0, R1.x, c[10].z;\n"
2724  "MAX R2.xyz, R1, c[10].w;\n"
2725  "MUL R1.xy, fragment.position, c[5];\n"
2726  "TEX R1, R1, texture[0], 2D;\n"
2727  "ADD R2.w, -R0, c[10].z;\n"
2728  "MUL R3.xyz, R1, R2.w;\n"
2729  "ADD R2.w, -R1, c[10].z;\n"
2730  "MAD R4.xyz, R0, R2.w, R3;\n"
2731  "MUL R3.xyz, R0.w, R1;\n"
2732  "MUL R2.w, R0, R1;\n"
2733  "MAD R0.xyz, R0, R1.w, R3;\n"
2734  "SGE R0.xyz, R0, R2.w;\n"
2735  "RCP R2.x, R2.x;\n"
2736  "RCP R2.y, R2.y;\n"
2737  "RCP R2.z, R2.z;\n"
2738  "MAD R2.xyz, R3, R2, R4;\n"
2739  "MAD R4.xyz, R0.w, R1.w, R4;\n"
2740  "ADD R4.xyz, R4, -R2;\n"
2741  "MAD R2.xyz, R0, R4, R2;\n"
2742  "ADD R0.z, R0.w, R1.w;\n"
2743  "MAD R2.w, -R0, R1, R0.z;\n"
2744  "ADD R0.xy, fragment.position, c[6];\n"
2745  "MUL R0.xy, R0, c[4];\n"
2746  "TEX R0, R0, texture[1], 2D;\n"
2747  "ADD R2, R2, -R1;\n"
2748  "DP4 R0.x, R0, c[7];\n"
2749  "MAD result.color, R0.x, R2, R1;\n"
2750  "END\n"
2751  ;
2752 
2754  "!!ARBfp1.0\n"
2755  "PARAM c[11] = { program.local[0..7],\n"
2756  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
2757  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
2758  " { 3.141593, 0.15915494, 1, 9.9999997e-006 } };\n"
2759  "TEMP R0;\n"
2760  "TEMP R1;\n"
2761  "TEMP R2;\n"
2762  "TEMP R3;\n"
2763  "TEMP R4;\n"
2764  "TEMP R5;\n"
2765  "MUL R0.xyz, fragment.position.y, c[2];\n"
2766  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2767  "ADD R0.xyz, R0, c[3];\n"
2768  "RCP R0.z, R0.z;\n"
2769  "MUL R0.xy, R0, R0.z;\n"
2770  "ABS R0.w, R0.x;\n"
2771  "ABS R0.z, R0.y;\n"
2772  "ADD R0.z, R0, -R0.w;\n"
2773  "ADD R1.x, R0.y, c[8];\n"
2774  "ABS R0.z, R0;\n"
2775  "CMP R0.y, -R0.z, R0, R1.x;\n"
2776  "ABS R0.z, -R0.y;\n"
2777  "MAX R1.x, R0.w, R0.z;\n"
2778  "RCP R1.y, R1.x;\n"
2779  "MIN R1.x, R0.w, R0.z;\n"
2780  "MUL R1.x, R1, R1.y;\n"
2781  "MUL R1.y, R1.x, R1.x;\n"
2782  "MAD R1.z, R1.y, c[8].y, c[8];\n"
2783  "MAD R1.z, R1, R1.y, -c[8].w;\n"
2784  "MAD R1.z, R1, R1.y, c[9].x;\n"
2785  "MAD R1.z, R1, R1.y, -c[9].y;\n"
2786  "MAD R1.y, R1.z, R1, c[9].z;\n"
2787  "MUL R1.x, R1.y, R1;\n"
2788  "ADD R1.y, -R1.x, c[9].w;\n"
2789  "ADD R0.z, -R0.w, R0;\n"
2790  "CMP R0.z, -R0, R1.y, R1.x;\n"
2791  "ADD R0.w, -R0.z, c[10].x;\n"
2792  "CMP R0.x, R0, R0.w, R0.z;\n"
2793  "CMP R0.x, -R0.y, -R0, R0;\n"
2794  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
2795  "TEX R1, R0.zwzw, texture[0], 2D;\n"
2796  "ADD R0.x, R0, c[0];\n"
2797  "MUL R0.x, R0, c[10].y;\n"
2798  "FLR R0.y, R0.x;\n"
2799  "ADD R0.x, R0, -R0.y;\n"
2800  "TEX R0, R0, texture[2], 1D;\n"
2801  "MUL R2.xyz, R0.w, R1;\n"
2802  "MAD R3.xyz, R0, R1.w, R2;\n"
2803  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
2804  "MUL R4.xyz, R0.w, R2;\n"
2805  "MAX R2.xyz, R0, c[10].w;\n"
2806  "ADD R2.w, -R1, c[10].z;\n"
2807  "ADD R3.w, -R0, c[10].z;\n"
2808  "MUL R5.xyz, R0, R2.w;\n"
2809  "RCP R2.x, R2.x;\n"
2810  "RCP R2.y, R2.y;\n"
2811  "RCP R2.z, R2.z;\n"
2812  "MAD R2.xyz, R4, R2, R5;\n"
2813  "MUL R4.xyz, R1, R3.w;\n"
2814  "MAD R0.xyz, R0, R2.w, R4;\n"
2815  "MUL R2.w, R0, R1;\n"
2816  "MAD R2.xyz, R1, R3.w, R2;\n"
2817  "ADD R2.xyz, R2, -R0;\n"
2818  "SGE R3.xyz, R3, R2.w;\n"
2819  "MAD R2.xyz, R3, R2, R0;\n"
2820  "ADD R0.z, R0.w, R1.w;\n"
2821  "MAD R2.w, -R0, R1, R0.z;\n"
2822  "ADD R0.xy, fragment.position, c[6];\n"
2823  "MUL R0.xy, R0, c[4];\n"
2824  "TEX R0, R0, texture[1], 2D;\n"
2825  "ADD R2, R2, -R1;\n"
2826  "DP4 R0.x, R0, c[7];\n"
2827  "MAD result.color, R0.x, R2, R1;\n"
2828  "END\n"
2829  ;
2830 
2832  "!!ARBfp1.0\n"
2833  "PARAM c[11] = { program.local[0..7],\n"
2834  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
2835  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
2836  " { 3.141593, 0.15915494, 2, 1 } };\n"
2837  "TEMP R0;\n"
2838  "TEMP R1;\n"
2839  "TEMP R2;\n"
2840  "TEMP R3;\n"
2841  "TEMP R4;\n"
2842  "MUL R0.xyz, fragment.position.y, c[2];\n"
2843  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2844  "ADD R0.xyz, R0, c[3];\n"
2845  "RCP R0.z, R0.z;\n"
2846  "MUL R0.xy, R0, R0.z;\n"
2847  "ABS R0.z, R0.x;\n"
2848  "ABS R0.w, R0.y;\n"
2849  "ADD R0.w, R0, -R0.z;\n"
2850  "ADD R1.x, R0.y, c[8];\n"
2851  "ABS R0.w, R0;\n"
2852  "CMP R0.y, -R0.w, R0, R1.x;\n"
2853  "ABS R0.w, -R0.y;\n"
2854  "MAX R1.x, R0.z, R0.w;\n"
2855  "RCP R1.y, R1.x;\n"
2856  "MIN R1.x, R0.z, R0.w;\n"
2857  "MUL R1.x, R1, R1.y;\n"
2858  "MUL R1.y, R1.x, R1.x;\n"
2859  "MAD R1.z, R1.y, c[8].y, c[8];\n"
2860  "MAD R1.z, R1, R1.y, -c[8].w;\n"
2861  "MAD R1.z, R1, R1.y, c[9].x;\n"
2862  "MAD R1.z, R1, R1.y, -c[9].y;\n"
2863  "MAD R1.y, R1.z, R1, c[9].z;\n"
2864  "MUL R1.x, R1.y, R1;\n"
2865  "ADD R0.z, -R0, R0.w;\n"
2866  "ADD R1.y, -R1.x, c[9].w;\n"
2867  "CMP R0.z, -R0, R1.y, R1.x;\n"
2868  "ADD R0.w, -R0.z, c[10].x;\n"
2869  "CMP R0.x, R0, R0.w, R0.z;\n"
2870  "CMP R0.x, -R0.y, -R0, R0;\n"
2871  "ADD R0.x, R0, c[0];\n"
2872  "MUL R0.x, R0, c[10].y;\n"
2873  "FLR R0.y, R0.x;\n"
2874  "ADD R0.x, R0, -R0.y;\n"
2875  "TEX R0, R0, texture[2], 1D;\n"
2876  "MUL R1.xy, fragment.position, c[5];\n"
2877  "TEX R1, R1, texture[0], 2D;\n"
2878  "ADD R2.w, -R1, c[10];\n"
2879  "ADD R3.xyz, R0.w, -R0;\n"
2880  "ADD R2.xyz, R1.w, -R1;\n"
2881  "MUL R2.xyz, R2, R3;\n"
2882  "MUL R2.xyz, R2, c[10].z;\n"
2883  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
2884  "MUL R4.xyz, R0, R2.w;\n"
2885  "MAD R2.xyz, R0, R2.w, R2;\n"
2886  "MUL R3.xyz, R0, R1;\n"
2887  "ADD R2.w, -R0, c[10];\n"
2888  "MAD R3.xyz, R3, c[10].z, R4;\n"
2889  "MUL R0.xyz, R0, c[10].z;\n"
2890  "SGE R0.xyz, R0, R0.w;\n"
2891  "MAD R3.xyz, R1, R2.w, R3;\n"
2892  "MAD R2.xyz, R1, R2.w, R2;\n"
2893  "ADD R2.xyz, R2, -R3;\n"
2894  "MAD R2.xyz, R0, R2, R3;\n"
2895  "ADD R0.z, R0.w, R1.w;\n"
2896  "MAD R2.w, -R0, R1, R0.z;\n"
2897  "ADD R0.xy, fragment.position, c[6];\n"
2898  "MUL R0.xy, R0, c[4];\n"
2899  "TEX R0, R0, texture[1], 2D;\n"
2900  "ADD R2, R2, -R1;\n"
2901  "DP4 R0.x, R0, c[7];\n"
2902  "MAD result.color, R0.x, R2, R1;\n"
2903  "END\n"
2904  ;
2905 
2907  "!!ARBfp1.0\n"
2908  "PARAM c[13] = { program.local[0..7],\n"
2909  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
2910  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
2911  " { 3.141593, 0.15915494, 1, 2 },\n"
2912  " { 9.9999997e-006, 4, 16, 12 },\n"
2913  " { 3 } };\n"
2914  "TEMP R0;\n"
2915  "TEMP R1;\n"
2916  "TEMP R2;\n"
2917  "TEMP R3;\n"
2918  "TEMP R4;\n"
2919  "TEMP R5;\n"
2920  "TEMP R6;\n"
2921  "MUL R0.xyz, fragment.position.y, c[2];\n"
2922  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
2923  "ADD R0.xyz, R0, c[3];\n"
2924  "RCP R0.z, R0.z;\n"
2925  "MUL R0.xy, R0, R0.z;\n"
2926  "ABS R0.w, R0.x;\n"
2927  "ABS R0.z, R0.y;\n"
2928  "ADD R0.z, R0, -R0.w;\n"
2929  "ADD R1.x, R0.y, c[8];\n"
2930  "ABS R0.z, R0;\n"
2931  "CMP R0.y, -R0.z, R0, R1.x;\n"
2932  "ABS R0.z, -R0.y;\n"
2933  "MAX R1.x, R0.w, R0.z;\n"
2934  "RCP R1.y, R1.x;\n"
2935  "MIN R1.x, R0.w, R0.z;\n"
2936  "MUL R1.x, R1, R1.y;\n"
2937  "MUL R1.y, R1.x, R1.x;\n"
2938  "MAD R1.z, R1.y, c[8].y, c[8];\n"
2939  "MAD R1.z, R1, R1.y, -c[8].w;\n"
2940  "MAD R1.z, R1, R1.y, c[9].x;\n"
2941  "MAD R1.z, R1, R1.y, -c[9].y;\n"
2942  "MAD R1.y, R1.z, R1, c[9].z;\n"
2943  "MUL R1.x, R1.y, R1;\n"
2944  "ADD R1.y, -R1.x, c[9].w;\n"
2945  "ADD R0.z, -R0.w, R0;\n"
2946  "CMP R0.z, -R0, R1.y, R1.x;\n"
2947  "ADD R0.w, -R0.z, c[10].x;\n"
2948  "CMP R0.x, R0, R0.w, R0.z;\n"
2949  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
2950  "TEX R1, R0.zwzw, texture[0], 2D;\n"
2951  "CMP R0.x, -R0.y, -R0, R0;\n"
2952  "MAX R0.z, R1.w, c[11].x;\n"
2953  "RCP R2.x, R0.z;\n"
2954  "MUL R3.xyz, R1, R2.x;\n"
2955  "MAD R4.xyz, R3, c[11].z, -c[11].w;\n"
2956  "ADD R0.x, R0, c[0];\n"
2957  "MUL R0.x, R0, c[10].y;\n"
2958  "FLR R0.y, R0.x;\n"
2959  "ADD R0.x, R0, -R0.y;\n"
2960  "TEX R0, R0, texture[2], 1D;\n"
2961  "MAD R2.xyz, R0, c[10].w, -R0.w;\n"
2962  "MAD R4.xyz, R3, R4, c[12].x;\n"
2963  "MUL R5.xyz, R1.w, R2;\n"
2964  "MUL R6.xyz, R5, R4;\n"
2965  "RSQ R2.w, R3.x;\n"
2966  "RCP R4.x, R2.w;\n"
2967  "RSQ R2.w, R3.y;\n"
2968  "RSQ R3.w, R3.z;\n"
2969  "RCP R4.y, R2.w;\n"
2970  "RCP R4.z, R3.w;\n"
2971  "ADD R4.xyz, -R3, R4;\n"
2972  "MUL R6.xyz, R3, R6;\n"
2973  "MUL R4.xyz, R5, R4;\n"
2974  "ADD R3.xyz, -R3, c[10].z;\n"
2975  "MAD R2.xyz, R2, R3, R0.w;\n"
2976  "MUL R3.xyz, R0, c[10].w;\n"
2977  "MAD R5.xyz, R0.w, R1, R6;\n"
2978  "MAD R4.xyz, R0.w, R1, R4;\n"
2979  "ADD R6.xyz, R4, -R5;\n"
2980  "MUL R4.xyz, R1, c[11].y;\n"
2981  "SGE R4.xyz, R4, R1.w;\n"
2982  "MAD R4.xyz, R4, R6, R5;\n"
2983  "MAD R4.xyz, -R1, R2, R4;\n"
2984  "SGE R3.xyz, R3, R0.w;\n"
2985  "MUL R2.xyz, R1, R2;\n"
2986  "ADD R2.w, -R1, c[10].z;\n"
2987  "MAD R2.xyz, R3, R4, R2;\n"
2988  "MAD R2.xyz, R0, R2.w, R2;\n"
2989  "ADD R0.x, -R0.w, c[10].z;\n"
2990  "MAD R2.xyz, R1, R0.x, R2;\n"
2991  "ADD R0.z, R0.w, R1.w;\n"
2992  "MAD R2.w, -R0, R1, R0.z;\n"
2993  "ADD R0.xy, fragment.position, c[6];\n"
2994  "MUL R0.xy, R0, c[4];\n"
2995  "TEX R0, R0, texture[1], 2D;\n"
2996  "ADD R2, R2, -R1;\n"
2997  "DP4 R0.x, R0, c[7];\n"
2998  "MAD result.color, R0.x, R2, R1;\n"
2999  "END\n"
3000  ;
3001 
3003  "!!ARBfp1.0\n"
3004  "PARAM c[11] = { program.local[0..7],\n"
3005  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3006  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3007  " { 0.33299461, 0.99999559, 2 } };\n"
3008  "TEMP R0;\n"
3009  "TEMP R1;\n"
3010  "TEMP R2;\n"
3011  "TEMP R3;\n"
3012  "MUL R0.xyz, fragment.position.y, c[2];\n"
3013  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3014  "ADD R0.xyz, R0, c[3];\n"
3015  "RCP R0.z, R0.z;\n"
3016  "MUL R0.xy, R0, R0.z;\n"
3017  "ABS R0.z, R0.x;\n"
3018  "ABS R0.w, R0.y;\n"
3019  "ADD R0.w, R0, -R0.z;\n"
3020  "ADD R1.x, R0.y, c[8].y;\n"
3021  "ABS R0.w, R0;\n"
3022  "CMP R0.y, -R0.w, R0, R1.x;\n"
3023  "ABS R0.w, -R0.y;\n"
3024  "MAX R1.x, R0.z, R0.w;\n"
3025  "RCP R1.y, R1.x;\n"
3026  "MIN R1.x, R0.z, R0.w;\n"
3027  "MUL R1.x, R1, R1.y;\n"
3028  "MUL R1.y, R1.x, R1.x;\n"
3029  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
3030  "MAD R1.z, R1, R1.y, -c[9];\n"
3031  "MAD R1.z, R1, R1.y, c[9].w;\n"
3032  "MAD R1.z, R1, R1.y, -c[10].x;\n"
3033  "MAD R1.y, R1.z, R1, c[10];\n"
3034  "MUL R1.x, R1.y, R1;\n"
3035  "ADD R1.y, -R1.x, c[8].w;\n"
3036  "ADD R0.z, -R0, R0.w;\n"
3037  "CMP R0.z, -R0, R1.y, R1.x;\n"
3038  "ADD R0.w, -R0.z, c[8].z;\n"
3039  "CMP R0.x, R0, R0.w, R0.z;\n"
3040  "CMP R0.x, -R0.y, -R0, R0;\n"
3041  "ADD R0.x, R0, c[0];\n"
3042  "MUL R0.z, R0.x, c[8].x;\n"
3043  "FLR R0.w, R0.z;\n"
3044  "ADD R1.x, R0.z, -R0.w;\n"
3045  "MUL R0.xy, fragment.position, c[5];\n"
3046  "TEX R0, R0, texture[0], 2D;\n"
3047  "TEX R1, R1, texture[2], 1D;\n"
3048  "ADD R2.xyz, R1, R0;\n"
3049  "MUL R3.xyz, R1.w, R0;\n"
3050  "MUL R1.xyz, R1, R0.w;\n"
3051  "MIN R1.xyz, R1, R3;\n"
3052  "MAD R2.xyz, -R1, c[10].z, R2;\n"
3053  "ADD R1.z, R1.w, R0.w;\n"
3054  "MAD R2.w, -R1, R0, R1.z;\n"
3055  "ADD R1.xy, fragment.position, c[6];\n"
3056  "MUL R1.xy, R1, c[4];\n"
3057  "TEX R1, R1, texture[1], 2D;\n"
3058  "ADD R2, R2, -R0;\n"
3059  "DP4 R1.x, R1, c[7];\n"
3060  "MAD result.color, R1.x, R2, R0;\n"
3061  "END\n"
3062  ;
3063 
3065  "!!ARBfp1.0\n"
3066  "PARAM c[11] = { program.local[0..7],\n"
3067  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3068  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3069  " { 0.33299461, 0.99999559, 2, 1 } };\n"
3070  "TEMP R0;\n"
3071  "TEMP R1;\n"
3072  "TEMP R2;\n"
3073  "TEMP R3;\n"
3074  "MUL R0.xyz, fragment.position.y, c[2];\n"
3075  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3076  "ADD R0.xyz, R0, c[3];\n"
3077  "RCP R0.z, R0.z;\n"
3078  "MUL R0.xy, R0, R0.z;\n"
3079  "ABS R0.z, R0.x;\n"
3080  "ABS R0.w, R0.y;\n"
3081  "ADD R0.w, R0, -R0.z;\n"
3082  "ADD R1.x, R0.y, c[8].y;\n"
3083  "ABS R0.w, R0;\n"
3084  "CMP R0.y, -R0.w, R0, R1.x;\n"
3085  "ABS R0.w, -R0.y;\n"
3086  "MAX R1.x, R0.z, R0.w;\n"
3087  "RCP R1.y, R1.x;\n"
3088  "MIN R1.x, R0.z, R0.w;\n"
3089  "MUL R1.x, R1, R1.y;\n"
3090  "MUL R1.y, R1.x, R1.x;\n"
3091  "MAD R1.z, R1.y, c[9].x, c[9].y;\n"
3092  "MAD R1.z, R1, R1.y, -c[9];\n"
3093  "MAD R1.z, R1, R1.y, c[9].w;\n"
3094  "MAD R1.z, R1, R1.y, -c[10].x;\n"
3095  "MAD R1.y, R1.z, R1, c[10];\n"
3096  "MUL R1.x, R1.y, R1;\n"
3097  "ADD R1.y, -R1.x, c[8].w;\n"
3098  "ADD R0.z, -R0, R0.w;\n"
3099  "CMP R0.z, -R0, R1.y, R1.x;\n"
3100  "ADD R0.w, -R0.z, c[8].z;\n"
3101  "CMP R0.x, R0, R0.w, R0.z;\n"
3102  "CMP R0.x, -R0.y, -R0, R0;\n"
3103  "ADD R0.x, R0, c[0];\n"
3104  "MUL R0.z, R0.x, c[8].x;\n"
3105  "FLR R0.w, R0.z;\n"
3106  "ADD R1.x, R0.z, -R0.w;\n"
3107  "MUL R0.xy, fragment.position, c[5];\n"
3108  "TEX R0, R0, texture[0], 2D;\n"
3109  "TEX R1, R1, texture[2], 1D;\n"
3110  "MUL R2.xyz, R1.w, R0;\n"
3111  "MAD R3.xyz, R1, R0.w, R2;\n"
3112  "MUL R2.xyz, R1, R0;\n"
3113  "MAD R2.xyz, -R2, c[10].z, R3;\n"
3114  "ADD R2.w, -R0, c[10];\n"
3115  "MAD R1.xyz, R1, R2.w, R2;\n"
3116  "ADD R2.x, -R1.w, c[10].w;\n"
3117  "MAD R2.xyz, R0, R2.x, R1;\n"
3118  "ADD R1.z, R1.w, R0.w;\n"
3119  "MAD R2.w, -R1, R0, R1.z;\n"
3120  "ADD R1.xy, fragment.position, c[6];\n"
3121  "MUL R1.xy, R1, c[4];\n"
3122  "TEX R1, R1, texture[1], 2D;\n"
3123  "ADD R2, R2, -R0;\n"
3124  "DP4 R1.x, R1, c[7];\n"
3125  "MAD result.color, R1.x, R2, R0;\n"
3126  "END\n"
3127  ;
3128 
3130  "!!ARBfp1.0\n"
3131  "PARAM c[10] = { program.local[0..6],\n"
3132  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3133  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3134  " { 0.33299461, 0.99999559, 1 } };\n"
3135  "TEMP R0;\n"
3136  "TEMP R1;\n"
3137  "TEMP R2;\n"
3138  "TEMP R3;\n"
3139  "MUL R0.xyz, fragment.position.y, c[2];\n"
3140  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3141  "ADD R0.xyz, R0, c[3];\n"
3142  "RCP R0.z, R0.z;\n"
3143  "MUL R0.xy, R0, R0.z;\n"
3144  "ABS R0.z, R0.x;\n"
3145  "ABS R0.w, R0.y;\n"
3146  "ADD R0.w, R0, -R0.z;\n"
3147  "ADD R1.x, R0.y, c[7].y;\n"
3148  "ABS R0.w, R0;\n"
3149  "CMP R0.y, -R0.w, R0, R1.x;\n"
3150  "ABS R0.w, -R0.y;\n"
3151  "MAX R1.x, R0.z, R0.w;\n"
3152  "RCP R1.y, R1.x;\n"
3153  "MIN R1.x, R0.z, R0.w;\n"
3154  "MUL R1.x, R1, R1.y;\n"
3155  "MUL R1.y, R1.x, R1.x;\n"
3156  "MAD R1.z, R1.y, c[8].x, c[8].y;\n"
3157  "MAD R1.z, R1, R1.y, -c[8];\n"
3158  "MAD R1.z, R1, R1.y, c[8].w;\n"
3159  "MAD R1.z, R1, R1.y, -c[9].x;\n"
3160  "MAD R1.y, R1.z, R1, c[9];\n"
3161  "MUL R1.x, R1.y, R1;\n"
3162  "ADD R0.z, -R0, R0.w;\n"
3163  "ADD R1.y, -R1.x, c[7].w;\n"
3164  "CMP R0.z, -R0, R1.y, R1.x;\n"
3165  "ADD R0.w, -R0.z, c[7].z;\n"
3166  "CMP R0.x, R0, R0.w, R0.z;\n"
3167  "CMP R0.x, -R0.y, -R0, R0;\n"
3168  "MUL R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
3169  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3170  "MUL R2.xyz, R1, c[4].y;\n"
3171  "ADD R0.x, R0, c[0];\n"
3172  "MUL R0.x, R0, c[7];\n"
3173  "FLR R0.y, R0.x;\n"
3174  "ADD R0.x, R0, -R0.y;\n"
3175  "TEX R0, R0, texture[1], 1D;\n"
3176  "MUL R3.xyz, R0.w, R2;\n"
3177  "MUL R2.xyz, R0, c[4].x;\n"
3178  "MAD R2.xyz, R1.w, R2, R3;\n"
3179  "ADD R2.w, -R1, c[9].z;\n"
3180  "MUL R0.xyz, R0, c[5].y;\n"
3181  "MAD R0.xyz, R2.w, R0, R2;\n"
3182  "ADD R2.x, -R0.w, c[9].z;\n"
3183  "MUL R1.xyz, R1, c[5].z;\n"
3184  "MAD result.color.xyz, R2.x, R1, R0;\n"
3185  "MUL R0.x, R0.w, R1.w;\n"
3186  "MUL R0.z, R1.w, R2.x;\n"
3187  "MUL R0.y, R0.w, R2.w;\n"
3188  "DP3 result.color.w, R0, c[5];\n"
3189  "END\n"
3190  ;
3191 
3193  "!!ARBfp1.0\n"
3194  "PARAM c[8] = { program.local[0..4],\n"
3195  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3196  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3197  " { 0.33299461, 0.99999559, 1 } };\n"
3198  "TEMP R0;\n"
3199  "TEMP R1;\n"
3200  "TEMP R2;\n"
3201  "MUL R0.xyz, fragment.position.y, c[2];\n"
3202  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3203  "ADD R0.xyz, R0, c[3];\n"
3204  "RCP R0.z, R0.z;\n"
3205  "MUL R0.xy, R0, R0.z;\n"
3206  "ABS R0.z, R0.x;\n"
3207  "ABS R0.w, R0.y;\n"
3208  "ADD R0.w, R0, -R0.z;\n"
3209  "ADD R1.x, R0.y, c[5].y;\n"
3210  "ABS R0.w, R0;\n"
3211  "CMP R0.y, -R0.w, R0, R1.x;\n"
3212  "ABS R0.w, -R0.y;\n"
3213  "MAX R1.x, R0.z, R0.w;\n"
3214  "RCP R1.y, R1.x;\n"
3215  "MIN R1.x, R0.z, R0.w;\n"
3216  "MUL R1.x, R1, R1.y;\n"
3217  "MUL R1.y, R1.x, R1.x;\n"
3218  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3219  "MAD R1.z, R1, R1.y, -c[6];\n"
3220  "MAD R1.z, R1, R1.y, c[6].w;\n"
3221  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3222  "MAD R1.y, R1.z, R1, c[7];\n"
3223  "MUL R1.x, R1.y, R1;\n"
3224  "ADD R0.z, -R0, R0.w;\n"
3225  "ADD R1.y, -R1.x, c[5].w;\n"
3226  "CMP R0.z, -R0, R1.y, R1.x;\n"
3227  "ADD R0.w, -R0.z, c[5].z;\n"
3228  "CMP R0.x, R0, R0.w, R0.z;\n"
3229  "CMP R0.x, -R0.y, -R0, R0;\n"
3230  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3231  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3232  "ADD R0.x, R0, c[0];\n"
3233  "MUL R0.x, R0, c[5];\n"
3234  "FLR R0.y, R0.x;\n"
3235  "ADD R0.x, R0, -R0.y;\n"
3236  "TEX R0, R0, texture[1], 1D;\n"
3237  "ADD R2.x, -R1.w, c[7].z;\n"
3238  "MUL R2.xyz, R0, R2.x;\n"
3239  "MAD R0.xyz, R0, R1, R2;\n"
3240  "ADD R2.x, R0.w, R1.w;\n"
3241  "ADD R2.y, -R0.w, c[7].z;\n"
3242  "MAD result.color.xyz, R1, R2.y, R0;\n"
3243  "MAD result.color.w, -R0, R1, R2.x;\n"
3244  "END\n"
3245  ;
3246 
3248  "!!ARBfp1.0\n"
3249  "PARAM c[8] = { program.local[0..4],\n"
3250  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3251  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3252  " { 0.33299461, 0.99999559 } };\n"
3253  "TEMP R0;\n"
3254  "TEMP R1;\n"
3255  "TEMP R2;\n"
3256  "MUL R0.xyz, fragment.position.y, c[2];\n"
3257  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3258  "ADD R0.xyz, R0, c[3];\n"
3259  "RCP R0.z, R0.z;\n"
3260  "MUL R0.xy, R0, R0.z;\n"
3261  "ABS R0.z, R0.x;\n"
3262  "ABS R0.w, R0.y;\n"
3263  "ADD R0.w, R0, -R0.z;\n"
3264  "ADD R1.x, R0.y, c[5].y;\n"
3265  "ABS R0.w, R0;\n"
3266  "CMP R0.y, -R0.w, R0, R1.x;\n"
3267  "ABS R0.w, -R0.y;\n"
3268  "MAX R1.x, R0.z, R0.w;\n"
3269  "RCP R1.y, R1.x;\n"
3270  "MIN R1.x, R0.z, R0.w;\n"
3271  "MUL R1.x, R1, R1.y;\n"
3272  "MUL R1.y, R1.x, R1.x;\n"
3273  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3274  "MAD R1.z, R1, R1.y, -c[6];\n"
3275  "MAD R1.z, R1, R1.y, c[6].w;\n"
3276  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3277  "MAD R1.y, R1.z, R1, c[7];\n"
3278  "MUL R1.x, R1.y, R1;\n"
3279  "ADD R0.z, -R0, R0.w;\n"
3280  "ADD R1.y, -R1.x, c[5].w;\n"
3281  "CMP R0.z, -R0, R1.y, R1.x;\n"
3282  "ADD R0.w, -R0.z, c[5].z;\n"
3283  "CMP R0.x, R0, R0.w, R0.z;\n"
3284  "CMP R0.x, -R0.y, -R0, R0;\n"
3285  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3286  "ADD R0.x, R0, c[0];\n"
3287  "MUL R0.x, R0, c[5];\n"
3288  "FLR R0.y, R0.x;\n"
3289  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3290  "ADD R0.x, R0, -R0.y;\n"
3291  "TEX R0, R0, texture[1], 1D;\n"
3292  "ADD R2, R0, R1;\n"
3293  "MAD result.color, -R0, R1, R2;\n"
3294  "END\n"
3295  ;
3296 
3298  "!!ARBfp1.0\n"
3299  "PARAM c[8] = { program.local[0..4],\n"
3300  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
3301  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
3302  " { 3.141593, 0.15915494, 2, 1 } };\n"
3303  "TEMP R0;\n"
3304  "TEMP R1;\n"
3305  "TEMP R2;\n"
3306  "TEMP R3;\n"
3307  "MUL R0.xyz, fragment.position.y, c[2];\n"
3308  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3309  "ADD R0.xyz, R0, c[3];\n"
3310  "RCP R0.z, R0.z;\n"
3311  "MUL R0.xy, R0, R0.z;\n"
3312  "ABS R0.z, R0.x;\n"
3313  "ABS R0.w, R0.y;\n"
3314  "ADD R0.w, R0, -R0.z;\n"
3315  "ADD R1.x, R0.y, c[5];\n"
3316  "ABS R0.w, R0;\n"
3317  "CMP R0.y, -R0.w, R0, R1.x;\n"
3318  "ABS R0.w, -R0.y;\n"
3319  "MAX R1.x, R0.z, R0.w;\n"
3320  "RCP R1.y, R1.x;\n"
3321  "MIN R1.x, R0.z, R0.w;\n"
3322  "MUL R1.x, R1, R1.y;\n"
3323  "MUL R1.y, R1.x, R1.x;\n"
3324  "MAD R1.z, R1.y, c[5].y, c[5];\n"
3325  "MAD R1.z, R1, R1.y, -c[5].w;\n"
3326  "MAD R1.z, R1, R1.y, c[6].x;\n"
3327  "MAD R1.z, R1, R1.y, -c[6].y;\n"
3328  "MAD R1.y, R1.z, R1, c[6].z;\n"
3329  "MUL R1.x, R1.y, R1;\n"
3330  "ADD R0.z, -R0, R0.w;\n"
3331  "ADD R1.y, -R1.x, c[6].w;\n"
3332  "CMP R0.z, -R0, R1.y, R1.x;\n"
3333  "ADD R0.w, -R0.z, c[7].x;\n"
3334  "CMP R0.x, R0, R0.w, R0.z;\n"
3335  "CMP R0.x, -R0.y, -R0, R0;\n"
3336  "ADD R0.x, R0, c[0];\n"
3337  "MUL R0.x, R0, c[7].y;\n"
3338  "FLR R0.y, R0.x;\n"
3339  "ADD R0.x, R0, -R0.y;\n"
3340  "TEX R0, R0, texture[1], 1D;\n"
3341  "MUL R1.xy, fragment.position, c[4];\n"
3342  "TEX R1, R1, texture[0], 2D;\n"
3343  "ADD R3.xyz, R0.w, -R0;\n"
3344  "ADD R2.xyz, R1.w, -R1;\n"
3345  "MUL R2.xyz, R2, R3;\n"
3346  "ADD R2.w, -R1, c[7];\n"
3347  "MUL R2.xyz, R2, c[7].z;\n"
3348  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
3349  "MAD R2.xyz, R0, R2.w, R2;\n"
3350  "MUL R3.xyz, R0, R2.w;\n"
3351  "MUL R0.xyz, R0, R1;\n"
3352  "ADD R2.w, -R0, c[7];\n"
3353  "MAD R0.xyz, R0, c[7].z, R3;\n"
3354  "MAD R0.xyz, R1, R2.w, R0;\n"
3355  "MAD R2.xyz, R1, R2.w, R2;\n"
3356  "MUL R1.xyz, R1, c[7].z;\n"
3357  "ADD R2.w, R0, R1;\n"
3358  "ADD R2.xyz, R2, -R0;\n"
3359  "SGE R1.xyz, R1, R1.w;\n"
3360  "MAD result.color.xyz, R1, R2, R0;\n"
3361  "MAD result.color.w, -R0, R1, R2;\n"
3362  "END\n"
3363  ;
3364 
3366  "!!ARBfp1.0\n"
3367  "PARAM c[8] = { program.local[0..4],\n"
3368  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3369  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3370  " { 0.33299461, 0.99999559, 1 } };\n"
3371  "TEMP R0;\n"
3372  "TEMP R1;\n"
3373  "TEMP R2;\n"
3374  "TEMP R3;\n"
3375  "MUL R0.xyz, fragment.position.y, c[2];\n"
3376  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3377  "ADD R0.xyz, R0, c[3];\n"
3378  "RCP R0.z, R0.z;\n"
3379  "MUL R0.xy, R0, R0.z;\n"
3380  "ABS R0.z, R0.x;\n"
3381  "ABS R0.w, R0.y;\n"
3382  "ADD R0.w, R0, -R0.z;\n"
3383  "ADD R1.x, R0.y, c[5].y;\n"
3384  "ABS R0.w, R0;\n"
3385  "CMP R0.y, -R0.w, R0, R1.x;\n"
3386  "ABS R0.w, -R0.y;\n"
3387  "MAX R1.x, R0.z, R0.w;\n"
3388  "RCP R1.y, R1.x;\n"
3389  "MIN R1.x, R0.z, R0.w;\n"
3390  "MUL R1.x, R1, R1.y;\n"
3391  "MUL R1.y, R1.x, R1.x;\n"
3392  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3393  "MAD R1.z, R1, R1.y, -c[6];\n"
3394  "MAD R1.z, R1, R1.y, c[6].w;\n"
3395  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3396  "MAD R1.y, R1.z, R1, c[7];\n"
3397  "MUL R1.x, R1.y, R1;\n"
3398  "ADD R0.z, -R0, R0.w;\n"
3399  "ADD R1.y, -R1.x, c[5].w;\n"
3400  "CMP R0.z, -R0, R1.y, R1.x;\n"
3401  "ADD R0.w, -R0.z, c[5].z;\n"
3402  "CMP R0.x, R0, R0.w, R0.z;\n"
3403  "CMP R0.x, -R0.y, -R0, R0;\n"
3404  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3405  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3406  "ADD R0.x, R0, c[0];\n"
3407  "MUL R0.x, R0, c[5];\n"
3408  "FLR R0.y, R0.x;\n"
3409  "ADD R0.x, R0, -R0.y;\n"
3410  "TEX R0, R0, texture[1], 1D;\n"
3411  "MUL R2.xyz, R0, R1.w;\n"
3412  "MUL R3.xyz, R0.w, R1;\n"
3413  "MIN R2.xyz, R2, R3;\n"
3414  "ADD R2.w, -R1, c[7].z;\n"
3415  "MAD R0.xyz, R0, R2.w, R2;\n"
3416  "ADD R2.x, R0.w, R1.w;\n"
3417  "ADD R2.y, -R0.w, c[7].z;\n"
3418  "MAD result.color.xyz, R1, R2.y, R0;\n"
3419  "MAD result.color.w, -R0, R1, R2.x;\n"
3420  "END\n"
3421  ;
3422 
3424  "!!ARBfp1.0\n"
3425  "PARAM c[8] = { program.local[0..4],\n"
3426  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3427  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3428  " { 0.33299461, 0.99999559, 1 } };\n"
3429  "TEMP R0;\n"
3430  "TEMP R1;\n"
3431  "TEMP R2;\n"
3432  "TEMP R3;\n"
3433  "MUL R0.xyz, fragment.position.y, c[2];\n"
3434  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3435  "ADD R0.xyz, R0, c[3];\n"
3436  "RCP R0.z, R0.z;\n"
3437  "MUL R0.xy, R0, R0.z;\n"
3438  "ABS R0.z, R0.x;\n"
3439  "ABS R0.w, R0.y;\n"
3440  "ADD R0.w, R0, -R0.z;\n"
3441  "ADD R1.x, R0.y, c[5].y;\n"
3442  "ABS R0.w, R0;\n"
3443  "CMP R0.y, -R0.w, R0, R1.x;\n"
3444  "ABS R0.w, -R0.y;\n"
3445  "MAX R1.x, R0.z, R0.w;\n"
3446  "RCP R1.y, R1.x;\n"
3447  "MIN R1.x, R0.z, R0.w;\n"
3448  "MUL R1.x, R1, R1.y;\n"
3449  "MUL R1.y, R1.x, R1.x;\n"
3450  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3451  "MAD R1.z, R1, R1.y, -c[6];\n"
3452  "MAD R1.z, R1, R1.y, c[6].w;\n"
3453  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3454  "MAD R1.y, R1.z, R1, c[7];\n"
3455  "MUL R1.x, R1.y, R1;\n"
3456  "ADD R0.z, -R0, R0.w;\n"
3457  "ADD R1.y, -R1.x, c[5].w;\n"
3458  "CMP R0.z, -R0, R1.y, R1.x;\n"
3459  "ADD R0.w, -R0.z, c[5].z;\n"
3460  "CMP R0.x, R0, R0.w, R0.z;\n"
3461  "CMP R0.x, -R0.y, -R0, R0;\n"
3462  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3463  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3464  "ADD R0.x, R0, c[0];\n"
3465  "MUL R0.x, R0, c[5];\n"
3466  "FLR R0.y, R0.x;\n"
3467  "ADD R0.x, R0, -R0.y;\n"
3468  "TEX R0, R0, texture[1], 1D;\n"
3469  "MUL R2.xyz, R0, R1.w;\n"
3470  "MUL R3.xyz, R0.w, R1;\n"
3471  "MAX R2.xyz, R2, R3;\n"
3472  "ADD R2.w, -R1, c[7].z;\n"
3473  "MAD R0.xyz, R0, R2.w, R2;\n"
3474  "ADD R2.x, R0.w, R1.w;\n"
3475  "ADD R2.y, -R0.w, c[7].z;\n"
3476  "MAD result.color.xyz, R1, R2.y, R0;\n"
3477  "MAD result.color.w, -R0, R1, R2.x;\n"
3478  "END\n"
3479  ;
3480 
3482  "!!ARBfp1.0\n"
3483  "PARAM c[8] = { program.local[0..4],\n"
3484  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
3485  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
3486  " { 3.141593, 0.15915494, 1, 1e-006 } };\n"
3487  "TEMP R0;\n"
3488  "TEMP R1;\n"
3489  "TEMP R2;\n"
3490  "TEMP R3;\n"
3491  "MUL R0.xyz, fragment.position.y, c[2];\n"
3492  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3493  "ADD R0.xyz, R0, c[3];\n"
3494  "RCP R0.z, R0.z;\n"
3495  "MUL R0.xy, R0, R0.z;\n"
3496  "ABS R0.z, R0.x;\n"
3497  "ABS R0.w, R0.y;\n"
3498  "ADD R0.w, R0, -R0.z;\n"
3499  "ADD R1.x, R0.y, c[5];\n"
3500  "ABS R0.w, R0;\n"
3501  "CMP R0.y, -R0.w, R0, R1.x;\n"
3502  "ABS R0.w, -R0.y;\n"
3503  "MAX R1.x, R0.z, R0.w;\n"
3504  "RCP R1.y, R1.x;\n"
3505  "MIN R1.x, R0.z, R0.w;\n"
3506  "MUL R1.x, R1, R1.y;\n"
3507  "MUL R1.y, R1.x, R1.x;\n"
3508  "MAD R1.z, R1.y, c[5].y, c[5];\n"
3509  "MAD R1.z, R1, R1.y, -c[5].w;\n"
3510  "MAD R1.z, R1, R1.y, c[6].x;\n"
3511  "MAD R1.z, R1, R1.y, -c[6].y;\n"
3512  "MAD R1.y, R1.z, R1, c[6].z;\n"
3513  "MUL R1.x, R1.y, R1;\n"
3514  "ADD R1.y, -R1.x, c[6].w;\n"
3515  "ADD R0.z, -R0, R0.w;\n"
3516  "CMP R0.z, -R0, R1.y, R1.x;\n"
3517  "ADD R0.w, -R0.z, c[7].x;\n"
3518  "CMP R0.x, R0, R0.w, R0.z;\n"
3519  "CMP R0.x, -R0.y, -R0, R0;\n"
3520  "ADD R0.x, R0, c[0];\n"
3521  "MUL R0.x, R0, c[7].y;\n"
3522  "FLR R0.y, R0.x;\n"
3523  "ADD R0.x, R0, -R0.y;\n"
3524  "TEX R0, R0, texture[1], 1D;\n"
3525  "MAX R1.x, R0.w, c[7].w;\n"
3526  "RCP R1.x, R1.x;\n"
3527  "MAD R1.xyz, -R0, R1.x, c[7].z;\n"
3528  "MAX R2.xyz, R1, c[7].w;\n"
3529  "MUL R1.xy, fragment.position, c[4];\n"
3530  "TEX R1, R1, texture[0], 2D;\n"
3531  "ADD R2.w, -R0, c[7].z;\n"
3532  "MUL R3.xyz, R1, R2.w;\n"
3533  "ADD R2.w, -R1, c[7].z;\n"
3534  "MAD R3.xyz, R0, R2.w, R3;\n"
3535  "MUL R1.xyz, R0.w, R1;\n"
3536  "MAD R0.xyz, R0, R1.w, R1;\n"
3537  "MUL R2.w, R0, R1;\n"
3538  "RCP R2.x, R2.x;\n"
3539  "RCP R2.y, R2.y;\n"
3540  "RCP R2.z, R2.z;\n"
3541  "MAD R2.xyz, R1, R2, R3;\n"
3542  "MAD R3.xyz, R0.w, R1.w, R3;\n"
3543  "ADD R1.x, R0.w, R1.w;\n"
3544  "ADD R3.xyz, R3, -R2;\n"
3545  "SGE R0.xyz, R0, R2.w;\n"
3546  "MAD result.color.xyz, R0, R3, R2;\n"
3547  "MAD result.color.w, -R0, R1, R1.x;\n"
3548  "END\n"
3549  ;
3550 
3552  "!!ARBfp1.0\n"
3553  "PARAM c[8] = { program.local[0..4],\n"
3554  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
3555  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
3556  " { 3.141593, 0.15915494, 1, 9.9999997e-006 } };\n"
3557  "TEMP R0;\n"
3558  "TEMP R1;\n"
3559  "TEMP R2;\n"
3560  "TEMP R3;\n"
3561  "TEMP R4;\n"
3562  "TEMP R5;\n"
3563  "MUL R0.xyz, fragment.position.y, c[2];\n"
3564  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3565  "ADD R0.xyz, R0, c[3];\n"
3566  "RCP R0.z, R0.z;\n"
3567  "MUL R0.xy, R0, R0.z;\n"
3568  "ABS R0.w, R0.x;\n"
3569  "ABS R0.z, R0.y;\n"
3570  "ADD R0.z, R0, -R0.w;\n"
3571  "ADD R1.x, R0.y, c[5];\n"
3572  "ABS R0.z, R0;\n"
3573  "CMP R0.y, -R0.z, R0, R1.x;\n"
3574  "ABS R0.z, -R0.y;\n"
3575  "MAX R1.x, R0.w, R0.z;\n"
3576  "RCP R1.y, R1.x;\n"
3577  "MIN R1.x, R0.w, R0.z;\n"
3578  "MUL R1.x, R1, R1.y;\n"
3579  "MUL R1.y, R1.x, R1.x;\n"
3580  "MAD R1.z, R1.y, c[5].y, c[5];\n"
3581  "MAD R1.z, R1, R1.y, -c[5].w;\n"
3582  "MAD R1.z, R1, R1.y, c[6].x;\n"
3583  "MAD R1.z, R1, R1.y, -c[6].y;\n"
3584  "MAD R1.y, R1.z, R1, c[6].z;\n"
3585  "MUL R1.x, R1.y, R1;\n"
3586  "ADD R1.y, -R1.x, c[6].w;\n"
3587  "ADD R0.z, -R0.w, R0;\n"
3588  "CMP R0.z, -R0, R1.y, R1.x;\n"
3589  "ADD R0.w, -R0.z, c[7].x;\n"
3590  "CMP R0.x, R0, R0.w, R0.z;\n"
3591  "CMP R0.x, -R0.y, -R0, R0;\n"
3592  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3593  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3594  "ADD R0.x, R0, c[0];\n"
3595  "MUL R0.x, R0, c[7].y;\n"
3596  "FLR R0.y, R0.x;\n"
3597  "ADD R0.x, R0, -R0.y;\n"
3598  "TEX R0, R0, texture[1], 1D;\n"
3599  "MUL R2.xyz, R0.w, R1;\n"
3600  "MAD R3.xyz, R0, R1.w, R2;\n"
3601  "ADD R2.w, -R1, c[7].z;\n"
3602  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
3603  "MUL R4.xyz, R0.w, R2;\n"
3604  "MAX R2.xyz, R0, c[7].w;\n"
3605  "MUL R5.xyz, R0, R2.w;\n"
3606  "ADD R3.w, -R0, c[7].z;\n"
3607  "RCP R2.x, R2.x;\n"
3608  "RCP R2.y, R2.y;\n"
3609  "RCP R2.z, R2.z;\n"
3610  "MAD R2.xyz, R4, R2, R5;\n"
3611  "MUL R4.xyz, R1, R3.w;\n"
3612  "MAD R1.xyz, R1, R3.w, R2;\n"
3613  "MAD R0.xyz, R0, R2.w, R4;\n"
3614  "MUL R2.x, R0.w, R1.w;\n"
3615  "ADD R2.w, R0, R1;\n"
3616  "ADD R1.xyz, R1, -R0;\n"
3617  "SGE R2.xyz, R3, R2.x;\n"
3618  "MAD result.color.xyz, R2, R1, R0;\n"
3619  "MAD result.color.w, -R0, R1, R2;\n"
3620  "END\n"
3621  ;
3622 
3624  "!!ARBfp1.0\n"
3625  "PARAM c[8] = { program.local[0..4],\n"
3626  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
3627  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
3628  " { 3.141593, 0.15915494, 2, 1 } };\n"
3629  "TEMP R0;\n"
3630  "TEMP R1;\n"
3631  "TEMP R2;\n"
3632  "TEMP R3;\n"
3633  "TEMP R4;\n"
3634  "MUL R0.xyz, fragment.position.y, c[2];\n"
3635  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3636  "ADD R0.xyz, R0, c[3];\n"
3637  "RCP R0.z, R0.z;\n"
3638  "MUL R0.xy, R0, R0.z;\n"
3639  "ABS R0.z, R0.x;\n"
3640  "ABS R0.w, R0.y;\n"
3641  "ADD R0.w, R0, -R0.z;\n"
3642  "ADD R1.x, R0.y, c[5];\n"
3643  "ABS R0.w, R0;\n"
3644  "CMP R0.y, -R0.w, R0, R1.x;\n"
3645  "ABS R0.w, -R0.y;\n"
3646  "MAX R1.x, R0.z, R0.w;\n"
3647  "RCP R1.y, R1.x;\n"
3648  "MIN R1.x, R0.z, R0.w;\n"
3649  "MUL R1.x, R1, R1.y;\n"
3650  "MUL R1.y, R1.x, R1.x;\n"
3651  "MAD R1.z, R1.y, c[5].y, c[5];\n"
3652  "MAD R1.z, R1, R1.y, -c[5].w;\n"
3653  "MAD R1.z, R1, R1.y, c[6].x;\n"
3654  "MAD R1.z, R1, R1.y, -c[6].y;\n"
3655  "MAD R1.y, R1.z, R1, c[6].z;\n"
3656  "MUL R1.x, R1.y, R1;\n"
3657  "ADD R0.z, -R0, R0.w;\n"
3658  "ADD R1.y, -R1.x, c[6].w;\n"
3659  "CMP R0.z, -R0, R1.y, R1.x;\n"
3660  "ADD R0.w, -R0.z, c[7].x;\n"
3661  "CMP R0.x, R0, R0.w, R0.z;\n"
3662  "CMP R0.x, -R0.y, -R0, R0;\n"
3663  "ADD R0.x, R0, c[0];\n"
3664  "MUL R0.x, R0, c[7].y;\n"
3665  "FLR R0.y, R0.x;\n"
3666  "ADD R0.x, R0, -R0.y;\n"
3667  "TEX R0, R0, texture[1], 1D;\n"
3668  "MUL R1.xy, fragment.position, c[4];\n"
3669  "TEX R1, R1, texture[0], 2D;\n"
3670  "ADD R2.w, -R1, c[7];\n"
3671  "ADD R3.xyz, R0.w, -R0;\n"
3672  "ADD R2.xyz, R1.w, -R1;\n"
3673  "MUL R2.xyz, R2, R3;\n"
3674  "MUL R2.xyz, R2, c[7].z;\n"
3675  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
3676  "MUL R4.xyz, R0, R2.w;\n"
3677  "MUL R3.xyz, R0, R1;\n"
3678  "MAD R2.xyz, R0, R2.w, R2;\n"
3679  "ADD R2.w, -R0, c[7];\n"
3680  "MUL R0.xyz, R0, c[7].z;\n"
3681  "MAD R2.xyz, R1, R2.w, R2;\n"
3682  "MAD R3.xyz, R3, c[7].z, R4;\n"
3683  "MAD R1.xyz, R1, R2.w, R3;\n"
3684  "ADD R2.w, R0, R1;\n"
3685  "ADD R2.xyz, R2, -R1;\n"
3686  "SGE R0.xyz, R0, R0.w;\n"
3687  "MAD result.color.xyz, R0, R2, R1;\n"
3688  "MAD result.color.w, -R0, R1, R2;\n"
3689  "END\n"
3690  ;
3691 
3693  "!!ARBfp1.0\n"
3694  "PARAM c[10] = { program.local[0..4],\n"
3695  " { 0.0020000001, -0.01348047, 0.05747731, 0.1212391 },\n"
3696  " { 0.1956359, 0.33299461, 0.99999559, 1.570796 },\n"
3697  " { 3.141593, 0.15915494, 1, 2 },\n"
3698  " { 9.9999997e-006, 4, 16, 12 },\n"
3699  " { 3 } };\n"
3700  "TEMP R0;\n"
3701  "TEMP R1;\n"
3702  "TEMP R2;\n"
3703  "TEMP R3;\n"
3704  "TEMP R4;\n"
3705  "TEMP R5;\n"
3706  "TEMP R6;\n"
3707  "MUL R0.xyz, fragment.position.y, c[2];\n"
3708  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3709  "ADD R0.xyz, R0, c[3];\n"
3710  "RCP R0.z, R0.z;\n"
3711  "MUL R0.xy, R0, R0.z;\n"
3712  "ABS R0.w, R0.x;\n"
3713  "ABS R0.z, R0.y;\n"
3714  "ADD R0.z, R0, -R0.w;\n"
3715  "ADD R1.x, R0.y, c[5];\n"
3716  "ABS R0.z, R0;\n"
3717  "CMP R0.y, -R0.z, R0, R1.x;\n"
3718  "ABS R0.z, -R0.y;\n"
3719  "MAX R1.x, R0.w, R0.z;\n"
3720  "RCP R1.y, R1.x;\n"
3721  "MIN R1.x, R0.w, R0.z;\n"
3722  "MUL R1.x, R1, R1.y;\n"
3723  "MUL R1.y, R1.x, R1.x;\n"
3724  "MAD R1.z, R1.y, c[5].y, c[5];\n"
3725  "MAD R1.z, R1, R1.y, -c[5].w;\n"
3726  "MAD R1.z, R1, R1.y, c[6].x;\n"
3727  "MAD R1.z, R1, R1.y, -c[6].y;\n"
3728  "MAD R1.y, R1.z, R1, c[6].z;\n"
3729  "MUL R1.x, R1.y, R1;\n"
3730  "ADD R1.y, -R1.x, c[6].w;\n"
3731  "ADD R0.z, -R0.w, R0;\n"
3732  "CMP R0.z, -R0, R1.y, R1.x;\n"
3733  "ADD R0.w, -R0.z, c[7].x;\n"
3734  "CMP R0.x, R0, R0.w, R0.z;\n"
3735  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3736  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3737  "CMP R0.x, -R0.y, -R0, R0;\n"
3738  "MAX R0.z, R1.w, c[8].x;\n"
3739  "RCP R2.x, R0.z;\n"
3740  "MUL R3.xyz, R1, R2.x;\n"
3741  "MAD R4.xyz, R3, c[8].z, -c[8].w;\n"
3742  "ADD R0.x, R0, c[0];\n"
3743  "MUL R0.x, R0, c[7].y;\n"
3744  "FLR R0.y, R0.x;\n"
3745  "ADD R0.x, R0, -R0.y;\n"
3746  "TEX R0, R0, texture[1], 1D;\n"
3747  "MAD R2.xyz, R0, c[7].w, -R0.w;\n"
3748  "MAD R4.xyz, R3, R4, c[9].x;\n"
3749  "MUL R5.xyz, R1.w, R2;\n"
3750  "MUL R6.xyz, R5, R4;\n"
3751  "RSQ R2.w, R3.x;\n"
3752  "RCP R4.x, R2.w;\n"
3753  "RSQ R2.w, R3.y;\n"
3754  "RSQ R3.w, R3.z;\n"
3755  "RCP R4.y, R2.w;\n"
3756  "RCP R4.z, R3.w;\n"
3757  "ADD R4.xyz, -R3, R4;\n"
3758  "MUL R6.xyz, R3, R6;\n"
3759  "MUL R4.xyz, R5, R4;\n"
3760  "ADD R3.xyz, -R3, c[7].z;\n"
3761  "MAD R2.xyz, R2, R3, R0.w;\n"
3762  "MUL R3.xyz, R0, c[7].w;\n"
3763  "MAD R5.xyz, R0.w, R1, R6;\n"
3764  "MAD R4.xyz, R0.w, R1, R4;\n"
3765  "ADD R6.xyz, R4, -R5;\n"
3766  "MUL R4.xyz, R1, c[8].y;\n"
3767  "SGE R4.xyz, R4, R1.w;\n"
3768  "MAD R4.xyz, R4, R6, R5;\n"
3769  "MAD R4.xyz, -R1, R2, R4;\n"
3770  "MUL R2.xyz, R1, R2;\n"
3771  "SGE R3.xyz, R3, R0.w;\n"
3772  "MAD R2.xyz, R3, R4, R2;\n"
3773  "ADD R2.w, -R1, c[7].z;\n"
3774  "MAD R2.xyz, R0, R2.w, R2;\n"
3775  "ADD R0.x, R0.w, R1.w;\n"
3776  "ADD R0.y, -R0.w, c[7].z;\n"
3777  "MAD result.color.xyz, R1, R0.y, R2;\n"
3778  "MAD result.color.w, -R0, R1, R0.x;\n"
3779  "END\n"
3780  ;
3781 
3783  "!!ARBfp1.0\n"
3784  "PARAM c[8] = { program.local[0..4],\n"
3785  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3786  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3787  " { 0.33299461, 0.99999559, 2 } };\n"
3788  "TEMP R0;\n"
3789  "TEMP R1;\n"
3790  "TEMP R2;\n"
3791  "TEMP R3;\n"
3792  "MUL R0.xyz, fragment.position.y, c[2];\n"
3793  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3794  "ADD R0.xyz, R0, c[3];\n"
3795  "RCP R0.z, R0.z;\n"
3796  "MUL R0.xy, R0, R0.z;\n"
3797  "ABS R0.z, R0.x;\n"
3798  "ABS R0.w, R0.y;\n"
3799  "ADD R0.w, R0, -R0.z;\n"
3800  "ADD R1.x, R0.y, c[5].y;\n"
3801  "ABS R0.w, R0;\n"
3802  "CMP R0.y, -R0.w, R0, R1.x;\n"
3803  "ABS R0.w, -R0.y;\n"
3804  "MAX R1.x, R0.z, R0.w;\n"
3805  "RCP R1.y, R1.x;\n"
3806  "MIN R1.x, R0.z, R0.w;\n"
3807  "MUL R1.x, R1, R1.y;\n"
3808  "MUL R1.y, R1.x, R1.x;\n"
3809  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3810  "MAD R1.z, R1, R1.y, -c[6];\n"
3811  "MAD R1.z, R1, R1.y, c[6].w;\n"
3812  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3813  "MAD R1.y, R1.z, R1, c[7];\n"
3814  "MUL R1.x, R1.y, R1;\n"
3815  "ADD R0.z, -R0, R0.w;\n"
3816  "ADD R1.y, -R1.x, c[5].w;\n"
3817  "CMP R0.z, -R0, R1.y, R1.x;\n"
3818  "ADD R0.w, -R0.z, c[5].z;\n"
3819  "CMP R0.x, R0, R0.w, R0.z;\n"
3820  "CMP R0.x, -R0.y, -R0, R0;\n"
3821  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3822  "ADD R0.x, R0, c[0];\n"
3823  "MUL R0.x, R0, c[5];\n"
3824  "FLR R0.y, R0.x;\n"
3825  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3826  "ADD R0.x, R0, -R0.y;\n"
3827  "TEX R0, R0, texture[1], 1D;\n"
3828  "MUL R2.xyz, R0, R1.w;\n"
3829  "MUL R3.xyz, R0.w, R1;\n"
3830  "ADD R0.xyz, R0, R1;\n"
3831  "MIN R2.xyz, R2, R3;\n"
3832  "ADD R1.x, R0.w, R1.w;\n"
3833  "MAD result.color.xyz, -R2, c[7].z, R0;\n"
3834  "MAD result.color.w, -R0, R1, R1.x;\n"
3835  "END\n"
3836  ;
3837 
3839  "!!ARBfp1.0\n"
3840  "PARAM c[8] = { program.local[0..4],\n"
3841  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3842  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3843  " { 0.33299461, 0.99999559, 2, 1 } };\n"
3844  "TEMP R0;\n"
3845  "TEMP R1;\n"
3846  "TEMP R2;\n"
3847  "TEMP R3;\n"
3848  "MUL R0.xyz, fragment.position.y, c[2];\n"
3849  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3850  "ADD R0.xyz, R0, c[3];\n"
3851  "RCP R0.z, R0.z;\n"
3852  "MUL R0.xy, R0, R0.z;\n"
3853  "ABS R0.z, R0.x;\n"
3854  "ABS R0.w, R0.y;\n"
3855  "ADD R0.w, R0, -R0.z;\n"
3856  "ADD R1.x, R0.y, c[5].y;\n"
3857  "ABS R0.w, R0;\n"
3858  "CMP R0.y, -R0.w, R0, R1.x;\n"
3859  "ABS R0.w, -R0.y;\n"
3860  "MAX R1.x, R0.z, R0.w;\n"
3861  "RCP R1.y, R1.x;\n"
3862  "MIN R1.x, R0.z, R0.w;\n"
3863  "MUL R1.x, R1, R1.y;\n"
3864  "MUL R1.y, R1.x, R1.x;\n"
3865  "MAD R1.z, R1.y, c[6].x, c[6].y;\n"
3866  "MAD R1.z, R1, R1.y, -c[6];\n"
3867  "MAD R1.z, R1, R1.y, c[6].w;\n"
3868  "MAD R1.z, R1, R1.y, -c[7].x;\n"
3869  "MAD R1.y, R1.z, R1, c[7];\n"
3870  "MUL R1.x, R1.y, R1;\n"
3871  "ADD R0.z, -R0, R0.w;\n"
3872  "ADD R1.y, -R1.x, c[5].w;\n"
3873  "CMP R0.z, -R0, R1.y, R1.x;\n"
3874  "ADD R0.w, -R0.z, c[5].z;\n"
3875  "CMP R0.x, R0, R0.w, R0.z;\n"
3876  "CMP R0.x, -R0.y, -R0, R0;\n"
3877  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
3878  "TEX R1, R0.zwzw, texture[0], 2D;\n"
3879  "ADD R0.x, R0, c[0];\n"
3880  "MUL R0.x, R0, c[5];\n"
3881  "FLR R0.y, R0.x;\n"
3882  "ADD R0.x, R0, -R0.y;\n"
3883  "TEX R0, R0, texture[1], 1D;\n"
3884  "MUL R2.xyz, R0.w, R1;\n"
3885  "MAD R3.xyz, R0, R1.w, R2;\n"
3886  "MUL R2.xyz, R0, R1;\n"
3887  "MAD R2.xyz, -R2, c[7].z, R3;\n"
3888  "ADD R2.w, -R1, c[7];\n"
3889  "MAD R0.xyz, R0, R2.w, R2;\n"
3890  "ADD R2.x, R0.w, R1.w;\n"
3891  "ADD R2.y, -R0.w, c[7].w;\n"
3892  "MAD result.color.xyz, R1, R2.y, R0;\n"
3893  "MAD result.color.w, -R0, R1, R2.x;\n"
3894  "END\n"
3895  ;
3896 
3898  "!!ARBfp1.0\n"
3899  "PARAM c[10] = { program.local[0..6],\n"
3900  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3901  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3902  " { 0.33299461, 0.99999559 } };\n"
3903  "TEMP R0;\n"
3904  "TEMP R1;\n"
3905  "MUL R0.xyz, fragment.position.y, c[2];\n"
3906  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3907  "ADD R0.xyz, R0, c[3];\n"
3908  "RCP R0.z, R0.z;\n"
3909  "MUL R0.xy, R0, R0.z;\n"
3910  "ABS R0.z, R0.x;\n"
3911  "ABS R0.w, R0.y;\n"
3912  "ADD R0.w, R0, -R0.z;\n"
3913  "ADD R1.x, R0.y, c[7].y;\n"
3914  "ABS R0.w, R0;\n"
3915  "CMP R0.y, -R0.w, R0, R1.x;\n"
3916  "ABS R0.w, -R0.y;\n"
3917  "MAX R1.x, R0.z, R0.w;\n"
3918  "RCP R1.y, R1.x;\n"
3919  "MIN R1.x, R0.z, R0.w;\n"
3920  "MUL R1.x, R1, R1.y;\n"
3921  "MUL R1.y, R1.x, R1.x;\n"
3922  "MAD R1.z, R1.y, c[8].x, c[8].y;\n"
3923  "MAD R1.z, R1, R1.y, -c[8];\n"
3924  "MAD R1.z, R1, R1.y, c[8].w;\n"
3925  "MAD R1.z, R1, R1.y, -c[9].x;\n"
3926  "MAD R1.y, R1.z, R1, c[9];\n"
3927  "MUL R1.x, R1.y, R1;\n"
3928  "ADD R1.y, -R1.x, c[7].w;\n"
3929  "ADD R0.z, -R0, R0.w;\n"
3930  "CMP R0.z, -R0, R1.y, R1.x;\n"
3931  "ADD R0.w, -R0.z, c[7].z;\n"
3932  "CMP R0.x, R0, R0.w, R0.z;\n"
3933  "CMP R0.x, -R0.y, -R0, R0;\n"
3934  "ADD R0.x, R0, c[0];\n"
3935  "MUL R1.x, R0, c[7];\n"
3936  "FLR R1.y, R1.x;\n"
3937  "ADD R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
3938  "MUL R0.xy, R0.zwzw, c[4];\n"
3939  "TEX R0, R0, texture[0], 2D;\n"
3940  "ADD R1.x, R1, -R1.y;\n"
3941  "DP4 R1.y, R0, c[6];\n"
3942  "TEX R0, R1, texture[1], 1D;\n"
3943  "MUL result.color, R0, R1.y;\n"
3944  "END\n"
3945  ;
3946 
3948  "!!ARBfp1.0\n"
3949  "PARAM c[7] = { program.local[0..3],\n"
3950  " { 0.15915494, 0.0020000001, 3.141593, 1.570796 },\n"
3951  " { -0.01348047, 0.05747731, 0.1212391, 0.1956359 },\n"
3952  " { 0.33299461, 0.99999559 } };\n"
3953  "TEMP R0;\n"
3954  "TEMP R1;\n"
3955  "MUL R0.xyz, fragment.position.y, c[2];\n"
3956  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
3957  "ADD R0.xyz, R0, c[3];\n"
3958  "RCP R0.z, R0.z;\n"
3959  "MUL R0.xy, R0, R0.z;\n"
3960  "ABS R0.z, R0.x;\n"
3961  "ABS R0.w, R0.y;\n"
3962  "ADD R0.w, R0, -R0.z;\n"
3963  "ADD R1.x, R0.y, c[4].y;\n"
3964  "ABS R0.w, R0;\n"
3965  "CMP R0.y, -R0.w, R0, R1.x;\n"
3966  "ABS R0.w, -R0.y;\n"
3967  "MAX R1.x, R0.z, R0.w;\n"
3968  "RCP R1.y, R1.x;\n"
3969  "MIN R1.x, R0.z, R0.w;\n"
3970  "MUL R1.x, R1, R1.y;\n"
3971  "MUL R1.y, R1.x, R1.x;\n"
3972  "MAD R1.z, R1.y, c[5].x, c[5].y;\n"
3973  "MAD R1.z, R1, R1.y, -c[5];\n"
3974  "MAD R1.z, R1, R1.y, c[5].w;\n"
3975  "MAD R1.z, R1, R1.y, -c[6].x;\n"
3976  "MAD R1.y, R1.z, R1, c[6];\n"
3977  "MUL R1.x, R1.y, R1;\n"
3978  "ADD R0.z, -R0, R0.w;\n"
3979  "ADD R1.y, -R1.x, c[4].w;\n"
3980  "CMP R0.z, -R0, R1.y, R1.x;\n"
3981  "ADD R0.w, -R0.z, c[4].z;\n"
3982  "CMP R0.x, R0, R0.w, R0.z;\n"
3983  "CMP R0.x, -R0.y, -R0, R0;\n"
3984  "ADD R0.x, R0, c[0];\n"
3985  "MUL R0.x, R0, c[4];\n"
3986  "FLR R0.y, R0.x;\n"
3987  "ADD R0.x, R0, -R0.y;\n"
3988  "TEX result.color, R0, texture[0], 1D;\n"
3989  "END\n"
3990  ;
3991 
3993  "!!ARBfp1.0\n"
3994  "PARAM c[11] = { program.local[0..9],\n"
3995  " { 1 } };\n"
3996  "TEMP R0;\n"
3997  "TEMP R1;\n"
3998  "TEMP R2;\n"
3999  "TEMP R3;\n"
4000  "MUL R0.xyz, fragment.position.y, c[2];\n"
4001  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4002  "ADD R0.xyz, R0, c[3];\n"
4003  "RCP R0.z, R0.z;\n"
4004  "MUL R0.xy, R0, R0.z;\n"
4005  "MUL R0.zw, R0.xyxy, c[0].xyxy;\n"
4006  "ADD R1.x, R0.z, R0.w;\n"
4007  "MUL R0.xy, fragment.position, c[7];\n"
4008  "TEX R0, R0, texture[0], 2D;\n"
4009  "MUL R1.x, R1, c[0].z;\n"
4010  "TEX R1, R1, texture[2], 1D;\n"
4011  "MUL R2.xyz, R0, c[4].y;\n"
4012  "MUL R3.xyz, R1.w, R2;\n"
4013  "MUL R2.xyz, R1, c[4].x;\n"
4014  "MAD R2.xyz, R0.w, R2, R3;\n"
4015  "ADD R3.xy, fragment.position, c[8];\n"
4016  "ADD R2.w, -R0, c[10].x;\n"
4017  "MUL R1.xyz, R1, c[5].y;\n"
4018  "MAD R2.xyz, R2.w, R1, R2;\n"
4019  "MUL R1.xyz, R0, c[5].z;\n"
4020  "ADD R3.z, -R1.w, c[10].x;\n"
4021  "MAD R2.xyz, R3.z, R1, R2;\n"
4022  "MUL R1.y, R1.w, R2.w;\n"
4023  "MUL R1.x, R1.w, R0.w;\n"
4024  "MUL R1.z, R0.w, R3;\n"
4025  "DP3 R2.w, R1, c[5];\n"
4026  "MUL R3.xy, R3, c[6];\n"
4027  "TEX R1, R3, texture[1], 2D;\n"
4028  "ADD R2, R2, -R0;\n"
4029  "DP4 R1.x, R1, c[9];\n"
4030  "MAD result.color, R1.x, R2, R0;\n"
4031  "END\n"
4032  ;
4033 
4035  "!!ARBfp1.0\n"
4036  "PARAM c[9] = { program.local[0..7],\n"
4037  " { 1 } };\n"
4038  "TEMP R0;\n"
4039  "TEMP R1;\n"
4040  "TEMP R2;\n"
4041  "MUL R0.xyz, fragment.position.y, c[2];\n"
4042  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4043  "ADD R0.xyz, R0, c[3];\n"
4044  "RCP R0.z, R0.z;\n"
4045  "MUL R0.xy, R0, R0.z;\n"
4046  "MUL R0.zw, R0.xyxy, c[0].xyxy;\n"
4047  "ADD R1.x, R0.z, R0.w;\n"
4048  "MUL R0.xy, fragment.position, c[5];\n"
4049  "TEX R0, R0, texture[0], 2D;\n"
4050  "MUL R1.x, R1, c[0].z;\n"
4051  "TEX R1, R1, texture[2], 1D;\n"
4052  "ADD R2.x, -R0.w, c[8];\n"
4053  "MUL R2.xyz, R1, R2.x;\n"
4054  "MAD R1.xyz, R1, R0, R2;\n"
4055  "ADD R2.x, -R1.w, c[8];\n"
4056  "MAD R2.xyz, R0, R2.x, R1;\n"
4057  "ADD R1.z, R1.w, R0.w;\n"
4058  "MAD R2.w, -R1, R0, R1.z;\n"
4059  "ADD R1.xy, fragment.position, c[6];\n"
4060  "MUL R1.xy, R1, c[4];\n"
4061  "TEX R1, R1, texture[1], 2D;\n"
4062  "ADD R2, R2, -R0;\n"
4063  "DP4 R1.x, R1, c[7];\n"
4064  "MAD result.color, R1.x, R2, R0;\n"
4065  "END\n"
4066  ;
4067 
4069  "!!ARBfp1.0\n"
4070  "PARAM c[8] = { program.local[0..7] };\n"
4071  "TEMP R0;\n"
4072  "TEMP R1;\n"
4073  "TEMP R2;\n"
4074  "TEMP R3;\n"
4075  "MUL R0.xyz, fragment.position.y, c[2];\n"
4076  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4077  "ADD R0.xyz, R0, c[3];\n"
4078  "RCP R0.z, R0.z;\n"
4079  "MUL R0.xy, R0, R0.z;\n"
4080  "MUL R0.xy, R0, c[0];\n"
4081  "ADD R0.x, R0, R0.y;\n"
4082  "MUL R0.z, R0.x, c[0];\n"
4083  "ADD R3.xy, fragment.position, c[6];\n"
4084  "TEX R1, R0.z, texture[2], 1D;\n"
4085  "MUL R0.xy, fragment.position, c[5];\n"
4086  "TEX R0, R0, texture[0], 2D;\n"
4087  "ADD R2, R1, R0;\n"
4088  "MAD R2, -R1, R0, R2;\n"
4089  "MUL R3.xy, R3, c[4];\n"
4090  "TEX R1, R3, texture[1], 2D;\n"
4091  "ADD R2, R2, -R0;\n"
4092  "DP4 R1.x, R1, c[7];\n"
4093  "MAD result.color, R1.x, R2, R0;\n"
4094  "END\n"
4095  ;
4096 
4098  "!!ARBfp1.0\n"
4099  "PARAM c[9] = { program.local[0..7],\n"
4100  " { 2, 1 } };\n"
4101  "TEMP R0;\n"
4102  "TEMP R1;\n"
4103  "TEMP R2;\n"
4104  "TEMP R3;\n"
4105  "TEMP R4;\n"
4106  "MUL R0.xyz, fragment.position.y, c[2];\n"
4107  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4108  "ADD R0.xyz, R0, c[3];\n"
4109  "RCP R0.z, R0.z;\n"
4110  "MUL R0.xy, R0, R0.z;\n"
4111  "MUL R0.xy, R0, c[0];\n"
4112  "ADD R0.x, R0, R0.y;\n"
4113  "MUL R0.x, R0, c[0].z;\n"
4114  "TEX R0, R0, texture[2], 1D;\n"
4115  "MUL R1.xy, fragment.position, c[5];\n"
4116  "TEX R1, R1, texture[0], 2D;\n"
4117  "ADD R2.w, -R1, c[8].y;\n"
4118  "ADD R3.xyz, R0.w, -R0;\n"
4119  "ADD R2.xyz, R1.w, -R1;\n"
4120  "MUL R2.xyz, R2, R3;\n"
4121  "MUL R2.xyz, R2, c[8].x;\n"
4122  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
4123  "MUL R4.xyz, R0, R2.w;\n"
4124  "MUL R3.xyz, R0, R1;\n"
4125  "MAD R0.xyz, R0, R2.w, R2;\n"
4126  "ADD R2.x, -R0.w, c[8].y;\n"
4127  "MAD R3.xyz, R3, c[8].x, R4;\n"
4128  "MAD R3.xyz, R1, R2.x, R3;\n"
4129  "MAD R0.xyz, R1, R2.x, R0;\n"
4130  "MUL R2.xyz, R1, c[8].x;\n"
4131  "ADD R0.xyz, R0, -R3;\n"
4132  "SGE R2.xyz, R2, R1.w;\n"
4133  "MAD R2.xyz, R2, R0, R3;\n"
4134  "ADD R0.z, R0.w, R1.w;\n"
4135  "MAD R2.w, -R0, R1, R0.z;\n"
4136  "ADD R0.xy, fragment.position, c[6];\n"
4137  "MUL R0.xy, R0, c[4];\n"
4138  "TEX R0, R0, texture[1], 2D;\n"
4139  "ADD R2, R2, -R1;\n"
4140  "DP4 R0.x, R0, c[7];\n"
4141  "MAD result.color, R0.x, R2, R1;\n"
4142  "END\n"
4143  ;
4144 
4146  "!!ARBfp1.0\n"
4147  "PARAM c[9] = { program.local[0..7],\n"
4148  " { 1 } };\n"
4149  "TEMP R0;\n"
4150  "TEMP R1;\n"
4151  "TEMP R2;\n"
4152  "TEMP R3;\n"
4153  "MUL R0.xyz, fragment.position.y, c[2];\n"
4154  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4155  "ADD R0.xyz, R0, c[3];\n"
4156  "RCP R0.z, R0.z;\n"
4157  "MUL R0.xy, R0, R0.z;\n"
4158  "MUL R0.xy, R0, c[0];\n"
4159  "ADD R0.z, R0.x, R0.y;\n"
4160  "MUL R1.x, R0.z, c[0].z;\n"
4161  "MUL R0.xy, fragment.position, c[5];\n"
4162  "TEX R0, R0, texture[0], 2D;\n"
4163  "TEX R1, R1, texture[2], 1D;\n"
4164  "MUL R3.xyz, R1.w, R0;\n"
4165  "MUL R2.xyz, R1, R0.w;\n"
4166  "MIN R2.xyz, R2, R3;\n"
4167  "ADD R2.w, -R0, c[8].x;\n"
4168  "MAD R1.xyz, R1, R2.w, R2;\n"
4169  "ADD R2.x, -R1.w, c[8];\n"
4170  "MAD R2.xyz, R0, R2.x, R1;\n"
4171  "ADD R1.z, R1.w, R0.w;\n"
4172  "MAD R2.w, -R1, R0, R1.z;\n"
4173  "ADD R1.xy, fragment.position, c[6];\n"
4174  "MUL R1.xy, R1, c[4];\n"
4175  "TEX R1, R1, texture[1], 2D;\n"
4176  "ADD R2, R2, -R0;\n"
4177  "DP4 R1.x, R1, c[7];\n"
4178  "MAD result.color, R1.x, R2, R0;\n"
4179  "END\n"
4180  ;
4181 
4183  "!!ARBfp1.0\n"
4184  "PARAM c[9] = { program.local[0..7],\n"
4185  " { 1 } };\n"
4186  "TEMP R0;\n"
4187  "TEMP R1;\n"
4188  "TEMP R2;\n"
4189  "TEMP R3;\n"
4190  "MUL R0.xyz, fragment.position.y, c[2];\n"
4191  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4192  "ADD R0.xyz, R0, c[3];\n"
4193  "RCP R0.z, R0.z;\n"
4194  "MUL R0.xy, R0, R0.z;\n"
4195  "MUL R0.xy, R0, c[0];\n"
4196  "ADD R0.z, R0.x, R0.y;\n"
4197  "MUL R1.x, R0.z, c[0].z;\n"
4198  "MUL R0.xy, fragment.position, c[5];\n"
4199  "TEX R0, R0, texture[0], 2D;\n"
4200  "TEX R1, R1, texture[2], 1D;\n"
4201  "MUL R3.xyz, R1.w, R0;\n"
4202  "MUL R2.xyz, R1, R0.w;\n"
4203  "MAX R2.xyz, R2, R3;\n"
4204  "ADD R2.w, -R0, c[8].x;\n"
4205  "MAD R1.xyz, R1, R2.w, R2;\n"
4206  "ADD R2.x, -R1.w, c[8];\n"
4207  "MAD R2.xyz, R0, R2.x, R1;\n"
4208  "ADD R1.z, R1.w, R0.w;\n"
4209  "MAD R2.w, -R1, R0, R1.z;\n"
4210  "ADD R1.xy, fragment.position, c[6];\n"
4211  "MUL R1.xy, R1, c[4];\n"
4212  "TEX R1, R1, texture[1], 2D;\n"
4213  "ADD R2, R2, -R0;\n"
4214  "DP4 R1.x, R1, c[7];\n"
4215  "MAD result.color, R1.x, R2, R0;\n"
4216  "END\n"
4217  ;
4218 
4220  "!!ARBfp1.0\n"
4221  "PARAM c[9] = { program.local[0..7],\n"
4222  " { 1, 1e-006 } };\n"
4223  "TEMP R0;\n"
4224  "TEMP R1;\n"
4225  "TEMP R2;\n"
4226  "TEMP R3;\n"
4227  "TEMP R4;\n"
4228  "MUL R0.xyz, fragment.position.y, c[2];\n"
4229  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4230  "ADD R0.xyz, R0, c[3];\n"
4231  "RCP R0.z, R0.z;\n"
4232  "MUL R0.xy, R0, R0.z;\n"
4233  "MUL R0.xy, R0, c[0];\n"
4234  "ADD R0.x, R0, R0.y;\n"
4235  "MUL R0.x, R0, c[0].z;\n"
4236  "TEX R0, R0, texture[2], 1D;\n"
4237  "MAX R1.x, R0.w, c[8].y;\n"
4238  "RCP R1.x, R1.x;\n"
4239  "MAD R2.xyz, -R0, R1.x, c[8].x;\n"
4240  "MAX R2.xyz, R2, c[8].y;\n"
4241  "MUL R1.xy, fragment.position, c[5];\n"
4242  "TEX R1, R1, texture[0], 2D;\n"
4243  "ADD R2.w, -R0, c[8].x;\n"
4244  "MUL R3.xyz, R1, R2.w;\n"
4245  "ADD R2.w, -R1, c[8].x;\n"
4246  "MAD R4.xyz, R0, R2.w, R3;\n"
4247  "MUL R3.xyz, R0.w, R1;\n"
4248  "MUL R2.w, R0, R1;\n"
4249  "MAD R0.xyz, R0, R1.w, R3;\n"
4250  "SGE R0.xyz, R0, R2.w;\n"
4251  "RCP R2.x, R2.x;\n"
4252  "RCP R2.y, R2.y;\n"
4253  "RCP R2.z, R2.z;\n"
4254  "MAD R2.xyz, R3, R2, R4;\n"
4255  "MAD R4.xyz, R0.w, R1.w, R4;\n"
4256  "ADD R4.xyz, R4, -R2;\n"
4257  "MAD R2.xyz, R0, R4, R2;\n"
4258  "ADD R0.z, R0.w, R1.w;\n"
4259  "MAD R2.w, -R0, R1, R0.z;\n"
4260  "ADD R0.xy, fragment.position, c[6];\n"
4261  "MUL R0.xy, R0, c[4];\n"
4262  "TEX R0, R0, texture[1], 2D;\n"
4263  "ADD R2, R2, -R1;\n"
4264  "DP4 R0.x, R0, c[7];\n"
4265  "MAD result.color, R0.x, R2, R1;\n"
4266  "END\n"
4267  ;
4268 
4270  "!!ARBfp1.0\n"
4271  "PARAM c[9] = { program.local[0..7],\n"
4272  " { 1, 9.9999997e-006 } };\n"
4273  "TEMP R0;\n"
4274  "TEMP R1;\n"
4275  "TEMP R2;\n"
4276  "TEMP R3;\n"
4277  "TEMP R4;\n"
4278  "TEMP R5;\n"
4279  "MUL R0.xyz, fragment.position.y, c[2];\n"
4280  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4281  "ADD R0.xyz, R0, c[3];\n"
4282  "RCP R0.z, R0.z;\n"
4283  "MUL R0.xy, R0, R0.z;\n"
4284  "MUL R0.xy, R0, c[0];\n"
4285  "ADD R0.x, R0, R0.y;\n"
4286  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
4287  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4288  "MUL R0.x, R0, c[0].z;\n"
4289  "TEX R0, R0, texture[2], 1D;\n"
4290  "MUL R2.xyz, R0.w, R1;\n"
4291  "MAD R3.xyz, R0, R1.w, R2;\n"
4292  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
4293  "MUL R4.xyz, R0.w, R2;\n"
4294  "MAX R2.xyz, R0, c[8].y;\n"
4295  "ADD R2.w, -R1, c[8].x;\n"
4296  "MUL R5.xyz, R0, R2.w;\n"
4297  "ADD R3.w, -R0, c[8].x;\n"
4298  "RCP R2.x, R2.x;\n"
4299  "RCP R2.y, R2.y;\n"
4300  "RCP R2.z, R2.z;\n"
4301  "MAD R2.xyz, R4, R2, R5;\n"
4302  "MUL R4.xyz, R1, R3.w;\n"
4303  "MAD R0.xyz, R0, R2.w, R4;\n"
4304  "MUL R2.w, R0, R1;\n"
4305  "MAD R2.xyz, R1, R3.w, R2;\n"
4306  "ADD R2.xyz, R2, -R0;\n"
4307  "SGE R3.xyz, R3, R2.w;\n"
4308  "MAD R2.xyz, R3, R2, R0;\n"
4309  "ADD R0.z, R0.w, R1.w;\n"
4310  "MAD R2.w, -R0, R1, R0.z;\n"
4311  "ADD R0.xy, fragment.position, c[6];\n"
4312  "MUL R0.xy, R0, c[4];\n"
4313  "TEX R0, R0, texture[1], 2D;\n"
4314  "ADD R2, R2, -R1;\n"
4315  "DP4 R0.x, R0, c[7];\n"
4316  "MAD result.color, R0.x, R2, R1;\n"
4317  "END\n"
4318  ;
4319 
4321  "!!ARBfp1.0\n"
4322  "PARAM c[9] = { program.local[0..7],\n"
4323  " { 2, 1 } };\n"
4324  "TEMP R0;\n"
4325  "TEMP R1;\n"
4326  "TEMP R2;\n"
4327  "TEMP R3;\n"
4328  "TEMP R4;\n"
4329  "MUL R0.xyz, fragment.position.y, c[2];\n"
4330  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4331  "ADD R0.xyz, R0, c[3];\n"
4332  "RCP R0.z, R0.z;\n"
4333  "MUL R0.xy, R0, R0.z;\n"
4334  "MUL R0.xy, R0, c[0];\n"
4335  "ADD R0.x, R0, R0.y;\n"
4336  "MUL R0.x, R0, c[0].z;\n"
4337  "TEX R0, R0, texture[2], 1D;\n"
4338  "MUL R1.xy, fragment.position, c[5];\n"
4339  "TEX R1, R1, texture[0], 2D;\n"
4340  "ADD R2.w, -R1, c[8].y;\n"
4341  "ADD R3.xyz, R0.w, -R0;\n"
4342  "ADD R2.xyz, R1.w, -R1;\n"
4343  "MUL R2.xyz, R2, R3;\n"
4344  "MUL R2.xyz, R2, c[8].x;\n"
4345  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
4346  "MUL R4.xyz, R0, R2.w;\n"
4347  "MAD R2.xyz, R0, R2.w, R2;\n"
4348  "MUL R3.xyz, R0, R1;\n"
4349  "ADD R2.w, -R0, c[8].y;\n"
4350  "MAD R3.xyz, R3, c[8].x, R4;\n"
4351  "MUL R0.xyz, R0, c[8].x;\n"
4352  "SGE R0.xyz, R0, R0.w;\n"
4353  "MAD R3.xyz, R1, R2.w, R3;\n"
4354  "MAD R2.xyz, R1, R2.w, R2;\n"
4355  "ADD R2.xyz, R2, -R3;\n"
4356  "MAD R2.xyz, R0, R2, R3;\n"
4357  "ADD R0.z, R0.w, R1.w;\n"
4358  "MAD R2.w, -R0, R1, R0.z;\n"
4359  "ADD R0.xy, fragment.position, c[6];\n"
4360  "MUL R0.xy, R0, c[4];\n"
4361  "TEX R0, R0, texture[1], 2D;\n"
4362  "ADD R2, R2, -R1;\n"
4363  "DP4 R0.x, R0, c[7];\n"
4364  "MAD result.color, R0.x, R2, R1;\n"
4365  "END\n"
4366  ;
4367 
4369  "!!ARBfp1.0\n"
4370  "PARAM c[10] = { program.local[0..7],\n"
4371  " { 1, 2, 9.9999997e-006, 4 },\n"
4372  " { 16, 12, 3 } };\n"
4373  "TEMP R0;\n"
4374  "TEMP R1;\n"
4375  "TEMP R2;\n"
4376  "TEMP R3;\n"
4377  "TEMP R4;\n"
4378  "TEMP R5;\n"
4379  "TEMP R6;\n"
4380  "MUL R0.xyz, fragment.position.y, c[2];\n"
4381  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4382  "ADD R0.xyz, R0, c[3];\n"
4383  "RCP R0.z, R0.z;\n"
4384  "MUL R0.xy, R0, R0.z;\n"
4385  "MUL R0.xy, R0, c[0];\n"
4386  "ADD R0.x, R0, R0.y;\n"
4387  "MUL R1.xy, fragment.position, c[5];\n"
4388  "TEX R1, R1, texture[0], 2D;\n"
4389  "MAX R0.z, R1.w, c[8];\n"
4390  "RCP R0.z, R0.z;\n"
4391  "MUL R3.xyz, R1, R0.z;\n"
4392  "MAD R2.xyz, R3, c[9].x, -c[9].y;\n"
4393  "MUL R0.x, R0, c[0].z;\n"
4394  "TEX R0, R0, texture[2], 1D;\n"
4395  "MAD R4.xyz, R3, R2, c[9].z;\n"
4396  "MAD R2.xyz, R0, c[8].y, -R0.w;\n"
4397  "MUL R5.xyz, R1.w, R2;\n"
4398  "MUL R6.xyz, R5, R4;\n"
4399  "RSQ R2.w, R3.x;\n"
4400  "RCP R4.x, R2.w;\n"
4401  "RSQ R2.w, R3.y;\n"
4402  "RSQ R3.w, R3.z;\n"
4403  "RCP R4.y, R2.w;\n"
4404  "RCP R4.z, R3.w;\n"
4405  "ADD R4.xyz, -R3, R4;\n"
4406  "MUL R6.xyz, R3, R6;\n"
4407  "MUL R4.xyz, R5, R4;\n"
4408  "ADD R3.xyz, -R3, c[8].x;\n"
4409  "MAD R2.xyz, R2, R3, R0.w;\n"
4410  "MUL R3.xyz, R0, c[8].y;\n"
4411  "MAD R5.xyz, R0.w, R1, R6;\n"
4412  "MAD R4.xyz, R0.w, R1, R4;\n"
4413  "ADD R6.xyz, R4, -R5;\n"
4414  "MUL R4.xyz, R1, c[8].w;\n"
4415  "SGE R4.xyz, R4, R1.w;\n"
4416  "MAD R4.xyz, R4, R6, R5;\n"
4417  "MAD R4.xyz, -R1, R2, R4;\n"
4418  "SGE R3.xyz, R3, R0.w;\n"
4419  "MUL R2.xyz, R1, R2;\n"
4420  "ADD R2.w, -R1, c[8].x;\n"
4421  "MAD R2.xyz, R3, R4, R2;\n"
4422  "MAD R2.xyz, R0, R2.w, R2;\n"
4423  "ADD R0.x, -R0.w, c[8];\n"
4424  "MAD R2.xyz, R1, R0.x, R2;\n"
4425  "ADD R0.z, R0.w, R1.w;\n"
4426  "MAD R2.w, -R0, R1, R0.z;\n"
4427  "ADD R0.xy, fragment.position, c[6];\n"
4428  "MUL R0.xy, R0, c[4];\n"
4429  "TEX R0, R0, texture[1], 2D;\n"
4430  "ADD R2, R2, -R1;\n"
4431  "DP4 R0.x, R0, c[7];\n"
4432  "MAD result.color, R0.x, R2, R1;\n"
4433  "END\n"
4434  ;
4435 
4437  "!!ARBfp1.0\n"
4438  "PARAM c[9] = { program.local[0..7],\n"
4439  " { 2 } };\n"
4440  "TEMP R0;\n"
4441  "TEMP R1;\n"
4442  "TEMP R2;\n"
4443  "TEMP R3;\n"
4444  "MUL R0.xyz, fragment.position.y, c[2];\n"
4445  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4446  "ADD R0.xyz, R0, c[3];\n"
4447  "RCP R0.z, R0.z;\n"
4448  "MUL R0.xy, R0, R0.z;\n"
4449  "MUL R0.xy, R0, c[0];\n"
4450  "ADD R0.z, R0.x, R0.y;\n"
4451  "MUL R1.x, R0.z, c[0].z;\n"
4452  "MUL R0.xy, fragment.position, c[5];\n"
4453  "TEX R0, R0, texture[0], 2D;\n"
4454  "TEX R1, R1, texture[2], 1D;\n"
4455  "ADD R2.xyz, R1, R0;\n"
4456  "MUL R3.xyz, R1.w, R0;\n"
4457  "MUL R1.xyz, R1, R0.w;\n"
4458  "MIN R1.xyz, R1, R3;\n"
4459  "MAD R2.xyz, -R1, c[8].x, R2;\n"
4460  "ADD R1.z, R1.w, R0.w;\n"
4461  "MAD R2.w, -R1, R0, R1.z;\n"
4462  "ADD R1.xy, fragment.position, c[6];\n"
4463  "MUL R1.xy, R1, c[4];\n"
4464  "TEX R1, R1, texture[1], 2D;\n"
4465  "ADD R2, R2, -R0;\n"
4466  "DP4 R1.x, R1, c[7];\n"
4467  "MAD result.color, R1.x, R2, R0;\n"
4468  "END\n"
4469  ;
4470 
4472  "!!ARBfp1.0\n"
4473  "PARAM c[9] = { program.local[0..7],\n"
4474  " { 2, 1 } };\n"
4475  "TEMP R0;\n"
4476  "TEMP R1;\n"
4477  "TEMP R2;\n"
4478  "TEMP R3;\n"
4479  "MUL R0.xyz, fragment.position.y, c[2];\n"
4480  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4481  "ADD R0.xyz, R0, c[3];\n"
4482  "RCP R0.z, R0.z;\n"
4483  "MUL R0.xy, R0, R0.z;\n"
4484  "MUL R0.xy, R0, c[0];\n"
4485  "ADD R0.z, R0.x, R0.y;\n"
4486  "MUL R1.x, R0.z, c[0].z;\n"
4487  "MUL R0.xy, fragment.position, c[5];\n"
4488  "TEX R0, R0, texture[0], 2D;\n"
4489  "TEX R1, R1, texture[2], 1D;\n"
4490  "MUL R2.xyz, R1.w, R0;\n"
4491  "MAD R3.xyz, R1, R0.w, R2;\n"
4492  "MUL R2.xyz, R1, R0;\n"
4493  "MAD R2.xyz, -R2, c[8].x, R3;\n"
4494  "ADD R2.w, -R0, c[8].y;\n"
4495  "MAD R1.xyz, R1, R2.w, R2;\n"
4496  "ADD R2.x, -R1.w, c[8].y;\n"
4497  "MAD R2.xyz, R0, R2.x, R1;\n"
4498  "ADD R1.z, R1.w, R0.w;\n"
4499  "MAD R2.w, -R1, R0, R1.z;\n"
4500  "ADD R1.xy, fragment.position, c[6];\n"
4501  "MUL R1.xy, R1, c[4];\n"
4502  "TEX R1, R1, texture[1], 2D;\n"
4503  "ADD R2, R2, -R0;\n"
4504  "DP4 R1.x, R1, c[7];\n"
4505  "MAD result.color, R1.x, R2, R0;\n"
4506  "END\n"
4507  ;
4508 
4510  "!!ARBfp1.0\n"
4511  "PARAM c[8] = { program.local[0..6],\n"
4512  " { 1 } };\n"
4513  "TEMP R0;\n"
4514  "TEMP R1;\n"
4515  "TEMP R2;\n"
4516  "TEMP R3;\n"
4517  "MUL R0.xyz, fragment.position.y, c[2];\n"
4518  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4519  "ADD R0.xyz, R0, c[3];\n"
4520  "RCP R0.z, R0.z;\n"
4521  "MUL R0.xy, R0, R0.z;\n"
4522  "MUL R0.xy, R0, c[0];\n"
4523  "ADD R0.x, R0, R0.y;\n"
4524  "MUL R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
4525  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4526  "MUL R2.xyz, R1, c[4].y;\n"
4527  "MUL R0.x, R0, c[0].z;\n"
4528  "TEX R0, R0, texture[1], 1D;\n"
4529  "MUL R3.xyz, R0.w, R2;\n"
4530  "MUL R2.xyz, R0, c[4].x;\n"
4531  "MAD R2.xyz, R1.w, R2, R3;\n"
4532  "ADD R2.w, -R1, c[7].x;\n"
4533  "MUL R0.xyz, R0, c[5].y;\n"
4534  "MAD R0.xyz, R2.w, R0, R2;\n"
4535  "ADD R2.x, -R0.w, c[7];\n"
4536  "MUL R1.xyz, R1, c[5].z;\n"
4537  "MAD result.color.xyz, R2.x, R1, R0;\n"
4538  "MUL R0.x, R0.w, R1.w;\n"
4539  "MUL R0.z, R1.w, R2.x;\n"
4540  "MUL R0.y, R0.w, R2.w;\n"
4541  "DP3 result.color.w, R0, c[5];\n"
4542  "END\n"
4543  ;
4544 
4546  "!!ARBfp1.0\n"
4547  "PARAM c[6] = { program.local[0..4],\n"
4548  " { 1 } };\n"
4549  "TEMP R0;\n"
4550  "TEMP R1;\n"
4551  "TEMP R2;\n"
4552  "MUL R0.xyz, fragment.position.y, c[2];\n"
4553  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4554  "ADD R0.xyz, R0, c[3];\n"
4555  "RCP R0.z, R0.z;\n"
4556  "MUL R0.xy, R0, R0.z;\n"
4557  "MUL R0.xy, R0, c[0];\n"
4558  "ADD R0.x, R0, R0.y;\n"
4559  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4560  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4561  "MUL R0.x, R0, c[0].z;\n"
4562  "TEX R0, R0, texture[1], 1D;\n"
4563  "ADD R2.x, -R1.w, c[5];\n"
4564  "MUL R2.xyz, R0, R2.x;\n"
4565  "MAD R0.xyz, R0, R1, R2;\n"
4566  "ADD R2.x, R0.w, R1.w;\n"
4567  "ADD R2.y, -R0.w, c[5].x;\n"
4568  "MAD result.color.xyz, R1, R2.y, R0;\n"
4569  "MAD result.color.w, -R0, R1, R2.x;\n"
4570  "END\n"
4571  ;
4572 
4574  "!!ARBfp1.0\n"
4575  "PARAM c[5] = { program.local[0..4] };\n"
4576  "TEMP R0;\n"
4577  "TEMP R1;\n"
4578  "TEMP R2;\n"
4579  "MUL R0.xyz, fragment.position.y, c[2];\n"
4580  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4581  "ADD R0.xyz, R0, c[3];\n"
4582  "RCP R0.z, R0.z;\n"
4583  "MUL R0.xy, R0, R0.z;\n"
4584  "MUL R0.xy, R0, c[0];\n"
4585  "ADD R0.x, R0, R0.y;\n"
4586  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4587  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4588  "MUL R0.x, R0, c[0].z;\n"
4589  "TEX R0, R0, texture[1], 1D;\n"
4590  "ADD R2, R0, R1;\n"
4591  "MAD result.color, -R0, R1, R2;\n"
4592  "END\n"
4593  ;
4594 
4596  "!!ARBfp1.0\n"
4597  "PARAM c[6] = { program.local[0..4],\n"
4598  " { 2, 1 } };\n"
4599  "TEMP R0;\n"
4600  "TEMP R1;\n"
4601  "TEMP R2;\n"
4602  "TEMP R3;\n"
4603  "MUL R0.xyz, fragment.position.y, c[2];\n"
4604  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4605  "ADD R0.xyz, R0, c[3];\n"
4606  "RCP R0.z, R0.z;\n"
4607  "MUL R0.xy, R0, R0.z;\n"
4608  "MUL R0.xy, R0, c[0];\n"
4609  "ADD R0.x, R0, R0.y;\n"
4610  "MUL R0.x, R0, c[0].z;\n"
4611  "TEX R0, R0, texture[1], 1D;\n"
4612  "MUL R1.xy, fragment.position, c[4];\n"
4613  "TEX R1, R1, texture[0], 2D;\n"
4614  "ADD R3.xyz, R0.w, -R0;\n"
4615  "ADD R2.xyz, R1.w, -R1;\n"
4616  "MUL R2.xyz, R2, R3;\n"
4617  "ADD R2.w, -R1, c[5].y;\n"
4618  "MUL R2.xyz, R2, c[5].x;\n"
4619  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
4620  "MAD R2.xyz, R0, R2.w, R2;\n"
4621  "MUL R3.xyz, R0, R2.w;\n"
4622  "MUL R0.xyz, R0, R1;\n"
4623  "ADD R2.w, -R0, c[5].y;\n"
4624  "MAD R0.xyz, R0, c[5].x, R3;\n"
4625  "MAD R0.xyz, R1, R2.w, R0;\n"
4626  "MAD R2.xyz, R1, R2.w, R2;\n"
4627  "MUL R1.xyz, R1, c[5].x;\n"
4628  "ADD R2.w, R0, R1;\n"
4629  "ADD R2.xyz, R2, -R0;\n"
4630  "SGE R1.xyz, R1, R1.w;\n"
4631  "MAD result.color.xyz, R1, R2, R0;\n"
4632  "MAD result.color.w, -R0, R1, R2;\n"
4633  "END\n"
4634  ;
4635 
4637  "!!ARBfp1.0\n"
4638  "PARAM c[6] = { program.local[0..4],\n"
4639  " { 1 } };\n"
4640  "TEMP R0;\n"
4641  "TEMP R1;\n"
4642  "TEMP R2;\n"
4643  "TEMP R3;\n"
4644  "MUL R0.xyz, fragment.position.y, c[2];\n"
4645  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4646  "ADD R0.xyz, R0, c[3];\n"
4647  "RCP R0.z, R0.z;\n"
4648  "MUL R0.xy, R0, R0.z;\n"
4649  "MUL R0.xy, R0, c[0];\n"
4650  "ADD R0.x, R0, R0.y;\n"
4651  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4652  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4653  "MUL R0.x, R0, c[0].z;\n"
4654  "TEX R0, R0, texture[1], 1D;\n"
4655  "MUL R2.xyz, R0, R1.w;\n"
4656  "MUL R3.xyz, R0.w, R1;\n"
4657  "MIN R2.xyz, R2, R3;\n"
4658  "ADD R2.w, -R1, c[5].x;\n"
4659  "MAD R0.xyz, R0, R2.w, R2;\n"
4660  "ADD R2.x, R0.w, R1.w;\n"
4661  "ADD R2.y, -R0.w, c[5].x;\n"
4662  "MAD result.color.xyz, R1, R2.y, R0;\n"
4663  "MAD result.color.w, -R0, R1, R2.x;\n"
4664  "END\n"
4665  ;
4666 
4668  "!!ARBfp1.0\n"
4669  "PARAM c[6] = { program.local[0..4],\n"
4670  " { 1 } };\n"
4671  "TEMP R0;\n"
4672  "TEMP R1;\n"
4673  "TEMP R2;\n"
4674  "TEMP R3;\n"
4675  "MUL R0.xyz, fragment.position.y, c[2];\n"
4676  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4677  "ADD R0.xyz, R0, c[3];\n"
4678  "RCP R0.z, R0.z;\n"
4679  "MUL R0.xy, R0, R0.z;\n"
4680  "MUL R0.xy, R0, c[0];\n"
4681  "ADD R0.x, R0, R0.y;\n"
4682  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4683  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4684  "MUL R0.x, R0, c[0].z;\n"
4685  "TEX R0, R0, texture[1], 1D;\n"
4686  "MUL R2.xyz, R0, R1.w;\n"
4687  "MUL R3.xyz, R0.w, R1;\n"
4688  "MAX R2.xyz, R2, R3;\n"
4689  "ADD R2.w, -R1, c[5].x;\n"
4690  "MAD R0.xyz, R0, R2.w, R2;\n"
4691  "ADD R2.x, R0.w, R1.w;\n"
4692  "ADD R2.y, -R0.w, c[5].x;\n"
4693  "MAD result.color.xyz, R1, R2.y, R0;\n"
4694  "MAD result.color.w, -R0, R1, R2.x;\n"
4695  "END\n"
4696  ;
4697 
4699  "!!ARBfp1.0\n"
4700  "PARAM c[6] = { program.local[0..4],\n"
4701  " { 1, 1e-006 } };\n"
4702  "TEMP R0;\n"
4703  "TEMP R1;\n"
4704  "TEMP R2;\n"
4705  "TEMP R3;\n"
4706  "MUL R0.xyz, fragment.position.y, c[2];\n"
4707  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4708  "ADD R0.xyz, R0, c[3];\n"
4709  "RCP R0.z, R0.z;\n"
4710  "MUL R0.xy, R0, R0.z;\n"
4711  "MUL R0.xy, R0, c[0];\n"
4712  "ADD R0.x, R0, R0.y;\n"
4713  "MUL R0.x, R0, c[0].z;\n"
4714  "TEX R0, R0, texture[1], 1D;\n"
4715  "MAX R1.x, R0.w, c[5].y;\n"
4716  "RCP R1.x, R1.x;\n"
4717  "MAD R3.xyz, -R0, R1.x, c[5].x;\n"
4718  "MAX R3.xyz, R3, c[5].y;\n"
4719  "MUL R1.xy, fragment.position, c[4];\n"
4720  "TEX R1, R1, texture[0], 2D;\n"
4721  "ADD R2.x, -R0.w, c[5];\n"
4722  "MUL R2.xyz, R1, R2.x;\n"
4723  "ADD R2.w, -R1, c[5].x;\n"
4724  "MAD R2.xyz, R0, R2.w, R2;\n"
4725  "MUL R1.xyz, R0.w, R1;\n"
4726  "MAD R0.xyz, R0, R1.w, R1;\n"
4727  "MUL R2.w, R0, R1;\n"
4728  "RCP R3.x, R3.x;\n"
4729  "RCP R3.y, R3.y;\n"
4730  "RCP R3.z, R3.z;\n"
4731  "MAD R3.xyz, R1, R3, R2;\n"
4732  "MAD R2.xyz, R0.w, R1.w, R2;\n"
4733  "ADD R1.x, R0.w, R1.w;\n"
4734  "ADD R2.xyz, R2, -R3;\n"
4735  "SGE R0.xyz, R0, R2.w;\n"
4736  "MAD result.color.xyz, R0, R2, R3;\n"
4737  "MAD result.color.w, -R0, R1, R1.x;\n"
4738  "END\n"
4739  ;
4740 
4742  "!!ARBfp1.0\n"
4743  "PARAM c[6] = { program.local[0..4],\n"
4744  " { 1, 9.9999997e-006 } };\n"
4745  "TEMP R0;\n"
4746  "TEMP R1;\n"
4747  "TEMP R2;\n"
4748  "TEMP R3;\n"
4749  "TEMP R4;\n"
4750  "TEMP R5;\n"
4751  "MUL R0.xyz, fragment.position.y, c[2];\n"
4752  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4753  "ADD R0.xyz, R0, c[3];\n"
4754  "RCP R0.z, R0.z;\n"
4755  "MUL R0.xy, R0, R0.z;\n"
4756  "MUL R0.xy, R0, c[0];\n"
4757  "ADD R0.x, R0, R0.y;\n"
4758  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4759  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4760  "MUL R0.x, R0, c[0].z;\n"
4761  "TEX R0, R0, texture[1], 1D;\n"
4762  "MUL R2.xyz, R0.w, R1;\n"
4763  "MAD R3.xyz, R0, R1.w, R2;\n"
4764  "ADD R2.w, -R1, c[5].x;\n"
4765  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
4766  "MUL R4.xyz, R0.w, R2;\n"
4767  "MAX R2.xyz, R0, c[5].y;\n"
4768  "MUL R5.xyz, R0, R2.w;\n"
4769  "ADD R3.w, -R0, c[5].x;\n"
4770  "RCP R2.x, R2.x;\n"
4771  "RCP R2.y, R2.y;\n"
4772  "RCP R2.z, R2.z;\n"
4773  "MAD R2.xyz, R4, R2, R5;\n"
4774  "MUL R4.xyz, R1, R3.w;\n"
4775  "MAD R1.xyz, R1, R3.w, R2;\n"
4776  "MAD R0.xyz, R0, R2.w, R4;\n"
4777  "MUL R2.x, R0.w, R1.w;\n"
4778  "ADD R2.w, R0, R1;\n"
4779  "ADD R1.xyz, R1, -R0;\n"
4780  "SGE R2.xyz, R3, R2.x;\n"
4781  "MAD result.color.xyz, R2, R1, R0;\n"
4782  "MAD result.color.w, -R0, R1, R2;\n"
4783  "END\n"
4784  ;
4785 
4787  "!!ARBfp1.0\n"
4788  "PARAM c[6] = { program.local[0..4],\n"
4789  " { 2, 1 } };\n"
4790  "TEMP R0;\n"
4791  "TEMP R1;\n"
4792  "TEMP R2;\n"
4793  "TEMP R3;\n"
4794  "TEMP R4;\n"
4795  "MUL R0.xyz, fragment.position.y, c[2];\n"
4796  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4797  "ADD R0.xyz, R0, c[3];\n"
4798  "RCP R0.z, R0.z;\n"
4799  "MUL R0.xy, R0, R0.z;\n"
4800  "MUL R0.xy, R0, c[0];\n"
4801  "ADD R0.x, R0, R0.y;\n"
4802  "MUL R0.x, R0, c[0].z;\n"
4803  "TEX R0, R0, texture[1], 1D;\n"
4804  "MUL R1.xy, fragment.position, c[4];\n"
4805  "TEX R1, R1, texture[0], 2D;\n"
4806  "ADD R2.w, -R1, c[5].y;\n"
4807  "ADD R3.xyz, R0.w, -R0;\n"
4808  "ADD R2.xyz, R1.w, -R1;\n"
4809  "MUL R2.xyz, R2, R3;\n"
4810  "MUL R2.xyz, R2, c[5].x;\n"
4811  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
4812  "MAD R2.xyz, R0, R2.w, R2;\n"
4813  "MUL R4.xyz, R0, R2.w;\n"
4814  "MUL R3.xyz, R0, R1;\n"
4815  "MUL R0.xyz, R0, c[5].x;\n"
4816  "ADD R2.w, -R0, c[5].y;\n"
4817  "MAD R3.xyz, R3, c[5].x, R4;\n"
4818  "MAD R3.xyz, R1, R2.w, R3;\n"
4819  "MAD R1.xyz, R1, R2.w, R2;\n"
4820  "ADD R2.x, R0.w, R1.w;\n"
4821  "ADD R1.xyz, R1, -R3;\n"
4822  "SGE R0.xyz, R0, R0.w;\n"
4823  "MAD result.color.xyz, R0, R1, R3;\n"
4824  "MAD result.color.w, -R0, R1, R2.x;\n"
4825  "END\n"
4826  ;
4827 
4829  "!!ARBfp1.0\n"
4830  "PARAM c[7] = { program.local[0..4],\n"
4831  " { 1, 2, 9.9999997e-006, 4 },\n"
4832  " { 16, 12, 3 } };\n"
4833  "TEMP R0;\n"
4834  "TEMP R1;\n"
4835  "TEMP R2;\n"
4836  "TEMP R3;\n"
4837  "TEMP R4;\n"
4838  "TEMP R5;\n"
4839  "TEMP R6;\n"
4840  "MUL R0.xyz, fragment.position.y, c[2];\n"
4841  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4842  "ADD R0.xyz, R0, c[3];\n"
4843  "RCP R0.z, R0.z;\n"
4844  "MUL R0.xy, R0, R0.z;\n"
4845  "MUL R0.xy, R0, c[0];\n"
4846  "ADD R0.x, R0, R0.y;\n"
4847  "MUL R1.xy, fragment.position, c[4];\n"
4848  "TEX R1, R1, texture[0], 2D;\n"
4849  "MAX R0.z, R1.w, c[5];\n"
4850  "RCP R0.z, R0.z;\n"
4851  "MUL R3.xyz, R1, R0.z;\n"
4852  "MAD R2.xyz, R3, c[6].x, -c[6].y;\n"
4853  "MUL R0.x, R0, c[0].z;\n"
4854  "TEX R0, R0, texture[1], 1D;\n"
4855  "MAD R4.xyz, R3, R2, c[6].z;\n"
4856  "MAD R2.xyz, R0, c[5].y, -R0.w;\n"
4857  "MUL R5.xyz, R1.w, R2;\n"
4858  "MUL R6.xyz, R5, R4;\n"
4859  "RSQ R2.w, R3.x;\n"
4860  "RCP R4.x, R2.w;\n"
4861  "RSQ R2.w, R3.y;\n"
4862  "RSQ R3.w, R3.z;\n"
4863  "RCP R4.y, R2.w;\n"
4864  "RCP R4.z, R3.w;\n"
4865  "ADD R4.xyz, -R3, R4;\n"
4866  "MUL R6.xyz, R3, R6;\n"
4867  "MUL R4.xyz, R5, R4;\n"
4868  "ADD R3.xyz, -R3, c[5].x;\n"
4869  "MAD R2.xyz, R2, R3, R0.w;\n"
4870  "MUL R3.xyz, R0, c[5].y;\n"
4871  "MAD R5.xyz, R0.w, R1, R6;\n"
4872  "MAD R4.xyz, R0.w, R1, R4;\n"
4873  "ADD R6.xyz, R4, -R5;\n"
4874  "MUL R4.xyz, R1, c[5].w;\n"
4875  "SGE R4.xyz, R4, R1.w;\n"
4876  "MAD R4.xyz, R4, R6, R5;\n"
4877  "MAD R4.xyz, -R1, R2, R4;\n"
4878  "MUL R2.xyz, R1, R2;\n"
4879  "SGE R3.xyz, R3, R0.w;\n"
4880  "MAD R2.xyz, R3, R4, R2;\n"
4881  "ADD R2.w, -R1, c[5].x;\n"
4882  "MAD R2.xyz, R0, R2.w, R2;\n"
4883  "ADD R0.x, R0.w, R1.w;\n"
4884  "ADD R0.y, -R0.w, c[5].x;\n"
4885  "MAD result.color.xyz, R1, R0.y, R2;\n"
4886  "MAD result.color.w, -R0, R1, R0.x;\n"
4887  "END\n"
4888  ;
4889 
4891  "!!ARBfp1.0\n"
4892  "PARAM c[6] = { program.local[0..4],\n"
4893  " { 2 } };\n"
4894  "TEMP R0;\n"
4895  "TEMP R1;\n"
4896  "TEMP R2;\n"
4897  "TEMP R3;\n"
4898  "MUL R0.xyz, fragment.position.y, c[2];\n"
4899  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4900  "ADD R0.xyz, R0, c[3];\n"
4901  "RCP R0.z, R0.z;\n"
4902  "MUL R0.xy, R0, R0.z;\n"
4903  "MUL R0.xy, R0, c[0];\n"
4904  "ADD R0.x, R0, R0.y;\n"
4905  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4906  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4907  "MUL R0.x, R0, c[0].z;\n"
4908  "TEX R0, R0, texture[1], 1D;\n"
4909  "MUL R2.xyz, R0, R1.w;\n"
4910  "MUL R3.xyz, R0.w, R1;\n"
4911  "ADD R0.xyz, R0, R1;\n"
4912  "MIN R2.xyz, R2, R3;\n"
4913  "ADD R1.x, R0.w, R1.w;\n"
4914  "MAD result.color.xyz, -R2, c[5].x, R0;\n"
4915  "MAD result.color.w, -R0, R1, R1.x;\n"
4916  "END\n"
4917  ;
4918 
4920  "!!ARBfp1.0\n"
4921  "PARAM c[6] = { program.local[0..4],\n"
4922  " { 2, 1 } };\n"
4923  "TEMP R0;\n"
4924  "TEMP R1;\n"
4925  "TEMP R2;\n"
4926  "TEMP R3;\n"
4927  "MUL R0.xyz, fragment.position.y, c[2];\n"
4928  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4929  "ADD R0.xyz, R0, c[3];\n"
4930  "RCP R0.z, R0.z;\n"
4931  "MUL R0.xy, R0, R0.z;\n"
4932  "MUL R0.xy, R0, c[0];\n"
4933  "ADD R0.x, R0, R0.y;\n"
4934  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
4935  "TEX R1, R0.zwzw, texture[0], 2D;\n"
4936  "MUL R0.x, R0, c[0].z;\n"
4937  "TEX R0, R0, texture[1], 1D;\n"
4938  "MUL R2.xyz, R0.w, R1;\n"
4939  "MAD R3.xyz, R0, R1.w, R2;\n"
4940  "MUL R2.xyz, R0, R1;\n"
4941  "MAD R2.xyz, -R2, c[5].x, R3;\n"
4942  "ADD R2.w, -R1, c[5].y;\n"
4943  "MAD R0.xyz, R0, R2.w, R2;\n"
4944  "ADD R2.x, R0.w, R1.w;\n"
4945  "ADD R2.y, -R0.w, c[5];\n"
4946  "MAD result.color.xyz, R1, R2.y, R0;\n"
4947  "MAD result.color.w, -R0, R1, R2.x;\n"
4948  "END\n"
4949  ;
4950 
4952  "!!ARBfp1.0\n"
4953  "PARAM c[7] = { program.local[0..6] };\n"
4954  "TEMP R0;\n"
4955  "TEMP R1;\n"
4956  "MUL R0.xyz, fragment.position.y, c[2];\n"
4957  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4958  "ADD R0.xyz, R0, c[3];\n"
4959  "RCP R0.z, R0.z;\n"
4960  "MUL R0.zw, R0.xyxy, R0.z;\n"
4961  "MUL R0.zw, R0, c[0].xyxy;\n"
4962  "ADD R1.x, R0.z, R0.w;\n"
4963  "ADD R0.xy, fragment.position, c[5];\n"
4964  "MUL R0.xy, R0, c[4];\n"
4965  "TEX R0, R0, texture[0], 2D;\n"
4966  "DP4 R1.y, R0, c[6];\n"
4967  "MUL R1.x, R1, c[0].z;\n"
4968  "TEX R0, R1, texture[1], 1D;\n"
4969  "MUL result.color, R0, R1.y;\n"
4970  "END\n"
4971  ;
4972 
4974  "!!ARBfp1.0\n"
4975  "PARAM c[4] = { program.local[0..3] };\n"
4976  "TEMP R0;\n"
4977  "MUL R0.xyz, fragment.position.y, c[2];\n"
4978  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4979  "ADD R0.xyz, R0, c[3];\n"
4980  "RCP R0.z, R0.z;\n"
4981  "MUL R0.xy, R0, R0.z;\n"
4982  "MUL R0.xy, R0, c[0];\n"
4983  "ADD R0.x, R0, R0.y;\n"
4984  "MUL R0.x, R0, c[0].z;\n"
4985  "TEX result.color, R0, texture[0], 1D;\n"
4986  "END\n"
4987  ;
4988 
4990  "!!ARBfp1.0\n"
4991  "PARAM c[11] = { program.local[0..9],\n"
4992  " { 1 } };\n"
4993  "TEMP R0;\n"
4994  "TEMP R1;\n"
4995  "TEMP R2;\n"
4996  "TEMP R3;\n"
4997  "MUL R0.xyz, fragment.position.y, c[2];\n"
4998  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
4999  "ADD R1.xyz, R0, c[3];\n"
5000  "RCP R0.z, R1.z;\n"
5001  "MUL R1.xy, R1, R0.z;\n"
5002  "MUL R0.xy, fragment.position, c[7];\n"
5003  "TEX R0, R0, texture[0], 2D;\n"
5004  "MUL R1.xy, R1, c[0];\n"
5005  "TEX R1, R1, texture[2], 2D;\n"
5006  "MUL R2.xyz, R0, c[4].y;\n"
5007  "MUL R3.xyz, R1.w, R2;\n"
5008  "MUL R2.xyz, R1, c[4].x;\n"
5009  "MAD R2.xyz, R0.w, R2, R3;\n"
5010  "ADD R3.xy, fragment.position, c[8];\n"
5011  "ADD R2.w, -R0, c[10].x;\n"
5012  "MUL R1.xyz, R1, c[5].y;\n"
5013  "MAD R2.xyz, R2.w, R1, R2;\n"
5014  "MUL R1.xyz, R0, c[5].z;\n"
5015  "ADD R3.z, -R1.w, c[10].x;\n"
5016  "MAD R2.xyz, R3.z, R1, R2;\n"
5017  "MUL R1.y, R1.w, R2.w;\n"
5018  "MUL R1.x, R1.w, R0.w;\n"
5019  "MUL R1.z, R0.w, R3;\n"
5020  "DP3 R2.w, R1, c[5];\n"
5021  "MUL R3.xy, R3, c[6];\n"
5022  "TEX R1, R3, texture[1], 2D;\n"
5023  "ADD R2, R2, -R0;\n"
5024  "DP4 R1.x, R1, c[9];\n"
5025  "MAD result.color, R1.x, R2, R0;\n"
5026  "END\n"
5027  ;
5028 
5030  "!!ARBfp1.0\n"
5031  "PARAM c[9] = { program.local[0..7],\n"
5032  " { 1 } };\n"
5033  "TEMP R0;\n"
5034  "TEMP R1;\n"
5035  "TEMP R2;\n"
5036  "MUL R0.xyz, fragment.position.y, c[2];\n"
5037  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5038  "ADD R1.xyz, R0, c[3];\n"
5039  "RCP R0.z, R1.z;\n"
5040  "MUL R1.xy, R1, R0.z;\n"
5041  "MUL R0.xy, fragment.position, c[5];\n"
5042  "TEX R0, R0, texture[0], 2D;\n"
5043  "MUL R1.xy, R1, c[0];\n"
5044  "TEX R1, R1, texture[2], 2D;\n"
5045  "ADD R2.x, -R0.w, c[8];\n"
5046  "MUL R2.xyz, R1, R2.x;\n"
5047  "MAD R1.xyz, R1, R0, R2;\n"
5048  "ADD R2.x, -R1.w, c[8];\n"
5049  "MAD R2.xyz, R0, R2.x, R1;\n"
5050  "ADD R1.z, R1.w, R0.w;\n"
5051  "MAD R2.w, -R1, R0, R1.z;\n"
5052  "ADD R1.xy, fragment.position, c[6];\n"
5053  "MUL R1.xy, R1, c[4];\n"
5054  "TEX R1, R1, texture[1], 2D;\n"
5055  "ADD R2, R2, -R0;\n"
5056  "DP4 R1.x, R1, c[7];\n"
5057  "MAD result.color, R1.x, R2, R0;\n"
5058  "END\n"
5059  ;
5060 
5062  "!!ARBfp1.0\n"
5063  "PARAM c[8] = { program.local[0..7] };\n"
5064  "TEMP R0;\n"
5065  "TEMP R1;\n"
5066  "TEMP R2;\n"
5067  "TEMP R3;\n"
5068  "MUL R0.xyz, fragment.position.y, c[2];\n"
5069  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5070  "ADD R0.xyz, R0, c[3];\n"
5071  "RCP R0.z, R0.z;\n"
5072  "MUL R0.xy, R0, R0.z;\n"
5073  "MUL R0.zw, R0.xyxy, c[0].xyxy;\n"
5074  "ADD R3.xy, fragment.position, c[6];\n"
5075  "TEX R1, R0.zwzw, texture[2], 2D;\n"
5076  "MUL R0.xy, fragment.position, c[5];\n"
5077  "TEX R0, R0, texture[0], 2D;\n"
5078  "ADD R2, R1, R0;\n"
5079  "MAD R2, -R1, R0, R2;\n"
5080  "MUL R3.xy, R3, c[4];\n"
5081  "TEX R1, R3, texture[1], 2D;\n"
5082  "ADD R2, R2, -R0;\n"
5083  "DP4 R1.x, R1, c[7];\n"
5084  "MAD result.color, R1.x, R2, R0;\n"
5085  "END\n"
5086  ;
5087 
5089  "!!ARBfp1.0\n"
5090  "PARAM c[9] = { program.local[0..7],\n"
5091  " { 2, 1 } };\n"
5092  "TEMP R0;\n"
5093  "TEMP R1;\n"
5094  "TEMP R2;\n"
5095  "TEMP R3;\n"
5096  "TEMP R4;\n"
5097  "MUL R0.xyz, fragment.position.y, c[2];\n"
5098  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5099  "ADD R0.xyz, R0, c[3];\n"
5100  "RCP R0.z, R0.z;\n"
5101  "MUL R0.xy, R0, R0.z;\n"
5102  "MUL R0.xy, R0, c[0];\n"
5103  "TEX R0, R0, texture[2], 2D;\n"
5104  "MUL R1.xy, fragment.position, c[5];\n"
5105  "TEX R1, R1, texture[0], 2D;\n"
5106  "ADD R2.w, -R1, c[8].y;\n"
5107  "ADD R3.xyz, R0.w, -R0;\n"
5108  "ADD R2.xyz, R1.w, -R1;\n"
5109  "MUL R2.xyz, R2, R3;\n"
5110  "MUL R2.xyz, R2, c[8].x;\n"
5111  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
5112  "MUL R4.xyz, R0, R2.w;\n"
5113  "MUL R3.xyz, R0, R1;\n"
5114  "MAD R0.xyz, R0, R2.w, R2;\n"
5115  "ADD R2.x, -R0.w, c[8].y;\n"
5116  "MAD R3.xyz, R3, c[8].x, R4;\n"
5117  "MAD R3.xyz, R1, R2.x, R3;\n"
5118  "MAD R0.xyz, R1, R2.x, R0;\n"
5119  "MUL R2.xyz, R1, c[8].x;\n"
5120  "ADD R0.xyz, R0, -R3;\n"
5121  "SGE R2.xyz, R2, R1.w;\n"
5122  "MAD R2.xyz, R2, R0, R3;\n"
5123  "ADD R0.z, R0.w, R1.w;\n"
5124  "MAD R2.w, -R0, R1, R0.z;\n"
5125  "ADD R0.xy, fragment.position, c[6];\n"
5126  "MUL R0.xy, R0, c[4];\n"
5127  "TEX R0, R0, texture[1], 2D;\n"
5128  "ADD R2, R2, -R1;\n"
5129  "DP4 R0.x, R0, c[7];\n"
5130  "MAD result.color, R0.x, R2, R1;\n"
5131  "END\n"
5132  ;
5133 
5135  "!!ARBfp1.0\n"
5136  "PARAM c[9] = { program.local[0..7],\n"
5137  " { 1 } };\n"
5138  "TEMP R0;\n"
5139  "TEMP R1;\n"
5140  "TEMP R2;\n"
5141  "TEMP R3;\n"
5142  "MUL R0.xyz, fragment.position.y, c[2];\n"
5143  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5144  "ADD R0.xyz, R0, c[3];\n"
5145  "RCP R0.z, R0.z;\n"
5146  "MUL R0.zw, R0.xyxy, R0.z;\n"
5147  "MUL R1.xy, R0.zwzw, c[0];\n"
5148  "MUL R0.xy, fragment.position, c[5];\n"
5149  "TEX R0, R0, texture[0], 2D;\n"
5150  "TEX R1, R1, texture[2], 2D;\n"
5151  "MUL R3.xyz, R1.w, R0;\n"
5152  "MUL R2.xyz, R1, R0.w;\n"
5153  "MIN R2.xyz, R2, R3;\n"
5154  "ADD R2.w, -R0, c[8].x;\n"
5155  "MAD R1.xyz, R1, R2.w, R2;\n"
5156  "ADD R2.x, -R1.w, c[8];\n"
5157  "MAD R2.xyz, R0, R2.x, R1;\n"
5158  "ADD R1.z, R1.w, R0.w;\n"
5159  "MAD R2.w, -R1, R0, R1.z;\n"
5160  "ADD R1.xy, fragment.position, c[6];\n"
5161  "MUL R1.xy, R1, c[4];\n"
5162  "TEX R1, R1, texture[1], 2D;\n"
5163  "ADD R2, R2, -R0;\n"
5164  "DP4 R1.x, R1, c[7];\n"
5165  "MAD result.color, R1.x, R2, R0;\n"
5166  "END\n"
5167  ;
5168 
5170  "!!ARBfp1.0\n"
5171  "PARAM c[9] = { program.local[0..7],\n"
5172  " { 1 } };\n"
5173  "TEMP R0;\n"
5174  "TEMP R1;\n"
5175  "TEMP R2;\n"
5176  "TEMP R3;\n"
5177  "MUL R0.xyz, fragment.position.y, c[2];\n"
5178  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5179  "ADD R0.xyz, R0, c[3];\n"
5180  "RCP R0.z, R0.z;\n"
5181  "MUL R0.zw, R0.xyxy, R0.z;\n"
5182  "MUL R1.xy, R0.zwzw, c[0];\n"
5183  "MUL R0.xy, fragment.position, c[5];\n"
5184  "TEX R0, R0, texture[0], 2D;\n"
5185  "TEX R1, R1, texture[2], 2D;\n"
5186  "MUL R3.xyz, R1.w, R0;\n"
5187  "MUL R2.xyz, R1, R0.w;\n"
5188  "MAX R2.xyz, R2, R3;\n"
5189  "ADD R2.w, -R0, c[8].x;\n"
5190  "MAD R1.xyz, R1, R2.w, R2;\n"
5191  "ADD R2.x, -R1.w, c[8];\n"
5192  "MAD R2.xyz, R0, R2.x, R1;\n"
5193  "ADD R1.z, R1.w, R0.w;\n"
5194  "MAD R2.w, -R1, R0, R1.z;\n"
5195  "ADD R1.xy, fragment.position, c[6];\n"
5196  "MUL R1.xy, R1, c[4];\n"
5197  "TEX R1, R1, texture[1], 2D;\n"
5198  "ADD R2, R2, -R0;\n"
5199  "DP4 R1.x, R1, c[7];\n"
5200  "MAD result.color, R1.x, R2, R0;\n"
5201  "END\n"
5202  ;
5203 
5205  "!!ARBfp1.0\n"
5206  "PARAM c[9] = { program.local[0..7],\n"
5207  " { 1, 1e-006 } };\n"
5208  "TEMP R0;\n"
5209  "TEMP R1;\n"
5210  "TEMP R2;\n"
5211  "TEMP R3;\n"
5212  "TEMP R4;\n"
5213  "MUL R0.xyz, fragment.position.y, c[2];\n"
5214  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5215  "ADD R0.xyz, R0, c[3];\n"
5216  "RCP R0.z, R0.z;\n"
5217  "MUL R0.xy, R0, R0.z;\n"
5218  "MUL R0.xy, R0, c[0];\n"
5219  "TEX R0, R0, texture[2], 2D;\n"
5220  "MAX R1.x, R0.w, c[8].y;\n"
5221  "RCP R1.x, R1.x;\n"
5222  "MAD R2.xyz, -R0, R1.x, c[8].x;\n"
5223  "MAX R2.xyz, R2, c[8].y;\n"
5224  "MUL R1.xy, fragment.position, c[5];\n"
5225  "TEX R1, R1, texture[0], 2D;\n"
5226  "ADD R2.w, -R0, c[8].x;\n"
5227  "MUL R3.xyz, R1, R2.w;\n"
5228  "ADD R2.w, -R1, c[8].x;\n"
5229  "MAD R4.xyz, R0, R2.w, R3;\n"
5230  "MUL R3.xyz, R0.w, R1;\n"
5231  "MUL R2.w, R0, R1;\n"
5232  "MAD R0.xyz, R0, R1.w, R3;\n"
5233  "SGE R0.xyz, R0, R2.w;\n"
5234  "RCP R2.x, R2.x;\n"
5235  "RCP R2.y, R2.y;\n"
5236  "RCP R2.z, R2.z;\n"
5237  "MAD R2.xyz, R3, R2, R4;\n"
5238  "MAD R4.xyz, R0.w, R1.w, R4;\n"
5239  "ADD R4.xyz, R4, -R2;\n"
5240  "MAD R2.xyz, R0, R4, R2;\n"
5241  "ADD R0.z, R0.w, R1.w;\n"
5242  "MAD R2.w, -R0, R1, R0.z;\n"
5243  "ADD R0.xy, fragment.position, c[6];\n"
5244  "MUL R0.xy, R0, c[4];\n"
5245  "TEX R0, R0, texture[1], 2D;\n"
5246  "ADD R2, R2, -R1;\n"
5247  "DP4 R0.x, R0, c[7];\n"
5248  "MAD result.color, R0.x, R2, R1;\n"
5249  "END\n"
5250  ;
5251 
5253  "!!ARBfp1.0\n"
5254  "PARAM c[9] = { program.local[0..7],\n"
5255  " { 1, 9.9999997e-006 } };\n"
5256  "TEMP R0;\n"
5257  "TEMP R1;\n"
5258  "TEMP R2;\n"
5259  "TEMP R3;\n"
5260  "TEMP R4;\n"
5261  "TEMP R5;\n"
5262  "MUL R0.xyz, fragment.position.y, c[2];\n"
5263  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5264  "ADD R0.xyz, R0, c[3];\n"
5265  "RCP R0.z, R0.z;\n"
5266  "MUL R0.xy, R0, R0.z;\n"
5267  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
5268  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5269  "MUL R0.xy, R0, c[0];\n"
5270  "TEX R0, R0, texture[2], 2D;\n"
5271  "MUL R2.xyz, R0.w, R1;\n"
5272  "MAD R3.xyz, R0, R1.w, R2;\n"
5273  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
5274  "MUL R4.xyz, R0.w, R2;\n"
5275  "MAX R2.xyz, R0, c[8].y;\n"
5276  "ADD R2.w, -R1, c[8].x;\n"
5277  "MUL R5.xyz, R0, R2.w;\n"
5278  "ADD R3.w, -R0, c[8].x;\n"
5279  "RCP R2.x, R2.x;\n"
5280  "RCP R2.y, R2.y;\n"
5281  "RCP R2.z, R2.z;\n"
5282  "MAD R2.xyz, R4, R2, R5;\n"
5283  "MUL R4.xyz, R1, R3.w;\n"
5284  "MAD R0.xyz, R0, R2.w, R4;\n"
5285  "MUL R2.w, R0, R1;\n"
5286  "MAD R2.xyz, R1, R3.w, R2;\n"
5287  "ADD R2.xyz, R2, -R0;\n"
5288  "SGE R3.xyz, R3, R2.w;\n"
5289  "MAD R2.xyz, R3, R2, R0;\n"
5290  "ADD R0.z, R0.w, R1.w;\n"
5291  "MAD R2.w, -R0, R1, R0.z;\n"
5292  "ADD R0.xy, fragment.position, c[6];\n"
5293  "MUL R0.xy, R0, c[4];\n"
5294  "TEX R0, R0, texture[1], 2D;\n"
5295  "ADD R2, R2, -R1;\n"
5296  "DP4 R0.x, R0, c[7];\n"
5297  "MAD result.color, R0.x, R2, R1;\n"
5298  "END\n"
5299  ;
5300 
5302  "!!ARBfp1.0\n"
5303  "PARAM c[9] = { program.local[0..7],\n"
5304  " { 2, 1 } };\n"
5305  "TEMP R0;\n"
5306  "TEMP R1;\n"
5307  "TEMP R2;\n"
5308  "TEMP R3;\n"
5309  "TEMP R4;\n"
5310  "MUL R0.xyz, fragment.position.y, c[2];\n"
5311  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5312  "ADD R0.xyz, R0, c[3];\n"
5313  "RCP R0.z, R0.z;\n"
5314  "MUL R0.xy, R0, R0.z;\n"
5315  "MUL R0.xy, R0, c[0];\n"
5316  "TEX R0, R0, texture[2], 2D;\n"
5317  "MUL R1.xy, fragment.position, c[5];\n"
5318  "TEX R1, R1, texture[0], 2D;\n"
5319  "ADD R2.w, -R1, c[8].y;\n"
5320  "ADD R3.xyz, R0.w, -R0;\n"
5321  "ADD R2.xyz, R1.w, -R1;\n"
5322  "MUL R2.xyz, R2, R3;\n"
5323  "MUL R2.xyz, R2, c[8].x;\n"
5324  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
5325  "MUL R4.xyz, R0, R2.w;\n"
5326  "MAD R2.xyz, R0, R2.w, R2;\n"
5327  "MUL R3.xyz, R0, R1;\n"
5328  "ADD R2.w, -R0, c[8].y;\n"
5329  "MAD R3.xyz, R3, c[8].x, R4;\n"
5330  "MUL R0.xyz, R0, c[8].x;\n"
5331  "SGE R0.xyz, R0, R0.w;\n"
5332  "MAD R3.xyz, R1, R2.w, R3;\n"
5333  "MAD R2.xyz, R1, R2.w, R2;\n"
5334  "ADD R2.xyz, R2, -R3;\n"
5335  "MAD R2.xyz, R0, R2, R3;\n"
5336  "ADD R0.z, R0.w, R1.w;\n"
5337  "MAD R2.w, -R0, R1, R0.z;\n"
5338  "ADD R0.xy, fragment.position, c[6];\n"
5339  "MUL R0.xy, R0, c[4];\n"
5340  "TEX R0, R0, texture[1], 2D;\n"
5341  "ADD R2, R2, -R1;\n"
5342  "DP4 R0.x, R0, c[7];\n"
5343  "MAD result.color, R0.x, R2, R1;\n"
5344  "END\n"
5345  ;
5346 
5348  "!!ARBfp1.0\n"
5349  "PARAM c[10] = { program.local[0..7],\n"
5350  " { 1, 2, 9.9999997e-006, 4 },\n"
5351  " { 16, 12, 3 } };\n"
5352  "TEMP R0;\n"
5353  "TEMP R1;\n"
5354  "TEMP R2;\n"
5355  "TEMP R3;\n"
5356  "TEMP R4;\n"
5357  "TEMP R5;\n"
5358  "TEMP R6;\n"
5359  "MUL R0.xyz, fragment.position.y, c[2];\n"
5360  "MUL R1.xy, fragment.position, c[5];\n"
5361  "TEX R1, R1, texture[0], 2D;\n"
5362  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5363  "ADD R0.xyz, R0, c[3];\n"
5364  "RCP R0.z, R0.z;\n"
5365  "MUL R0.xy, R0, R0.z;\n"
5366  "MAX R0.w, R1, c[8].z;\n"
5367  "RCP R0.w, R0.w;\n"
5368  "MUL R3.xyz, R1, R0.w;\n"
5369  "MAD R2.xyz, R3, c[9].x, -c[9].y;\n"
5370  "MUL R0.xy, R0, c[0];\n"
5371  "TEX R0, R0, texture[2], 2D;\n"
5372  "MAD R4.xyz, R3, R2, c[9].z;\n"
5373  "MAD R2.xyz, R0, c[8].y, -R0.w;\n"
5374  "MUL R5.xyz, R1.w, R2;\n"
5375  "MUL R6.xyz, R5, R4;\n"
5376  "RSQ R2.w, R3.x;\n"
5377  "RCP R4.x, R2.w;\n"
5378  "RSQ R2.w, R3.y;\n"
5379  "RSQ R3.w, R3.z;\n"
5380  "RCP R4.y, R2.w;\n"
5381  "RCP R4.z, R3.w;\n"
5382  "ADD R4.xyz, -R3, R4;\n"
5383  "MUL R6.xyz, R3, R6;\n"
5384  "MUL R4.xyz, R5, R4;\n"
5385  "ADD R3.xyz, -R3, c[8].x;\n"
5386  "MAD R2.xyz, R2, R3, R0.w;\n"
5387  "MUL R3.xyz, R0, c[8].y;\n"
5388  "MAD R5.xyz, R0.w, R1, R6;\n"
5389  "MAD R4.xyz, R0.w, R1, R4;\n"
5390  "ADD R6.xyz, R4, -R5;\n"
5391  "MUL R4.xyz, R1, c[8].w;\n"
5392  "SGE R4.xyz, R4, R1.w;\n"
5393  "MAD R4.xyz, R4, R6, R5;\n"
5394  "MAD R4.xyz, -R1, R2, R4;\n"
5395  "SGE R3.xyz, R3, R0.w;\n"
5396  "MUL R2.xyz, R1, R2;\n"
5397  "ADD R2.w, -R1, c[8].x;\n"
5398  "MAD R2.xyz, R3, R4, R2;\n"
5399  "MAD R2.xyz, R0, R2.w, R2;\n"
5400  "ADD R0.x, -R0.w, c[8];\n"
5401  "MAD R2.xyz, R1, R0.x, R2;\n"
5402  "ADD R0.z, R0.w, R1.w;\n"
5403  "MAD R2.w, -R0, R1, R0.z;\n"
5404  "ADD R0.xy, fragment.position, c[6];\n"
5405  "MUL R0.xy, R0, c[4];\n"
5406  "TEX R0, R0, texture[1], 2D;\n"
5407  "ADD R2, R2, -R1;\n"
5408  "DP4 R0.x, R0, c[7];\n"
5409  "MAD result.color, R0.x, R2, R1;\n"
5410  "END\n"
5411  ;
5412 
5414  "!!ARBfp1.0\n"
5415  "PARAM c[9] = { program.local[0..7],\n"
5416  " { 2 } };\n"
5417  "TEMP R0;\n"
5418  "TEMP R1;\n"
5419  "TEMP R2;\n"
5420  "TEMP R3;\n"
5421  "MUL R0.xyz, fragment.position.y, c[2];\n"
5422  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5423  "ADD R0.xyz, R0, c[3];\n"
5424  "RCP R0.z, R0.z;\n"
5425  "MUL R0.zw, R0.xyxy, R0.z;\n"
5426  "MUL R1.xy, R0.zwzw, c[0];\n"
5427  "MUL R0.xy, fragment.position, c[5];\n"
5428  "TEX R0, R0, texture[0], 2D;\n"
5429  "TEX R1, R1, texture[2], 2D;\n"
5430  "ADD R2.xyz, R1, R0;\n"
5431  "MUL R3.xyz, R1.w, R0;\n"
5432  "MUL R1.xyz, R1, R0.w;\n"
5433  "MIN R1.xyz, R1, R3;\n"
5434  "MAD R2.xyz, -R1, c[8].x, R2;\n"
5435  "ADD R1.z, R1.w, R0.w;\n"
5436  "MAD R2.w, -R1, R0, R1.z;\n"
5437  "ADD R1.xy, fragment.position, c[6];\n"
5438  "MUL R1.xy, R1, c[4];\n"
5439  "TEX R1, R1, texture[1], 2D;\n"
5440  "ADD R2, R2, -R0;\n"
5441  "DP4 R1.x, R1, c[7];\n"
5442  "MAD result.color, R1.x, R2, R0;\n"
5443  "END\n"
5444  ;
5445 
5447  "!!ARBfp1.0\n"
5448  "PARAM c[9] = { program.local[0..7],\n"
5449  " { 2, 1 } };\n"
5450  "TEMP R0;\n"
5451  "TEMP R1;\n"
5452  "TEMP R2;\n"
5453  "TEMP R3;\n"
5454  "MUL R0.xyz, fragment.position.y, c[2];\n"
5455  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5456  "ADD R0.xyz, R0, c[3];\n"
5457  "RCP R0.z, R0.z;\n"
5458  "MUL R0.zw, R0.xyxy, R0.z;\n"
5459  "MUL R1.xy, R0.zwzw, c[0];\n"
5460  "MUL R0.xy, fragment.position, c[5];\n"
5461  "TEX R0, R0, texture[0], 2D;\n"
5462  "TEX R1, R1, texture[2], 2D;\n"
5463  "MUL R2.xyz, R1.w, R0;\n"
5464  "MAD R3.xyz, R1, R0.w, R2;\n"
5465  "MUL R2.xyz, R1, R0;\n"
5466  "MAD R2.xyz, -R2, c[8].x, R3;\n"
5467  "ADD R2.w, -R0, c[8].y;\n"
5468  "MAD R1.xyz, R1, R2.w, R2;\n"
5469  "ADD R2.x, -R1.w, c[8].y;\n"
5470  "MAD R2.xyz, R0, R2.x, R1;\n"
5471  "ADD R1.z, R1.w, R0.w;\n"
5472  "MAD R2.w, -R1, R0, R1.z;\n"
5473  "ADD R1.xy, fragment.position, c[6];\n"
5474  "MUL R1.xy, R1, c[4];\n"
5475  "TEX R1, R1, texture[1], 2D;\n"
5476  "ADD R2, R2, -R0;\n"
5477  "DP4 R1.x, R1, c[7];\n"
5478  "MAD result.color, R1.x, R2, R0;\n"
5479  "END\n"
5480  ;
5481 
5483  "!!ARBfp1.0\n"
5484  "PARAM c[8] = { program.local[0..6],\n"
5485  " { 1 } };\n"
5486  "TEMP R0;\n"
5487  "TEMP R1;\n"
5488  "TEMP R2;\n"
5489  "TEMP R3;\n"
5490  "MUL R0.xyz, fragment.position.y, c[2];\n"
5491  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5492  "ADD R0.xyz, R0, c[3];\n"
5493  "RCP R0.z, R0.z;\n"
5494  "MUL R0.xy, R0, R0.z;\n"
5495  "MUL R1.xy, fragment.position, c[6];\n"
5496  "TEX R1, R1, texture[0], 2D;\n"
5497  "MUL R2.xyz, R1, c[4].y;\n"
5498  "MUL R0.xy, R0, c[0];\n"
5499  "TEX R0, R0, texture[1], 2D;\n"
5500  "MUL R3.xyz, R0.w, R2;\n"
5501  "MUL R2.xyz, R0, c[4].x;\n"
5502  "MAD R2.xyz, R1.w, R2, R3;\n"
5503  "ADD R2.w, -R1, c[7].x;\n"
5504  "MUL R0.xyz, R0, c[5].y;\n"
5505  "MAD R0.xyz, R2.w, R0, R2;\n"
5506  "ADD R2.x, -R0.w, c[7];\n"
5507  "MUL R1.xyz, R1, c[5].z;\n"
5508  "MAD result.color.xyz, R2.x, R1, R0;\n"
5509  "MUL R0.x, R0.w, R1.w;\n"
5510  "MUL R0.z, R1.w, R2.x;\n"
5511  "MUL R0.y, R0.w, R2.w;\n"
5512  "DP3 result.color.w, R0, c[5];\n"
5513  "END\n"
5514  ;
5515 
5517  "!!ARBfp1.0\n"
5518  "PARAM c[6] = { program.local[0..4],\n"
5519  " { 1 } };\n"
5520  "TEMP R0;\n"
5521  "TEMP R1;\n"
5522  "TEMP R2;\n"
5523  "MUL R0.xyz, fragment.position.y, c[2];\n"
5524  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5525  "ADD R0.xyz, R0, c[3];\n"
5526  "RCP R0.z, R0.z;\n"
5527  "MUL R0.xy, R0, R0.z;\n"
5528  "MUL R1.xy, fragment.position, c[4];\n"
5529  "TEX R1, R1, texture[0], 2D;\n"
5530  "MUL R0.xy, R0, c[0];\n"
5531  "TEX R0, R0, texture[1], 2D;\n"
5532  "ADD R2.x, -R1.w, c[5];\n"
5533  "MUL R2.xyz, R0, R2.x;\n"
5534  "MAD R0.xyz, R0, R1, R2;\n"
5535  "ADD R2.x, R0.w, R1.w;\n"
5536  "ADD R2.y, -R0.w, c[5].x;\n"
5537  "MAD result.color.xyz, R1, R2.y, R0;\n"
5538  "MAD result.color.w, -R0, R1, R2.x;\n"
5539  "END\n"
5540  ;
5541 
5543  "!!ARBfp1.0\n"
5544  "PARAM c[5] = { program.local[0..4] };\n"
5545  "TEMP R0;\n"
5546  "TEMP R1;\n"
5547  "TEMP R2;\n"
5548  "MUL R0.xyz, fragment.position.y, c[2];\n"
5549  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5550  "ADD R0.xyz, R0, c[3];\n"
5551  "RCP R0.z, R0.z;\n"
5552  "MUL R0.xy, R0, R0.z;\n"
5553  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5554  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5555  "MUL R0.xy, R0, c[0];\n"
5556  "TEX R0, R0, texture[1], 2D;\n"
5557  "ADD R2, R0, R1;\n"
5558  "MAD result.color, -R0, R1, R2;\n"
5559  "END\n"
5560  ;
5561 
5563  "!!ARBfp1.0\n"
5564  "PARAM c[6] = { program.local[0..4],\n"
5565  " { 2, 1 } };\n"
5566  "TEMP R0;\n"
5567  "TEMP R1;\n"
5568  "TEMP R2;\n"
5569  "TEMP R3;\n"
5570  "MUL R0.xyz, fragment.position.y, c[2];\n"
5571  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5572  "ADD R0.xyz, R0, c[3];\n"
5573  "RCP R0.z, R0.z;\n"
5574  "MUL R0.xy, R0, R0.z;\n"
5575  "MUL R0.xy, R0, c[0];\n"
5576  "TEX R0, R0, texture[1], 2D;\n"
5577  "MUL R1.xy, fragment.position, c[4];\n"
5578  "TEX R1, R1, texture[0], 2D;\n"
5579  "ADD R3.xyz, R0.w, -R0;\n"
5580  "ADD R2.xyz, R1.w, -R1;\n"
5581  "MUL R2.xyz, R2, R3;\n"
5582  "ADD R2.w, -R1, c[5].y;\n"
5583  "MUL R2.xyz, R2, c[5].x;\n"
5584  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
5585  "MAD R2.xyz, R0, R2.w, R2;\n"
5586  "MUL R3.xyz, R0, R2.w;\n"
5587  "MUL R0.xyz, R0, R1;\n"
5588  "ADD R2.w, -R0, c[5].y;\n"
5589  "MAD R0.xyz, R0, c[5].x, R3;\n"
5590  "MAD R0.xyz, R1, R2.w, R0;\n"
5591  "MAD R2.xyz, R1, R2.w, R2;\n"
5592  "MUL R1.xyz, R1, c[5].x;\n"
5593  "ADD R2.w, R0, R1;\n"
5594  "ADD R2.xyz, R2, -R0;\n"
5595  "SGE R1.xyz, R1, R1.w;\n"
5596  "MAD result.color.xyz, R1, R2, R0;\n"
5597  "MAD result.color.w, -R0, R1, R2;\n"
5598  "END\n"
5599  ;
5600 
5602  "!!ARBfp1.0\n"
5603  "PARAM c[6] = { program.local[0..4],\n"
5604  " { 1 } };\n"
5605  "TEMP R0;\n"
5606  "TEMP R1;\n"
5607  "TEMP R2;\n"
5608  "TEMP R3;\n"
5609  "MUL R0.xyz, fragment.position.y, c[2];\n"
5610  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5611  "ADD R0.xyz, R0, c[3];\n"
5612  "RCP R0.z, R0.z;\n"
5613  "MUL R0.xy, R0, R0.z;\n"
5614  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5615  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5616  "MUL R0.xy, R0, c[0];\n"
5617  "TEX R0, R0, texture[1], 2D;\n"
5618  "MUL R2.xyz, R0, R1.w;\n"
5619  "MUL R3.xyz, R0.w, R1;\n"
5620  "MIN R2.xyz, R2, R3;\n"
5621  "ADD R2.w, -R1, c[5].x;\n"
5622  "MAD R0.xyz, R0, R2.w, R2;\n"
5623  "ADD R2.x, R0.w, R1.w;\n"
5624  "ADD R2.y, -R0.w, c[5].x;\n"
5625  "MAD result.color.xyz, R1, R2.y, R0;\n"
5626  "MAD result.color.w, -R0, R1, R2.x;\n"
5627  "END\n"
5628  ;
5629 
5631  "!!ARBfp1.0\n"
5632  "PARAM c[6] = { program.local[0..4],\n"
5633  " { 1 } };\n"
5634  "TEMP R0;\n"
5635  "TEMP R1;\n"
5636  "TEMP R2;\n"
5637  "TEMP R3;\n"
5638  "MUL R0.xyz, fragment.position.y, c[2];\n"
5639  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5640  "ADD R0.xyz, R0, c[3];\n"
5641  "RCP R0.z, R0.z;\n"
5642  "MUL R0.xy, R0, R0.z;\n"
5643  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5644  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5645  "MUL R0.xy, R0, c[0];\n"
5646  "TEX R0, R0, texture[1], 2D;\n"
5647  "MUL R2.xyz, R0, R1.w;\n"
5648  "MUL R3.xyz, R0.w, R1;\n"
5649  "MAX R2.xyz, R2, R3;\n"
5650  "ADD R2.w, -R1, c[5].x;\n"
5651  "MAD R0.xyz, R0, R2.w, R2;\n"
5652  "ADD R2.x, R0.w, R1.w;\n"
5653  "ADD R2.y, -R0.w, c[5].x;\n"
5654  "MAD result.color.xyz, R1, R2.y, R0;\n"
5655  "MAD result.color.w, -R0, R1, R2.x;\n"
5656  "END\n"
5657  ;
5658 
5660  "!!ARBfp1.0\n"
5661  "PARAM c[6] = { program.local[0..4],\n"
5662  " { 1, 1e-006 } };\n"
5663  "TEMP R0;\n"
5664  "TEMP R1;\n"
5665  "TEMP R2;\n"
5666  "TEMP R3;\n"
5667  "MUL R0.xyz, fragment.position.y, c[2];\n"
5668  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5669  "ADD R0.xyz, R0, c[3];\n"
5670  "RCP R0.z, R0.z;\n"
5671  "MUL R0.xy, R0, R0.z;\n"
5672  "MUL R0.xy, R0, c[0];\n"
5673  "TEX R0, R0, texture[1], 2D;\n"
5674  "MAX R1.x, R0.w, c[5].y;\n"
5675  "RCP R1.x, R1.x;\n"
5676  "MAD R3.xyz, -R0, R1.x, c[5].x;\n"
5677  "MAX R3.xyz, R3, c[5].y;\n"
5678  "MUL R1.xy, fragment.position, c[4];\n"
5679  "TEX R1, R1, texture[0], 2D;\n"
5680  "ADD R2.x, -R0.w, c[5];\n"
5681  "MUL R2.xyz, R1, R2.x;\n"
5682  "ADD R2.w, -R1, c[5].x;\n"
5683  "MAD R2.xyz, R0, R2.w, R2;\n"
5684  "MUL R1.xyz, R0.w, R1;\n"
5685  "MAD R0.xyz, R0, R1.w, R1;\n"
5686  "MUL R2.w, R0, R1;\n"
5687  "RCP R3.x, R3.x;\n"
5688  "RCP R3.y, R3.y;\n"
5689  "RCP R3.z, R3.z;\n"
5690  "MAD R3.xyz, R1, R3, R2;\n"
5691  "MAD R2.xyz, R0.w, R1.w, R2;\n"
5692  "ADD R1.x, R0.w, R1.w;\n"
5693  "ADD R2.xyz, R2, -R3;\n"
5694  "SGE R0.xyz, R0, R2.w;\n"
5695  "MAD result.color.xyz, R0, R2, R3;\n"
5696  "MAD result.color.w, -R0, R1, R1.x;\n"
5697  "END\n"
5698  ;
5699 
5701  "!!ARBfp1.0\n"
5702  "PARAM c[6] = { program.local[0..4],\n"
5703  " { 1, 9.9999997e-006 } };\n"
5704  "TEMP R0;\n"
5705  "TEMP R1;\n"
5706  "TEMP R2;\n"
5707  "TEMP R3;\n"
5708  "TEMP R4;\n"
5709  "TEMP R5;\n"
5710  "MUL R0.xyz, fragment.position.y, c[2];\n"
5711  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5712  "ADD R0.xyz, R0, c[3];\n"
5713  "RCP R0.z, R0.z;\n"
5714  "MUL R0.xy, R0, R0.z;\n"
5715  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5716  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5717  "MUL R0.xy, R0, c[0];\n"
5718  "TEX R0, R0, texture[1], 2D;\n"
5719  "MUL R2.xyz, R0.w, R1;\n"
5720  "MAD R3.xyz, R0, R1.w, R2;\n"
5721  "ADD R2.w, -R1, c[5].x;\n"
5722  "MAD R2.xyz, -R0.w, R1.w, R3;\n"
5723  "MUL R4.xyz, R0.w, R2;\n"
5724  "MAX R2.xyz, R0, c[5].y;\n"
5725  "MUL R5.xyz, R0, R2.w;\n"
5726  "ADD R3.w, -R0, c[5].x;\n"
5727  "RCP R2.x, R2.x;\n"
5728  "RCP R2.y, R2.y;\n"
5729  "RCP R2.z, R2.z;\n"
5730  "MAD R2.xyz, R4, R2, R5;\n"
5731  "MUL R4.xyz, R1, R3.w;\n"
5732  "MAD R1.xyz, R1, R3.w, R2;\n"
5733  "MAD R0.xyz, R0, R2.w, R4;\n"
5734  "MUL R2.x, R0.w, R1.w;\n"
5735  "ADD R2.w, R0, R1;\n"
5736  "ADD R1.xyz, R1, -R0;\n"
5737  "SGE R2.xyz, R3, R2.x;\n"
5738  "MAD result.color.xyz, R2, R1, R0;\n"
5739  "MAD result.color.w, -R0, R1, R2;\n"
5740  "END\n"
5741  ;
5742 
5744  "!!ARBfp1.0\n"
5745  "PARAM c[6] = { program.local[0..4],\n"
5746  " { 2, 1 } };\n"
5747  "TEMP R0;\n"
5748  "TEMP R1;\n"
5749  "TEMP R2;\n"
5750  "TEMP R3;\n"
5751  "TEMP R4;\n"
5752  "MUL R0.xyz, fragment.position.y, c[2];\n"
5753  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5754  "ADD R0.xyz, R0, c[3];\n"
5755  "RCP R0.z, R0.z;\n"
5756  "MUL R0.xy, R0, R0.z;\n"
5757  "MUL R0.xy, R0, c[0];\n"
5758  "TEX R0, R0, texture[1], 2D;\n"
5759  "MUL R1.xy, fragment.position, c[4];\n"
5760  "TEX R1, R1, texture[0], 2D;\n"
5761  "ADD R2.w, -R1, c[5].y;\n"
5762  "ADD R3.xyz, R0.w, -R0;\n"
5763  "ADD R2.xyz, R1.w, -R1;\n"
5764  "MUL R2.xyz, R2, R3;\n"
5765  "MUL R2.xyz, R2, c[5].x;\n"
5766  "MAD R2.xyz, R0.w, R1.w, -R2;\n"
5767  "MAD R2.xyz, R0, R2.w, R2;\n"
5768  "MUL R4.xyz, R0, R2.w;\n"
5769  "MUL R3.xyz, R0, R1;\n"
5770  "MUL R0.xyz, R0, c[5].x;\n"
5771  "ADD R2.w, -R0, c[5].y;\n"
5772  "MAD R3.xyz, R3, c[5].x, R4;\n"
5773  "MAD R3.xyz, R1, R2.w, R3;\n"
5774  "MAD R1.xyz, R1, R2.w, R2;\n"
5775  "ADD R2.x, R0.w, R1.w;\n"
5776  "ADD R1.xyz, R1, -R3;\n"
5777  "SGE R0.xyz, R0, R0.w;\n"
5778  "MAD result.color.xyz, R0, R1, R3;\n"
5779  "MAD result.color.w, -R0, R1, R2.x;\n"
5780  "END\n"
5781  ;
5782 
5784  "!!ARBfp1.0\n"
5785  "PARAM c[7] = { program.local[0..4],\n"
5786  " { 1, 2, 9.9999997e-006, 4 },\n"
5787  " { 16, 12, 3 } };\n"
5788  "TEMP R0;\n"
5789  "TEMP R1;\n"
5790  "TEMP R2;\n"
5791  "TEMP R3;\n"
5792  "TEMP R4;\n"
5793  "TEMP R5;\n"
5794  "TEMP R6;\n"
5795  "MUL R0.xyz, fragment.position.y, c[2];\n"
5796  "MUL R1.xy, fragment.position, c[4];\n"
5797  "TEX R1, R1, texture[0], 2D;\n"
5798  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5799  "ADD R0.xyz, R0, c[3];\n"
5800  "RCP R0.z, R0.z;\n"
5801  "MUL R0.xy, R0, R0.z;\n"
5802  "MAX R0.w, R1, c[5].z;\n"
5803  "RCP R0.w, R0.w;\n"
5804  "MUL R3.xyz, R1, R0.w;\n"
5805  "MAD R2.xyz, R3, c[6].x, -c[6].y;\n"
5806  "MUL R0.xy, R0, c[0];\n"
5807  "TEX R0, R0, texture[1], 2D;\n"
5808  "MAD R4.xyz, R3, R2, c[6].z;\n"
5809  "MAD R2.xyz, R0, c[5].y, -R0.w;\n"
5810  "MUL R5.xyz, R1.w, R2;\n"
5811  "MUL R6.xyz, R5, R4;\n"
5812  "RSQ R2.w, R3.x;\n"
5813  "RCP R4.x, R2.w;\n"
5814  "RSQ R2.w, R3.y;\n"
5815  "RSQ R3.w, R3.z;\n"
5816  "RCP R4.y, R2.w;\n"
5817  "RCP R4.z, R3.w;\n"
5818  "ADD R4.xyz, -R3, R4;\n"
5819  "MUL R6.xyz, R3, R6;\n"
5820  "MUL R4.xyz, R5, R4;\n"
5821  "ADD R3.xyz, -R3, c[5].x;\n"
5822  "MAD R2.xyz, R2, R3, R0.w;\n"
5823  "MUL R3.xyz, R0, c[5].y;\n"
5824  "MAD R5.xyz, R0.w, R1, R6;\n"
5825  "MAD R4.xyz, R0.w, R1, R4;\n"
5826  "ADD R6.xyz, R4, -R5;\n"
5827  "MUL R4.xyz, R1, c[5].w;\n"
5828  "SGE R4.xyz, R4, R1.w;\n"
5829  "MAD R4.xyz, R4, R6, R5;\n"
5830  "MAD R4.xyz, -R1, R2, R4;\n"
5831  "MUL R2.xyz, R1, R2;\n"
5832  "SGE R3.xyz, R3, R0.w;\n"
5833  "MAD R2.xyz, R3, R4, R2;\n"
5834  "ADD R2.w, -R1, c[5].x;\n"
5835  "MAD R2.xyz, R0, R2.w, R2;\n"
5836  "ADD R0.x, R0.w, R1.w;\n"
5837  "ADD R0.y, -R0.w, c[5].x;\n"
5838  "MAD result.color.xyz, R1, R0.y, R2;\n"
5839  "MAD result.color.w, -R0, R1, R0.x;\n"
5840  "END\n"
5841  ;
5842 
5844  "!!ARBfp1.0\n"
5845  "PARAM c[6] = { program.local[0..4],\n"
5846  " { 2 } };\n"
5847  "TEMP R0;\n"
5848  "TEMP R1;\n"
5849  "TEMP R2;\n"
5850  "TEMP R3;\n"
5851  "MUL R0.xyz, fragment.position.y, c[2];\n"
5852  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5853  "ADD R0.xyz, R0, c[3];\n"
5854  "RCP R0.z, R0.z;\n"
5855  "MUL R0.xy, R0, R0.z;\n"
5856  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5857  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5858  "MUL R0.xy, R0, c[0];\n"
5859  "TEX R0, R0, texture[1], 2D;\n"
5860  "MUL R2.xyz, R0, R1.w;\n"
5861  "MUL R3.xyz, R0.w, R1;\n"
5862  "ADD R0.xyz, R0, R1;\n"
5863  "MIN R2.xyz, R2, R3;\n"
5864  "ADD R1.x, R0.w, R1.w;\n"
5865  "MAD result.color.xyz, -R2, c[5].x, R0;\n"
5866  "MAD result.color.w, -R0, R1, R1.x;\n"
5867  "END\n"
5868  ;
5869 
5871  "!!ARBfp1.0\n"
5872  "PARAM c[6] = { program.local[0..4],\n"
5873  " { 2, 1 } };\n"
5874  "TEMP R0;\n"
5875  "TEMP R1;\n"
5876  "TEMP R2;\n"
5877  "TEMP R3;\n"
5878  "MUL R0.xyz, fragment.position.y, c[2];\n"
5879  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5880  "ADD R0.xyz, R0, c[3];\n"
5881  "RCP R0.z, R0.z;\n"
5882  "MUL R0.xy, R0, R0.z;\n"
5883  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
5884  "TEX R1, R0.zwzw, texture[0], 2D;\n"
5885  "MUL R0.xy, R0, c[0];\n"
5886  "TEX R0, R0, texture[1], 2D;\n"
5887  "MUL R2.xyz, R0.w, R1;\n"
5888  "MAD R3.xyz, R0, R1.w, R2;\n"
5889  "MUL R2.xyz, R0, R1;\n"
5890  "MAD R2.xyz, -R2, c[5].x, R3;\n"
5891  "ADD R2.w, -R1, c[5].y;\n"
5892  "MAD R0.xyz, R0, R2.w, R2;\n"
5893  "ADD R2.x, R0.w, R1.w;\n"
5894  "ADD R2.y, -R0.w, c[5];\n"
5895  "MAD result.color.xyz, R1, R2.y, R0;\n"
5896  "MAD result.color.w, -R0, R1, R2.x;\n"
5897  "END\n"
5898  ;
5899 
5901  "!!ARBfp1.0\n"
5902  "PARAM c[7] = { program.local[0..6] };\n"
5903  "TEMP R0;\n"
5904  "TEMP R1;\n"
5905  "MUL R0.xyz, fragment.position.y, c[2];\n"
5906  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5907  "ADD R1.xyz, R0, c[3];\n"
5908  "RCP R0.z, R1.z;\n"
5909  "MUL R1.xy, R1, R0.z;\n"
5910  "ADD R0.xy, fragment.position, c[5];\n"
5911  "MUL R0.xy, R0, c[4];\n"
5912  "TEX R0, R0, texture[0], 2D;\n"
5913  "DP4 R1.z, R0, c[6];\n"
5914  "MUL R1.xy, R1, c[0];\n"
5915  "TEX R0, R1, texture[1], 2D;\n"
5916  "MUL result.color, R0, R1.z;\n"
5917  "END\n"
5918  ;
5919 
5921  "!!ARBfp1.0\n"
5922  "PARAM c[4] = { program.local[0..3] };\n"
5923  "TEMP R0;\n"
5924  "MUL R0.xyz, fragment.position.y, c[2];\n"
5925  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5926  "ADD R0.xyz, R0, c[3];\n"
5927  "RCP R0.z, R0.z;\n"
5928  "MUL R0.xy, R0, R0.z;\n"
5929  "MUL R0.xy, R0, c[0];\n"
5930  "TEX result.color, R0, texture[0], 2D;\n"
5931  "END\n"
5932  ;
5933 
5935  "!!ARBfp1.0\n"
5936  "PARAM c[11] = { program.local[0..9],\n"
5937  " { 1 } };\n"
5938  "TEMP R0;\n"
5939  "TEMP R1;\n"
5940  "TEMP R2;\n"
5941  "TEMP R3;\n"
5942  "MUL R0.xyz, fragment.position.y, c[2];\n"
5943  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5944  "ADD R0.xyz, R0, c[3];\n"
5945  "RCP R0.z, R0.z;\n"
5946  "MUL R0.xy, R0, R0.z;\n"
5947  "MUL R0.zw, R0.xyxy, c[0].xyxy;\n"
5948  "TEX R1.x, R0.zwzw, texture[2], 2D;\n"
5949  "MUL R0.xy, fragment.position, c[7];\n"
5950  "TEX R0, R0, texture[0], 2D;\n"
5951  "ADD R1.x, -R1, c[10];\n"
5952  "MUL R1, fragment.color.primary, R1.x;\n"
5953  "MUL R2.xyz, R0, c[4].y;\n"
5954  "MUL R3.xyz, R1.w, R2;\n"
5955  "MUL R2.xyz, R1, c[4].x;\n"
5956  "MAD R2.xyz, R0.w, R2, R3;\n"
5957  "ADD R3.xy, fragment.position, c[8];\n"
5958  "ADD R2.w, -R0, c[10].x;\n"
5959  "MUL R1.xyz, R1, c[5].y;\n"
5960  "MAD R2.xyz, R2.w, R1, R2;\n"
5961  "MUL R1.xyz, R0, c[5].z;\n"
5962  "ADD R3.z, -R1.w, c[10].x;\n"
5963  "MAD R2.xyz, R3.z, R1, R2;\n"
5964  "MUL R1.y, R1.w, R2.w;\n"
5965  "MUL R1.x, R1.w, R0.w;\n"
5966  "MUL R1.z, R0.w, R3;\n"
5967  "DP3 R2.w, R1, c[5];\n"
5968  "MUL R3.xy, R3, c[6];\n"
5969  "TEX R1, R3, texture[1], 2D;\n"
5970  "ADD R2, R2, -R0;\n"
5971  "DP4 R1.x, R1, c[9];\n"
5972  "MAD result.color, R1.x, R2, R0;\n"
5973  "END\n"
5974  ;
5975 
5977  "!!ARBfp1.0\n"
5978  "PARAM c[9] = { program.local[0..7],\n"
5979  " { 1 } };\n"
5980  "TEMP R0;\n"
5981  "TEMP R1;\n"
5982  "TEMP R2;\n"
5983  "MUL R0.xyz, fragment.position.y, c[2];\n"
5984  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
5985  "ADD R0.xyz, R0, c[3];\n"
5986  "RCP R0.z, R0.z;\n"
5987  "MUL R0.xy, R0, R0.z;\n"
5988  "MUL R0.zw, R0.xyxy, c[0].xyxy;\n"
5989  "TEX R1.x, R0.zwzw, texture[2], 2D;\n"
5990  "MUL R0.xy, fragment.position, c[5];\n"
5991  "TEX R0, R0, texture[0], 2D;\n"
5992  "ADD R1.x, -R1, c[8];\n"
5993  "MUL R1, fragment.color.primary, R1.x;\n"
5994  "ADD R2.x, -R0.w, c[8];\n"
5995  "MUL R2.xyz, R1, R2.x;\n"
5996  "MAD R1.xyz, R1, R0, R2;\n"
5997  "ADD R2.x, -R1.w, c[8];\n"
5998  "MAD R2.xyz, R0, R2.x, R1;\n"
5999  "ADD R1.z, R1.w, R0.w;\n"
6000  "MAD R2.w, -R1, R0, R1.z;\n"
6001  "ADD R1.xy, fragment.position, c[6];\n"
6002  "MUL R1.xy, R1, c[4];\n"
6003  "TEX R1, R1, texture[1], 2D;\n"
6004  "ADD R2, R2, -R0;\n"
6005  "DP4 R1.x, R1, c[7];\n"
6006  "MAD result.color, R1.x, R2, R0;\n"
6007  "END\n"
6008  ;
6009 
6011  "!!ARBfp1.0\n"
6012  "PARAM c[9] = { program.local[0..7],\n"
6013  " { 1 } };\n"
6014  "TEMP R0;\n"
6015  "TEMP R1;\n"
6016  "TEMP R2;\n"
6017  "TEMP R3;\n"
6018  "MUL R0.xyz, fragment.position.y, c[2];\n"
6019  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6020  "ADD R0.xyz, R0, c[3];\n"
6021  "RCP R0.z, R0.z;\n"
6022  "MUL R0.xy, R0, R0.z;\n"
6023  "MUL R0.xy, R0, c[0];\n"
6024  "TEX R0.x, R0, texture[2], 2D;\n"
6025  "ADD R0.z, -R0.x, c[8].x;\n"
6026  "ADD R3.xy, fragment.position, c[6];\n"
6027  "MUL R1, fragment.color.primary, R0.z;\n"
6028  "MUL R0.xy, fragment.position, c[5];\n"
6029  "TEX R0, R0, texture[0], 2D;\n"
6030  "ADD R2, R1, R0;\n"
6031  "MAD R2, -R1, R0, R2;\n"
6032  "MUL R3.xy, R3, c[4];\n"
6033  "TEX R1, R3, texture[1], 2D;\n"
6034  "ADD R2, R2, -R0;\n"
6035  "DP4 R1.x, R1, c[7];\n"
6036  "MAD result.color, R1.x, R2, R0;\n"
6037  "END\n"
6038  ;
6039 
6041  "!!ARBfp1.0\n"
6042  "PARAM c[9] = { program.local[0..7],\n"
6043  " { 1, 2 } };\n"
6044  "TEMP R0;\n"
6045  "TEMP R1;\n"
6046  "TEMP R2;\n"
6047  "TEMP R3;\n"
6048  "TEMP R4;\n"
6049  "MUL R0.xyz, fragment.position.y, c[2];\n"
6050  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6051  "ADD R0.xyz, R0, c[3];\n"
6052  "RCP R0.z, R0.z;\n"
6053  "MUL R0.xy, R0, R0.z;\n"
6054  "MUL R0.xy, R0, c[0];\n"
6055  "TEX R0.x, R0, texture[2], 2D;\n"
6056  "ADD R0.x, -R0, c[8];\n"
6057  "MUL R1, fragment.color.primary, R0.x;\n"
6058  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
6059  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6060  "ADD R2.w, -R0, c[8].x;\n"
6061  "ADD R3.xyz, R1.w, -R1;\n"
6062  "ADD R2.xyz, R0.w, -R0;\n"
6063  "MUL R2.xyz, R2, R3;\n"
6064  "MUL R2.xyz, R2, c[8].y;\n"
6065  "MAD R2.xyz, R1.w, R0.w, -R2;\n"
6066  "MUL R4.xyz, R1, R2.w;\n"
6067  "MUL R3.xyz, R1, R0;\n"
6068  "MAD R1.xyz, R1, R2.w, R2;\n"
6069  "ADD R2.x, -R1.w, c[8];\n"
6070  "MAD R3.xyz, R3, c[8].y, R4;\n"
6071  "MAD R3.xyz, R0, R2.x, R3;\n"
6072  "MAD R1.xyz, R0, R2.x, R1;\n"
6073  "MUL R2.xyz, R0, c[8].y;\n"
6074  "ADD R1.xyz, R1, -R3;\n"
6075  "SGE R2.xyz, R2, R0.w;\n"
6076  "MAD R2.xyz, R2, R1, R3;\n"
6077  "ADD R1.z, R1.w, R0.w;\n"
6078  "MAD R2.w, -R1, R0, R1.z;\n"
6079  "ADD R1.xy, fragment.position, c[6];\n"
6080  "MUL R1.xy, R1, c[4];\n"
6081  "TEX R1, R1, texture[1], 2D;\n"
6082  "ADD R2, R2, -R0;\n"
6083  "DP4 R1.x, R1, c[7];\n"
6084  "MAD result.color, R1.x, R2, R0;\n"
6085  "END\n"
6086  ;
6087 
6089  "!!ARBfp1.0\n"
6090  "PARAM c[9] = { program.local[0..7],\n"
6091  " { 1 } };\n"
6092  "TEMP R0;\n"
6093  "TEMP R1;\n"
6094  "TEMP R2;\n"
6095  "TEMP R3;\n"
6096  "MUL R0.xyz, fragment.position.y, c[2];\n"
6097  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6098  "ADD R0.xyz, R0, c[3];\n"
6099  "RCP R0.z, R0.z;\n"
6100  "MUL R0.xy, R0, R0.z;\n"
6101  "MUL R0.xy, R0, c[0];\n"
6102  "TEX R1.x, R0, texture[2], 2D;\n"
6103  "MUL R0.xy, fragment.position, c[5];\n"
6104  "TEX R0, R0, texture[0], 2D;\n"
6105  "ADD R1.x, -R1, c[8];\n"
6106  "MUL R1, fragment.color.primary, R1.x;\n"
6107  "MUL R3.xyz, R1.w, R0;\n"
6108  "MUL R2.xyz, R1, R0.w;\n"
6109  "MIN R2.xyz, R2, R3;\n"
6110  "ADD R2.w, -R0, c[8].x;\n"
6111  "MAD R1.xyz, R1, R2.w, R2;\n"
6112  "ADD R2.x, -R1.w, c[8];\n"
6113  "MAD R2.xyz, R0, R2.x, R1;\n"
6114  "ADD R1.z, R1.w, R0.w;\n"
6115  "MAD R2.w, -R1, R0, R1.z;\n"
6116  "ADD R1.xy, fragment.position, c[6];\n"
6117  "MUL R1.xy, R1, c[4];\n"
6118  "TEX R1, R1, texture[1], 2D;\n"
6119  "ADD R2, R2, -R0;\n"
6120  "DP4 R1.x, R1, c[7];\n"
6121  "MAD result.color, R1.x, R2, R0;\n"
6122  "END\n"
6123  ;
6124 
6126  "!!ARBfp1.0\n"
6127  "PARAM c[9] = { program.local[0..7],\n"
6128  " { 1 } };\n"
6129  "TEMP R0;\n"
6130  "TEMP R1;\n"
6131  "TEMP R2;\n"
6132  "TEMP R3;\n"
6133  "MUL R0.xyz, fragment.position.y, c[2];\n"
6134  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6135  "ADD R0.xyz, R0, c[3];\n"
6136  "RCP R0.z, R0.z;\n"
6137  "MUL R0.xy, R0, R0.z;\n"
6138  "MUL R0.xy, R0, c[0];\n"
6139  "TEX R1.x, R0, texture[2], 2D;\n"
6140  "MUL R0.xy, fragment.position, c[5];\n"
6141  "TEX R0, R0, texture[0], 2D;\n"
6142  "ADD R1.x, -R1, c[8];\n"
6143  "MUL R1, fragment.color.primary, R1.x;\n"
6144  "MUL R3.xyz, R1.w, R0;\n"
6145  "MUL R2.xyz, R1, R0.w;\n"
6146  "MAX R2.xyz, R2, R3;\n"
6147  "ADD R2.w, -R0, c[8].x;\n"
6148  "MAD R1.xyz, R1, R2.w, R2;\n"
6149  "ADD R2.x, -R1.w, c[8];\n"
6150  "MAD R2.xyz, R0, R2.x, R1;\n"
6151  "ADD R1.z, R1.w, R0.w;\n"
6152  "MAD R2.w, -R1, R0, R1.z;\n"
6153  "ADD R1.xy, fragment.position, c[6];\n"
6154  "MUL R1.xy, R1, c[4];\n"
6155  "TEX R1, R1, texture[1], 2D;\n"
6156  "ADD R2, R2, -R0;\n"
6157  "DP4 R1.x, R1, c[7];\n"
6158  "MAD result.color, R1.x, R2, R0;\n"
6159  "END\n"
6160  ;
6161 
6163  "!!ARBfp1.0\n"
6164  "PARAM c[9] = { program.local[0..7],\n"
6165  " { 1, 1e-006 } };\n"
6166  "TEMP R0;\n"
6167  "TEMP R1;\n"
6168  "TEMP R2;\n"
6169  "TEMP R3;\n"
6170  "TEMP R4;\n"
6171  "MUL R0.xyz, fragment.position.y, c[2];\n"
6172  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6173  "ADD R0.xyz, R0, c[3];\n"
6174  "RCP R0.z, R0.z;\n"
6175  "MUL R0.xy, R0, R0.z;\n"
6176  "MUL R0.xy, R0, c[0];\n"
6177  "TEX R0.x, R0, texture[2], 2D;\n"
6178  "ADD R0.x, -R0, c[8];\n"
6179  "MUL R1, fragment.color.primary, R0.x;\n"
6180  "MAX R0.x, R1.w, c[8].y;\n"
6181  "RCP R0.x, R0.x;\n"
6182  "MAD R2.xyz, -R1, R0.x, c[8].x;\n"
6183  "MAX R2.xyz, R2, c[8].y;\n"
6184  "MUL R0.xy, fragment.position, c[5];\n"
6185  "TEX R0, R0, texture[0], 2D;\n"
6186  "ADD R2.w, -R1, c[8].x;\n"
6187  "MUL R3.xyz, R0, R2.w;\n"
6188  "ADD R2.w, -R0, c[8].x;\n"
6189  "MAD R4.xyz, R1, R2.w, R3;\n"
6190  "MUL R3.xyz, R1.w, R0;\n"
6191  "MUL R2.w, R1, R0;\n"
6192  "MAD R1.xyz, R1, R0.w, R3;\n"
6193  "SGE R1.xyz, R1, R2.w;\n"
6194  "RCP R2.x, R2.x;\n"
6195  "RCP R2.y, R2.y;\n"
6196  "RCP R2.z, R2.z;\n"
6197  "MAD R2.xyz, R3, R2, R4;\n"
6198  "MAD R4.xyz, R1.w, R0.w, R4;\n"
6199  "ADD R4.xyz, R4, -R2;\n"
6200  "MAD R2.xyz, R1, R4, R2;\n"
6201  "ADD R1.z, R1.w, R0.w;\n"
6202  "MAD R2.w, -R1, R0, R1.z;\n"
6203  "ADD R1.xy, fragment.position, c[6];\n"
6204  "MUL R1.xy, R1, c[4];\n"
6205  "TEX R1, R1, texture[1], 2D;\n"
6206  "ADD R2, R2, -R0;\n"
6207  "DP4 R1.x, R1, c[7];\n"
6208  "MAD result.color, R1.x, R2, R0;\n"
6209  "END\n"
6210  ;
6211 
6213  "!!ARBfp1.0\n"
6214  "PARAM c[9] = { program.local[0..7],\n"
6215  " { 1, 9.9999997e-006 } };\n"
6216  "TEMP R0;\n"
6217  "TEMP R1;\n"
6218  "TEMP R2;\n"
6219  "TEMP R3;\n"
6220  "TEMP R4;\n"
6221  "TEMP R5;\n"
6222  "MUL R0.xyz, fragment.position.y, c[2];\n"
6223  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6224  "ADD R0.xyz, R0, c[3];\n"
6225  "RCP R0.z, R0.z;\n"
6226  "MUL R0.xy, R0, R0.z;\n"
6227  "MUL R0.xy, R0, c[0];\n"
6228  "TEX R0.x, R0, texture[2], 2D;\n"
6229  "ADD R1.x, -R0, c[8];\n"
6230  "MUL R1, fragment.color.primary, R1.x;\n"
6231  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
6232  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6233  "MUL R2.xyz, R1.w, R0;\n"
6234  "MAD R3.xyz, R1, R0.w, R2;\n"
6235  "MAD R2.xyz, -R1.w, R0.w, R3;\n"
6236  "MUL R4.xyz, R1.w, R2;\n"
6237  "MAX R2.xyz, R1, c[8].y;\n"
6238  "ADD R2.w, -R0, c[8].x;\n"
6239  "MUL R5.xyz, R1, R2.w;\n"
6240  "ADD R3.w, -R1, c[8].x;\n"
6241  "RCP R2.x, R2.x;\n"
6242  "RCP R2.y, R2.y;\n"
6243  "RCP R2.z, R2.z;\n"
6244  "MAD R2.xyz, R4, R2, R5;\n"
6245  "MUL R4.xyz, R0, R3.w;\n"
6246  "MAD R1.xyz, R1, R2.w, R4;\n"
6247  "MUL R2.w, R1, R0;\n"
6248  "MAD R2.xyz, R0, R3.w, R2;\n"
6249  "ADD R2.xyz, R2, -R1;\n"
6250  "SGE R3.xyz, R3, R2.w;\n"
6251  "MAD R2.xyz, R3, R2, R1;\n"
6252  "ADD R1.z, R1.w, R0.w;\n"
6253  "MAD R2.w, -R1, R0, R1.z;\n"
6254  "ADD R1.xy, fragment.position, c[6];\n"
6255  "MUL R1.xy, R1, c[4];\n"
6256  "TEX R1, R1, texture[1], 2D;\n"
6257  "ADD R2, R2, -R0;\n"
6258  "DP4 R1.x, R1, c[7];\n"
6259  "MAD result.color, R1.x, R2, R0;\n"
6260  "END\n"
6261  ;
6262 
6264  "!!ARBfp1.0\n"
6265  "PARAM c[9] = { program.local[0..7],\n"
6266  " { 1, 2 } };\n"
6267  "TEMP R0;\n"
6268  "TEMP R1;\n"
6269  "TEMP R2;\n"
6270  "TEMP R3;\n"
6271  "TEMP R4;\n"
6272  "MUL R0.xyz, fragment.position.y, c[2];\n"
6273  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6274  "ADD R0.xyz, R0, c[3];\n"
6275  "RCP R0.z, R0.z;\n"
6276  "MUL R0.xy, R0, R0.z;\n"
6277  "MUL R0.xy, R0, c[0];\n"
6278  "TEX R0.x, R0, texture[2], 2D;\n"
6279  "ADD R0.x, -R0, c[8];\n"
6280  "MUL R1, fragment.color.primary, R0.x;\n"
6281  "MUL R0.zw, fragment.position.xyxy, c[5].xyxy;\n"
6282  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6283  "ADD R2.w, -R0, c[8].x;\n"
6284  "ADD R3.xyz, R1.w, -R1;\n"
6285  "ADD R2.xyz, R0.w, -R0;\n"
6286  "MUL R2.xyz, R2, R3;\n"
6287  "MUL R2.xyz, R2, c[8].y;\n"
6288  "MAD R2.xyz, R1.w, R0.w, -R2;\n"
6289  "MUL R4.xyz, R1, R2.w;\n"
6290  "MAD R2.xyz, R1, R2.w, R2;\n"
6291  "MUL R3.xyz, R1, R0;\n"
6292  "ADD R2.w, -R1, c[8].x;\n"
6293  "MAD R3.xyz, R3, c[8].y, R4;\n"
6294  "MUL R1.xyz, R1, c[8].y;\n"
6295  "SGE R1.xyz, R1, R1.w;\n"
6296  "MAD R3.xyz, R0, R2.w, R3;\n"
6297  "MAD R2.xyz, R0, R2.w, R2;\n"
6298  "ADD R2.xyz, R2, -R3;\n"
6299  "MAD R2.xyz, R1, R2, R3;\n"
6300  "ADD R1.z, R1.w, R0.w;\n"
6301  "MAD R2.w, -R1, R0, R1.z;\n"
6302  "ADD R1.xy, fragment.position, c[6];\n"
6303  "MUL R1.xy, R1, c[4];\n"
6304  "TEX R1, R1, texture[1], 2D;\n"
6305  "ADD R2, R2, -R0;\n"
6306  "DP4 R1.x, R1, c[7];\n"
6307  "MAD result.color, R1.x, R2, R0;\n"
6308  "END\n"
6309  ;
6310 
6312  "!!ARBfp1.0\n"
6313  "PARAM c[10] = { program.local[0..7],\n"
6314  " { 1, 2, 9.9999997e-006, 4 },\n"
6315  " { 16, 12, 3 } };\n"
6316  "TEMP R0;\n"
6317  "TEMP R1;\n"
6318  "TEMP R2;\n"
6319  "TEMP R3;\n"
6320  "TEMP R4;\n"
6321  "TEMP R5;\n"
6322  "TEMP R6;\n"
6323  "MUL R0.xyz, fragment.position.y, c[2];\n"
6324  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6325  "ADD R1.xyz, R0, c[3];\n"
6326  "RCP R1.z, R1.z;\n"
6327  "MUL R1.xy, R1, R1.z;\n"
6328  "MUL R1.xy, R1, c[0];\n"
6329  "TEX R1.x, R1, texture[2], 2D;\n"
6330  "MUL R0.xy, fragment.position, c[5];\n"
6331  "TEX R0, R0, texture[0], 2D;\n"
6332  "MAX R1.z, R0.w, c[8];\n"
6333  "RCP R1.z, R1.z;\n"
6334  "MUL R3.xyz, R0, R1.z;\n"
6335  "MAD R2.xyz, R3, c[9].x, -c[9].y;\n"
6336  "ADD R1.x, -R1, c[8];\n"
6337  "MUL R1, fragment.color.primary, R1.x;\n"
6338  "MAD R4.xyz, R3, R2, c[9].z;\n"
6339  "MAD R2.xyz, R1, c[8].y, -R1.w;\n"
6340  "MUL R5.xyz, R0.w, R2;\n"
6341  "MUL R6.xyz, R5, R4;\n"
6342  "RSQ R2.w, R3.x;\n"
6343  "RCP R4.x, R2.w;\n"
6344  "RSQ R2.w, R3.y;\n"
6345  "RSQ R3.w, R3.z;\n"
6346  "RCP R4.y, R2.w;\n"
6347  "RCP R4.z, R3.w;\n"
6348  "ADD R4.xyz, -R3, R4;\n"
6349  "MUL R6.xyz, R3, R6;\n"
6350  "MUL R4.xyz, R5, R4;\n"
6351  "ADD R3.xyz, -R3, c[8].x;\n"
6352  "MAD R2.xyz, R2, R3, R1.w;\n"
6353  "MUL R3.xyz, R1, c[8].y;\n"
6354  "MAD R5.xyz, R1.w, R0, R6;\n"
6355  "MAD R4.xyz, R1.w, R0, R4;\n"
6356  "ADD R6.xyz, R4, -R5;\n"
6357  "MUL R4.xyz, R0, c[8].w;\n"
6358  "SGE R4.xyz, R4, R0.w;\n"
6359  "MAD R4.xyz, R4, R6, R5;\n"
6360  "MAD R4.xyz, -R0, R2, R4;\n"
6361  "SGE R3.xyz, R3, R1.w;\n"
6362  "MUL R2.xyz, R0, R2;\n"
6363  "ADD R2.w, -R0, c[8].x;\n"
6364  "MAD R2.xyz, R3, R4, R2;\n"
6365  "MAD R2.xyz, R1, R2.w, R2;\n"
6366  "ADD R1.x, -R1.w, c[8];\n"
6367  "MAD R2.xyz, R0, R1.x, R2;\n"
6368  "ADD R1.z, R1.w, R0.w;\n"
6369  "MAD R2.w, -R1, R0, R1.z;\n"
6370  "ADD R1.xy, fragment.position, c[6];\n"
6371  "MUL R1.xy, R1, c[4];\n"
6372  "TEX R1, R1, texture[1], 2D;\n"
6373  "ADD R2, R2, -R0;\n"
6374  "DP4 R1.x, R1, c[7];\n"
6375  "MAD result.color, R1.x, R2, R0;\n"
6376  "END\n"
6377  ;
6378 
6380  "!!ARBfp1.0\n"
6381  "PARAM c[9] = { program.local[0..7],\n"
6382  " { 1, 2 } };\n"
6383  "TEMP R0;\n"
6384  "TEMP R1;\n"
6385  "TEMP R2;\n"
6386  "TEMP R3;\n"
6387  "MUL R0.xyz, fragment.position.y, c[2];\n"
6388  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6389  "ADD R0.xyz, R0, c[3];\n"
6390  "RCP R0.z, R0.z;\n"
6391  "MUL R0.xy, R0, R0.z;\n"
6392  "MUL R0.xy, R0, c[0];\n"
6393  "TEX R1.x, R0, texture[2], 2D;\n"
6394  "MUL R0.xy, fragment.position, c[5];\n"
6395  "ADD R1.x, -R1, c[8];\n"
6396  "TEX R0, R0, texture[0], 2D;\n"
6397  "MUL R1, fragment.color.primary, R1.x;\n"
6398  "ADD R2.xyz, R1, R0;\n"
6399  "MUL R3.xyz, R1.w, R0;\n"
6400  "MUL R1.xyz, R1, R0.w;\n"
6401  "MIN R1.xyz, R1, R3;\n"
6402  "MAD R2.xyz, -R1, c[8].y, R2;\n"
6403  "ADD R1.z, R1.w, R0.w;\n"
6404  "MAD R2.w, -R1, R0, R1.z;\n"
6405  "ADD R1.xy, fragment.position, c[6];\n"
6406  "MUL R1.xy, R1, c[4];\n"
6407  "TEX R1, R1, texture[1], 2D;\n"
6408  "ADD R2, R2, -R0;\n"
6409  "DP4 R1.x, R1, c[7];\n"
6410  "MAD result.color, R1.x, R2, R0;\n"
6411  "END\n"
6412  ;
6413 
6415  "!!ARBfp1.0\n"
6416  "PARAM c[9] = { program.local[0..7],\n"
6417  " { 1, 2 } };\n"
6418  "TEMP R0;\n"
6419  "TEMP R1;\n"
6420  "TEMP R2;\n"
6421  "TEMP R3;\n"
6422  "MUL R0.xyz, fragment.position.y, c[2];\n"
6423  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6424  "ADD R0.xyz, R0, c[3];\n"
6425  "RCP R0.z, R0.z;\n"
6426  "MUL R0.xy, R0, R0.z;\n"
6427  "MUL R0.xy, R0, c[0];\n"
6428  "TEX R1.x, R0, texture[2], 2D;\n"
6429  "MUL R0.xy, fragment.position, c[5];\n"
6430  "TEX R0, R0, texture[0], 2D;\n"
6431  "ADD R1.x, -R1, c[8];\n"
6432  "MUL R1, fragment.color.primary, R1.x;\n"
6433  "MUL R2.xyz, R1.w, R0;\n"
6434  "MAD R3.xyz, R1, R0.w, R2;\n"
6435  "MUL R2.xyz, R1, R0;\n"
6436  "MAD R2.xyz, -R2, c[8].y, R3;\n"
6437  "ADD R2.w, -R0, c[8].x;\n"
6438  "MAD R1.xyz, R1, R2.w, R2;\n"
6439  "ADD R2.x, -R1.w, c[8];\n"
6440  "MAD R2.xyz, R0, R2.x, R1;\n"
6441  "ADD R1.z, R1.w, R0.w;\n"
6442  "MAD R2.w, -R1, R0, R1.z;\n"
6443  "ADD R1.xy, fragment.position, c[6];\n"
6444  "MUL R1.xy, R1, c[4];\n"
6445  "TEX R1, R1, texture[1], 2D;\n"
6446  "ADD R2, R2, -R0;\n"
6447  "DP4 R1.x, R1, c[7];\n"
6448  "MAD result.color, R1.x, R2, R0;\n"
6449  "END\n"
6450  ;
6451 
6453  "!!ARBfp1.0\n"
6454  "PARAM c[8] = { program.local[0..6],\n"
6455  " { 1 } };\n"
6456  "TEMP R0;\n"
6457  "TEMP R1;\n"
6458  "TEMP R2;\n"
6459  "TEMP R3;\n"
6460  "MUL R0.xyz, fragment.position.y, c[2];\n"
6461  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6462  "ADD R0.xyz, R0, c[3];\n"
6463  "RCP R0.z, R0.z;\n"
6464  "MUL R0.xy, R0, R0.z;\n"
6465  "MUL R0.xy, R0, c[0];\n"
6466  "TEX R1.x, R0, texture[1], 2D;\n"
6467  "MUL R0.zw, fragment.position.xyxy, c[6].xyxy;\n"
6468  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6469  "MUL R2.xyz, R0, c[4].y;\n"
6470  "ADD R1.x, -R1, c[7];\n"
6471  "MUL R1, fragment.color.primary, R1.x;\n"
6472  "MUL R3.xyz, R1.w, R2;\n"
6473  "MUL R2.xyz, R1, c[4].x;\n"
6474  "MUL R0.xyz, R0, c[5].z;\n"
6475  "MAD R2.xyz, R0.w, R2, R3;\n"
6476  "ADD R2.w, -R0, c[7].x;\n"
6477  "MUL R1.xyz, R1, c[5].y;\n"
6478  "MAD R1.xyz, R2.w, R1, R2;\n"
6479  "ADD R2.x, -R1.w, c[7];\n"
6480  "MAD result.color.xyz, R2.x, R0, R1;\n"
6481  "MUL R0.x, R1.w, R0.w;\n"
6482  "MUL R0.z, R0.w, R2.x;\n"
6483  "MUL R0.y, R1.w, R2.w;\n"
6484  "DP3 result.color.w, R0, c[5];\n"
6485  "END\n"
6486  ;
6487 
6489  "!!ARBfp1.0\n"
6490  "PARAM c[6] = { program.local[0..4],\n"
6491  " { 1 } };\n"
6492  "TEMP R0;\n"
6493  "TEMP R1;\n"
6494  "TEMP R2;\n"
6495  "MUL R0.xyz, fragment.position.y, c[2];\n"
6496  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6497  "ADD R0.xyz, R0, c[3];\n"
6498  "RCP R0.z, R0.z;\n"
6499  "MUL R0.xy, R0, R0.z;\n"
6500  "MUL R0.xy, R0, c[0];\n"
6501  "TEX R1.x, R0, texture[1], 2D;\n"
6502  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6503  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6504  "ADD R1.x, -R1, c[5];\n"
6505  "MUL R1, fragment.color.primary, R1.x;\n"
6506  "ADD R2.x, -R0.w, c[5];\n"
6507  "MUL R2.xyz, R1, R2.x;\n"
6508  "MAD R1.xyz, R1, R0, R2;\n"
6509  "ADD R2.x, R1.w, R0.w;\n"
6510  "ADD R2.y, -R1.w, c[5].x;\n"
6511  "MAD result.color.xyz, R0, R2.y, R1;\n"
6512  "MAD result.color.w, -R1, R0, R2.x;\n"
6513  "END\n"
6514  ;
6515 
6517  "!!ARBfp1.0\n"
6518  "PARAM c[6] = { program.local[0..4],\n"
6519  " { 1 } };\n"
6520  "TEMP R0;\n"
6521  "TEMP R1;\n"
6522  "TEMP R2;\n"
6523  "MUL R0.xyz, fragment.position.y, c[2];\n"
6524  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6525  "ADD R0.xyz, R0, c[3];\n"
6526  "RCP R0.z, R0.z;\n"
6527  "MUL R0.xy, R0, R0.z;\n"
6528  "MUL R0.xy, R0, c[0];\n"
6529  "TEX R0.x, R0, texture[1], 2D;\n"
6530  "ADD R1.x, -R0, c[5];\n"
6531  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6532  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6533  "MUL R1, fragment.color.primary, R1.x;\n"
6534  "ADD R2, R1, R0;\n"
6535  "MAD result.color, -R1, R0, R2;\n"
6536  "END\n"
6537  ;
6538 
6540  "!!ARBfp1.0\n"
6541  "PARAM c[6] = { program.local[0..4],\n"
6542  " { 1, 2 } };\n"
6543  "TEMP R0;\n"
6544  "TEMP R1;\n"
6545  "TEMP R2;\n"
6546  "TEMP R3;\n"
6547  "MUL R0.xyz, fragment.position.y, c[2];\n"
6548  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6549  "ADD R0.xyz, R0, c[3];\n"
6550  "RCP R0.z, R0.z;\n"
6551  "MUL R0.xy, R0, R0.z;\n"
6552  "MUL R0.xy, R0, c[0];\n"
6553  "TEX R0.x, R0, texture[1], 2D;\n"
6554  "ADD R0.x, -R0, c[5];\n"
6555  "MUL R1, fragment.color.primary, R0.x;\n"
6556  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6557  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6558  "ADD R3.xyz, R1.w, -R1;\n"
6559  "ADD R2.xyz, R0.w, -R0;\n"
6560  "MUL R2.xyz, R2, R3;\n"
6561  "ADD R2.w, -R0, c[5].x;\n"
6562  "MUL R2.xyz, R2, c[5].y;\n"
6563  "MAD R2.xyz, R1.w, R0.w, -R2;\n"
6564  "MAD R2.xyz, R1, R2.w, R2;\n"
6565  "MUL R3.xyz, R1, R2.w;\n"
6566  "MUL R1.xyz, R1, R0;\n"
6567  "ADD R2.w, -R1, c[5].x;\n"
6568  "MAD R1.xyz, R1, c[5].y, R3;\n"
6569  "MAD R1.xyz, R0, R2.w, R1;\n"
6570  "MAD R2.xyz, R0, R2.w, R2;\n"
6571  "MUL R0.xyz, R0, c[5].y;\n"
6572  "ADD R2.w, R1, R0;\n"
6573  "ADD R2.xyz, R2, -R1;\n"
6574  "SGE R0.xyz, R0, R0.w;\n"
6575  "MAD result.color.xyz, R0, R2, R1;\n"
6576  "MAD result.color.w, -R1, R0, R2;\n"
6577  "END\n"
6578  ;
6579 
6581  "!!ARBfp1.0\n"
6582  "PARAM c[6] = { program.local[0..4],\n"
6583  " { 1 } };\n"
6584  "TEMP R0;\n"
6585  "TEMP R1;\n"
6586  "TEMP R2;\n"
6587  "TEMP R3;\n"
6588  "MUL R0.xyz, fragment.position.y, c[2];\n"
6589  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6590  "ADD R0.xyz, R0, c[3];\n"
6591  "RCP R0.z, R0.z;\n"
6592  "MUL R0.xy, R0, R0.z;\n"
6593  "MUL R0.xy, R0, c[0];\n"
6594  "TEX R0.x, R0, texture[1], 2D;\n"
6595  "ADD R1.x, -R0, c[5];\n"
6596  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6597  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6598  "MUL R1, fragment.color.primary, R1.x;\n"
6599  "MUL R2.xyz, R1, R0.w;\n"
6600  "MUL R3.xyz, R1.w, R0;\n"
6601  "MIN R2.xyz, R2, R3;\n"
6602  "ADD R2.w, -R0, c[5].x;\n"
6603  "MAD R1.xyz, R1, R2.w, R2;\n"
6604  "ADD R2.x, R1.w, R0.w;\n"
6605  "ADD R2.y, -R1.w, c[5].x;\n"
6606  "MAD result.color.xyz, R0, R2.y, R1;\n"
6607  "MAD result.color.w, -R1, R0, R2.x;\n"
6608  "END\n"
6609  ;
6610 
6612  "!!ARBfp1.0\n"
6613  "PARAM c[6] = { program.local[0..4],\n"
6614  " { 1 } };\n"
6615  "TEMP R0;\n"
6616  "TEMP R1;\n"
6617  "TEMP R2;\n"
6618  "TEMP R3;\n"
6619  "MUL R0.xyz, fragment.position.y, c[2];\n"
6620  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6621  "ADD R0.xyz, R0, c[3];\n"
6622  "RCP R0.z, R0.z;\n"
6623  "MUL R0.xy, R0, R0.z;\n"
6624  "MUL R0.xy, R0, c[0];\n"
6625  "TEX R0.x, R0, texture[1], 2D;\n"
6626  "ADD R1.x, -R0, c[5];\n"
6627  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6628  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6629  "MUL R1, fragment.color.primary, R1.x;\n"
6630  "MUL R2.xyz, R1, R0.w;\n"
6631  "MUL R3.xyz, R1.w, R0;\n"
6632  "MAX R2.xyz, R2, R3;\n"
6633  "ADD R2.w, -R0, c[5].x;\n"
6634  "MAD R1.xyz, R1, R2.w, R2;\n"
6635  "ADD R2.x, R1.w, R0.w;\n"
6636  "ADD R2.y, -R1.w, c[5].x;\n"
6637  "MAD result.color.xyz, R0, R2.y, R1;\n"
6638  "MAD result.color.w, -R1, R0, R2.x;\n"
6639  "END\n"
6640  ;
6641 
6643  "!!ARBfp1.0\n"
6644  "PARAM c[6] = { program.local[0..4],\n"
6645  " { 1, 1e-006 } };\n"
6646  "TEMP R0;\n"
6647  "TEMP R1;\n"
6648  "TEMP R2;\n"
6649  "TEMP R3;\n"
6650  "MUL R0.xyz, fragment.position.y, c[2];\n"
6651  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6652  "ADD R0.xyz, R0, c[3];\n"
6653  "RCP R0.z, R0.z;\n"
6654  "MUL R0.xy, R0, R0.z;\n"
6655  "MUL R0.xy, R0, c[0];\n"
6656  "TEX R0.x, R0, texture[1], 2D;\n"
6657  "ADD R0.x, -R0, c[5];\n"
6658  "MUL R1, fragment.color.primary, R0.x;\n"
6659  "MAX R0.x, R1.w, c[5].y;\n"
6660  "RCP R0.x, R0.x;\n"
6661  "MAD R3.xyz, -R1, R0.x, c[5].x;\n"
6662  "MAX R3.xyz, R3, c[5].y;\n"
6663  "MUL R0.xy, fragment.position, c[4];\n"
6664  "TEX R0, R0, texture[0], 2D;\n"
6665  "ADD R2.x, -R1.w, c[5];\n"
6666  "MUL R2.xyz, R0, R2.x;\n"
6667  "ADD R2.w, -R0, c[5].x;\n"
6668  "MAD R2.xyz, R1, R2.w, R2;\n"
6669  "MUL R0.xyz, R1.w, R0;\n"
6670  "RCP R3.x, R3.x;\n"
6671  "RCP R3.y, R3.y;\n"
6672  "RCP R3.z, R3.z;\n"
6673  "MAD R3.xyz, R0, R3, R2;\n"
6674  "MAD R0.xyz, R1, R0.w, R0;\n"
6675  "MAD R2.xyz, R1.w, R0.w, R2;\n"
6676  "MUL R2.w, R1, R0;\n"
6677  "ADD R1.x, R1.w, R0.w;\n"
6678  "ADD R2.xyz, R2, -R3;\n"
6679  "SGE R0.xyz, R0, R2.w;\n"
6680  "MAD result.color.xyz, R0, R2, R3;\n"
6681  "MAD result.color.w, -R1, R0, R1.x;\n"
6682  "END\n"
6683  ;
6684 
6686  "!!ARBfp1.0\n"
6687  "PARAM c[6] = { program.local[0..4],\n"
6688  " { 1, 9.9999997e-006 } };\n"
6689  "TEMP R0;\n"
6690  "TEMP R1;\n"
6691  "TEMP R2;\n"
6692  "TEMP R3;\n"
6693  "TEMP R4;\n"
6694  "TEMP R5;\n"
6695  "MUL R0.xyz, fragment.position.y, c[2];\n"
6696  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6697  "ADD R0.xyz, R0, c[3];\n"
6698  "RCP R0.z, R0.z;\n"
6699  "MUL R0.xy, R0, R0.z;\n"
6700  "MUL R0.xy, R0, c[0];\n"
6701  "TEX R0.x, R0, texture[1], 2D;\n"
6702  "ADD R1.x, -R0, c[5];\n"
6703  "MUL R1, fragment.color.primary, R1.x;\n"
6704  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6705  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6706  "MUL R2.xyz, R1.w, R0;\n"
6707  "MAD R3.xyz, R1, R0.w, R2;\n"
6708  "ADD R2.w, -R0, c[5].x;\n"
6709  "MAD R2.xyz, -R1.w, R0.w, R3;\n"
6710  "MUL R4.xyz, R1.w, R2;\n"
6711  "MAX R2.xyz, R1, c[5].y;\n"
6712  "MUL R5.xyz, R1, R2.w;\n"
6713  "ADD R3.w, -R1, c[5].x;\n"
6714  "RCP R2.x, R2.x;\n"
6715  "RCP R2.y, R2.y;\n"
6716  "RCP R2.z, R2.z;\n"
6717  "MAD R2.xyz, R4, R2, R5;\n"
6718  "MUL R4.xyz, R0, R3.w;\n"
6719  "MAD R0.xyz, R0, R3.w, R2;\n"
6720  "MAD R1.xyz, R1, R2.w, R4;\n"
6721  "MUL R2.x, R1.w, R0.w;\n"
6722  "ADD R2.w, R1, R0;\n"
6723  "ADD R0.xyz, R0, -R1;\n"
6724  "SGE R2.xyz, R3, R2.x;\n"
6725  "MAD result.color.xyz, R2, R0, R1;\n"
6726  "MAD result.color.w, -R1, R0, R2;\n"
6727  "END\n"
6728  ;
6729 
6731  "!!ARBfp1.0\n"
6732  "PARAM c[6] = { program.local[0..4],\n"
6733  " { 1, 2 } };\n"
6734  "TEMP R0;\n"
6735  "TEMP R1;\n"
6736  "TEMP R2;\n"
6737  "TEMP R3;\n"
6738  "TEMP R4;\n"
6739  "MUL R0.xyz, fragment.position.y, c[2];\n"
6740  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6741  "ADD R0.xyz, R0, c[3];\n"
6742  "RCP R0.z, R0.z;\n"
6743  "MUL R0.xy, R0, R0.z;\n"
6744  "MUL R0.xy, R0, c[0];\n"
6745  "TEX R0.x, R0, texture[1], 2D;\n"
6746  "ADD R0.x, -R0, c[5];\n"
6747  "MUL R1, fragment.color.primary, R0.x;\n"
6748  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6749  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6750  "ADD R2.w, -R0, c[5].x;\n"
6751  "ADD R3.xyz, R1.w, -R1;\n"
6752  "ADD R2.xyz, R0.w, -R0;\n"
6753  "MUL R2.xyz, R2, R3;\n"
6754  "MUL R2.xyz, R2, c[5].y;\n"
6755  "MAD R2.xyz, R1.w, R0.w, -R2;\n"
6756  "MAD R2.xyz, R1, R2.w, R2;\n"
6757  "MUL R4.xyz, R1, R2.w;\n"
6758  "MUL R3.xyz, R1, R0;\n"
6759  "MUL R1.xyz, R1, c[5].y;\n"
6760  "ADD R2.w, -R1, c[5].x;\n"
6761  "MAD R3.xyz, R3, c[5].y, R4;\n"
6762  "MAD R3.xyz, R0, R2.w, R3;\n"
6763  "MAD R0.xyz, R0, R2.w, R2;\n"
6764  "ADD R2.x, R1.w, R0.w;\n"
6765  "ADD R0.xyz, R0, -R3;\n"
6766  "SGE R1.xyz, R1, R1.w;\n"
6767  "MAD result.color.xyz, R1, R0, R3;\n"
6768  "MAD result.color.w, -R1, R0, R2.x;\n"
6769  "END\n"
6770  ;
6771 
6773  "!!ARBfp1.0\n"
6774  "PARAM c[7] = { program.local[0..4],\n"
6775  " { 1, 2, 9.9999997e-006, 4 },\n"
6776  " { 16, 12, 3 } };\n"
6777  "TEMP R0;\n"
6778  "TEMP R1;\n"
6779  "TEMP R2;\n"
6780  "TEMP R3;\n"
6781  "TEMP R4;\n"
6782  "TEMP R5;\n"
6783  "TEMP R6;\n"
6784  "MUL R0.xyz, fragment.position.y, c[2];\n"
6785  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6786  "ADD R1.xyz, R0, c[3];\n"
6787  "RCP R1.z, R1.z;\n"
6788  "MUL R1.xy, R1, R1.z;\n"
6789  "MUL R1.xy, R1, c[0];\n"
6790  "TEX R1.x, R1, texture[1], 2D;\n"
6791  "MUL R0.xy, fragment.position, c[4];\n"
6792  "TEX R0, R0, texture[0], 2D;\n"
6793  "MAX R1.z, R0.w, c[5];\n"
6794  "RCP R1.z, R1.z;\n"
6795  "MUL R3.xyz, R0, R1.z;\n"
6796  "MAD R2.xyz, R3, c[6].x, -c[6].y;\n"
6797  "ADD R1.x, -R1, c[5];\n"
6798  "MUL R1, fragment.color.primary, R1.x;\n"
6799  "MAD R4.xyz, R3, R2, c[6].z;\n"
6800  "MAD R2.xyz, R1, c[5].y, -R1.w;\n"
6801  "MUL R5.xyz, R0.w, R2;\n"
6802  "MUL R6.xyz, R5, R4;\n"
6803  "RSQ R2.w, R3.x;\n"
6804  "RCP R4.x, R2.w;\n"
6805  "RSQ R2.w, R3.y;\n"
6806  "RSQ R3.w, R3.z;\n"
6807  "RCP R4.y, R2.w;\n"
6808  "RCP R4.z, R3.w;\n"
6809  "ADD R4.xyz, -R3, R4;\n"
6810  "MUL R6.xyz, R3, R6;\n"
6811  "MUL R4.xyz, R5, R4;\n"
6812  "ADD R3.xyz, -R3, c[5].x;\n"
6813  "MAD R2.xyz, R2, R3, R1.w;\n"
6814  "MUL R3.xyz, R1, c[5].y;\n"
6815  "MAD R5.xyz, R1.w, R0, R6;\n"
6816  "MAD R4.xyz, R1.w, R0, R4;\n"
6817  "ADD R6.xyz, R4, -R5;\n"
6818  "MUL R4.xyz, R0, c[5].w;\n"
6819  "SGE R4.xyz, R4, R0.w;\n"
6820  "MAD R4.xyz, R4, R6, R5;\n"
6821  "MAD R4.xyz, -R0, R2, R4;\n"
6822  "MUL R2.xyz, R0, R2;\n"
6823  "SGE R3.xyz, R3, R1.w;\n"
6824  "MAD R2.xyz, R3, R4, R2;\n"
6825  "ADD R2.w, -R0, c[5].x;\n"
6826  "MAD R2.xyz, R1, R2.w, R2;\n"
6827  "ADD R1.x, R1.w, R0.w;\n"
6828  "ADD R1.y, -R1.w, c[5].x;\n"
6829  "MAD result.color.xyz, R0, R1.y, R2;\n"
6830  "MAD result.color.w, -R1, R0, R1.x;\n"
6831  "END\n"
6832  ;
6833 
6835  "!!ARBfp1.0\n"
6836  "PARAM c[6] = { program.local[0..4],\n"
6837  " { 1, 2 } };\n"
6838  "TEMP R0;\n"
6839  "TEMP R1;\n"
6840  "TEMP R2;\n"
6841  "TEMP R3;\n"
6842  "MUL R0.xyz, fragment.position.y, c[2];\n"
6843  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6844  "ADD R0.xyz, R0, c[3];\n"
6845  "RCP R0.z, R0.z;\n"
6846  "MUL R0.xy, R0, R0.z;\n"
6847  "MUL R0.xy, R0, c[0];\n"
6848  "TEX R0.x, R0, texture[1], 2D;\n"
6849  "ADD R1.x, -R0, c[5];\n"
6850  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6851  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6852  "MUL R1, fragment.color.primary, R1.x;\n"
6853  "MUL R3.xyz, R1.w, R0;\n"
6854  "MUL R2.xyz, R1, R0.w;\n"
6855  "ADD R0.xyz, R1, R0;\n"
6856  "MIN R2.xyz, R2, R3;\n"
6857  "ADD R1.x, R1.w, R0.w;\n"
6858  "MAD result.color.xyz, -R2, c[5].y, R0;\n"
6859  "MAD result.color.w, -R1, R0, R1.x;\n"
6860  "END\n"
6861  ;
6862 
6864  "!!ARBfp1.0\n"
6865  "PARAM c[6] = { program.local[0..4],\n"
6866  " { 1, 2 } };\n"
6867  "TEMP R0;\n"
6868  "TEMP R1;\n"
6869  "TEMP R2;\n"
6870  "TEMP R3;\n"
6871  "MUL R0.xyz, fragment.position.y, c[2];\n"
6872  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6873  "ADD R0.xyz, R0, c[3];\n"
6874  "RCP R0.z, R0.z;\n"
6875  "MUL R0.xy, R0, R0.z;\n"
6876  "MUL R0.xy, R0, c[0];\n"
6877  "TEX R0.x, R0, texture[1], 2D;\n"
6878  "ADD R1.x, -R0, c[5];\n"
6879  "MUL R0.zw, fragment.position.xyxy, c[4].xyxy;\n"
6880  "TEX R0, R0.zwzw, texture[0], 2D;\n"
6881  "MUL R1, fragment.color.primary, R1.x;\n"
6882  "MUL R2.xyz, R1.w, R0;\n"
6883  "MAD R3.xyz, R1, R0.w, R2;\n"
6884  "MUL R2.xyz, R1, R0;\n"
6885  "MAD R2.xyz, -R2, c[5].y, R3;\n"
6886  "ADD R2.w, -R0, c[5].x;\n"
6887  "MAD R1.xyz, R1, R2.w, R2;\n"
6888  "ADD R2.x, R1.w, R0.w;\n"
6889  "ADD R2.y, -R1.w, c[5].x;\n"
6890  "MAD result.color.xyz, R0, R2.y, R1;\n"
6891  "MAD result.color.w, -R1, R0, R2.x;\n"
6892  "END\n"
6893  ;
6894 
6896  "!!ARBfp1.0\n"
6897  "PARAM c[8] = { program.local[0..6],\n"
6898  " { 1 } };\n"
6899  "TEMP R0;\n"
6900  "TEMP R1;\n"
6901  "MUL R0.xyz, fragment.position.y, c[2];\n"
6902  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6903  "ADD R0.xyz, R0, c[3];\n"
6904  "RCP R0.z, R0.z;\n"
6905  "MUL R0.zw, R0.xyxy, R0.z;\n"
6906  "MUL R0.zw, R0, c[0].xyxy;\n"
6907  "TEX R1.x, R0.zwzw, texture[1], 2D;\n"
6908  "ADD R0.xy, fragment.position, c[5];\n"
6909  "MUL R0.xy, R0, c[4];\n"
6910  "TEX R0, R0, texture[0], 2D;\n"
6911  "DP4 R1.y, R0, c[6];\n"
6912  "ADD R1.x, -R1, c[7];\n"
6913  "MUL R0, fragment.color.primary, R1.x;\n"
6914  "MUL result.color, R0, R1.y;\n"
6915  "END\n"
6916  ;
6917 
6919  "!!ARBfp1.0\n"
6920  "PARAM c[5] = { program.local[0..3],\n"
6921  " { 1 } };\n"
6922  "TEMP R0;\n"
6923  "MUL R0.xyz, fragment.position.y, c[2];\n"
6924  "MAD R0.xyz, fragment.position.x, c[1], R0;\n"
6925  "ADD R0.xyz, R0, c[3];\n"
6926  "RCP R0.z, R0.z;\n"
6927  "MUL R0.xy, R0, R0.z;\n"
6928  "MUL R0.xy, R0, c[0];\n"
6929  "TEX R0.x, R0, texture[0], 2D;\n"
6930  "ADD R0.x, -R0, c[4];\n"
6931  "MUL result.color, fragment.color.primary, R0.x;\n"
6932  "END\n"
6933  ;
6934 
6938 };
6939 
6941  {
6968  },
6969  {
6996  },
6997  {
7024  },
7025  {
7052  },
7053  {
7080  },
7081  {
7108  },
7109 };
7110 
7112  {
7113  { -1, -1, -1, 2, -1, 0, 5, -1, 1, 3, 1, 0, -1, 4, -1, -1, -1, -1, -1, },
7114  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7115  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7116  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7117  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7118  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7119  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7120  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7121  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7122  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7123  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7124  { -1, -1, -1, 0, -1, -1, 3, -1, -1, 1, 1, 0, -1, 2, -1, -1, -1, -1, -1, },
7125  { -1, -1, -1, -1, -1, 0, -1, -1, 1, 2, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7126  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7127  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7128  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7129  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7130  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7131  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7132  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7133  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7134  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7135  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7136  { -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, 0, -1, -1, -1, -1, -1, -1, -1, },
7137  { -1, -1, -1, 0, -1, -1, 2, -1, -1, -1, 0, -1, -1, 1, -1, -1, -1, -1, -1, },
7138  { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
7139  },
7140  {
7141  { -1, -1, 3, 7, 4, 5, 10, -1, 6, 8, 1, 0, 2, 9, -1, 1, 0, 2, -1, },
7142  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7143  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7144  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7145  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7146  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7147  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7148  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7149  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7150  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7151  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7152  { -1, -1, 3, 5, 4, -1, 8, -1, -1, 6, 1, 0, 2, 7, -1, 1, 0, 2, -1, },
7153  { -1, -1, 3, -1, 4, 5, -1, -1, 6, 7, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7154  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7155  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7156  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7157  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7158  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7159  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7160  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7161  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7162  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7163  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7164  { -1, -1, 3, -1, 4, -1, -1, -1, -1, 5, -1, 0, 1, -1, -1, 1, 0, 2, -1, },
7165  { -1, -1, 3, 5, 4, -1, 7, -1, -1, -1, 0, -1, 1, 6, -1, 1, 0, 2, -1, },
7166  { -1, -1, 3, -1, 4, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, 1, 0, 2, -1, },
7167  },
7168  {
7169  { -1, -1, 2, 6, 3, 4, 9, -1, 5, 7, 1, 0, 2, 8, -1, -1, -1, 1, 0, },
7170  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7171  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7172  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7173  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7174  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7175  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7176  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7177  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7178  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7179  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7180  { -1, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, 0, },
7181  { -1, -1, 2, -1, 3, 4, -1, -1, 5, 6, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7182  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7183  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7184  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7185  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7186  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7187  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7188  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7189  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7190  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7191  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7192  { -1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, 0, },
7193  { -1, -1, 2, 4, 3, -1, 6, -1, -1, -1, 0, -1, 1, 5, -1, -1, -1, 1, 0, },
7194  { -1, -1, 2, -1, 3, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, 0, },
7195  },
7196  {
7197  { -1, 0, 2, 6, 3, 4, 9, -1, 5, 7, 1, 0, 2, 8, -1, -1, -1, 1, -1, },
7198  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7199  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7200  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7201  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7202  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7203  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7204  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7205  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7206  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7207  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7208  { -1, 0, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, 2, 6, -1, -1, -1, 1, -1, },
7209  { -1, 0, 2, -1, 3, 4, -1, -1, 5, 6, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7210  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7211  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7212  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7213  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7214  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7215  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7216  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7217  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7218  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7219  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7220  { -1, 0, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, 1, -1, -1, -1, -1, 1, -1, },
7221  { -1, 0, 2, 4, 3, -1, 6, -1, -1, -1, 0, -1, 1, 5, -1, -1, -1, 1, -1, },
7222  { -1, 0, 2, -1, 3, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, 1, -1, },
7223  },
7224  {
7225  { 2, -1, 2, 6, 3, 4, 9, -1, 5, 7, 1, 0, -1, 8, 0, -1, -1, 1, -1, },
7226  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7227  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7228  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7229  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7230  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7231  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7232  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7233  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7234  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7235  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7236  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7237  { 1, -1, 2, -1, 3, 4, -1, -1, 5, 6, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7238  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7239  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7240  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7241  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7242  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7243  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7244  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7245  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7246  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7247  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7248  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7249  { 1, -1, 2, 4, 3, -1, 6, -1, -1, -1, 0, -1, -1, 5, 0, -1, -1, 1, -1, },
7250  { 0, -1, 2, -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, 1, -1, },
7251  },
7252  {
7253  { 2, -1, 2, 6, 3, 4, 9, -1, 5, 7, 1, 0, -1, 8, 0, -1, -1, 1, -1, },
7254  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7255  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7256  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7257  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7258  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7259  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7260  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7261  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7262  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7263  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7264  { 2, -1, 2, 4, 3, -1, 7, -1, -1, 5, 1, 0, -1, 6, 0, -1, -1, 1, -1, },
7265  { 1, -1, 2, -1, 3, 4, -1, -1, 5, 6, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7266  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7267  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7268  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7269  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7270  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7271  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7272  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7273  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7274  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7275  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7276  { 1, -1, 2, -1, 3, -1, -1, -1, -1, 4, -1, 0, -1, -1, 0, -1, -1, 1, -1, },
7277  { 1, -1, 2, 4, 3, -1, 6, -1, -1, -1, 0, -1, -1, 5, 0, -1, -1, 1, -1, },
7278  { 0, -1, 2, -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, 1, -1, },
7279  },
7280 };
7281 
7283  { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, },
7284  { -1, -1, 1, -1, 2, -1, -1, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, },
7285 };
7286 
7287 #endif
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_COLORDODGE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_MULTIPLY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_HARDLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_DIFFERENCE_NOMASK
FragmentMaskType
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_COLORDODGE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_HARDLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_DARKEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SOFTLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SOFTLIGHT
static const unsigned int num_fragment_masks
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SOFTLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_DARKEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SOFTLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_MULTIPLY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SOFTLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_DIFFERENCE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_COLORDODGE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_MULTIPLY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_MASK_TRAPEZOID_AA
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_HARDLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_MASK_ELLIPSE_AA
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SCREEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_MULTIPLY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_HARDLIGHT
static const unsigned int num_fragment_composition_modes
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_MULTIPLY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SOFTLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_LIGHTEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_DIFFERENCE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_COLORDODGE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_DARKEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_MULTIPLY
static const unsigned int num_fragment_brushes
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_DIFFERENCE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_COLORDODGE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_COLORBURN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_LIGHTEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_LIGHTEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_COLORBURN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_COLORDODGE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_MULTIPLY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_COLORBURN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SCREEN
static int painter_variable_locations[num_fragment_brushes][num_fragment_composition_modes][num_fragment_variables]
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_DARKEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_COLORBURN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_COLORDODGE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_MULTIPLY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_HARDLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * mask_fragment_program_sources[num_fragment_masks]
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_SCREEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SCREEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_DIFFERENCE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_MULTIPLY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_HARDLIGHT
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_DARKEN
static const unsigned int num_fragment_variables
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_LIGHTEN
FragmentBrushType
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODE_BLEND_MODE_MASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SOFTLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_OVERLAY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_COLORBURN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_MULTIPLY_NOMASK
FragmentCompositionModeType
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODE_BLEND_MODE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_COLORDODGE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_COLORDODGE
static const char * painter_fragment_program_sources[num_fragment_brushes][num_fragment_composition_modes]
FragmentVariable
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_COLORBURN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_MULTIPLY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_DARKEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SCREEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_SCREEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_COLORDODGE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_OVERLAY
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_COLORBURN
static int mask_variable_locations[num_fragment_masks][num_fragment_variables]
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_DIFFERENCE
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_MULTIPLY_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_PATTERN_COMPOSITION_MODES_SCREEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_COLORDODGE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_LIGHTEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_SIMPLE_PORTER_DUFF_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_DIFFERENCE_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_LIGHTEN
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_EXCLUSION_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_SIMPLE_PORTER_DUFF
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_RADIAL_COMPOSITION_MODES_DARKEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_TEXTURE_COMPOSITION_MODES_LIGHTEN_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_LINEAR_COMPOSITION_MODES_EXCLUSION
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_CONICAL_COMPOSITION_MODES_HARDLIGHT_NOMASK
static const char * FragmentProgram_FRAGMENT_PROGRAM_BRUSH_SOLID_COMPOSITION_MODES_COLORDODGE_NOMASK