home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 58
/
058side2.d64
/
snig
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-29
|
15KB
|
377 lines
10 poke650,128:gosub2870:dimmu(236):forz=1to236:readmu(z):next
20 goto2130
30 forpv=ito.step-i:onfnjo(pv)goto50,50,100,120,120,120,100,100,100,100:goto50
40 sysmt,pv+i,xp(pv),yv(pv)
50 iffntr(pv)=16thengosub870:a$=str$(p3(wa(pv))):goto880
60 next:goto30
70 gosub2950
80 mt=51730:sysmt,3,0,0:gosub2690:gosub1040
90 gosub1040:n1=int(rnd(0)*(r2-r1)+r1):n2=int(rnd(0)*(r4-r3)+r3):gosub1980:gosub2360:goto1070
100 xp(pv)=xp(pv)+xs:wa(pv)=wa(pv)+i:ifxp(pv)>xhthenxp(pv)=xl:wa(pv)=i
110 syssr,pv,5,12,17,sn(pv):goto40
120 xp(pv)=xp(pv)-xs:wa(pv)=wa(pv)-i:ifxp(pv)<xlthenxp(pv)=xh:wa(pv)=pn
130 syssr,pv,5,12,17,sn(pv):goto40
140 gosub2760
150 poke53275,6:ifsm<=999thenpn=9:goto170
160 pn=7
170 v=53248:pokev+21,31:poke2040,13:poke2041,14:poke2042,14:poke2043,15
180 poke2044,34:pokev,149:pokev+i,123:poke53277,31:poke53271,31
190 pokev+39,7:pokev+40,4:pokev+41,8
200 forlp=ito2:sysmt,lp,o,o:next
210 forz=itopn:po(z)=sm+int(rnd(o)*38)-19:ifsm<=19then260
220 gosub400:ifrp<2thenpo(z)=sm-10
230 ifrp>8andrp<11thenpo(z)=sm
240 ifrp>8andrp<11thenpo(z)=sm
250 ifrp>17thenpo(z)=sm+10
260 poke198,0:po(z)=abs(po(z)):getkey$:if key$="[136]"thenprint"[147]":gosub2870:goto20
270 ifsm>=i9andpo(z)<=i9thenpo(z)=11+int(rnd(o)*8)+i
280 ifsm<=i9andpo(z)>=i9thenpo(z)=i9-int(rnd(o)*8)
290 ifsm<=99andpo(z)>=100thengosub400:po(z)=po(z)-rp:goto290
300 ifsm>=100andpo(z)<=99thengosub400:po(z)=po(z)+rp:goto300
310 ifsm<=999andpo(z)>999thengosub400:po(z)=po(z)-rp:goto310
320 ifsm>999andpo(z)<1000thengosub400:po(z)=po(z)+rp:goto320
330 nextz:forz=itopn:gosub410
340 p1(z)=po(r):gosub410:p2(z)=po(r):nextz
350 gosub410:p1(r)=sm:gosub410:p2(r)=sm:xp=104:cd=134:nc=12:ns=2:tv=10:xh=232
360 ifsm>i9thentv=6:cd=146:xp=80:xh=273
370 ifsm>99thenxp=48:xh=305:tv=2:cd=158:nc=35:ns=o
380 ifsm>999thencd=194:xh=290
390 wa=i:goto440
400 rp=int(rnd(o)*19)+i:return
410 r=int(rnd(o)*pn)+i:return
420 poke164,cd:poke165,11:poke166,128:poke167,3:poke168,nc:poke170,ns
430 sysml :return
440 print"[159]";"[144] [146]"
450 print"";"[144] [146]"
460 yp=5:xo=tv:gosub3610:forz=itopn:print"[144]"p1(z)"[157]";:next:print"[146]"
470 printtab(tv);:forz=itopn:print"[144]"p2(z)"[157]";:next:print"[146]";
480 a$=str$(n1):forz=len(a$)to2step-i
490 poke164,9*val(mid$(a$,z,i)):poke166,(69-len(a$))+z:sysml:next
500 a$=str$(n2):forz=len(a$)to2step-i:poke164,9*val(mid$(a$,z,i))
510 poke166,(90-len(a$))+z:sysml:next
520 poke164,9*fs:poke166,91:sysml
530 gosub420:a$=str$(sm):xl=xp:xs=(len(a$)*8)
540 ifsg=2thengosub2860:gosub2820:xp(o)=xp:xp(i)=xp:wa(o)=i:wa(i)=i:goto600
550 goto670
560 xp=xp+xs:wa=wa+i:ifxp>xhthenxp=xl:wa=i
570 syssr,i,8,12,17,sn(pv):goto620
580 xp=xp-xs:wa=wa-i:ifxp<xlthenxp=xh:wa=pn
590 syssr,i,8,12,17,sn(pv):goto620
600 sysmt,i,xp(o),yv(o):sysmt,2,xp(i),yv(i):goto30
610 onfnjo(pv)goto630,630,560,580,580,580,560,560,560,560:goto630
620 sysmt,pv+i,xp,yv(pv)
630 iffntr(pv)=16thena$=str$(p3(wa)):goto880
640 print"[145]"tab(3)mid$(ti$,4,i)":"right$(ti$,2)
650 iffnmi(o)=l3andfnse(o)=l4thengosub1170:gosub1020:goto90
660 goto610
670 print"":ti$="000001":ss=o
680 tr=(fntr(o)=o)-(fntr(i)=o):ifval(right$(ti$,2))>ssthensyssr,i,6,12,17,6000
690 ss=fnse(o):print"[145][156]"tab(3)mid$(ti$,4,i)":"right$(ti$,2)
700 iffnmi(o)=l1andfnse(o)=l2thengosub1170:goto90
710 iftr=othengoto680
720 iftr=ithengosub760
730 iftr=-ithengosub800
740 print"":ti$="000001":sysmt,pv+i,xp,yv(pv):forlp=9to16
750 pokepc(pv),lp:syssr,i,8,12,65,lp*650,1950:next:poke53288,3:poke53289,5:goto610
760 forz=itopn:p3(z)=p1(z)
770 poke198,0:get key$:if key$="[136]" then gosub2870:goto20
780 next:pv=0
790 return
800 forz=itopn:p3(z)=p2(z)
810 poke198,0:get key$:if key$="[136]" then gosub2870:goto20
820 next:pv=i
830 return
840 ifpv=othengosub760
850 ifpv=ithengosub800
860 return
870 syssr,i,9,12,17,12000:syssr,2,8,12,17,18000:gosub840:return
880 poke164,192:poke165,11:poke166,66:poke167,3:poke168,8:poke170,2
890 for z=2tolen(a$)
900 poke164,9*val(mid$(a$,z,i)):poke166,(194-len(a$))+z:sysml:next
910 iflen(a$)=5thenpoke167,8:poke164,9*val(mid$(a$,2,i)):poke166,130:poke170,2:sysml
920 sysmt,4,0,0:forlp=ito43step8
930 poke2041,15:poke2042,34:sysmt,i,109+lp,156:sysmt,2,60+lp,156
940 syssr,i,8,12,17,10000+(lp*100):next
950 ifsg=1thenifp3(wa)=smthengosub980:gosub1040:goto90
960 ifsg=2thenifp3(wa(pv))=smthengosub980:gosub1040:goto90
970 gosub1010:gosub1040:goto90
980 gosub2860:gosub2820:gosub2860:gosub2820:gosub2860:gosub2820
990 sc(pv)=sc(pv)+i
1000 forlp=1to4:poke53288,cc(lp):poke53289,cc(lp):forz=1to3:nextz,lp:return
1010 pokev+40,o:pokev+41,o:syssr,i,11,12,65,900,50000:syssr,2,11,12,65,500,56000
1020 ms(pv)=ms(pv)+i
1030 gosub1150:return
1040 print" blue :"sc(o)tab(28)"missed:"ms(o)"[146]"
1050 print" red :"sc(i):xo=28:yp=22:gosub3610
1060 print"missed:"ms(i):return
1070 ifpc=npthen2160
1080 pc=pc+i:goto140
1090 print"":forz=1to11:print" ";:next:poke53281,2
1100 print" score: "
1110 ifms(o)>sc(o)thenms(o)=sc(o)
1120 ifms(i)>sc(i)thenms(i)=sc(i)
1130 poke53287,i:poke53289,3:return
1140 dy. g 2 _22 2_ 2_ 2 02226
1150 sm$=str$(sm):xo=32:yp=12:gosub3610:print""mid$(sm$,2,len(sm$))
1160 forlp=ito700 :nextlp:gosub3610:print" ":return
1170 print"[153]"
1180 forlp=ito9:syssr,i,11,12,17,8000:printtab(13)"[144][145]out of time!":forz=ito40:next
1190 syssr,2,10,12,17,5000:printtab(13)"[145][146]out of time!":forz=ito40:nextz,lp
1200 printtab(13)"[145][144] ":goto1150
1210 rem input routine
1220 an$="":ps=o
1230 getin$:print"[146] [157] [157]";chr$(mc);:ifin$=""then1230
1240 in=asc(in$)
1250 ifin=13andan$<>""thenprint:syssr,1,9,12,17,10000:return
1260 ifin=20then1330
1270 if in$="[140]" then 3620
1280 if in$="[136]" then 1380
1290 ifin<c1orin>c2thengoto1360
1300 ps=ps+i:ifps>lnthenps=ln:goto1360
1310 an$=an$+chr$(in)
1320 print""chr$(mc);chr$(in);:goto1230
1330 ps=ps-i:ifps<othenps=o:goto1360
1340 an$=left$(an$,len(an$)-i)+a1$
1350 print"[157] [157]";:goto1230
1360 syssr,i,7,11,17,in*100:goto1230
1370 rem input routine ends
1380 gosub2360:sg=i:gosub 1660:gosub3210:ln=i:c1=49:c2=50:gosub1210
1390 sg=val(an$)
1400 gosub1680:gosub3210:c2=54:gosub1210
1410 fu=val(an$):iffu<>6then1440
1420 mc$(1)="(1) +":mc$(2)="(2) -":mc$(4)="(4) /":mc$(3)="(3) x"
1430 gosub3310:ln=4:c2=52:gosub1210:fu$=an$
1440 gosub1710:gosub3210:ln=i:c1=49:c2=53:gosub1210:rv=val(an$):ifrv<>5then1470
1450 xo=27:yp=8:gosub3610:print"[156]from:";:ln=2:c1=48:c2=57:gosub1210
1460 r1=val(an$):xo=29:yp=10:gosub3610:print"[156]to:";:gosub1210:r2=val(an$)
1470 gosub1740:gosub3210:ln=i:c1=49:c2=52:gosub1210
1480 t1=val(an$):c1=48:c2=57:ift1<>4then1520
1490 ln=1:xo=26:yp=8:gosub3610:print"[129]minutes:";:gosub1210:yp=10
1500 l1=val(an$):gosub3610:print"[129]seconds:";:ln=2:gosub1210
1510 l2=val(an$):gosub3610:print"[129] ":ifl2>59then1500
1520 gosub1770:gosub3210:ln=i:c1=49:c2=54:gosub1210
1530 np=val(an$):nv=o:ifnp<>6then1570
1540 xo=25:yp=9:gosub3610:print"how many:";:ln=2:c1=48:c2=57:gosub1210
1550 nv=i:np=val(an$):gosub1640
1560 if np=0 then 1520
1570 n=i:gosub1800:gosub3210:ln=1:c1=49:c2=53:gosub1210
1580 rg=val(an$):ifrg<>5then1620
1590 xo=27:yp=8:gosub3610:print"from:";:ln=2:c1=48:c2=57:gosub1210
1600 r3=val(an$):xo=29:yp=10:gosub3610:print"to:";:gosub1210
1610 r4=val(an$):gosub1640
1620 gosub1830:goto70
1630 printtab(26);"choose >";:return
1640 return
1650 print""tab(28)">";:return
1660 rem
1670 mc$(3)=" (1) snigglefritz":mc$(4)=" (2) sniggle race":mc=28:return
1680 mc$(1)="(1) addition +":mc$(2)="(2)subtraction -"
1690 mc$(3)="(3) multiplication x":mc$(4)="(4) division /"
1700 mc$(5)="(5) all four + - x /":mc$(6)="(6) choose your own":mc=30:return
1710 mc$(1)="(1) 1st range (0-9)":mc$(2)="(2) (0-20)"
1720 mc$(3)="(3) (0-50)":mc$(4)="(4) (0-99)"
1730 mc$(5)="(5) choose your own":mc=156:return
1740 mc$(2)="(1) work time (0:05)":mc$(3)="(2) (0:10)"
1750 mc$(4)= "(3) (0:15)":mc$(5)="(4) choose your own"
1760 mc=129:return
1770 mc$(1)="(1) 5 proble