home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 112
/
112.d81
/
eights
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
9KB
|
263 lines
1 rem eights for one copyright maurice jones 1993
2 poke56,56:poke51,0:clr:dv=peek(186):ifdv<8thendv=8
4 print"[147][158] [207][203], so [201]'m hooked on [195]razy [197]ights ..."
5 dimi,x,y,su,et,mt,s,f,ca,va,t,jj,j%,nc,dv,fc,fr,fs,fv,g7,ga,gh,gt,hi,hl
6 hl=12:sk=13:poke16383,31:bd=03
7 dim j,k,ms,pl,sk,t2,tc,te,ts,tv,a$,bk$,ch$,lo
8 gosub111:print"[147][146]":poke53272,31
10 goto482
18 :
19 rem brancher
20 gosub62
21 fori=1tolen(ch$):ifa$=mid$(ch$,i,1)thenreturn
22 next:goto20
24 :
25 rem charge
26 a$="251331421502421502"
27 t=87:pokef+6,96:pokef+24,15
28 fori=1to18step3
29 pokef+1,val(mid$(a$,i,2)):pokef+4,33
30 forj=1tot*val(mid$(a$,i+2,1)):next
31 pokef+4,0:next:return
56 :
57 rem press a key-58: geta$-62
58 x=0:y=24:gosub66:print"/ please press a key [160] [145][145][145]"
62 geta$:ifa$=""then70:return
66 poke211,x:poke214,y:sys58732:return
68 :
69 rem multitask
70 ifjj=nc-2thenjj=-1
71 jj=jj+1:j%=jj+int(rnd(0)*(nc-jj)):temp=s(jj):s(jj)=s(j%):s(j%)=temp:goto62
88 :
89 rem wrong choice sound
90 pokef+24,15:pokef+8,4:pokef+12,63:pokef+13,17:pokef+11,33
92 fort=1to100:next:pokef+11,32:return
109 :
110 rem setup
111 dimva$(13),vb$(13),st$(4,12),co$(3),s$(3),s1$(3)
112 data"[216]","[203]","[202]","[201]","[200]","[199]","[198]","[197]","[196]","&","[195]","[194]","[217]"
113 s$(0)="[162]":s$(1)="[173]":s$(2)="[192]":s$(3)="[193]":co$(0)="[144]":co$(1)="":co$(2)=""
114 co$(3)="[144]":s1$(0)="[161]":s1$(1)="[218]":s1$(2)="[223]":s1$(3)="[176]"
115 data"[204]","[215]","[214]","[213]","[212]","[211]","[210]","[209]","[208]","'","[207]","[206]","[205]"
116 bk$="!##$[157][157][157][157][170][188][188][171][157][157][157][157][170][188][188][171][157][157][157][157][170][188][188][171][157][157][157][157]\**+[157][157][157][157][145][145][145][145]"
117 deffns(x)=int(x/13):deffnv(x)=x-13*int(x/13)
118 f=54272:fori=ftof+78:pokei,0:next:mt=49152:ck$(0)="-":ck$(1)="["
122 st$(0,1)="[215][216][157][157][217][218][146]":st$(0,0)="[211][212][146]":st$(3,0)="[179][180][146]"
123 st$(0,9)="[193][194][157][157][195][196][157][157][197][198][157][157][199][200][157][157][201][202][146]":st$(3,2)="[183][184][157][157][179][180][157][157][185][186][146]"
124 st$(0,8)="[193][194][157][157][203][204][157][157][205][206][157][157][207][208][157][157][201][202][146]":st$(0,3)="[193][194][157][157][201][202][146]"
125 st$(3,8)="[161][162][157][157][171][172][157][157][173][174][157][157][175][176][157][157][169][170][146]":st$(0,7)="[193][194][157][157][211][212][157][157][209][210][157][157][213][214][157][157][201][202][146]"
126 st$(3,9)="[161][162][157][157][163][164][157][157][165][166][157][157][167][168][157][157][169][170][146]":st$(3,7)="[161][162][157][157][179][180][157][157][177][178][157][157][181][182][157][157][169][170][146]"
127 st$(3,1)="[183][184][157][157][185][186][146]":st$(0,2)="[215][216][157][157][211][212][157][157][217][218][146]"
128 st$(0,6)="[193][194][157][157][211][212][157][157][209][210][157][157][201][202][146]":st$(3,6)="[161][162][157][157][179][180][157][157][177][178][157][157][169][170][146]"
129 st$(3,3)="[161][162][157][157][169][170][146]":st$(0,5)="[193][194][157][157][209][210][157][157][201][202][146]"
130 st$(3,5)="[161][162][157][157][177][178][157][157][169][170][146]":st$(0,4)="[193][194][157][157][211][212][157][157][201][202][146]"
131 st$(3,4)="[161][162][157][157][179][180][157][157][169][170][146]":
132 st$(2,9)="ab[157][157]cd[157][157]ef[157][157]gh[157][157]ij":st$(2,8)="ab[157][157]kl[157][157]mn[157][157]op[157][157]ij"
133 st$(2,7)="ab[157][157]st[157][157]qr[157][157]uv[157][157]ij":st$(2,6)="ab[157][157]st[157][157]qr[157][157]ij"
134 st$(2,5)="ab[157][157]qr[157][157]ij":st$(2,4)="ab[157][157]st[157][157]ij":st$(2,3)="ab[157][157]ij"
135 st$(2,2)="wx[157][157]st[157][157]yz":st$(2,1)="wx[157][157]yz":st$(2,0)="st"
136 fori=2to3:forj=10to12:st$(i,j)="01[157][157]23[157][157]45[157][157]67[157][157]89":next:next
137 st$(1,9)="[219][220][157][157][187][188][157][157][223][191][157][157][189][190][157][157][221][255][146]"
138 st$(1,8)="[219][220][157][157]#$[157][157]%&[157][157]*+[157][157][221][255][146]"
139 st$(1,6)="[219][220][157][157]\^[157][157]<>[157][157][221][255][146]"
140 st$(1,5)="[219][220][157][157]<>[157][157][221][255][146]"
141 st$(1,4)="[219][220][157][157]\^[157][157][221][255][146]"
142 st$(1,7)="[219][220][157][157]\^[157][157]<>[157][157]_=[157][157][221][255][146]"
143 st$(1,1)="[166][167][157][157][168][169]":st$(1,2)="[166][167][157][157]\^[146][157][157][146][168][169]"
144 st$(1,0)="\^[146]":st$(1,3)="[219][220][157][157][221][255][146]"
145 fori=0to3:st$(i,11)="()[157][157]>?[157][157]45[157][157]<=[157][157]:;":next
146 st$(0,10)="()[157][157]^_[157][157]45[157][157][][157][157]:;"
147 st$(1,10)="()[157][157]^_[157][157]45[157][157][][157][157]:;"
148 st$(1,12)="01[157][157]23[157][157]45[157][157]67[157][157]89"
149 st$(0,12)="()[157][157]^_[157][157]45[157][157][][157][157]:;"
150 st$(2,12)="()[157][157]^_[157][157]45[157][157][][157][157]:;"
151 st$(3,12)="()[157][157]^_[157][157]45[157][157][][157][157]:;"
152 fori=0to12:readva$(i):next:fori=0to12:readvb$(i):next:so=1:pg=0
154 dimb(05,52),x(06),y(06),c(05)
156 dk=3:ms=6:dimdk(48):wr=0
160 x(1)=2:y(1)=2:x(2)=7:y(2)=2:x(3)=13:y(3)=12:y(4)=12:x(4)=19
164 x(5)=16:y(5)=3:x(6)=14:y(6)=21
166 nc=48:jj=-1:dims(nc):fori=0to6:s(i)=i:next:fori=7to18:s(i)=i+1:next
167 fori=19to30:s(i)=i+2:next:fori=31to42:s(i)=i+3:next
169 fori=43to47:s(i)=i+4:next
176 jj=jj+1:j%=jj+int(rnd(0)*(nc-jj)):temp=s(jj):s(jj)=s(j%):s(j%)=temp
178 ifjj<>nc-2then176
180 return
198 :
199 rem play cards-magic
200 x=x(i):y=y(i):gosub66:ifc(i)=0then224
202 ca=b(i,c(i)):ifc(i)=0then224
203 su=fns(ca):va=fnv(ca)
210 ifso=0then220
214 pokef+24,6:pokef+5,128:pokef+4,129:fort=1to20:next:pokef+4,128:pokef+5,0
216 pokef+24,0:pokef+24,15:pokef+4,129:pokef+4,128
220 printco$(su);va$(va);"[179][179][177][157][157][157][157]";s$(su);" [174][157][157][157][157][163] [174][157][157][157][157][163] ";s1$(su);
222 print"[157][157][157][157][180][178][178]";vb$(va);"[145][145][145][145][157][157][157]";st$(su,va);:return
223 rem erases card-tile
224 sysmt+3,x,x+3,y,y+4,00,sk:return
228 :
229 rem horizontal pile-230 transfers cards,picks up-236 plays to
230 ifc(i)>18then240
232 y=y(i)+c(i):x=x(i):gosub66:gosub224
236 x=x(i):y=y(i)-1+c(i):ifc(i)=0theny=y(i)
237 ify>19theny=19
238 gosub66:gosub202:return
240 x=x(i):y=19:gosub66:gosub202:return
268 :
269 rem will it play?
270 pl=1:iffs=fns(b(5,c(5)))thenpl=2
272 rempl=2
274 iffnv(b(5,c(5)))=7thenpl=2
276 iffv=fnv(b(5,c(5)))thenpl=2
277 return
278 :
279 rem toggle sound
280 if so=0then288
284 so=0:x=36:y=17:gosub66:print"[159]-":return
288 so=1:x=36:y=17:gosub66:print"[159][":return
298 :
299 rem choice box-color needed
300 x=x(ms):y=y(ms):gosub66:print"[192][192][192][192][192][192][192][192][157][157][157][157][157][157][157][157] [157][157][157][157][157][157][157][157][192][192][192][192][192][192][192][192]"
302 gosub66:return
308 :
309 rem erase message & box
310 poke646,sk:x=x(ms):y=y(ms):gosub66
312 print"[146]@@@@@@@@[157][157][157][157][157][157][157][157]@@@@@@@@[157][157][157][157][157][157][157][157]@@@@@@@@":return
414 :
415 rem spread pile i
416 k=c(i):k1=c(i):ifc(i)>19thenk1=19
418 x=x(i):forj=k1to1step-1:y=1+j:gosub66:gosub224:next
419 ifk>35then422
420 x=1:y=1:forj=1tok:gosub66:c(i)=j:gosub202:x=x+1:next:goto424
422 x=1:y=1:forj=1tok-34:gosub66:c(i)=j:gosub202:next:forj=k-33tok:x=x+1
423 c(i)=j:gosub66:gosub202:next
424 poke646,6:x=3:y=7:gosub66:print"[192][192][192][192][192][192][192][192][192][157][157][157][157][157][157][157][157][157] any key ":y=y+2:gosub66
426 print"[192][192][192][192][192][192][192][192][192]":gosub62:return
438 :
439 rem perfect game end here-others at 450
440 g7=720+120*c(4):sysmt+6,208:sysmt+3,05,19,2,7,160,2
441 pg=pg+1:x=06:y=3:gosub66:poke646,2:print"perfect game!"
442 y=y+1:gosub66:print" bonus 240"
4