home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 224
/
224.d81
/
states
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
4KB
|
194 lines
10 rem states
11 rem by dennis hildreth
20 fora=24576to25575:pokea,16:next
25 poke56,32:clr
30 dv=peek(186):ifdv<8thendv=8
35 dimsc(2)
40 sys57812"states data",dv,0:poke780,0:poke781,0:poke782,132:sys65493
41 sys57812"f.states",dv,0:poke780,0:poke781,0:poke782,56:sys65493
42 sys57812"f.scores",dv,0:poke780,0:poke781,0:poke782,48:sys65493
43 sys57812"f.winner",dv,0:poke780,0:poke781,0:poke782,40:sys65493
44 sys57812"f.options",dv,0:poke780,0:poke781,0:poke782,32:sys65493
45 sys57812"states ml",dv,0:poke780,0:poke781,0:poke782,192:sys65493
50 poke53280,0:poke53281,0
55 poke646,15
60 eh$="[197]asy":pl$="[212]wo\[208]layers":kb$="[212]wo\[202]oysticks"
65 poke54286,255:poke54287,255:poke54290,128
66 poke657,128:poke53247,0:poke53246,0
70 poke56578,peek(56578)or3
80 sys49152
100 gosub200
105 print"[147]":sys51565:poke657,0
110 poke56,160:goto40000
195 :
196 : main routine
197 :
200 poke53272,31:poke53281,0:print"[147]":sys49174
201 poke781,12:poke782,11:poke783,0:sys65520
205 print"\\\\\\\\\\\\\\\\\\"
210 poke781,13:poke782,11:poke783,0:sys65520
215 print"\[198]1)\[206]ew\[199]ame\\\\\"
220 poke781,14:poke782,11:poke783,0:sys65520
225 print"\[198]3)\[207]ptions\\\\\\"
230 poke781,15:poke782,11:poke783,0:sys65520
235 print"\[198]5)\[201]nstructions\"
240 poke781,16:poke782,11:poke783,0:sys65520
245 print"\[198]7)\[197]xit\\\\\\\\\"
250 poke781,17:poke782,11:poke783,0:sys65520
255 print"\\\\\\\\\\\\\\\\\\"
260 geta$:ifa$=""then260
270 ifa$=chr$(133)thengosub3000:goto200
280 ifa$=chr$(134)thengosub500:goto200
290 ifa$=chr$(135)thengosub1000:goto200
300 ifa$<>chr$(136)then260
400 print"[147]":poke53272,25
410 poke781,12:poke782,15:poke783,0:sys65520
420 print"[209]uit?\([217]/[206])"
430 geta$:ifa$=""then430
435 ifa$="n"then200
440 ifa$<>"y"then430
460 return
495 :
496 : options
497 :
500 poke53272,25:print"[147]":sys49174
501 poke781,12:poke782,11:poke783,0:sys65520
505 print"\\\\\\\\\\\\\\\\\\\"
510 poke781,13:poke782,11:poke783,0:sys65520
515 print"\[198]1)\"eh$"\[199]ame\\\\\"
520 poke781,14:poke782,11:poke783,0:sys65520
525 print"\[198]3)\"pl$"\\\"
530 poke781,15:poke782,11:poke783,0:sys65520
535 print"\[198]5)\"kb$"\"
540 poke781,16:poke782,11:poke783,0:sys65520
545 print"\[198]7)\[197]xit\[207]ptions\\"
550 poke781,17:poke782,11:poke783,0:sys65520
555 print"\\\\\\\\\\\\\\\\\\\"
560 geta$:ifa$=""then560
570 ifa$=chr$(133)thengosub2000:goto510
580 ifa$=chr$(134)thengosub2100:goto520
590 ifa$=chr$(135)thengosub2200:goto530
600 ifa$<>chr$(136)then560
700 return
995 :
996 : instructions
997 :
1000 sys51565
1001 ef=0:f$="reader 4000":gosub7000
1005 print"[147]":poke53281,2:poke53272,23
1010 ifef=1thengosub8000:goto1990
1050 sys57812"reader 4000",dv,0:poke780,0:poke781,0:poke782,64:sys65493
1200 f$="states help":gosub7000
1210 ifef=1thengosub8000:goto1990
1500 sys16384,"states help",dv,25600,1,6,"[211] [212] [193] [212] [197] [211]"
1600 poke53281,0:poke646,15
1990 return
1995 :
1996 : easy/hard game
1997 :
2000 ifeh=0theneh=2:eh$="[200]ard":goto2090
2010 eh=0:eh$="[197]asy"
2090 return
2095 :
2096 : 1 - 2 players
2097 :
2100 ifpl=1thenpl=0:poke53246,0:pl$="[212]wo\[208]layers":goto2190
2110 pl=1:pl$="[207]ne\[208]layer\":poke53246,1
2190 return
2195 :
2196 : 1 - 2 joysticks
2197 :
2200 ifkb=1thenkb=0:poke53247,0:kb$="[212]wo\[202]oysticks":goto2290
2210 kb=1:kb$="[207]ne\[202]oystick\":poke53247,1
2290 return
2995 :
2996 : new game
2997 :
3000 sc(1)=0:sc(2)=0
3010 gosub4000
3025 print"[198]1) [146][211]tart [146][199]ame [146][198]2) [146][195]ancel"
3030 geta$:ifa$=""then3030
3035 ifa$=chr$(133)thengosub5000:goto3100
3040 ifa$=chr$(137)then3990
3050 goto3030
3100 ifsc(wn)=10then3130
3105 gosub4000
3110 print"[198]1) [146][206]ext [146][210]ound [146][198]2) [146][195]ancel"
3120 goto3030
3130 poke53272,27:print"[147]":sys49174
3150 ifwn=1thench=5:goto3160
3155 ch=1
3160 gosub6000
3190 geta$:ifa$<>chr$(133)then3190
3990 return
3995 :
3996 : scores screen
3997 :
4000 poke53272,29:print"[147]":sys49174
4050 poke781,11:poke782,11:poke783,0:sys65520
4110 poke781,12:poke782,13:poke783,0:sys65520
4115 print"\[208]layer\1\"
4120 poke781,13:poke782,16:poke783,0:sys65520
4125 printsc(1)
4130 poke781,15:poke782,13:poke783,0:sys65520
4135 print"\[208]layer\2\"
4140 poke781,16:poke782,16:poke783,0:sys65520
4145 printsc(2)
4150 poke781,23:poke782,2:poke783,0:sys65520
4990 return
4995 :
4996 : play game
4997 :
5000 sz=int(rnd(0)*3):sn=int(rnd(0)*48)
5010 poke781,sz:poke780,sn:sys49328
5020 g=int(rnd(0)*eh)
5030 ong+1goto5080,5035,5040,5050
5035 sys50299:goto5080
5040 sys50131:goto5080
5050 sys50299:sys50131
5080 sys50456
5100 wn=peek(780)
5110 sc(wn)=sc(wn)+1
5500 poke53265,peek(53265)and223
5510 poke56576,(peek(56576)and252)or3
5520 poke53272,20
5990 return
5995 :
5996 : print player
5997 :
6000 poke780,ch
6010 sys51360
6100 return
6990 :
6991 : error checking
6992 :
7000 open15,dv,15:close15
7010 ifst=-128thener$="drive not on":ef=1:goto7900
7020 open15,dv,15,"r:"+f$+"="+f$:input#15,er,er$,s,t:close15
7030 ifer=63then7900
7040 ef=1:ifer=62thener$=f$+" not found"
7900 return
7995 :
7996 : print error message
7997 :
8000 poke781,12:poke782,12:poke783,0:sys65520
8010 printer$
8050 poke781,24:poke782,2:poke783,0:sys65520
8060 print"[198]1) [195]ontinue "
8100 geta$:ifa$=""then8100
8110 ifa$<>chr$(133)then8100
8200 return
9995 :
9996 : end program
9997 :
40000 fori=8to29:poke820+i,i:next:ifdv>8anddv<30thenpoke828,dv:poke820+dv,8
40010 a$="presenter":gosub40030:a$="hello connect":gosub40030
40020 print"[147]":poke53272,23:poke186,8:poke2048,0:poke44,8:poke43,1:end
40030 forj=8to29:i=peek(820+j):ifi=14thennext
40040 close2:open2,i,2:close2:ifstthen40060
40050 close15:open15,i,15,"r0:"+a$+"="+a$:input#15,er:close15:ifer=63then40070
40060 next:return
40070 a$="hello connect":q$=chr$(34):poke646,peek(53281):print"[147]":poke53272,23
40080 print"[147]p[207]2048,0:p[207]44,8:p[207]43,1:p[207]56,160:p[207]55,0:clr:l[207]"q$a$q$","i
40090 print"run:":poke631,13:poke632,13:poke198,2:end