Apple-1-Mini/code/programs/untested/BASIC/CONCENTRATION.TXT

105 lines
2.9 KiB
Plaintext

SCR
LOMEM=768
HIMEM=16384
10 TAB(25): PRINT "CONCENTRATION"
20 TAB(15): PRINT "CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
25 REM PORTED TO REPLICA/1 BY CARL CLAUNCH
30 PRINT
40 PRINT
50 PRINT
200 DIM C$(156),K$(3),Z$(3),E$(156),L$(3),M$(156)
210 GOSUB 1000
230 C$=E$
250 REM -- SHUFFLE AND DEAL
255 PRINT "CARD DECK IS :"
260 FOR Z=1 TO 51
270 K$=C$((Z-1)*3+1,Z*3)
272 PRINT K$;" ";
275 L=Z:IF RND(2) THEN L=53-Z
280 L$=C$((L-1)*3+1,L*3):Q=Z:GOSUB 2000
290 L$=K$:Q=L:GOSUB 2000 : REM INSERT INTO C$(Q)
300 NEXT Z
310 PRINT:PRINT "SHUFFLING DECK . . ."
330 PRINT "ENTER 0 AT ANY TIME TO QUIT"
335 GOSUB 950
340 REM -- START TO PLAY
350 FOR N=1 TO 26
360 INPUT "FIRST CARD",U
365 IF U=0 THEN 900
370 IF U>0 AND U<53 THEN 380
374 PRINT "THERE ARE ONLY 52 CARDS IN THE DECK, NOT ";U
376 GOTO 360
380 LET G=1
390 IF C$((U-1)*3+1,U*3)=" " THEN 840
400 INPUT "SECOND CARD",W
405 IF W=0 THEN 900
410 IF W>0 AND W<53 THEN 420
414 PRINT "THERE ARE ONLY 52 CARDS IN THE DECK, NOT ";W
416 GOTO 400
420 LET G=2
430 IF C$((W-1)*3+1,W*3)=" " THEN 840
440 IF U#W THEN 470
450 PRINT "YOU CAN'T PICK THE SAME CARD TWICE!"
460 GOTO 400
470 IF C$((U-1)*3+1,(U-1)*3+2)=C$((W-1)*3+1,(W-1)*3+2) THEN 580
480 PRINT "#";U;" IS ";C$((U-1)*3+1,U*3),"#";W;" IS ";C$((W-1)*3+1,W*3)
490 PRINT
570 GOTO 630
580 PRINT "THAT'S A MATCH --";C$((U-1)*3+1,U*3),C$((W-1)*3+1,W*3)
590 L$=" ":Q=U:GOSUB 2000:REM INSERT INTO C$(Q)
600 Q=W:GOSUB 2000:REM INSERT INTO C$(Q)
610 LET S=S+1
620 PRINT "YOUR SCORE IS NOW ";S;" YOU HAVE HAD ";N;" PICKS"
630 GOSUB 2200
635 NEXT N
640 REM -- THE RESULTS
650 LET S1=S*10/55
660 PRINT "YOU SCORED ";S;" OUT OF ";N;" THAT IS ";
670 GOTO 680+20*S1
680 PRINT "POOR."
690 GOTO 770
700 PRINT "FAIR."
710 GOTO 770
720 PRINT "GOOD."
730 GOTO 770
740 PRINT "EXCELLENT ! ! !"
750 GOTO 770
760 PRINT ". . . AHHH . . . UH...YOU MUST HAVE CHEATED!"
770 PRINT
780 INPUT "DO YOU WANT TO PLAY AGAIN",Z$
800 IF Z$ = "YES" THEN 210
810 PRINT
820 PRINT "COME BACK AGAIN!!"
830 END
840 PRINT "YOU HAVE ALREADY MATCHED THAT CARD."
850 IF G=1 THEN 360
860 GOTO 400
900 PRINT "SORRY YOU DECIDED TO QUIT. BYE."
910 END
950 PRINT "HIT ENTER REPEATEDLY UNTIL AT BOTTOM OF SCREEN,"
955 PRINT "THEN TYPE ANY LETTER TO BEGIN THE GAME"
960 INPUT D$
970 IF LEN(D$)#0 THEN RETURN
975 PRINT
980 GOTO 960
1000 REM SUB TO LOAD E$ THE FIRST TIME
1010 E$ = " AS 2S 3S 4S 5S 6S 7S 8S 9S10S JS QS KS"
1020 E$(LEN(E$)+1)=" AH 2H 3H 4H 5H 6H 7H 8H 9H10H JH QH KH"
1030 E$(LEN(E$)+1)=" AD 2D 3D 4D 5D 6D 7D 8D 9D10D JD QD KD"
1040 E$(LEN(E$)+1)=" AC 2C 3C 4C 5C 6C 7C 8C 9C10C JC QC KC"
1050 RETURN
2000 REM INSERTS L$ AT LOCATION Q INTO C$
2010 IF Q = 52 THEN 2030
2020 M$=C$(Q*3+1)
2030 C$((Q-1)*3+1)=L$
2040 IF Q<52 THEN C$(Q*3+1)=M$
2050 RETURN
2200 REM ADVANCE TO TOP OF SCREEN FOR NEXT TRIAL
2210 FOR I5=1 TO 1500:NEXT I5 : REM DELAY LOOP
2220 FOR I5=1 TO 24
2230 PRINT
2240 NEXT I5
2260 RETURN
3000 END
RUN