mirror of
https://github.com/rfivet/BCG101.git
synced 2024-12-23 18:46:52 -05:00
ADD BLKJAC and BLKJAK.
This commit is contained in:
parent
4400fe76cc
commit
61ec965375
333
dec/BLKJAC.BAS
Normal file
333
dec/BLKJAC.BAS
Normal file
@ -0,0 +1,333 @@
|
||||
10 PRINT "DO YOU WANT INSTRUCTIONS (IF SO TYPE A 1)";
|
||||
15 INPUT K
|
||||
25 IF K<>1 THEN 85
|
||||
30 PRINT
|
||||
35 PRINT
|
||||
40 PRINT
|
||||
45 PRINT
|
||||
50 PRINT"THIS IS A GAME OF BLACKJACK, LAS VEGAS STYLE."
|
||||
55 PRINT"HERE ARE THE RULES OF THE HOUSE. THE DEALER"
|
||||
60 PRINT"MUST HIT ON 16 OR LESS AND WILL STAY ON 17 OR"
|
||||
65 PRINT"MORE. YOU MAY SPLIT TWO CARDS IF THEY ARE THE"
|
||||
70 PRINT"SAME AND PLAY ONE HAND WITH EACH OF THEM. ALSO,"
|
||||
75 PRINT"YOU MAY DOUBLE YOUR BET AND RECEIVE EXACTLY ONE "
|
||||
80 PRINT"MORE CARD ANY TIME ON YOUR FIRST HIT. THE TYPING"
|
||||
85 PRINT"INSTRUCTIONS ARE: 0-NO HIT; 1-HIT; 2-DOUBLE; AND"
|
||||
90 PRINT "3-SPLIT A PAIR."
|
||||
95 IF K<>1 THEN 155
|
||||
100 PRINT"WHEN THE DEALER HAS AN EXPOSED ACE HE WILL ASK"
|
||||
105 PRINT"YOU FOR AN INSURANCE BET. AN INSURANCE BET WILL"
|
||||
110 PRINT"RISK HALF YOUR BET FOR AN AMOUNT EQUAL TO YOUR BET"
|
||||
115 PRINT"IF YOU WIN. YOU WIN IF THE DEALER HAS A BLACKJACK"
|
||||
120 PRINT"AND LOSE IF HE DOESN'T. THE HOUSE LIMIT IS $500.00"
|
||||
125 PRINT"GOOD LUCK. OH, BY THE WAY, THE DEALER IS NOTED FOR"
|
||||
130 PRINT"DEALING OFF THE BOTTOM OF THE DECK. WATCH HIM VERY"
|
||||
135 PRINT"CLOSELY. HERE HE IS NOW."
|
||||
140 PRINT
|
||||
145 PRINT
|
||||
150 PRINT
|
||||
155 LET K=0
|
||||
160 LET W1=0
|
||||
165 RANDOMIZE
|
||||
170 LET N=INT(1945*RND(0)+1)
|
||||
175 PRINT
|
||||
180 PRINT"ANY TIME YOU WANT ME TO RESHUFFLE THE CARDS SIMPLY"
|
||||
185 PRINT"TYPE 7777 WHEN I ASK FOR YOUR WAGER AND I'LL BE VERY"
|
||||
190 PRINT"HAPPY TO OBLIGE. O.K., HERE IS THE FIRST HAND."
|
||||
200 LET X=INT(10*RND(0))
|
||||
210 DIM D(52),E(5),V(5),T(5),W(5)
|
||||
215 FOR A=1 TO 52
|
||||
220 LET D(A)=0
|
||||
225 NEXT A
|
||||
230 DIM Q(52)
|
||||
235 FOR A=0 TO 39 STEP 13
|
||||
240 FOR C=1 TO 13
|
||||
245 LET Q(A+C)=C
|
||||
250 NEXT C
|
||||
255 NEXT A
|
||||
260 PRINT
|
||||
265 LET K=K+1
|
||||
270 FOR P=1 TO 5
|
||||
275 LET E(P)=0
|
||||
280 LET V(P)=0
|
||||
285 LET T(P)=0
|
||||
290 NEXT P
|
||||
295 LET V(3)=1
|
||||
300 PRINT
|
||||
305 PRINT
|
||||
310 PRINT
|
||||
315 PRINT"WAGER";
|
||||
320 LET P=1
|
||||
325 INPUT W
|
||||
330 LET W(2)=W
|
||||
335 IF W<=0 THEN 1685
|
||||
340 IF W<=500 THEN 370
|
||||
345 IF W<>7777 THEN 360
|
||||
350 GOSUB 1645
|
||||
355 GOTO 315
|
||||
360 PRINT"THAT'S TOO MUCH - HOUSE LIMIT IS $500"
|
||||
365 GOTO 315
|
||||
370 PRINT
|
||||
375 PRINT "I SHOW",
|
||||
380 GOSUB 865
|
||||
385 IF E(1)=0 THEN 395
|
||||
390 LET V(4)=1
|
||||
395 LET V(5)=1
|
||||
400 GOSUB 865
|
||||
405 LET M=X
|
||||
410 LET P=2
|
||||
415 PRINT"FIRST CARD IS",
|
||||
420 GOSUB 865
|
||||
425 LET G=X
|
||||
430 PRINT"NEXT CARD IS",
|
||||
435 GOSUB 865
|
||||
440 IF V(2)>0 THEN 605
|
||||
445 LET S=X
|
||||
450 IF V(3)<> 1 THEN 605
|
||||
455 IF T(P)<>21 THEN 505
|
||||
460 PRINT " ***BLACKJACK*** "
|
||||
465 PRINT
|
||||
470 PRINT" THAT'S GETTING A BIT RIDICULOUS::::"
|
||||
475 PRINT
|
||||
480 PRINT "MY HOLE CARD WAS ",
|
||||
485 LET X=M
|
||||
490 GOSUB 1035
|
||||
495 LET W1=W1+1.5*W
|
||||
500 GOSUB 1335
|
||||
505 IF V(4)=0 THEN 570
|
||||
510 PRINT"INSURANCE ANYONE (TYPE 1 OR 0, 1 MEANS YES)";
|
||||
515 INPUT I
|
||||
520 PRINT
|
||||
525 IF I=0 THEN 570
|
||||
530 IF T(1)<>21 THEN 555
|
||||
535 LET W1=W1+W
|
||||
540 PRINT
|
||||
545 PRINT "YOU WIN $"W;" ON YOUR INSURANCE BET"
|
||||
550 GOTO 570
|
||||
555 LET W1=W1-W/2
|
||||
560 PRINT
|
||||
565 PRINT"YOU LOST $"W/2" ON YOUR INSURANCE BET - I DON'T HAVE BLACKJACK"
|
||||
570 IF T(1)<>21 THEN 605
|
||||
575 PRINT
|
||||
580 PRINT"**I HAVE BLACKJACK**"
|
||||
585 PRINT "MY HOLE CARD WAS ",
|
||||
590 LET X=M
|
||||
595 GOSUB 1035
|
||||
600 GOTO 1300
|
||||
605 IF T(P)<=21 THEN 650
|
||||
610 IF E(P)>0 THEN 640
|
||||
615 PRINT"YOU BUSTED, ";
|
||||
620 PRINT"YOUR TOTAL IS "T(P)
|
||||
625 LET C1=T(P)-5*(INT(T(P)/5))
|
||||
630 IF V(2)=1 THEN 775
|
||||
635 GOTO 1175
|
||||
640 LET E(P)=E(P)-1
|
||||
645 LET T(P)=T(P)-10
|
||||
650 IF V(1)=2 THEN 620
|
||||
655 LET V(3)=V(3)+1
|
||||
660 PRINT"HIT ";
|
||||
665 INPUT V(1)
|
||||
670 IF V(1)<>3 THEN 830
|
||||
675 IF V(2)>0 THEN 820
|
||||
680 IF V(3)<>2 THEN 820
|
||||
685 IF Q(G)=Q(S) THEN 700
|
||||
690 PRINT"NOW IS THAT A PAIR?"
|
||||
695 GOTO 660
|
||||
700 LET V(2)=1
|
||||
705 IF Q(G)<>1 THEN 715
|
||||
710 LET V(1)=2
|
||||
715 LET P=3
|
||||
720 PRINT" PLAY HAND ONE NOW"
|
||||
725 PRINT"FIRST CARD IS ",
|
||||
730 LET W(3)=W
|
||||
735 LET X=G
|
||||
740 GOSUB 750
|
||||
745 GOTO 430
|
||||
750 GOSUB 990
|
||||
755 GOSUB 1035
|
||||
760 LET V(3)=1
|
||||
765 LET T(P)=C
|
||||
770 RETURN
|
||||
775 LET P=2
|
||||
780 LET V(2)=2
|
||||
785 PRINT" PLAY HAND TWO NOW"
|
||||
790 PRINT"FIRST CARD IS",
|
||||
795 LET X=S
|
||||
800 GOSUB 750
|
||||
805 IF Q(G)=1 THEN 815
|
||||
810 LET V(1)=0
|
||||
815 GOTO 430
|
||||
820 PRINT"NO SPLITS NOW -- TRY AGAIN"
|
||||
825 GOTO 660
|
||||
830 IF V(1)<>2 THEN 855
|
||||
835 IF V(3)=2 THEN 850
|
||||
840 PRINT"TOO LATE TO DOUBLE, VHARLIE."
|
||||
845 GOTO 660
|
||||
850 LET W(P)=2*W(P)
|
||||
855 IF V(1)>0 THEN 430
|
||||
860 GOTO 620
|
||||
865 GOSUB 900
|
||||
870 LET T(P)=T(P)+C
|
||||
875 IF V(5)=0 THEN 890
|
||||
880 LET V(5)=0
|
||||
885 RETURN
|
||||
890 GOSUB 1035
|
||||
895 RETURN
|
||||
900 IF R>=50 THEN 945
|
||||
905 LET N=10*(1+ABS(COS(N+W1)))
|
||||
910 FOR A=1 TO N
|
||||
915 LET X=INT(52.999999*RND(Y))
|
||||
920 IF X=0 THEN 915
|
||||
925 NEXT A
|
||||
930 IF D(X)=0 THEN 980
|
||||
935 LET R=R+1
|
||||
940 IF R<50 THEN 900
|
||||
945 FOR A=1 TO 52
|
||||
950 IF D(A)=K THEN 960
|
||||
955 LET D(A)=0
|
||||
960 NEXT A
|
||||
965 LET R=0
|
||||
970 PRINT" I RESHUFFLED ";
|
||||
975 GOTO 900
|
||||
980 LET R=0
|
||||
985 LET D(X)=K
|
||||
990 IF Q(X)<>1 THEN 1010
|
||||
995 LET C=11
|
||||
1000 LET E(P)=E(P)+1
|
||||
1005 RETURN
|
||||
1010 IF Q(X)>10 THEN 1025
|
||||
1015 LET C=Q(X)
|
||||
1020 RETURN
|
||||
1025 LET C=10
|
||||
1030 RETURN
|
||||
1035 GOSUB 1050
|
||||
1040 GOSUB 1120
|
||||
1045 RETURN
|
||||
1050 IF Q(X)<>1 THEN 1065
|
||||
1055 PRINT" ACE ";
|
||||
1060 RETURN
|
||||
1065 IF Q(X)>10 THEN 1080
|
||||
1070 PRINT Q(X);" ";
|
||||
1075 RETURN
|
||||
1080 IF Q(X)>11 THEN 1095
|
||||
1085 PRINT" JACK ";
|
||||
1090 RETURN
|
||||
1095 IF Q(X)>12 THEN 1110
|
||||
1100 PRINT" QUEEN ";
|
||||
1105 RETURN
|
||||
1110 PRINT" KING ";
|
||||
1115 RETURN
|
||||
1120 IF X>39 THEN 1145
|
||||
1125 IF X>26 THEN 1155
|
||||
1130 IF X>13 THEN 1165
|
||||
1135 PRINT"OF SPADES"
|
||||
1140 RETURN
|
||||
1145 PRINT"OF CLUBS"
|
||||
1150 RETURN
|
||||
1155 PRINT"OF HEARTS"
|
||||
1160 RETURN
|
||||
1165 PRINT"OF DIAMONDS"
|
||||
1170 RETURN
|
||||
1175 LET P=2
|
||||
1180 PRINT "MY HOLE CARD WAS ",
|
||||
1185 LET X=M
|
||||
1190 GOSUB 1035
|
||||
1195 IF T(2)<22 THEN 1210
|
||||
1200 IF V(2)=0 THEN 1300
|
||||
1205 IF T(3)>21 THEN 1300
|
||||
1210 LET P=1
|
||||
1215 IF T(1)<17 THEN 1360
|
||||
1220 IF T(1)>17 THEN 1230
|
||||
1225 IF E(1)>0 THEN 1360
|
||||
1230 IF T(1)>21 THEN 1375
|
||||
1235 LET P=2
|
||||
1240 PRINT"MY TOTAL IS "T(1)
|
||||
1245 IF T(P)>21 THEN 1300
|
||||
1250 IF T(1)>21 THEN 1265
|
||||
1255 IF T(1)>T(P) THEN 1300
|
||||
1260 IF T(1)=T(P) THEN 1330
|
||||
1265 LET W1=W1+W(P)
|
||||
1270 IF C1>3 THEN 1445
|
||||
1275 IF C1>2 THEN 1465
|
||||
1280 IF C1>1 THEN 1485
|
||||
1285 IF C1>0 THEN 1505
|
||||
1290 GOTO 1525
|
||||
1295 GOTO 1330
|
||||
1300 LET W1=W1-W(P)
|
||||
1305 IF C1>3 THEN 1545
|
||||
1310 IF C1>2 THEN 1565
|
||||
1315 IF C1>1 THEN 1585
|
||||
1320 IF C1>0 THEN 1605
|
||||
1325 GOTO 1625
|
||||
1330 IF V(2)>0 THEN 1345
|
||||
1335 GOSUB 1405
|
||||
1340 GOTO 265
|
||||
1345 LET P=3
|
||||
1350 LET V(2)=0
|
||||
1355 GOTO 1245
|
||||
1360 PRINT "I DRAW",
|
||||
1365 GOSUB 865
|
||||
1370 GOTO 1210
|
||||
1375 IF E(1)=0 THEN 1395
|
||||
1380 LET E(1)=E(1)-1
|
||||
1385 LET T(1)=T(1)-10
|
||||
1390 GOTO 1210
|
||||
1395 PRINT"I BUSTED*****"
|
||||
1400 GOTO 1235
|
||||
1405 IF W1<0 THEN 1425
|
||||
1410 IF W1=0 THEN 1435
|
||||
1415 PRINT"YOU'RE AHEAD $"W1
|
||||
1420 RETURN
|
||||
1425 PRINT USING "YOU'RE BEHIND $**##,.##", -W1
|
||||
1430 RETURN
|
||||
1435 PRINT"YOU'RE EVEN"
|
||||
1440 RETURN
|
||||
1445 PRINT
|
||||
1450 PRINT"I MUST HAVE DEALT WRONG."
|
||||
1455 PRINT
|
||||
1460 GOTO 1330
|
||||
1465 PRINT
|
||||
1470 PRINT"YOU LUCKED OUT AGAIN:"
|
||||
1475 PRINT
|
||||
1480 GOTO 1330
|
||||
1485 PRINT
|
||||
1490 PRINT"YOU MUST HAVE BEEN PEEKING."
|
||||
1495 PRINT
|
||||
1500 GOTO 1330
|
||||
1505 PRINT
|
||||
1510 PRINT"I COULD LOSE MY JOB THIS WAY."
|
||||
1515 PRINT
|
||||
1520 GOTO 1330
|
||||
1525 PRINT
|
||||
1530 PRINT"THE CARDS HAVE TURNED AGAINST ME:"
|
||||
1535 PRINT
|
||||
1540 GOTO 1330
|
||||
1545 PRINT
|
||||
1550 PRINT"THE BOTTOM OF THE DECK STRIKES AGAIN:"
|
||||
1555 PRINT
|
||||
1560 GOTO 1330
|
||||
1565 PRINT
|
||||
1570 PRINT"A VICTORY FOR US GOOD GUYS."
|
||||
1575 PRINT
|
||||
1580 GOTO 1330
|
||||
1585 PRINT
|
||||
1590 PRINT"YOU CAN'T BEAT SKILL."
|
||||
1595 PRINT
|
||||
1600 GOTO 1330
|
||||
1605 PRINT
|
||||
1610 PRINT"YOU CAN'T WIN 'EM ALL."
|
||||
1615 PRINT
|
||||
1620 GOTO 1330
|
||||
1625 PRINT
|
||||
1630 PRINT"BABY GETS A NEW PAIR OF SHOES:"
|
||||
1635 PRINT
|
||||
1640 GOTO 1330
|
||||
1645 FOR M9 = 1 TO 52
|
||||
1650 LET D(M9)=0
|
||||
1655 NEXT M9
|
||||
1660 LET R=0
|
||||
1665 PRINT
|
||||
1670 PRINT" I RESHUFFLED"
|
||||
1675 PRINT""
|
||||
1680 RETURN
|
||||
1685 END
|
102
dec/BLKJAK.BAS
Normal file
102
dec/BLKJAK.BAS
Normal file
@ -0,0 +1,102 @@
|
||||
5 PRINT "WELCOME TO DIGITAL EDUSYSTEM COMPUTER BLACKJACK!!"
|
||||
6 PRINT\PRINT "YOUR DEALER TONIGHT IS PETEY P. EIGHT."
|
||||
7 PRINT "WATCH HIM CLOSELY.... HE HAS A REPUTATION FOR"
|
||||
8 PRINT "DEALING OFF THE BOTTOM OF THE DECK."\PRINT
|
||||
9 RANDOMIZE
|
||||
10 DIM A(13)
|
||||
20 PRINT "QUESTIONS REQUIRING A YES OR NO ANSWER"
|
||||
25 PRINT "SHOULD BE ANSWERED WITH A 'Y' FOR YES, 'N' FOR NO."\PRINT
|
||||
30 PRINT "DON'T START PLAYING WITH LESS THAN $100.. HAVE FUN!"\PRINT
|
||||
40 PRINT "HOW MANY DOLLARS ARE YOU STARTING WITH";
|
||||
41 INPUT F
|
||||
42 PRINT
|
||||
43 F1=F
|
||||
50 PRINT "WHAT IS YOUR WAGER THIS TIME";
|
||||
51 INPUT W
|
||||
52 PRINT
|
||||
53 IF W>F GOTO 56
|
||||
54 IF W<10 GOTO 58
|
||||
55 GOTO 100
|
||||
56 PRINT "YOUR BET EXCEEDS YOUR REMAINING DOLLARS."
|
||||
57 GOTO 50
|
||||
58 PRINT "MINIMUM WAGER IS $10."
|
||||
59 GOTO 50
|
||||
100 GOSUB 780
|
||||
102 P1=I
|
||||
104 PRINT "YOUR FIRST CARD IS "CHR$(L)
|
||||
106 GOSUB 780
|
||||
110 P2=I
|
||||
112 PRINT "YOUR SECOND CARD IS "CHR$(L)
|
||||
115 GOSUB 200
|
||||
117 PRINT "YOU HAVE "P3" SHOWING."
|
||||
119 GOSUB 760
|
||||
120 P3=P3+I
|
||||
122 PRINT "YOU GOT A "CHR$(L)
|
||||
123 IF P3>21 GOTO 820
|
||||
124 GOTO 117
|
||||
200 GOSUB 780
|
||||
201 P3=P1+P2
|
||||
202 D1=I
|
||||
204 GOSUB 780
|
||||
206 D2=I
|
||||
208 PRINT "DEALER SHOWS A "CHR$(L)
|
||||
210 GOTO 117
|
||||
212 D3=D1+D2
|
||||
214 PRINT "DEALER HAS "D3
|
||||
216 IF D3>16 GOTO 222
|
||||
217 GOSUB 780
|
||||
218 PRINT "DEALER GETS A "CHR$(L)
|
||||
219 D3=D3+I
|
||||
220 GOTO 214
|
||||
222 IF D3<22 GOTO 800
|
||||
224 PRINT "DEALER BUSTED."
|
||||
226 GOTO 802
|
||||
760 PRINT "DO YOU WANT A HIT?";
|
||||
762 INPUT $K
|
||||
764 PRINT
|
||||
766 IF K=#N GOTO 212
|
||||
768 GOSUB 780
|
||||
770 RETURN
|
||||
780 I=INT(13*RND(0)+1)
|
||||
782 A(I)=A(I)+1
|
||||
784 IF A(I)>4 GOTO 780
|
||||
786 GOSUB 900
|
||||
788 RETURN
|
||||
800 IF D3>=P3 GOTO 820
|
||||
802 F=F+W
|
||||
806 PRINT "YOU WIN. YOU NOW HAVE $"F
|
||||
808 GOTO 980
|
||||
820 F=F-W
|
||||
822 PRINT "YOU LOSE. YOU NOW HAVE $"F
|
||||
824 GOTO 980
|
||||
900 IF I<>1 GOTO 910
|
||||
904 I=11
|
||||
906 L=#A
|
||||
908 GOTO 942
|
||||
910 IF I<>13 GOTO 920
|
||||
912 I=10
|
||||
914 L=#K
|
||||
916 GOTO 942
|
||||
920 IF I<>12 GOTO 930
|
||||
922 I=10
|
||||
924 L=#Q
|
||||
926 GOTO 942
|
||||
930 IF I<>11 GOTO 937
|
||||
932 I=10
|
||||
934 L=#J
|
||||
936 GOTO 942
|
||||
937 IF I<>10 GOTO 940
|
||||
938 L=#T
|
||||
939 GOTO 942
|
||||
940 L=I+48
|
||||
942 RETURN
|
||||
980 PRINT "DO YOU WISH TO PLAY AGAIN?";
|
||||
982 INPUT $K
|
||||
984 PRINT\PRINT
|
||||
986 IF K=#Y GOTO 50
|
||||
987 PRINT\PRINT\PRINT \IF F>F1 THEN 995
|
||||
988 PRINT "TOO BAD! YOU LOST"F1-F"DOLLARS AT THE EDUSYSTEM CASINO."
|
||||
990 GOTO 998
|
||||
995 PRINT "NOT BAD! YOU WON"F-F1"DOLLARS AT THE EDUSYSTEM CASINO."
|
||||
998 PRINT\PRINT "HOPE YOU ENJOYED YOURSELF. THANKS FOR PLAYING."
|
||||
999 END
|
333
port/BLKJAC.BAS
Normal file
333
port/BLKJAC.BAS
Normal file
@ -0,0 +1,333 @@
|
||||
10 PRINT "DO YOU WANT INSTRUCTIONS (IF SO TYPE A 1)";
|
||||
15 INPUT K
|
||||
25 IF K<>1 THEN 85
|
||||
30 PRINT
|
||||
35 PRINT
|
||||
40 PRINT
|
||||
45 PRINT
|
||||
50 PRINT"THIS IS A GAME OF BLACKJACK, LAS VEGAS STYLE."
|
||||
55 PRINT"HERE ARE THE RULES OF THE HOUSE. THE DEALER"
|
||||
60 PRINT"MUST HIT ON 16 OR LESS AND WILL STAY ON 17 OR"
|
||||
65 PRINT"MORE. YOU MAY SPLIT TWO CARDS IF THEY ARE THE"
|
||||
70 PRINT"SAME AND PLAY ONE HAND WITH EACH OF THEM. ALSO,"
|
||||
75 PRINT"YOU MAY DOUBLE YOUR BET AND RECEIVE EXACTLY ONE "
|
||||
80 PRINT"MORE CARD ANY TIME ON YOUR FIRST HIT. THE TYPING"
|
||||
85 PRINT"INSTRUCTIONS ARE: 0-NO HIT; 1-HIT; 2-DOUBLE; AND"
|
||||
90 PRINT "3-SPLIT A PAIR."
|
||||
95 IF K<>1 THEN 155
|
||||
100 PRINT"WHEN THE DEALER HAS AN EXPOSED ACE HE WILL ASK"
|
||||
105 PRINT"YOU FOR AN INSURANCE BET. AN INSURANCE BET WILL"
|
||||
110 PRINT"RISK HALF YOUR BET FOR AN AMOUNT EQUAL TO YOUR BET"
|
||||
115 PRINT"IF YOU WIN. YOU WIN IF THE DEALER HAS A BLACKJACK"
|
||||
120 PRINT"AND LOSE IF HE DOESN'T. THE HOUSE LIMIT IS $500.00"
|
||||
125 PRINT"GOOD LUCK. OH, BY THE WAY, THE DEALER IS NOTED FOR"
|
||||
130 PRINT"DEALING OFF THE BOTTOM OF THE DECK. WATCH HIM VERY"
|
||||
135 PRINT"CLOSELY. HERE HE IS NOW."
|
||||
140 PRINT
|
||||
145 PRINT
|
||||
150 PRINT
|
||||
155 LET K=0
|
||||
160 LET W1=0
|
||||
165 RANDOMIZE
|
||||
170 LET N=INT(1945*RND(0)+1)
|
||||
175 PRINT
|
||||
180 PRINT"ANY TIME YOU WANT ME TO RESHUFFLE THE CARDS SIMPLY"
|
||||
185 PRINT"TYPE 7777 WHEN I ASK FOR YOUR WAGER AND I'LL BE VERY"
|
||||
190 PRINT"HAPPY TO OBLIGE. O.K., HERE IS THE FIRST HAND."
|
||||
200 LET X=INT(10*RND(0))
|
||||
210 DIM D(52),E(5),V(5),T(5),W(5)
|
||||
215 FOR A=1 TO 52
|
||||
220 LET D(A)=0
|
||||
225 NEXT A
|
||||
230 DIM Q(52)
|
||||
235 FOR A=0 TO 39 STEP 13
|
||||
240 FOR C=1 TO 13
|
||||
245 LET Q(A+C)=C
|
||||
250 NEXT C
|
||||
255 NEXT A
|
||||
260 PRINT
|
||||
265 LET K=K+1
|
||||
270 FOR P=1 TO 5
|
||||
275 LET E(P)=0
|
||||
280 LET V(P)=0
|
||||
285 LET T(P)=0
|
||||
290 NEXT P
|
||||
295 LET V(3)=1
|
||||
300 PRINT
|
||||
305 PRINT
|
||||
310 PRINT
|
||||
315 PRINT"WAGER";
|
||||
320 LET P=1
|
||||
325 INPUT W
|
||||
330 LET W(2)=W
|
||||
335 IF W<=0 THEN 1685
|
||||
340 IF W<=500 THEN 370
|
||||
345 IF W<>7777 THEN 360
|
||||
350 GOSUB 1645
|
||||
355 GOTO 315
|
||||
360 PRINT"THAT'S TOO MUCH - HOUSE LIMIT IS $500"
|
||||
365 GOTO 315
|
||||
370 PRINT
|
||||
375 PRINT "I SHOW",
|
||||
380 GOSUB 865
|
||||
385 IF E(1)=0 THEN 395
|
||||
390 LET V(4)=1
|
||||
395 LET V(5)=1
|
||||
400 GOSUB 865
|
||||
405 LET M=X
|
||||
410 LET P=2
|
||||
415 PRINT"FIRST CARD IS",
|
||||
420 GOSUB 865
|
||||
425 LET G=X
|
||||
430 PRINT"NEXT CARD IS",
|
||||
435 GOSUB 865
|
||||
440 IF V(2)>0 THEN 605
|
||||
445 LET S=X
|
||||
450 IF V(3)<> 1 THEN 605
|
||||
455 IF T(P)<>21 THEN 505
|
||||
460 PRINT " ***BLACKJACK*** "
|
||||
465 PRINT
|
||||
470 PRINT" THAT'S GETTING A BIT RIDICULOUS::::"
|
||||
475 PRINT
|
||||
480 PRINT "MY HOLE CARD WAS ",
|
||||
485 LET X=M
|
||||
490 GOSUB 1035
|
||||
495 LET W1=W1+1.5*W
|
||||
500 GOSUB 1335
|
||||
505 IF V(4)=0 THEN 570
|
||||
510 PRINT"INSURANCE ANYONE (TYPE 1 OR 0, 1 MEANS YES)";
|
||||
515 INPUT I
|
||||
520 PRINT
|
||||
525 IF I=0 THEN 570
|
||||
530 IF T(1)<>21 THEN 555
|
||||
535 LET W1=W1+W
|
||||
540 PRINT
|
||||
545 PRINT "YOU WIN $"W;" ON YOUR INSURANCE BET"
|
||||
550 GOTO 570
|
||||
555 LET W1=W1-W/2
|
||||
560 PRINT
|
||||
565 PRINT"YOU LOST $"W/2" ON YOUR INSURANCE BET - I DON'T HAVE BLACKJACK"
|
||||
570 IF T(1)<>21 THEN 605
|
||||
575 PRINT
|
||||
580 PRINT"**I HAVE BLACKJACK**"
|
||||
585 PRINT "MY HOLE CARD WAS ",
|
||||
590 LET X=M
|
||||
595 GOSUB 1035
|
||||
600 GOTO 1300
|
||||
605 IF T(P)<=21 THEN 650
|
||||
610 IF E(P)>0 THEN 640
|
||||
615 PRINT"YOU BUSTED, ";
|
||||
620 PRINT"YOUR TOTAL IS "T(P)
|
||||
625 LET C1=T(P)-5*(INT(T(P)/5))
|
||||
630 IF V(2)=1 THEN 775
|
||||
635 GOTO 1175
|
||||
640 LET E(P)=E(P)-1
|
||||
645 LET T(P)=T(P)-10
|
||||
650 IF V(1)=2 THEN 620
|
||||
655 LET V(3)=V(3)+1
|
||||
660 PRINT"HIT ";
|
||||
665 INPUT V(1)
|
||||
670 IF V(1)<>3 THEN 830
|
||||
675 IF V(2)>0 THEN 820
|
||||
680 IF V(3)<>2 THEN 820
|
||||
685 IF Q(G)=Q(S) THEN 700
|
||||
690 PRINT"NOW IS THAT A PAIR?"
|
||||
695 GOTO 660
|
||||
700 LET V(2)=1
|
||||
705 IF Q(G)<>1 THEN 715
|
||||
710 LET V(1)=2
|
||||
715 LET P=3
|
||||
720 PRINT" PLAY HAND ONE NOW"
|
||||
725 PRINT"FIRST CARD IS ",
|
||||
730 LET W(3)=W
|
||||
735 LET X=G
|
||||
740 GOSUB 750
|
||||
745 GOTO 430
|
||||
750 GOSUB 990
|
||||
755 GOSUB 1035
|
||||
760 LET V(3)=1
|
||||
765 LET T(P)=C
|
||||
770 RETURN
|
||||
775 LET P=2
|
||||
780 LET V(2)=2
|
||||
785 PRINT" PLAY HAND TWO NOW"
|
||||
790 PRINT"FIRST CARD IS",
|
||||
795 LET X=S
|
||||
800 GOSUB 750
|
||||
805 IF Q(G)=1 THEN 815
|
||||
810 LET V(1)=0
|
||||
815 GOTO 430
|
||||
820 PRINT"NO SPLITS NOW -- TRY AGAIN"
|
||||
825 GOTO 660
|
||||
830 IF V(1)<>2 THEN 855
|
||||
835 IF V(3)=2 THEN 850
|
||||
840 PRINT"TOO LATE TO DOUBLE, VHARLIE."
|
||||
845 GOTO 660
|
||||
850 LET W(P)=2*W(P)
|
||||
855 IF V(1)>0 THEN 430
|
||||
860 GOTO 620
|
||||
865 GOSUB 900
|
||||
870 LET T(P)=T(P)+C
|
||||
875 IF V(5)=0 THEN 890
|
||||
880 LET V(5)=0
|
||||
885 RETURN
|
||||
890 GOSUB 1035
|
||||
895 RETURN
|
||||
900 IF R>=50 THEN 945
|
||||
905 LET N=10*(1+ABS(COS(N+W1)))
|
||||
910 FOR A=1 TO N
|
||||
915 LET X=INT(52.999999*RND(Y))
|
||||
920 IF X=0 THEN 915
|
||||
925 NEXT A
|
||||
930 IF D(X)=0 THEN 980
|
||||
935 LET R=R+1
|
||||
940 IF R<50 THEN 900
|
||||
945 FOR A=1 TO 52
|
||||
950 IF D(A)=K THEN 960
|
||||
955 LET D(A)=0
|
||||
960 NEXT A
|
||||
965 LET R=0
|
||||
970 PRINT" I RESHUFFLED ";
|
||||
975 GOTO 900
|
||||
980 LET R=0
|
||||
985 LET D(X)=K
|
||||
990 IF Q(X)<>1 THEN 1010
|
||||
995 LET C=11
|
||||
1000 LET E(P)=E(P)+1
|
||||
1005 RETURN
|
||||
1010 IF Q(X)>10 THEN 1025
|
||||
1015 LET C=Q(X)
|
||||
1020 RETURN
|
||||
1025 LET C=10
|
||||
1030 RETURN
|
||||
1035 GOSUB 1050
|
||||
1040 GOSUB 1120
|
||||
1045 RETURN
|
||||
1050 IF Q(X)<>1 THEN 1065
|
||||
1055 PRINT" ACE ";
|
||||
1060 RETURN
|
||||
1065 IF Q(X)>10 THEN 1080
|
||||
1070 PRINT Q(X);" ";
|
||||
1075 RETURN
|
||||
1080 IF Q(X)>11 THEN 1095
|
||||
1085 PRINT" JACK ";
|
||||
1090 RETURN
|
||||
1095 IF Q(X)>12 THEN 1110
|
||||
1100 PRINT" QUEEN ";
|
||||
1105 RETURN
|
||||
1110 PRINT" KING ";
|
||||
1115 RETURN
|
||||
1120 IF X>39 THEN 1145
|
||||
1125 IF X>26 THEN 1155
|
||||
1130 IF X>13 THEN 1165
|
||||
1135 PRINT"OF SPADES"
|
||||
1140 RETURN
|
||||
1145 PRINT"OF CLUBS"
|
||||
1150 RETURN
|
||||
1155 PRINT"OF HEARTS"
|
||||
1160 RETURN
|
||||
1165 PRINT"OF DIAMONDS"
|
||||
1170 RETURN
|
||||
1175 LET P=2
|
||||
1180 PRINT "MY HOLE CARD WAS ",
|
||||
1185 LET X=M
|
||||
1190 GOSUB 1035
|
||||
1195 IF T(2)<22 THEN 1210
|
||||
1200 IF V(2)=0 THEN 1300
|
||||
1205 IF T(3)>21 THEN 1300
|
||||
1210 LET P=1
|
||||
1215 IF T(1)<17 THEN 1360
|
||||
1220 IF T(1)>17 THEN 1230
|
||||
1225 IF E(1)>0 THEN 1360
|
||||
1230 IF T(1)>21 THEN 1375
|
||||
1235 LET P=2
|
||||
1240 PRINT"MY TOTAL IS "T(1)
|
||||
1245 IF T(P)>21 THEN 1300
|
||||
1250 IF T(1)>21 THEN 1265
|
||||
1255 IF T(1)>T(P) THEN 1300
|
||||
1260 IF T(1)=T(P) THEN 1330
|
||||
1265 LET W1=W1+W(P)
|
||||
1270 IF C1>3 THEN 1445
|
||||
1275 IF C1>2 THEN 1465
|
||||
1280 IF C1>1 THEN 1485
|
||||
1285 IF C1>0 THEN 1505
|
||||
1290 GOTO 1525
|
||||
1295 GOTO 1330
|
||||
1300 LET W1=W1-W(P)
|
||||
1305 IF C1>3 THEN 1545
|
||||
1310 IF C1>2 THEN 1565
|
||||
1315 IF C1>1 THEN 1585
|
||||
1320 IF C1>0 THEN 1605
|
||||
1325 GOTO 1625
|
||||
1330 IF V(2)>0 THEN 1345
|
||||
1335 GOSUB 1405
|
||||
1340 GOTO 265
|
||||
1345 LET P=3
|
||||
1350 LET V(2)=0
|
||||
1355 GOTO 1245
|
||||
1360 PRINT "I DRAW",
|
||||
1365 GOSUB 865
|
||||
1370 GOTO 1210
|
||||
1375 IF E(1)=0 THEN 1395
|
||||
1380 LET E(1)=E(1)-1
|
||||
1385 LET T(1)=T(1)-10
|
||||
1390 GOTO 1210
|
||||
1395 PRINT"I BUSTED*****"
|
||||
1400 GOTO 1235
|
||||
1405 IF W1<0 THEN 1425
|
||||
1410 IF W1=0 THEN 1435
|
||||
1415 PRINT"YOU'RE AHEAD $"W1
|
||||
1420 RETURN
|
||||
1425 PRINT "YOU'RE BEHIND $", -W1
|
||||
1430 RETURN
|
||||
1435 PRINT"YOU'RE EVEN"
|
||||
1440 RETURN
|
||||
1445 PRINT
|
||||
1450 PRINT"I MUST HAVE DEALT WRONG."
|
||||
1455 PRINT
|
||||
1460 GOTO 1330
|
||||
1465 PRINT
|
||||
1470 PRINT"YOU LUCKED OUT AGAIN:"
|
||||
1475 PRINT
|
||||
1480 GOTO 1330
|
||||
1485 PRINT
|
||||
1490 PRINT"YOU MUST HAVE BEEN PEEKING."
|
||||
1495 PRINT
|
||||
1500 GOTO 1330
|
||||
1505 PRINT
|
||||
1510 PRINT"I COULD LOSE MY JOB THIS WAY."
|
||||
1515 PRINT
|
||||
1520 GOTO 1330
|
||||
1525 PRINT
|
||||
1530 PRINT"THE CARDS HAVE TURNED AGAINST ME:"
|
||||
1535 PRINT
|
||||
1540 GOTO 1330
|
||||
1545 PRINT
|
||||
1550 PRINT"THE BOTTOM OF THE DECK STRIKES AGAIN:"
|
||||
1555 PRINT
|
||||
1560 GOTO 1330
|
||||
1565 PRINT
|
||||
1570 PRINT"A VICTORY FOR US GOOD GUYS."
|
||||
1575 PRINT
|
||||
1580 GOTO 1330
|
||||
1585 PRINT
|
||||
1590 PRINT"YOU CAN'T BEAT SKILL."
|
||||
1595 PRINT
|
||||
1600 GOTO 1330
|
||||
1605 PRINT
|
||||
1610 PRINT"YOU CAN'T WIN 'EM ALL."
|
||||
1615 PRINT
|
||||
1620 GOTO 1330
|
||||
1625 PRINT
|
||||
1630 PRINT"BABY GETS A NEW PAIR OF SHOES:"
|
||||
1635 PRINT
|
||||
1640 GOTO 1330
|
||||
1645 FOR M9 = 1 TO 52
|
||||
1650 LET D(M9)=0
|
||||
1655 NEXT M9
|
||||
1660 LET R=0
|
||||
1665 PRINT
|
||||
1670 PRINT" I RESHUFFLED"
|
||||
1675 PRINT""
|
||||
1680 RETURN
|
||||
1685 END
|
102
port/BLKJAK.BAS.1
Normal file
102
port/BLKJAK.BAS.1
Normal file
@ -0,0 +1,102 @@
|
||||
5 PRINT "WELCOME TO DIGITAL EDUSYSTEM COMPUTER BLACKJACK!!"
|
||||
6 PRINT\PRINT "YOUR DEALER TONIGHT IS PETEY P. EIGHT."
|
||||
7 PRINT "WATCH HIM CLOSELY.... HE HAS A REPUTATION FOR"
|
||||
8 PRINT "DEALING OFF THE BOTTOM OF THE DECK."\PRINT
|
||||
9 RANDOMIZE
|
||||
10 DIM A(13)
|
||||
20 PRINT "QUESTIONS REQUIRING A YES OR NO ANSWER"
|
||||
25 PRINT "SHOULD BE ANSWERED WITH A 'Y' FOR YES, 'N' FOR NO."\PRINT"
|
||||
30 PRINT "DON'T START PLAYING WITH LESS THAN $100.. HAVE FUN!"\PRINT
|
||||
40 PRINT "HOW MANY DOLLARS ARE YOU STARTING WITH";
|
||||
41 INPUT F
|
||||
42 PRINT
|
||||
43 F1=F
|
||||
50 PRINT "WHAT IS YOUR WAGER THIS TIME";
|
||||
51 INPUT W
|
||||
52 PRINT
|
||||
53 IF W>F GOTO 56
|
||||
54 IF W<10 GOTO 58
|
||||
55 GOTO 100
|
||||
56 PRINT "YOUR BET EXCEEDS YOUR REMAINING DOLLARS."
|
||||
57 GOTO 50
|
||||
58 PRINT "MINIMUM WAGER IS $10."
|
||||
59 GOTO 50
|
||||
100 GOSUB 780
|
||||
102 P1=I
|
||||
104 PRINT "YOUR FIRST CARD IS "CHR$(L)
|
||||
106 GOSUB 780
|
||||
110 P2=I
|
||||
112 PRINT "YOUR SECOND CARD IS "CHR$(L)
|
||||
115 GOSUB 200
|
||||
117 PRINT "YOU HAVE "P3" SHOWING."
|
||||
119 GOSUB 760
|
||||
120 P3=P3+I
|
||||
122 PRINT "YOU GOT A "CHR$(L)
|
||||
123 IF P3>21 GOTO 820
|
||||
124 GOTO 117
|
||||
200 GOSUB 780
|
||||
201 P3=P1+P2
|
||||
202 D1=I
|
||||
204 GOSUB 780
|
||||
206 D2=I
|
||||
208 PRINT "DEALER SHOWS A "CHR$(L)
|
||||
210 GOTO 117
|
||||
212 D3=D1+D2
|
||||
214 PRINT "DEALER HAS "D3
|
||||
216 IF D3>16 GOTO 222
|
||||
217 GOSUB 780
|
||||
218 PRINT "DEALER GETS A "CHR$(L)
|
||||
219 D3=D3+I
|
||||
220 GOTO 214
|
||||
222 IF D3<22 GOTO 800
|
||||
224 PRINT "DEALER BUSTED."
|
||||
226 GOTO 802
|
||||
760 PRINT "DO YOU WANT A HIT";
|
||||
762 INPUT K$
|
||||
764 PRINT
|
||||
766 IF K="N" GOTO 212
|
||||
768 GOSUB 780
|
||||
770 RETURN
|
||||
780 I=INT(13*RND(0)+1)
|
||||
782 A(I)=A(I)+1
|
||||
784 IF A(I)>4 GOTO 780
|
||||
786 GOSUB 900
|
||||
788 RETURN
|
||||
800 IF D3>=P3 GOTO 820
|
||||
802 F=F+W
|
||||
806 PRINT "YOU WIN. YOU NOW HAVE $"F
|
||||
808 GOTO 980
|
||||
820 F=F-W
|
||||
822 PRINT "YOU LOSE. YOU NOW HAVE $"F
|
||||
824 GOTO 980
|
||||
900 IF I<>1 GOTO 910
|
||||
904 I=11
|
||||
906 L=65 ' #A
|
||||
908 GOTO 942
|
||||
910 IF I<>13 GOTO 920
|
||||
912 I=10
|
||||
914 L=75 ' #K
|
||||
916 GOTO 942
|
||||
920 IF I<>12 GOTO 930
|
||||
922 I=10
|
||||
924 L=81 ' #Q
|
||||
926 GOTO 942
|
||||
930 IF I<>11 GOTO 937
|
||||
932 I=10
|
||||
934 L=74 ' #J
|
||||
936 GOTO 942
|
||||
937 IF I<>10 GOTO 940
|
||||
938 L=84 ' #T
|
||||
939 GOTO 942
|
||||
940 L=I+48
|
||||
942 RETURN
|
||||
980 PRINT "DO YOU WISH TO PLAY AGAIN";
|
||||
982 INPUT K$
|
||||
984 PRINT\PRINT
|
||||
986 IF K$="Y" GOTO 50
|
||||
987 PRINT\PRINT\PRINT \IF F>F1 THEN 995
|
||||
988 PRINT "TOO BAD! YOU LOST"F1-F"DOLLARS AT THE EDUSYSTEM CASINO."
|
||||
990 GOTO 998
|
||||
995 PRINT "NOT BAD! YOU WON"F-F1"DOLLARS AT THE EDUSYSTEM CASINO."
|
||||
998 PRINT\PRINT "HOPE YOU ENJOYED YOURSELF. THANKS FOR PLAYING."
|
||||
999 END
|
Loading…
Reference in New Issue
Block a user