7c28b33f2e4260ed231bbad3e635dfe51ec46fd2
[qbasicapps.git] / graphics / presentations / Stroboscope / athoms.bas
1 ' Genetare animation\r
2 ' made by Svjatoslav Agejenko\r
3 ' in 2002\r
4 ' H-Page: svjatoslav.eu\r
5 ' E-Mail: svjatoslavagejenko@gmail.com\r
6  \r
7 SCREEN 13\r
8 DIM SHARED byt AS STRING * 1\r
9 \r
10 s = 100\r
11 f = 0\r
12 n1 = 97\r
13 n2 = 97\r
14 \r
15 1\r
16 f = f + 1\r
17 tmx = 320 * s / 30\r
18 tmy = 200 * s / 30\r
19 x1 = 160 - (tmx / 2)\r
20 y1 = 100 - (tmy / 2)\r
21 CLS\r
22 FOR y = 0 TO 199\r
23 FOR x = 0 TO 319\r
24 x2 = x1 + (tmx * x / 320)\r
25 y2 = y1 + (tmy * y / 200)\r
26 c = SIN((x2 ^ 2 + y2 ^ 2) / 10) * 6 + 23\r
27 IF c < 16 THEN c = 16\r
28 IF c > 31 THEN c = 31\r
29 PSET (x, y), c\r
30 NEXT x\r
31 NEXT y\r
32 \r
33 a$ = "mov" + CHR$(n2) + CHR$(n1) + ".frm"\r
34 \r
35 OPEN a$ FOR OUTPUT AS #1\r
36 \r
37 FOR y = 0 TO 199\r
38 FOR x = 0 TO 319\r
39 c = POINT(x, y)\r
40 byt = CHR$(c)\r
41 PRINT #1, byt;\r
42 NEXT x\r
43 NEXT y\r
44 \r
45 CLOSE #1\r
46 \r
47 n1 = n1 + 1\r
48 IF n1 > 122 THEN n1 = 97: n2 = n2 + 1\r
49 \r
50 s = s / 1.1\r
51 IF s > 5 THEN GOTO 1\r
52 \r