home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1985 October
/
1985-10.d64
/
kaleidoscope_64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
3KB
|
91 lines
10 fori=0to7:readm(i):next:data1,4,25,128,2,10,60,255
20 poke53280,12:poke53281,12:print"[144]":gosub450
30 rem * ml routine addresses *
40 kal=49664:a=49696:char=251:x=253:y=254
50 seed=kal+126:pokeseed,255*rnd(-ti)+1:rem * seed random # gen *
60 pokeseed+1,256*rnd(1):pokex,0:pokey,0:pokechar,160:gosub270
70 rem * intro page *
80 print"[147] welcome to":print" [213][195][195][195][195][195][195][195][195][195][195][195][195][201]"
90 print" [221]kaleidoscope[221]"
100 print" [202][192][192][192][192][192][192][192][192][192][192][192][192][203]":print" hit any key to continue"
110 gosub290:pokea,25:goto330
120 rem * main loop *
130 syskal:fori=1tod:next:geta$:ifa$=""then130
140 v=val(a$):ifa$="0"thend=1
150 ifv>0thend=2.4^v
160 ifa$="q"thenend
170 fori=0to7:ifa$=chr$(133+i)thenpokea,m(i)
180 nexti:ifa$="b"thengosub250
190 ifa$="c"thengosub270
200 ifa$=chr$(147)thenprintchr$(147):goto130
210 ifa$="h"then330
220 ifa$=" "thengosub290
230 goto130
240 rem * black and white *
250 poke49692,1:return
260 rem * color *
270 poke49692,15:return
280 rem * hit any *
290 geta$:ifa$<>""then290
300 geta$:ifa$=""then300
310 return
320 rem * help message *
330 print"[147] to control the display, type these"
340 print" characters while the kaleidoscope"
350 print" is running"
360 print"f1 through f8 : control complexity"
370 print" 0 through 9 : control speed"
380 print" b : black and white"
390 print" c : 16 colors":print" space : freeze display"
400 print" clr : clear screen":print" h : help!"
410 print" q : quit"
420 print" hit any key to start the kaleidoscope":gosub290:printchr$(147)
430 goto130
440 rem * load ml routines *
450 printchr$(147)"...loading ml"
460 s=0:c=49664:fori=ctoc+248:readx:pokei,x:s=s+x:next
470 ifs<>33124thenprint"error in data statements":end
480 return
490 data 173,32,194,133,165,32
500 data 33,194,32,90,194,32
510 data 33,194,32,90,194,198
520 data 165,208,240,238,240,193
530 data 173,240,193,41,15,133
540 data 252,96,25,32,43,194
550 data 32,65,194,32,43,194
560 data 96,32,172,194,32,74
570 data 194,32,172,194,32,82
580 data 194,32,172,194,32,74
590 data 194,32,172,194,96,165
600 data 253,164,254,133,254,132
610 data 253,96,169,24,56,229
620 data 253,133,253,96,169,24
630 data 56,229,254,133,254,96
640 data 32,109,194,144,7,32
650 data 109,194,144,28,176,35
660 data 32,109,194,144,43,176
670 data 50,14,127,194,46,126
680 data 194,144,8,173,127,194
690 data 73,45,141,127,194,96
700 data 109,12,198,253,16,4
710 data 169,24,133,253,96,230
720 data 253,165,253,201,25,208
730 data 4,169,0,133,253,96
740 data 198,254,16,4,169,24
750 data 133,254,96,230,254,165
760 data 254,201,25,208,4,169
770 data 0,133,254,96,32,193
780 data 194,165,251,160,0,145
790 data 163,169,212,24,101,164
800 data 133,164,165,252,145,163
810 data 96,169,4,133,164,165
820 data 253,24,105,7,133,163
830 data 166,254,160,0,32,230
840 data 194,32,230,194,32,230
850 data 194,32,237,194,32,230
860 data 194,32,230,194,32,237
870 data 194,96,138,10,170,152
880 data 42,168,96,24,138,101
890 data 163,133,163,152,101,164
900 data 133,164,96