home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
commodore-users-of-norman
/
CUON_121_(06-1985).d64
/
sleuth
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
4KB
|
119 lines
1 POKE56,40:CLR:FORA=679TO729:READB:POKEA,B:NEXT
2 DATA 173,136,2,9,128,168
3 DATA 169,0,170,148,217,24
4 DATA 105,40,144,1,200,232
5 DATA 224,26,208,243,169,255
6 DATA 149,217,169,0,133,251
7 DATA 169,216,133,252,162,3
8 DATA 160,0,169,6,145,251
9 DATA 200,208,251,230,252,202,16,242,96
10 GOSUB540
15 Z=20:Z1=53281:Z2=6:Z3=1:Z4=54296:Z5=54280:S2=54273:Z6=53280:G1=54276
20 G2=54283:S3=54272:FORA=54272TO54296:POKEA,0:NEXT:POKE54277,25:POKE54284,29
25 PRINT"[147]":DIMA(5,4):GOTO80
30 GOSUB415
35 CL=0:FORJ=0TO3:FORI=0TO4:A(I,J)=0:NEXT:NEXT:POKEZ1,Z3
36 GOSUB 540:FORA=0TO4:C(A)=0:NEXT
40 PRINT"[147]ONE EVENING, WHILE ON HOLIDAY AT LORD
45 [153]"CRUMBLY'S MANSION YOU HEAR A SHOT AND
50 PRINT"FIND LORD CRUMBLY DEAD"
55 PRINT"THE OTHER PEOPLE HERE ARE"
60 FORI=0TO4:PRINTTAB(5)A$(I):NEXTI
65 PRINT:PRINT"HOW QUICKLY CAN YOU SOLVE THE MURDER?"
70 PRINT"WHO HAD MOTIVE,WEAPON AND OPPORTUNITY?":POKE198,0
75 PRINT"HIT ANY KEY";:WAIT198,1:POKE198,0:PRINT"[147]":GOTO95
80 PRINT"[147]":A$(0)="MAID WHIGGINS[146]":A$(1)="[144]SIR CHAUNCY[146]"
85 A$(2)="[156]MADAM LARUE[146]":A$(3)="BUTLER SNIPE[146]"
90 A$(4)="PROFESSOR BARD[146]":A$(5)="[159]LORD CRUMBLY[146]":GOTO30
95 I=INT(RND(1)*5):LR(I)=1:I=INT(RND(1)*5)
100 FORJ=0TO3:A(I,J)=1:NEXT
105 FORJ=0TO2:C=0
110 FORI=0TO4
115 IFA(I,3)=1THEN145
120 IFC=2THEN145
125 IFJ=0THEN135
130 K=J-1:IFA(I,K)=1THEN145
135 IFRND(1)>.5THENA(I,J)=1
140 IFA(I,J)=1THENC=C+1
145 NEXTI
150 NEXTJ
155 CL=CL+1:W=INT(RND(1)*5):Y=INT(RND(1)*3):UV=INT(RND(1)*3)+1
160 VV=INT(RND(1)*3)+1:X=INT(RND(1)*5):IFX=WTHEN160
165 POKE204,1:PRINT"[147]ONE OF THE SUSPECTS IS A COMPULSIVE LIAR[146]"
170 PRINT:PRINT"DURING QUESTIONING:":PRINT
175 PRINTA$(W)" SAYS:":PRINT
180 ONY+1GOTO185,225,265
185 IFA(X,Y)=0THEN215
190 IFLR(W)=1THEN220
195 ONUVGOTO200,205,210
200 PRINTA$(5):PRINT"WAS BLACKMAILING":PRINTA$(X):GOTO305
205 PRINTA$(X):PRINT" HATED":PRINTA$(5):GOTO305
210 PRINTA$(5):PRINT"SECRETLY KILLED":PRINTA$(X);"'S LOVER":GOTO305
215 IFLR(W)=1THEN195
220 PRINTA$(X):PRINT"HAD NO MOTIVE ":GOTO305
225 IFA(X,Y)=0THEN255
230 IFLR(W)=1THEN260
235 ONUVGOTO240,245,250
240 PRINTA$(X):PRINT"CARRIES A GUN":GOTO305
245 PRINT"A GUN WAS KEPT IN":PRINTA$(X);"'S ROOM":GOTO305
250 PRINTA$(X):PRINT"JUST BOUGHT A GUN":GOTO305
255 IFLR(W)=1THEN235
260 PRINTA$(X):PRINT"HAD NO ACCESS TO A GUN":GOTO305
265 IFA(X,Y)=0THEN295
270 IFLR(W)=1THEN300
275 ONVVGOTO280,285,290
280 PRINTA$(X):PRINT"WENT TO BED VERY EARLY":GOTO305
285 PRINTA$(X):PRINT"HAD NOT BEEN SEEN SINCE DINNER":GOTO305
290 PRINTA$(X):PRINT" WAS BY":PRINTA$(5);"'S ROOM JUST BEFORE THE SHOT":GOTO305
295 IFLR(W)=1THEN275
300 PRINTA$(X):PRINT"WAS WITH SOMEONE WHEN THE SHOT WAS FIRED":GOTO305
305 PRINT"YOUR OPTIONS ARE:":PRINT:PRINT"(1)GRILL SUSPECTS"
310 PRINT"(2)MAKE ACCUSATION"
315 GETA$:IFA$="1"THEN155
320 IFA$>CHR$(132)ANDA$<CHR$(137)THEN485
325 IFA$<>"2"THEN315
330 PRINT"[147]WHO DID IT?":PRINT
335 FORI=0TO4:PRINTI"[157]) ";A$(I):PRINT:NEXT:POKE198,0
337 GETK$:IFASC(K$+CHR$(0))<48ORASC(K$+CHR$(0))>52THEN337
340 K=VAL(K$):IFA(K,3)=1THEN380
345 PRINT"[147]AFTER"CL"CLUES YOU":PRINT"HAVE ACCUSED THE WRONG PERSON"
350 PRINT"BEFORE YOU CAN CORRECT YOUR MISTAKE, YOU ARE FRAMED FOR THE MURDER"
355 POKES2+3,15:FORI=0TO60:POKES2+2,128:NEXT:POKES2+2,0
360 PRINT:FORI=0TO4:IFA(I,3)<>1THEN370
365 PRINTA$(I):A(I,3)=0
370 NEXT
375 PRINT"WAS THE MURDERER!":GOTO390
380 PRINT"[147]"A$(K)" DID IT!":PRINT"YOU CAUGHT THE KILLER AFTER";CL;"CLUES."
385 A(K,3)=0:POKES2+3,15:N=195:FORJ=1TO4:N=N+10
390 FORI=0TO4:IFLR(I)<>1THEN400
395 PRINT:PRINTA$(I):PRINT"WAS THE LIAR.":LR(I)=0
400 NEXT
405 INPUT"ANOTHER CASE (Y/N)";Q$:IFQ$="Y"THEN35
410 END
415 PRINT"[147][144]"SPC(Z-6)"S L E U T H":POKEZ1,Z2:POKEZ4,15:POKEZ6,0
420 PRINT""SPC(Z-10);:FORQ=1TO4:READN,P:POKES2,N:POKES3,P:POKEG1,32:POKEG1,33
425 FORI=1TO800:NEXT:NEXT:A$="[213][174][176][196][201][157][157][157][157][157][202][189][173][198][203]"
430 READN,P:POKES2,N:POKES3,P:POKEG1,32:POKEG1,33:FORI=1TO1300:NEXT:FORQ=1TO4
435 READN,P:POKES2,N:POKES3,P:POKEG1,32:POKEG1,33:FORI=1TO300:NEXT:NEXT:N=185
440 FORJ=1TO4:READN,P:POKES2,N:POKES3,P:POKEG1,32:POKEG1,33
445 PRINTA$;:IFJ=2THENPRINT"[145][145][145][145][145][145]";
450 FORK=1TO800:NEXT:NEXT
455 POKES2,0:POKEZ5,220:POKEG2,128:POKEG2,129:L=16
460 IFL=0THEN470
465 L=L-1:POKEZ4,L:FORI=1TO30:NEXT:GOTO460
470 POKEZ5,0:RETURN
475 DATA4,48,4,251,6,71,8,97,6,167,6,71,5,152,4,251,4,180,4,48
480 DATA 4,251,6,71,8,97
485 S=ASC(A$)-121:GOSUB530
490 POKE214,C(S-12):PRINTCHR$(13)"[145]";
495 POKE204,0:WAIT198,255:GETA$
500 IFA$="_"THEN520
505 IFA$>CHR$(132)ANDA$<CHR$(137)THEN535
510 POKE205,3:WAIT207,1:PRINTA$;:IFPEEK(214)=24THENPRINT"[145]";
515 GOTO495
520 C(S-12)=PEEK(214):WAIT205,3:WAIT207,1:POKE204,1:S=1:POKE648,4:PRINT"[147]"
525 GOSUB530:GOTO165
530 POKE53272,PEEK(53272)AND15ORS*16:POKE648,S*4:SYS679:RETURN
535 WAIT205,3:WAIT207,1:POKE204,1:C(S-12)=PEEK(214):GOTO485
540 FORS=12TO15:GOSUB530:PRINT"[147]":NEXT:S=1:GOSUB530:PRINT"[147]":RETURN