initial cammit
[qbasicapps.git] / unsorted / pal.bas
1 ' Universal palette & mixing\r
2 ' made by Svjatoslav Agejenko\r
3 ' in 2001\r
4 ' H-Page: svjatoslav.eu\r
5 ' E-Mail: svjatoslavagejenko@gmail.com\r
6  \r
7 \r
8 \r
9 DECLARE SUB getcol (a%, b%, c%, d%)\r
10 DEFINT A-Y\r
11 SCREEN 13\r
12 CLS\r
13 \r
14 c = 0\r
15 FOR r = 0 TO 5\r
16 FOR g = 0 TO 5\r
17 FOR b = 0 TO 5\r
18 OUT &H3C8, c\r
19 c = c + 1\r
20 OUT &H3C9, r * 12\r
21 OUT &H3C9, g * 12\r
22 OUT &H3C9, b * 12\r
23 NEXT b\r
24 NEXT g\r
25 NEXT r\r
26 \r
27 'GOTO 1\r
28 \r
29 FOR c = 0 TO 5\r
30 FOR b = 0 TO 5\r
31 FOR a = 0 TO 5\r
32 LINE (a * 5 + c * 30, b * 5)-(a * 5 + 4 + c * 30, b * 5 + 4), c * 36 + b * 6 + a, BF\r
33 NEXT a\r
34 NEXT b\r
35 NEXT c\r
36 \r
37 \r
38 a$ = INPUT$(1)\r
39 \r
40 ex = -100\r
41 ey = 0\r
42 FOR z = 0 TO 75 STEP 15\r
43 x1 = 50 - (z / 2)\r
44 y1 = 50 - (z * .866025)\r
45 x2 = 50 + z\r
46 y2 = 50\r
47 x3 = x1\r
48 y3 = 100 - y1\r
49 \r
50 ex = ex + 100\r
51 IF z = 45 THEN ex = ex - 300: ey = ey + 101\r
52 \r
53 FOR x = 0 TO 100\r
54 FOR y = 0 TO 100\r
55 r = 7 - (SQR((x1 - x) ^ 2 + (y1 - y) ^ 2) / 15 + 1)\r
56 g = 7 - (SQR((x2 - x) ^ 2 + (y2 - y) ^ 2) / 15 + 1)\r
57 b = 7 - (SQR((x3 - x) ^ 2 + (y3 - y) ^ 2) / 15 + 1)\r
58 IF r < 0 THEN r = 0\r
59 IF g < 0 THEN g = 0\r
60 IF b < 0 THEN b = 0\r
61 IF r > 5 THEN r = 5\r
62 IF g > 5 THEN g = 5\r
63 IF b > 5 THEN b = 5\r
64 c = r * 36 + g * 6 + b\r
65 PSET (x + ex, y + ey), c\r
66 NEXT y\r
67 NEXT x\r
68 NEXT z\r
69 \r
70 a$ = INPUT$(1)\r
71 1\r
72 ex = -100\r
73 ey = 0\r
74 FOR z = 0 TO 75 STEP 15\r
75 x1 = 50 - (z / 2.5)\r
76 y1 = 50 - (z * .566025)\r
77 x2 = 50 + z / 1.5\r
78 y2 = 50\r
79 x3 = x1\r
80 y3 = 100 - y1\r
81 \r
82 ex = ex + 100\r
83 IF z = 45 THEN ex = ex - 300: ey = ey + 101\r
84 \r
85 r1 = 0\r
86 g1 = 0\r
87 b1 = 0\r
88 FOR x = 0 TO 100\r
89 FOR y = 0 TO 100\r
90 r = 30 - (SQR((x1 - x) ^ 2 + (y1 - y) ^ 2) / 2 + 1)\r
91 g = 30 - (SQR((x2 - x) ^ 2 + (y2 - y) ^ 2) / 2 + 1)\r
92 b = 30 - (SQR((x3 - x) ^ 2 + (y3 - y) ^ 2) / 2 + 1)\r
93 r1 = r1 + r\r
94 g1 = g1 + g\r
95 b1 = b1 + b\r
96 r = r1 / 5\r
97 g = g1 / 5\r
98 b = b1 / 5\r
99 r1 = r1 - (r * 5)\r
100 g1 = g1 - (g * 5)\r
101 b1 = b1 - (b * 5)\r
102 \r
103 IF r < 0 THEN r = 0\r
104 IF g < 0 THEN g = 0\r
105 IF b < 0 THEN b = 0\r
106 IF r > 5 THEN r = 5\r
107 IF g > 5 THEN g = 5\r
108 IF b > 5 THEN b = 5\r
109 c = r * 36 + g * 6 + b\r
110 PSET (x + ex, y + ey), c\r
111 NEXT y\r
112 NEXT x\r
113 NEXT z\r
114 \r
115 a$ = INPUT$(1)\r
116 SYSTEM\r
117 \r