10 REM ... BLJAK.ECB 20 REM ... BLCKJCK...from MERITSS : GAME 12-14-77 100 REM ... THIS IS BLACKJACK FOR ONE OR TWO PLAYERS 110 REM ... WRITTEN BY JLL 120 REM ... Adapted for SOL 130 B=INT(24*RND(0))+1 140 C=INT(60*RND(0))+1 150 D=INT(60*RND(0))+1 160 A=(B*C)+(B*D) 170 FOR I=1 TO A 180 X=RND(A) 190 NEXT I 200 IF B<12 THEN 260 210 IF B<17 THEN 240 220 PRINT "GOOD EVENING..." 230 GOTO 270 240 PRINT "GOOD AFTERNOON..." 250 GOTO 270 260 PRINT "GOOD MORNING..." 270 PRINT "..THIS IS A BLACKJACK GAME" 275 PRINT "WILL THERE BE 1 OR 2 PLAYERS?"; 280 INPUT " --=>"N 290 IF N>0 THEN 320 300 PRINT "AW, COME ON, I NEED MORE THAN THAT. TRY AGAIN"; 310 GOTO 280 320 IF N<3 THEN 350 330 PRINT "HEY FELLAS.....THAT'S TOO MANY. TRY AGAIN"; 340 GOTO 280 350 IF N=2 THEN 390 360 PRINT "HELLO, ONE PLAYER...YOU WILL BE CALLED "; 370 LET B9=1: PRINT "PLAYER ONE." 380 GOTO 430 390 PRINT "TWO OF YOU THEN...YOUR NAME NUMBER ONE "; 400 LET B9=1: PRINT "WILL BE ";: GOSUB 6500: PRINT "." 410 PRINT "AND YOU NUMBER TWO "; 420 LET C9=1: PRINT "WILL BE ";: GOSUB 6600: PRINT "." 430 B0=0 440 C0=0 450 REM ... DEF FNX(I)=INT(I*RND(0))+1 460 DIM S(52) 470 GOSUB 12000 475 PRINT "TO END THE GAME ENTER A BET OF 0 (ZERO)" 480 REM REENTER HERE 490 LET B1=0: LET C1=0: LET R=0: LET Q=0 500 FOR I=0 TO 5 510 LET B(I)=0: LET C(I)=0: LET D(I)=0 520 LET E(I)=0: LET F(I)=0 530 NEXT I 540 M=INT(4*RND(0))+1 550 IF N=2 THEN 2960 560 REM BET AND DEAL FOR ONE PLAYER 570 IF M=1 THEN 580 571 IF M=2 THEN 600 572 IF M=3 THEN 620 573 IF M=4 THEN 640 580 PRINT "HOW MUCH OF THAT BIG STACK ARE YOU BETTING, ";: GOSUB 6500 590 GOTO 650 600 PRINT "FOR HOW MUCH DO YOU FEEL LUCKY THIS TIME, ";: GOSUB 6500 610 GOTO 650 620 PRINT "NOW, ";: GOSUB 6500 625 PRINT " FOR WHAT STIPEND WILL YOU WAGER"; 630 GOTO 650 640 PRINT "IT'S TIME TO BET, ";: GOSUB 6500: PRINT " HOW MUCH?"; 650 INPUT " ---=>"B1 660 IF B1<=0 THEN 9000 670 IF B1<=500 THEN 700 680 PRINT "SORRY, ";: GOSUB 6500 685 PRINT " NOT MORE THAN $500.....TRY AGAIN"; 690 GOTO 650 700 P=S(T) 710 PRINT "YOUR FIRST CARD, ";: GOSUB 6500: PRINT " IS THE"; 720 GOSUB 13000 730 B(0)=Q 740 B(1)=P 750 IF Q<>1 THEN 770 760 B(4)=10 770 GOSUB 12500 780 P=S(T) 790 D(3)=P 800 R=1 810 GOSUB 13000 820 D(0)=Q 830 D(1)=P 840 IF Q<>1 THEN 860 850 D(4)=10 860 GOSUB 12500 870 P=S(T) 880 PRINT "AND YOUR SECOND CARD IS THE"; 890 GOSUB 13000 900 B(0)=B(0)+Q 910 B(2)=P 920 IF Q<>1 THEN 940 930 B(5)=10 940 GOSUB 12500 950 P=S(T) 960 PRINT "MY UP CARD IS THE"; 970 GOSUB 13000 980 D(0)=D(0)+Q 990 D(2)=P 1000 IF Q<>1 THEN 1020 1010 D(5)=10 1020 GOSUB 12500 1030 FOR I=0 TO 5 1040 G(I)=D(I) 1050 NEXT I 1060 GOSUB 6700 1070 IF H=0 THEN 1190 1080 PRINT "I HAVE ***BLACKJACK***" 1090 P=D(3) 1100 PRINT "MY HOLE CARD IS THE"; 1110 GOSUB 13000 1120 U9=B9 1130 U0=B0 1140 U1=B1 1150 GOSUB 8000 1160 B0=U0 1170 GOSUB 12000 1180 GOTO 480 1190 FOR I=0 TO 5 1200 G(I)=B(I) 1210 NEXT I 1220 GOSUB 6700 1230 IF H=0 THEN 1320 1240 PRINT "YOU HAVE ***BLACKJACK*** ";: GOSUB 6500: PRINT 1250 U9=B9 1260 U0=B0 1270 U1=B1*2 1280 GOSUB 8500 1290 B0=U0 1300 GOSUB 12000 1310 GOTO 480 1320 IF B(0)=10 THEN 1340 1330 IF B(0)<>11 THEN 1570 1340 PRINT "YOUR TOTAL IS ";B(0);" ";: GOSUB 6500: PRINT 1345 PRINT " DO YOU WANT ONE CARD FOR DOUBLES?"; 1350 INPUT " (1=Yes, 0=No) --=>"X9 1360 IF X9=0 THEN 1570 1370 P=S(T) 1380 PRINT "YOUR DOWN CARD IS THE "; 1390 GOSUB 13000 1400 B(0)=B(0)+Q 1410 IF B(0)<>11 THEN 1430 1420 B(0)=21 1430 B1=B1*2 1470 GOSUB 7000 1480 U9=B9 1490 U0=B0 1500 U1=B1 1510 IF B(0)>H THEN 1540 1520 GOSUB 8000 1530 GOTO 1550 1540 GOSUB 8500 1550 B0=U0 1560 GOTO 480 1570 IF B(1)<>B(2) THEN 2660 1580 IF B(1)=1 THEN 2660 1590 PRINT "DO YOU WANT TO SPLIT YOUR PAIR, ";: GOSUB 6500: PRINT "?" 1600 INPUT " (1=Yes, 0=No) --=>"X9 1610 IF X9=0 THEN 2660 1620 E(1)=B(2) 1630 B(0)=B(0)/2 1640 E(0)=B(0) 1650 P=S(T) 1660 PRINT "THE CARD FOR YOUR FIRST HAND IS THE "; 1670 GOSUB 13000 1680 B(0)=B(0)+Q 1690 B(2)=P 1700 IF Q<>1 THEN 1720 1710 B(5)=10 1720 GOSUB 12500 1730 P=S(T) 1740 PRINT "AND FOR YOUR SECOND HAND IS THE "; 1750 GOSUB 13000 1760 E(0)=E(0)+Q 1770 E(2)=P 1780 IF Q<>1 THEN 1800 1790 E(5)=10 1800 GOSUB 12500 1810 PRINT "PLAY ONE HAND AT A TIME, S.V.P." 1820 FOR I=0 TO 5 1830 G(I)=B(I) 1840 NEXT I 1850 GOSUB 6700 1860 IF H=0 THEN 1970 1870 PRINT "YOUR FIRST HAND IS A ***BLACKJACK*** "; 1875 GOSUB 6500: PRINT 1880 U9=B9 1890 U0=B0 1900 U1=B1*2 1910 GOSUB 8500 1920 B0=U0 1930 E1=B1 1940 B1=0 1950 GOSUB 12000 1960 GOTO 2060 1970 PRINT "O.K. ";: GOSUB 6500: PRINT " PLAY YOUR FIRST HAND" 1980 G9=B9 1990 G0=B0 2000 G1=B1 2010 GOSUB 6000 2020 B0=G0 2030 E1=B1 2040 B1=G1 2050 B2=H1 2060 FOR I=0 TO 5 2070 G(I)=E(I) 2080 NEXT I 2090 GOSUB 6700 2100 IF H=0 THEN 2200 2110 PRINT "YOUR SECOND HAND IS A ***BLACKJACK*** "; 2115 GOSUB 6500: PRINT 2120 U9=B9 2130 U0=B0 2140 U1=E1*2 2150 GOSUB 8500 2160 B0=U0 2170 GOSUB 12000 2180 E1=0 2190 IF B1=0 THEN 480 2200 PRINT "AND NOW, ";: GOSUB 6500 2205 PRINT " YOU CAN PLAY YOUR SECOND HAND" 2210 G9=B9 2220 B0=B0 2230 G1=E1 2240 GOSUB 6000 2250 B0=G0 2260 E1=G1 2270 E2=H1 2280 IF B1<>0 THEN 2340 2290 IF E1<>0 THEN 2340 2300 P=D(3) 2310 PRINT "MY HOLE CARD WAS THE "; 2320 GOSUB 13000 2330 GOTO 480 2340 GOSUB 7000 2350 IF H<>0 THEN 2420 2360 U9=B9 2370 U0=B0 2380 U1=B1+E1 2390 GOSUB 8500 2400 B0=U0 2410 GOTO 480 2420 IF B1=0 THEN 2530 2430 U9=B9 2440 U0=B0 2450 U1=B1 2460 IF B2>H THEN 2500 2470 GOSUB 8000 2480 B0=U0 2490 GOTO 2520 2500 GOSUB 8500 2510 B0=U0 2520 IF E1=0 THEN 480 2530 U9=B9 2540 U0=B0 2550 U1=E1 2560 IF E2>H THEN 2600 2570 GOSUB 8000 2580 B0=U0 2590 GOTO 480 2600 GOSUB 8500 2610 B0=U0 2620 GOTO 480 2660 PRINT "O.K. THEN ";: GOSUB 6500: PRINT " LET'S GO" 2670 G9=B9 2680 G0=B0 2690 G1=B1 2700 FOR I=0 TO 5 2710 G(I)=B(I) 2720 NEXT I 2730 GOSUB 6000 2740 B0=G0 2750 IF G1<>0 THEN 2800 2760 P=D(3) 2770 PRINT "MY HOLE CARD WAS THE "; 2780 GOSUB 13000 2790 GOTO 480 2800 B2=H1 2840 GOSUB 7000 2850 U9=B9 2860 U0=B0 2870 U1=B1 2880 IF H=0 THEN 2930 2890 IF B2>H THEN 2930 2900 GOSUB 8000 2910 B0=U0 2920 GOTO 480 2930 GOSUB 8500 2940 B0=U0 2950 GOTO 480 2960 REM ..... BET AND DEAL FOR TWO PLAYERS 2970 IF M=1 THEN 2980 2971 IF M=2 THEN 3030 2972 IF M=3 THEN 3080 2973 IF M=4 THEN 3130 2980 PRINT "HOW ABOUT IT, ";: GOSUB 6500: PRINT " IT'S YOUR BET"; 2990 INPUT " --=>"B1 3000 PRINT "AND HOW ABOUT YOU, ";: GOSUB 6600 3010 INPUT "? --=>"C1 3020 GOTO 3170 3030 PRINT "COME ON, ";: GOSUB 6500 3035 PRINT " LIVE IT UP.....IT'S YOUR BET"; 3040 INPUT " --=>"B1 3050 PRINT "YOU TOO, ";: GOSUB 6600: PRINT " HOW MUCH?"; 3060 INPUT " --=>"C1 3070 GOTO 3170 3080 PRINT "WELL, ";: GOSUB 6500 3085 PRINT " HOW MANY MONIES ARE YOU BETTING"; 3090 INPUT " --=>"B1 3100 PRINT "LET'S SEE YOU BEAT THAT ONE, ";: GOSUB 6600 3110 INPUT " --=>"C1 3120 GOTO 3170 3130 PRINT "YOU CAN'T WIN ANY $ IF YOU DON'T RISK ANY $, "; 3135 GOSUB 6500 3140 INPUT " --=>"B1 3150 PRINT "DON'T BE A PIKER, ";: GOSUB 6600: PRINT " YOUR BET"; 3160 INPUT " --=>"C1 3170 IF B1<=0 THEN 9000 3180 IF C1<=0 THEN 9000 3190 IF B1<=500 THEN 3230 3200 PRINT "TOO MUCH, ";: GOSUB 6500 3205 PRINT " $500 IS TOPS.....TRY AGAIN"; 3210 INPUT " --=>"B1 3220 GOTO 3170 3230 IF C1<=500 THEN 3270 3240 PRINT "$500 OR LESS PLEASE, ";: GOSUB 6600: PRINT " TRY AGAIN"; 3250 INPUT " --=>"C1 3260 GOTO 3180 3270 P=S(T) 3280 PRINT "YOUR FIRST CARD, ";: GOSUB 6500: PRINT " IS THE"; 3290 GOSUB 13000 3300 B(1)=P 3310 B(0)=Q 3320 IF Q<>1 THEN 3340 3330 B(4)=10 3340 GOSUB 12500 3350 P=S(T) 3360 PRINT "AND YOURS, ";: GOSUB 6600: PRINT " IS THE"; 3370 GOSUB 13000 3380 C(1)=P 3390 C(0)=Q 3400 IF Q<>1 THEN 3420 3410 C(4)=10 3420 GOSUB 12500 3430 R=1 3440 P=S(T) 3450 D(3)=P 3460 GOSUB 13000 3470 D(1)=P 3480 D(0)=Q 3490 IF Q<>1 THEN 3510 3500 D(4)=10 3510 GOSUB 12500 3520 P=S(T) 3530 PRINT "YOUR SECOND CARD, ";: GOSUB 6500: PRINT " IS THE"; 3540 GOSUB 13000 3550 B(2)=P 3560 B(0)=B(0)+Q 3570 IF Q<>1 THEN 3590 3580 B(5)=10 3590 GOSUB 12500 3600 P=S(T) 3610 PRINT "AND YOURS, ";: GOSUB 6600: PRINT " IS THE"; 3620 GOSUB 13000 3630 C(2)=P 3640 C(0)=C(0)+Q 3650 IF Q<>1 THEN 3670 3660 C(5)=10 3670 GOSUB 12500 3680 P=S(T) 3690 PRINT "MY UP CARD IS THE "; 3691 GOSUB 13000 3700 D(2)=P 3710 D(0)=D(0)+Q 3720 IF Q<>1 THEN 3740 3730 D(5)=10 3740 GOSUB 12500 3750 FOR I=0 TO 5 3760 G(I)=D(I) 3770 NEXT I 3780 GOSUB 6700 3790 IF H=0 THEN 3920 3800 U9=B9 3810 U0=B0 3820 U1=B1 3830 PRINT "I HAVE ***BLACKJACK***" 3840 GOSUB 8000 3850 B0=U0 3860 U9=C9 3870 U0=C0 3880 U1=C1 3890 GOSUB 8000 3900 C0=U0 3910 GOTO 480 3920 FOR I=0 TO 5 3930 G(I)=B(I) 3940 NEXT I 3950 GOSUB 6700 3960 IF H=0 THEN 4050 3970 PRINT "YOU HAVE ***BLACKJACK*** ";: GOSUB 6500: PRINT 3980 U9=B9 3990 U0=B0 4000 U1=B1*2 4010 GOSUB 8500 4020 B0=U0 4030 B1=0 4040 GOTO 4910 4050 IF B(0)=10 THEN 4070 4060 IF B(0)<>11 THEN 4180 4070 PRINT "YOUR TOTAL IS ";B(0);", ";: GOSUB 6500 4075 PRINT " DO YOU WANT ONE DOWN FOR DOUBLES?"; 4080 INPUT " (1=Yes, 0=No) --=>"X9 4090 IF X9=0 THEN 4180 4100 B1=B1*2 4110 PRINT "YOUR DOWN CARD IS THE"; 4120 P=S(T) 4130 GOSUB 13000 4140 B(0)=B(0)+Q 4150 IF B(0)<>11 THEN 4170 4160 B(0)=21 4170 GOTO 4910 4180 IF B(1)<>B(2) THEN 4840 4190 IF B(1)=1 THEN 4840 4200 PRINT "DO YOU WANT TO SPLIT YOUR PAIR, ";: GOSUB 6500: PRINT "?" 4210 INPUT " (1=Yes, 0=No) --=>"X9 4220 IF X9=0 THEN 4840 4230 E1=B1 4240 B(0)=B(0)/2 4250 E(0)=B(0) 4260 E(1)=B(2) 4270 B(2)=0 4280 PRINT "YOUR CARDS, ";: GOSUB 6500: PRINT " ARE THE"; 4290 P=S(T) 4300 GOSUB 13000 4310 B(0)=B(0)+Q 4320 B(2)=P 4330 IF Q<>1 THEN 4350 4340 B(5)=10 4350 GOSUB 12500 4360 PRINT "AND THE"; 4370 P=S(T) 4380 GOSUB 13000 4390 E(0)=E(0)+Q 4400 E(2)=P 4410 IF Q<>1 THEN 4430 4420 E(5)=10 4430 GOSUB 12500 4440 U9=B9 4450 FOR I=0 TO 5 4460 G(I)=B(I) 4470 NEXT I 4480 GOSUB 6700 4490 IF H=0 THEN 4570 4500 PRINT "YOUR FIRST HAND IS A ***BLACKJACK*** "; 4505 GOSUB 6500: PRINT 4510 U0=B0 4520 U1=B1*2 4530 GOSUB 8500 4540 B0=U0 4550 B1=0 4560 GOTO 4640 4570 PRINT "NOW PLAY YOUR FIRST HAND, ";: GOSUB 6500: PRINT 4580 G9=B9 4590 G0=B0 4600 G1=B1 4610 GOSUB 6000 4620 B0=G0 4630 B1=G1 4631 B(0)=H1 4640 FOR I=0 TO 5 4650 G(I)=E(I) 4660 NEXT I 4670 GOSUB 6700 4680 IF H=0 THEN 4760 4690 PRINT "YOUR SECOND HAND IS A ***BLACKJACK*** "; 4695 GOSUB 6500: PRINT 4700 U0=B0 4710 U1=E1*2 4720 GOSUB 8500 4730 B0=U0 4740 E1=0 4750 GOTO 4910 4760 PRINT "AND NOW FOR YOUR SECOND HAND, ";: GOSUB 6500: PRINT 4770 G9=B9 4780 G0=B0 4790 G1=E1 4800 GOSUB 6000 4810 B0=G0 4820 E1=G1 4821 E(0)=H1 4830 GOTO 4910 4840 PRINT "O.K. ";: GOSUB 6500: PRINT " PLAY YOUR HAND" 4850 G9=B9 4860 G0=B0 4870 G1=B1 4880 GOSUB 6000 4890 B0=G0 4900 B1=G1 4901 B(0)=H1 4910 U9=C9 4920 G9=C9 4930 FOR I=0 TO 5 4940 G(I)=C(I) 4950 NEXT I 4960 GOSUB 6700 4970 IF H=0 THEN 5050 4980 PRINT "YOU HAVE ***BLACKJACK*** ";: GOSUB 6600: PRINT 4990 U0=C0 5000 U1=C1*2 5010 GOSUB 8500 5020 C0=U0 5030 C1=0 5040 GOTO 5860 5050 IF C(0)=10 THEN 5070 5060 IF C(0)<>11 THEN 5180 5070 PRINT "YOU HAVE ";C(0);", ";: GOSUB 6600 5075 PRINT " DO YOU WANT ONE DOWN FOR DOUBLES?"; 5080 INPUT " (1=Yes, 0=No) --=>"X9 5090 IF X9=0 THEN 5180 5100 PRINT "YOUR DOWN CARD IS THE "; 5110 P=S(T) 5120 GOSUB 13000 5130 C(0)=C(0)+Q 5140 IF C(0)<>11 THEN 5160 5150 C(0)=21 5160 GOSUB 12500 5170 GOTO 5940 5180 IF C(1)<>C(2) THEN 5800 5190 IF C(1)=1 THEN 5800 5200 PRINT "DO YOU WANT TO SPLIT YOUR PAIR, ";: GOSUB 6600 5210 INPUT " (1=Yes, 0=No) --=>"X9 5220 IF X9=0 THEN 5800 5230 F1=C1 5240 C(0)=C(0)/2 5250 F(0)=C(0) 5260 F(1)=C(2) 5270 PRINT "YOUR CARDS, ";: GOSUB 6600: PRINT " ARE THE "; 5280 P=S(T) 5290 GOSUB 13000 5300 C(0)=C(0)+Q 5310 C(2)=P 5320 IF Q<>1 THEN 5340 5330 C(5)=10 5340 GOSUB 12500 5350 PRINT " AND THE "; 5360 P=S(T) 5370 GOSUB 13000 5380 F(0)=F(0)+Q 5390 F(2)=P 5400 IF Q<>1 THEN 5420 5410 F(5)=10 5420 GOSUB 12500 5430 FOR I=0 TO 5 5440 G(I)=C(I) 5450 NEXT I 5460 GOSUB 6700 5470 IF H=0 THEN 5550 5480 PRINT "***BLACKJACK ON YOUR FIRST HAND, ";: GOSUB 6600 5490 U0=C0 5500 U1=C1*2 5510 GOSUB 8500 5520 C0=U0 5530 C1=0 5540 GOTO 5610 5550 PRINT "PLAY YOUR FIRST HAND PLEASE, ";: GOSUB 6500: PRINT 5560 G0=C0 5570 G1=C1 5580 GOSUB 6000 5590 C0=G0 5600 C1=G1 5601 C(0)=H1 5610 FOR I=0 TO 5 5620 G(I)=F(I) 5630 NEXT I 5640 GOSUB 6700 5650 IF H=0 THEN 5730 5660 PRINT "YOUR SECOND HAND IS A ***BLACKJACK*** "; 5665 GOSUB 6500: PRINT 5670 U0=C0 5680 U1=F1*2 5690 GOSUB 8500 5700 C0=U0 5710 F1=0 5720 GOTO 5860 5730 PRINT "AND NOW PLAY YOUR SECOND HAND, ";: GOSUB 6500: PRINT 5740 G0=C0 5750 G1=F1 5760 GOSUB 6000 5770 C0=G0 5780 F1=G1 5781 F(0)=H1 5790 GOTO 5860 5800 PRINT "IT'S YOUR TURN TO PLAY, ";: GOSUB 6500: PRINT 5810 G0=C0 5820 G1=C1 5830 GOSUB 6000 5840 C0=G0 5850 C1=G1 5851 C(0)=H1 5860 IF B1<>0 THEN 5940 5870 IF C1<>0 THEN 5940 5880 IF E1<>0 THEN 5940 5890 IF F1<>0 THEN 5940 5900 PRINT "MY HOLE CARD WAS THE "; 5910 P=D(3) 5920 GOSUB 13000 5930 GOTO 480 5940 GOSUB 7000 5950 IF H<>0 THEN 10100 5960 U1=B1+E1 5970 IF U1=0 THEN 10030 5980 U9=B9 5990 GOTO 10000 6000 REM ======= PLAY THE HAND 6010 H=2 6020 H1=G(0) 6030 H3=1 6040 IF G(4)=10 THEN 6060 6050 IF G(5)<>10 THEN 6080 6060 H3=2 6070 H2=H1+10 6080 IF H3=2 THEN 6120 6090 PRINT "YOUR TOTAL IS ";H1;" WITH ";H;" CARDS" 6100 H4=H1 6110 GOTO 6140 6120 PRINT "YOU HAVE ";H1;" OR ";H2;" WITH ";H;" CARDS" 6130 H4=H2 6140 PRINT "DO YOU WANT A HIT, ";: GOSUB 6490 6150 INPUT " (1=Yes, 0=No) --=>"X9 6160 IF X9<>0 THEN 6190 6170 H1=H4 6180 RETURN 6190 PRINT " YOUR CARD IS THE "; 6200 P=S(T) 6210 GOSUB 13000 6220 H=H+1 6230 H1=H1+Q 6240 IF Q<>1 THEN 6270 6250 H2=H1+10 6260 H3=2 6270 IF H2<22 THEN 6290 6280 H3=1 6290 GOSUB 12500 6300 IF H1>21 THEN 6330 6310 IF H=5 THEN 6410 6320 IF H3=2 THEN 6070 6330 PRINT "YOU BUSTED, ";: GOSUB 6490: PRINT 6340 U9=G9 6350 U0=G0 6360 U1=G1 6370 GOSUB 8000 6380 G0=U0 6390 G1=0 6400 RETURN 6410 PRINT "YOU HAVE 5 UNDER WHICH PAYS DOUBLE" 6420 U9=G9 6430 U0=G0 6440 U1=G1*2 6450 GOSUB 8500 6460 G0=U0 6470 G1=0 6480 RETURN 6490 IF G9=2 THEN 6600 6500 PRINT "PLAYER ONE";: RETURN 6510 IF U9=1 THEN 6500 6600 PRINT "PLAYER TWO";: RETURN 6700 REM ======== CHECK FOR BLACKJACK 6710 H=0 6720 IF G(4)=10 THEN 6750 6730 IF G(5)=10 THEN 6750 6740 RETURN 6750 IF G(1)>10 THEN 6780 6760 IF G(2)>10 THEN 6780 6770 RETURN 6780 H=1 6790 RETURN 7000 REM THE DEALER PLAYS 7010 P=D(3) 7020 PRINT " MY HOLE CARD IS THE "; 7030 GOSUB 13000 7040 H1=D(0) 7050 H3=1 7060 IF D(4)=10 THEN 7080 7070 IF D(5)<>10 THEN 7100 7080 H2=H1+10 7090 H3=2 7100 IF H3=2 THEN 7140 7110 PRINT "MY TOTAL IS ";H1; 7120 H=H1 7130 GOTO 7160 7140 PRINT "I HAVE ";H1;" OR ";H2; 7150 H=H2 7160 IF H<>21 THEN 7190 7170 PRINT " AND I WIN" 7180 RETURN 7190 IF H<17 THEN 7220 7200 PRINT " AND I PAY ";H+1 7210 RETURN 7220 PRINT " AND I HIT WITH THE "; 7230 P=S(T) 7240 GOSUB 13000 7250 H1=H1+Q 7260 IF Q<>1 THEN 7290 7270 H3=2 7280 H2=H1+10 7290 GOSUB 12500 7300 IF H2<22 THEN 7320 7310 H3=1 7320 IF H1>21 THEN 7340 7330 IF H3=1 THEN 7110 7331 IF H3=2 THEN 7140 7340 PRINT "OOPS.....I BUSTED" 7350 H=0 7360 RETURN 8000 REM THE PLAYER LOSES 8010 M=INT(4*RND(0))+1 8020 U0=U0-U1 8030 IF M=1 THEN 8040 8031 IF M=2 THEN 8060 8032 IF M=3 THEN 8080 8033 IF M=4 THEN 8100 8040 PRINT "GEE, ";: GOSUB 6510: PRINT " YOU LOST $";U1 8050 GOTO 8110 8060 PRINT "THAT WASN'T TOO BAD, ";: GOSUB 6510 8065 PRINT " YOU LOST ONLY $";U1 8070 GOTO 8110 8080 PRINT "THAT WAS BAD LUCK, ";: GOSUB 6510: PRINT " YOU LOST $";U1 8090 GOTO 8110 8100 PRINT "YOU LOST $";U1;" ";: GOSUB 6510 8105 PRINT " BUT YOU'LL PROBABLY WIN NEXT TIME" 8110 M=INT(4*RND(0))+1 8120 IF U0>0 THEN 8160 8130 IF U0<0 THEN 8250 8140 PRINT "AT LEAST YOU'RE NO WORSE THAN EVEN" 8150 RETURN 8160 IF M=1 THEN 8170 8161 IF M=2 THEN 8190 8162 IF M=3 THEN 8210 8163 IF M=4 THEN 8230 8170 PRINT "YOU'RE STILL WINNING $";U0 8180 RETURN 8190 PRINT "HEY.....DON'T CRY.....YOU'RE STILL AHEAD $";U0 8200 RETURN 8210 PRINT "I WISH I HAD YOUR PROBLEMS.....YOU ARE WINNING $";U0 8220 RETURN 8230 PRINT "YOU'RE STILL AHEAD $";U0;" GO ON.....SPLURGE" 8240 RETURN 8250 IF M=1 THEN 8260 8251 IF M=2 THEN 8280 8252 IF M=3 THEN 8300 8253 IF M=4 THEN 8320 8260 PRINT "YOU ARE ONLY LOSING $";-U0;" THAT'S NOT SO BAD" 8270 RETURN 8280 PRINT "DETAILS.....YOU'RE ONLY BEHIND $";-U0 8290 RETURN 8300 PRINT "YOU'RE NOT VERY MUCH BEHIND.....ONLY $";-U0 8310 RETURN 8320 PRINT "I'M NOT GETTING RICH ON THIS....YOU'RE LOSING ONLY $";-U0 8330 RETURN 8500 REM THE PLAYER WINS 8510 M=INT(4*RND(0))+1 8520 U0=U0+U1 8530 IF M=1 THEN 8540 8531 IF M=2 THEN 8560 8532 IF M=3 THEN 8580 8533 IF M=4 THEN 8600 8540 PRINT "WOW, ";: GOSUB 6510 8545 PRINT " YOU WON $";U1;" ARE YOU TRYING TO BREAK THE BANK" 8550 GOTO 8610 8560 PRINT "THIS HURTS ME, ";: GOSUB 6510: PRINT " BUT YOU WON $";U1 8570 GOTO 8610 8580 PRINT "YOU WON $";U1;", ";: GOSUB 6510: PRINT " .....JUST LUCKY" 8590 GOTO 8610 8600 PRINT "YOU WON $";U1;", ";: GOSUB 6510 8605 PRINT " WAIT 'TILL NEXT TIME" 8610 M=INT(4*RND(0))+1 8620 IF U0>0 THEN 8660 8630 IF U0<0 THEN 8750 8640 PRINT "VERY GOOD, ";: GOSUB 6510 8645 PRINT " YOU'RE BACK UP TO EVEN" 8650 RETURN 8660 IF M=1 THEN 8670 8661 IF M=2 THEN 8690 8662 IF M=3 THEN 8710 8663 IF M=4 THEN 8730 8670 PRINT "EVEN FURTHER AHEAD, YOU NOW HAVE $";U0 8680 RETURN 8690 PRINT "KEEP ON LIKE THIS AND YOU'LL BREAK ME. YOU HAVE $";U0 8700 RETURN 8710 PRINT "KEEP IT UP, ";: GOSUB 6490 8715 PRINT " YOU ARE NOW WINNING $";U0 8720 RETURN 8730 PRINT "GROANNN.....NOW YOU'RE AHEAD $";U0 8740 RETURN 8750 IF M=1 THEN 8760 8751 IF M=2 THEN 8780 8752 IF M=3 THEN 8800 8753 IF M=4 THEN 8820 8760 PRINT "YOU'RE COMING BACK.....NOW YOU ARE ONLY LOSING $";-U0 8770 RETURN 8780 PRINT "WHAT ARE YOU TRYING TO DO.....WIN?" 8785 PRINT ".....NOW YOU'RE LOSING $";-U0 8790 RETURN 8800 PRINT "KEEP TRYING.....YOU'RE ONLY BEHIND $";-U0 8810 RETURN 8820 PRINT "NEXT TIME MIGHT BE FATAL..." 8825 PRINT "...YOU BETTER QUIT WHILE YOU'RE ONLY"; 8830 PRINT " LOSING $";-U0 8840 RETURN 9000 REM THE END 9010 M=INT(3*RND(0))+1 9020 IF B0>0 THEN 9060 9030 IF B0<0 THEN 9130 9040 PRINT "QUITTING WHILE YOU'RE EVEN, ";: GOSUB 6500 9045 PRINT " THAT'S NOT FAIR" 9050 GOTO 9190 9060 IF M=1 THEN 9070 9061 IF M=2 THEN 9090 9062 IF M=3 THEN 9110 9070 PRINT "YOU WON $";B0;" BUT REALLY, ";: GOSUB 6500 9075 PRINT " YOU SHOULDN'T QUIT NOW" 9080 GOTO 9190 9090 PRINT "ONLY $";B0;" AHEAD, ";: GOSUB 6500 9095 PRINT " COME BACK AND TRY AGAIN" 9100 GOTO 9190 9110 PRINT "IT HURTS, ";: GOSUB 6500: PRINT " BUT YOU WON $";B0 9120 GOTO 9190 9130 IF M=1 THEN 9140 9131 IF M=2 THEN 9160 9132 IF M=3 THEN 9180 9140 GOSUB 6500 9145 PRINT ", YOU LOST $";-B0;" AND I NEED EVERY BIT OF IT" 9150 GOTO 9190 9160 PRINT "I HOPE YOU CAN PLAY AGAIN, ";: GOSUB 6500 9165 PRINT " YOU LOST $";-B0 9170 GOTO 9190 9180 PRINT "I'M RICHER BY $";-B0;", ";: GOSUB 6500 9185 PRINT " .....THANKS" 9190 IF M=1 THEN 9370 9200 IF C0>0 THEN 9240 9210 IF C0<0 THEN 9310 9220 PRINT "ONLY LOSERS SHOULD QUIT, ";: GOSUB 6600 9225 PRINT " YOU'RE EVEN" 9230 GOTO 9370 9240 IF M=1 THEN 9250 9241 IF M=2 THEN 9270 9242 IF M=3 THEN 9290 9250 PRINT "HOLY COW, ";: GOSUB 6600: PRINT " I JUST LOST $";C0 9260 GOTO 9370 9270 PRINT "GROANNNN.....YOU'VE WON $";C0;", ";: GOSUB 6600: PRINT 9280 GOTO 9370 9290 PRINT "WHAT DID YOU DO TO ME, ";: GOSUB 6600 9295 PRINT " YOU WON $";C0 9300 GOTO 9370 9310 IF M=1 THEN 9320 9311 IF M=2 THEN 9340 9312 IF M=3 THEN 9360 9320 PRINT "THAT'S A RELIEF, ";: GOSUB 6600: PRINT " YOU LOST $";-C0 9330 GOTO 9370 9340 PRINT "YOU COULD'VE LOST MORE, ";: GOSUB 6600 9345 PRINT " THIS WAY YOU LOST ONLY $";-C0 9350 GOTO 9370 9360 PRINT "ANOTHER GAME, ";: GOSUB 6600 9365 PRINT " YOU'VE ONLY LOST $";-C0 9370 PRINT 9380 PRINT "THANKS FOR PLAYING BLACKJACK.........." 9390 PRINT "YOUR DEALER HAS BEEN MINNESOTA FATS." 9400 GOTO 13540 10000 U0=B0 10010 GOSUB 8500 10020 B0=U0 10030 U1=C1+F1 10040 IF U1=0 THEN 480 10050 U9=C9 10060 U0=C0 10070 GOSUB 8500 10080 C0=U0 10090 GOTO 480 10100 IF H<21 THEN 10240 10110 U1=B1+E1 10120 IF U1=0 THEN 10170 10130 U9=B9 10140 U0=B0 10150 GOSUB 8000 10160 B0=U0 10170 U1=C1+F1 10180 IF U1=0 THEN 480 10190 U9=C9 10200 U0=C0 10210 GOSUB 8000 10220 C0=U0 10230 GOTO 480 10240 U9=B9 10250 U1=B1 10260 IF U1=0 THEN 10350 10270 IF B(0)>H THEN 10320 10280 U0=B0 10290 GOSUB 8000 10300 B0=U0 10310 GOTO 10350 10320 U0=B0 10330 GOSUB 8500 10340 B0=U0 10350 U1=E1 10360 IF U1=0 THEN 10450 10370 IF E(0)>H THEN 10420 10380 U0=B0 10390 GOSUB 8000 10400 B0=U0 10410 GOTO 10450 10420 U0=B0 10430 GOSUB 8500 10440 B0=U0 10450 U9=C9 10460 U1=C1 10470 IF U1=0 THEN 10560 10480 IF C(0)>H THEN 10530 10490 U0=C0 10500 GOSUB 8000 10510 C0=U0 10520 GOTO 10560 10530 U0=C0 10540 GOSUB 8500 10550 C0=U0 10560 U1=F1 10570 IF U1=0 THEN 480 10580 IF F(0)>H THEN 10630 10590 U0=C0 10600 GOSUB 8000 10610 C0=U0 10620 GOTO 480 10630 U0=C0 10640 GOSUB 8500 10650 C0=U0 10660 GOTO 480 11500 REM *********** 12000 REM THE SHUFFLE 12010 T=1 12020 FOR I=1 TO 52 12030 S(I)=I 12040 NEXT I 12050 FOR I=52 TO 1 STEP -1 12060 X=INT(I*RND(0))+1 12070 J=53-I 12080 K=52-I+X 12090 L=S(J) 12100 S(J)=S(K) 12110 S(K)=L 12120 NEXT I 12130 PRINT 12131 PRINT "I JUST SHUFFLED" 12132 PRINT 12140 RETURN 12500 REM CHECK FOR RESHUFFLING 12510 IF T<=50 THEN 12540 12520 GOSUB 12000 12530 T=0 12540 T=T+1 12550 RETURN 13000 REM DEAL A CARD 13010 O=0 13020 O=O+1 13030 IF P<14 THEN 13060 13040 P=P-13 13050 GOTO 13020 13060 Q=P 13070 IF Q<11 THEN 13090 13080 Q=10 13090 IF R=0 THEN 13120 13100 R=0 13110 RETURN 13120 V=P 13130 IF V<6 THEN 13190 13140 V=V-5 13150 IF V<6 THEN 13180 13160 V=V-5 13170 IF V=1 THEN 13400 13171 IF V=2 THEN 13420 13172 IF V=3 THEN 13440 13180 IF V=1 THEN 13300 13181 IF V=2 THEN 13320 13182 IF V=3 THEN 13340 13183 IF V=4 THEN 13360 13184 IF V=5 THEN 13380 13190 IF V=1 THEN 13200 13191 IF V=2 THEN 13220 13192 IF V=3 THEN 13240 13193 IF V=4 THEN 13260 13194 IF V=5 THEN 13280 13200 PRINT " ACE"; 13210 GOTO 13450 13220 PRINT " TWO"; 13230 GOTO 13450 13240 PRINT " THREE"; 13250 GOTO 13450 13260 PRINT " FOUR"; 13270 GOTO 13450 13280 PRINT " FIVE"; 13290 GOTO 13450 13300 PRINT " SIX"; 13310 GOTO 13450 13320 PRINT " SEVEN"; 13330 GOTO 13450 13340 PRINT " EIGHT"; 13350 GOTO 13450 13360 PRINT " NINE"; 13370 GOTO 13450 13380 PRINT " TEN"; 13390 GOTO 13450 13400 PRINT " JACK"; 13410 GOTO 13450 13420 PRINT " QUEEN"; 13430 GOTO 13450 13440 PRINT " KING"; 13450 IF O=2 THEN 13480 13450 IF O=3 THEN 13500 13450 IF O=4 THEN 13520 13460 PRINT " of SPDS" 13470 RETURN 13480 PRINT " of HRTS" 13490 RETURN 13500 PRINT " of DMDS" 13510 RETURN 13520 PRINT " of CLBS" 13530 RETURN 13540 END