home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 56
/
056.d81
/
kaleidoscope
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
4KB
|
110 lines
100 poke52,64:poke56,64:clr:print"[147]loading..."
110 f$="kal.ml":gosub1000:f$="sid.obj.64":gosub1000
120 s=0:la=25600:f$="cfbachtheme.mus":gosub3000
130 f$="bach bourree.mus":gosub3000:f$="nocturne27-1.mus":gosub3000
140 f$="eve in cntry.mus":gosub3000:f$="horse music.mus":gosub3000
150 gosub5000:poke780,s:poke781,64:poke782,96:sys39428
160 poke52,160:poke56,160:clr:goto4000
999 :
1000 poke780,1:poke781,8:poke782,1:sys65466:gosub2000
1010 poke780,0:sys65493:ifpeek(783)and1then1020
1015 return
1020 p=peek(780):print"error for ";f$;:ifp=4thenprint" file not found":goto4000
1030 ifp=5thenprint" device not present":goto4000
1040 print" ";st:goto4000
1999 :
2000 f$=f$+",p,r":fork=1tolen(f$):poke584+k,asc(mid$(f$,k)):next
2010 poke780,len(f$):poke781,73:poke782,2:sys65469:return
2999 :
3000 poke780,1:poke781,8:poke782,0:sys65466:gosub2000
3010 hi=int(la/256):lo=la-256*hi
3020 poke780,0:poke781,lo:poke782,hi:sys65493:ifpeek(783)and1then1020
3030 la=peek(781)+256*peek(782):poke40944+s,lo:poke40945+s,hi:s=s+2:return
3999 :
4000 open15,8,15,"r0:hello connect=hello connect":input#15,er%:close15
4010 ifer%<>63thenend
4020 load"hello connect",8
4999 :
5000 bw=15:ms$="loadstar proudly presents":tl$="k a l e i d o s c o p e"
5010 au$="by dave johannsen":bx=27:gosub 6000
5020 s$(1)="copyright 1988"
5030 s$(2)="[213][192][192][201][157][157][157][157][221]f1[221][157][157][157][157][202][192][192][203][157][157][157][157][157][157][157][157][157][157][157][157][157]change "
5040 s$(2)=s$(2)+"background color"
5050 s$(3)="[213][192][192][201][157][157][157][157][221]f3[221][157][157][157][157][202][192][192][203][157][157][157][157][157][157][157][157][157][157][157][157][157]change "
5060 s$(3)=s$(3)+"foreground color"
5070 s$(4)="[213][192][192][201][157][157][157][157][221]f5[221][157][157][157][157][202][192][192][203][157][157][157][157][157]pause"
5080 s$(5)="[213][192][192][201][157][157][157][157][221]f7[221][157][157][157][157][202][192][192][203][157][157][157][157][157][157][157][157][157][157][157]return to loadstar"
5090 s$(6)="[213][192][192][192][192][192][201][157][157][157][157][157][157][157][221]space[221][157][157][157][157][157][157][157][202][192][192][192][192][192][203][157][157][157][157][157][157][157][157][157]change"
5100 s$(6)=s$(6)+" song":n=1
5105 s$(7)="press any key to begin"
5110 s$=s$(n):n=n+1:ifn>7thenn=1
5120 gosub8000
5130 geta$:ifa$=""then5110
5140 return
5999 :
6000 sx=782:sy=781:sj=39424:poke53280,14:poke53281,14:print"[147]";
6010 fori=1tolen(ms$):a$=mid$(ms$,i,1):ifa$=" "then6050
6020 x=20-(len(ms$)+1)/2:fory=1to12:ifx+i+12-y>37 then6040
6030 pokesx,x+i+12-y:pokesy,24-y:syssj:print"[144]";a$;" ";
6040 pokesx,x+i:pokesy,y:syssj:print"";a$;"[145][157] ";:nexty
6050 nexti:bb=20-(bw+1)/2:be=bb+bw
6060 t$=left$("[154] ",bb+2)
6070 t$=t$+left$("[153] ",bw+1)
6080 t$=t$+left$("[154] ",41-be)
6090 pokesx,0:pokesy,24:syssj:printleft$(t$,43);:poke56295,14:poke2023,160
6100 fory=23to0step-1:pokesx,0:pokesy,y:syssj:printt$;:pokesx,be:pokesy,y+1
6110 syssj:print" ";:next:pokesx,0:pokesy,24:syssj
6115 print"[154] ";:pokesx,bb:pokesy,24
6120 syssj:printleft$("[154] ",bw+4);
6130 print"";:poke53281,1:i$="[155][152][151][144][151][152][155]"
6140 lx=39:ly=2:lm=1:rx=lx+3+len(tl$):ry=2:rm=1:qx=17-(len(tl$)+1)/2
6150 gosub7000:gosub7100:iflx>qxthen6150
6160 fori=1to4:pokesx,qx+3:pokesy,3:syssj:printmid$(i$,i,1);"[146]";tl$;
6165 gosub7500:next
6170 lx=39:ly=7:lm=1:rx=lx+3+len(au$):ry=7:rm=1:qx=17-(len(au$)+1)/2
6180 gosub7000:gosub7100:iflx>qxthen6180
6190 fori=1to4:pokesx,qx+3:pokesy,8:syssj:printmid$(i$,i,1);"[146]";au$;
6195 gosub7500:next
6200 lx=39:ly=13:lm=1:rx=lx+bx:ry=13:rm=1:qx=18-(bx+1)/2
6210 gosub7200:gosub7300:iflx>qxthen6210
6220 return
7000 pokesx,lx:pokesy,ly:syssj:lx=lx-1:onlmgoto7010,7020,7030,7040,7050,7060
7010 lm=2:print"[146][207][157][180][157][204]";:return
7020 lm=3:print"[146][207][183][157][157][180] [157][157][204][175]";:return
7030 lm=3-(lx=be-2):print"[146][207][183][157][157][180] [157][157][204][175] [157] ";:return
7040 lm=4-(lx=bb-2):print"[146][207][183][157][157][180] [157][157][204][175][157] ";:return
7050 lm=6:print"[146][207][183][157][157][180] [157][157][204][175]";:return
7060 print"[146][207][183][157][157][180] [157][157][204][175] [157] ";:return
7100 rx=rx-1:ifrx>38thenreturn
7105 pokesx,rx+1:pokesy,ly:syssj:onrmgoto7110,7120,7130,7140,7150,7160
7110 rm=2:print"[146][208][157][170][157][186]";:return
7120 rm=3+(rx>=37):print"[146][208][157][170][157][186] [145][157][154] [145][157] ";:return
7130 rm=4+(rx>=be):print"[146][208][157][170][157][186] [145][157][154] [145][157] [157] [157] ";:return
7140 rm=5:print"[146][208][157][170][157][186] [145][157] [145][157] [154] [157] [157] ";:return
7150 rm=6:print"[146][208][157][170][157][186] [145][157] [145][157][153] [154] [157] [157] ";:return
7160 print"[146][208][157][170][157][186] [145][157] [145][157][153] [153] [157] [157] ";:return
7200 b$="[146][207][183][157][157][180] [157][157][180] [157][157][180] [157][157][180] [157][157][180] [157][157][204][175]"
7205 pokesx,lx:pokesy,ly:syssj:lx=lx-1:onlmgoto7210,7220,7230,7240,7250,7260
7210 lm=2:print"[146][207][157][180][157][180][157][180][157][180][157][180][157][204]";:return
7220 lm=3:printb$;:return
7230 lm=3-(lx=be-2):printb$;" [157] ";:return
7240 lm=4-(lx=bb-2):printb$;"[157] ";:return
7250 lm=6:printb$;:return
7260 printb$;" [157] ";:return
7300 b$="[146][208][157][170][157][170][157][170][157][170][157][170][157][186]":c$=b$+" [145][157] [145][157] [145][157] [145][157] [145][157][154] [145][157] "
7301 d$=b$+" [145][157] [145][157] [145][157] [145][157] [145][157] [145][157] ":e$=b$+" [145][157] [145][157] [145][157] [145][157] [145][157] [145][157][153] "
7302 rx=rx-1:ifrx>38thenreturn
7305 pokesx,rx+1:pokesy,ly:syssj:onrmgoto7310,7320,7330,7340,7350,7360
7310 rm=2:printb$;:return
7320 rm=3+(rx>=37):printc$;:return
7330 rm=4+(rx>=be):printc$;" [157] [157] [157] [157] [157] [157] ";:return
7340 rm=5:printd$;"[154] [157] [157] [157] [157] [157] [157] ";:return
7350 rm=6:printe$;"[154] [157] [157] [157] [157] [157] [157] ";:return
7360 printe$;"[153] [157] [157] [157] [157] [157] [157] ";:return
7500 fort=1to100:next:return
7999 :
8000 fori=1to4:pokesx,qx+3:pokesy,14:syssj:printmid$(i$,i,1);"[146]";s$;:gosub7500
8010 next:fort=1to900:next
8020 fori=5to8:pokesx,qx+3:pokesy,14:syssj:printmid$(i$,i,1);"[146]";s$;:gosub7500
8030 next:fort=1to300:next:return