Twenty One

Date: 198x
Type: Program
Platform(s): TS 2068
Tags: Card Game

Twenty One is a full-featured Blackjack (21) card game that simulates a single-deck casino table with betting, insurance, doubling down, and push handling. The deck is represented as a 52-element array C() shuffled using a Fisher-Yates-style random swap, and card suits are tracked via a 13-element array P() that cycles through four suit symbols (character codes 145–148) so each card appears exactly four times per deck. Cards are rendered as 7-row tall graphical tiles using block graphics and CHR$ codes, with face cards (J, Q, K) drawn using custom block-graphic art. Ace handling uses a dedicated subroutine at line 7800 that checks all tracked card variables and reduces an 11-valued ace to 1 if the hand exceeds 21. The game includes a “Game Over” screen at line 9100 drawn entirely with PLOT/DRAW/CIRCLE commands depicting a Greyhound bus terminal, triggered when the player’s bankroll reaches zero.


Program Structure

The program is organized into clearly labeled subroutine blocks separated by REM statements. Execution begins at line 6 with three POKE calls to set system parameters, then proceeds through initialization (9900), rules display (9700), board drawing (3000), deck shuffle (9000), and into the main game loop starting at line 5001. The overall flow is:

  1. Line 6–7: System POKEs (screen settings)
  2. Lines 9900–9920: Initialize variables, arrays, and starting bank of $1000
  3. Lines 9700–9850: Optional rules display
  4. Lines 3000–3018: Draw static board elements
  5. Lines 9000–9022: Deck shuffle routine
  6. Lines 5000–5999: Main deal loop (player cards, dealer first card)
  7. Lines 6800–6834: Hit/Stand/Double decision
  8. Lines 7000–7414: Double-down section
  9. Lines 5500–5560: Dealer draw section
  10. Lines 5800–5814: Win/loss/push determination
  11. Lines 1000–1806: Outcome handlers (player wins, dealer wins, push, busts)
  12. Lines 6000–6082: Insurance side-bet section
  13. Lines 7800–7824: Ace value adjustment subroutine
  14. Lines 8800–8949: Card printing dispatcher
  15. Lines 8820–8949: Card setup subroutine (suit/color assignment)
  16. Lines 9100–9499: Bank-empty “Greyhound terminal” game-over screen
  17. Lines 3019–3034: Card back drawing subroutine

Deck and Suit Representation

The 52-element array C() is initialized with values 1–52 and then shuffled by swapping each element with a randomly chosen position (lines 9002–9004). Card values are then mapped to 1–13 by subtracting multiples of 13 based on which quarter of the deck the card falls in (lines 9006–9011). The 13-element array P() tracks how many times each card denomination has appeared; since each denomination appears four times in a deck, the index P(I) cycles 0–3 to select one of four suits, represented by CHR$ codes 145–148 (UDG characters used as suit symbols). This approach cleanly ensures correct suit distribution across a full deck.

Note that line 9008 (IF C(I)<14 THEN LET C(I)=C(I)) is a no-op — it performs no transformation. This appears to be a placeholder or copy-paste artifact.

Card Rendering System

Card display is handled by a two-subroutine system. GO SUB 8820 sets up rendering variables (V1 for the rank character, K for ink color, S1 for the suit symbol CHR$ code, and A1A15 for the pip layout array). GO SUB 8800 then performs the actual PRINT AT commands to draw the 7-row card at screen position (X, Y). Each card is 5 columns wide and 7 rows tall.

Face cards receive special treatment:

  • Jack (Q=11, V1=74 = ‘J’): Drawn with vertical bar block graphics to suggest a figure
  • Queen (Q=12, V1=81 = ‘Q’): Drawn with a different block-graphic figure pattern, including a tail on the Q
  • King (Q=13, V1=75 = ‘K’): Drawn using OVER 1 mode to overlay a crown shape using block graphics
  • Ace (Q=1, V1=65 = ‘A’): Rendered with a centered single suit symbol
  • 10 uses V1=144, a UDG character, since two digits would not fit in the single rank-character position

Card backs (subroutine at line 3020) are drawn with a border of box-drawing block graphics forming a simple frame.

Ace Handling

The subroutine at line 7800 implements soft/hard ace conversion. Each tracked card variable (PC1PC11 for player, DC1DC6 for dealer) is checked: if it holds the value 11 (ace counted high) and the corresponding total exceeds 21, the variable is reduced to 1 and the total is decremented by 10. Only one ace is converted per call, so the subroutine must be called again after each new card to handle multiple aces. This correctly mirrors standard Blackjack soft-hand rules.

Game Features

  • Insurance: Offered when the dealer’s face-up card is an ace (line 6000). The player may bet up to half their current bet. If the dealer has Blackjack, the insurance bet pays 2:1 (lines 6046–6048 add 3× the insurance bet back, netting 2:1 since 1× was already deducted).
  • Double Down: Available when the player’s first two cards total 10 or 11 (D=1 flag, line 5012). The player doubles their bet, receives exactly one face-down card (drawn via GO SUB 3020), and then the dealer plays out normally.
  • Blackjack payout: Line 5315 computes G = BT + INT(BT * 1.5), returning the bet plus 1.5× (i.e., 3:2 payout), then adds G back to the bank.
  • Reshuffle trigger: At line 3102, if L >= 40, the shuffle subroutine is called automatically, simulating a mid-shoe reshuffle.
  • $50 table limit and $1000 starting bankroll are enforced at lines 3103–3106.

Input Handling

User decisions (Hit/Stand, Insurance, Double) all use INPUT LINE Z$ followed by character checks on Z$(1). This avoids the keyword-entry requirement of plain INPUT and accepts any string starting with the relevant letter. Empty input is explicitly re-prompted (e.g., lines 6003, 6804, 6829).

Game-Over Screen

When the player’s bank reaches zero (line 3101 checks BK=0), the program branches to line 9100, which clears the screen, fills it with a red PAPER background row by row with a PAUSE 5 wipe, then uses PLOT/DRAW/CIRCLE to draw a stylized Greyhound bus station graphic — including a bus outline, windows, wheels, and signs reading “GRAYHOUND”, “LAS VEGAS”, and “TICKET COUNTER”. The program then halts at line 9499 with STOP.

Notable Bugs and Anomalies

  • Line 5060–5066: The 7th player card section has a REM but no dealing code — after the REM, execution falls directly to line 5066 which only calls GO SUB 7800 and prints the total, without actually drawing a card. This means a 7th player card is never dealt.
  • Line 6800 is referenced by several GO SUB 6800 calls, but the subroutine actually starts at line 6801. Since BASIC searches for the nearest line at or after the requested number, this works correctly as the line 6800 does not exist and execution falls to 6801 — a standard technique.
  • Line 8940 is absent: after the Queen handler (lines 8930–8939), execution falls directly to line 8941 which is the King handler, with no guard IF Q<>13 check. This means the King handler always runs when Q=13, which is correct, but there is no branch for any value above 12 that isn’t 13 — this is harmless given the deck only contains values 1–13.
  • Line 6038 contains PRINT AT 7,0,,, (missing semicolon after AT 7,0), which is likely a typo for PRINT AT 7,0;,,, and may cause a syntax or runtime error.
  • The double-down subroutine at line 7300 increments BT inside the FOR I=1 TO BT loop, which changes the loop limit mid-execution. In Sinclair BASIC the loop limit is evaluated once at the start, so the doubling of BT inside the loop does not affect the loop count — but results in BT being approximately doubled by the loop end, which is the intended effect.
  • Line 7412 does LET BT = INT(BT/2) before the push handling at line 7414 to recover the pre-double bet amount, but this is only reached in the double-down path and may leave BT at an odd value if the original bet was odd.

Variable Summary

VariablePurpose
C(52)Shuffled deck array (card values 1–13)
P(13)Per-denomination suit usage counter (0–3)
LCurrent deck position (card index)
BKPlayer’s bank total
BTCurrent bet amount
PTPlayer’s hand total
DTDealer’s hand total
PC1–PC11Individual player card values (for ace adjustment)
DC1–DC6Individual dealer card values (for ace adjustment)
DDouble-down eligible flag (1=yes)
ADealer’s face-down card value (for reveal)
V1CHR$ code of rank character for card display
S1CHR$ code of suit symbol
KINK color for card (0=black, 2=red)
X, YScreen row/column for card placement
QCard value passed to card-setup subroutine

Content

Appears On

Related Products

Related Articles

Related Content

Image Gallery

Source Code

    6 REM 00
    7 POKE 23658,8:POKE 23609,100:POKE 23617,236
   20 GO SUB 9900:REM INIT.
   30 GO SUB 9700:REM RULES
   40 GO SUB 3000:REM DRAW BOARD
   60 GO SUB 9000:REM SHUFFEL
   70 GO TO 5001:REM MAIN PROGRAM
 1000 REM \{20}\{1}PLAYER\{20}\{0} \{20}\{1}WINS\{20}\{0}
 1002 PRINT AT 8,11; PAPER 2; INK 7; FLASH 1;" YOU WIN ! "
 1004 PAUSE 120:FOR I=1 TO BT:LET BK=BK+2:PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":BEEP .01,0:NEXT I
 1006 PAUSE 120:GO TO 5000
 1200 REM \{20}\{1}DEALER\{20}\{0} \{20}\{1}WINS\{20}\{0}
 1202 PRINT AT 8,8; PAPER 1; INK 7; FLASH 1;" THE HOUSE WINS! "
 1204 PRINT AT 12,16;"  ":PAUSE 300:GO TO 5000
 1400 REM \{20}\{1}\{20}\{0}     \{20}\{1}PUSH\{20}\{0}
 1402 LET Q=A:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800
 1404 LET A=0:LET PC1=0:LET PC2=0:LET PC3=0:LET PC4=0:LET PC5=0:LET PC6=0:LET PC7=0:LET PC8=0:LET PC9=0:LET PC10=0:LET PC11=0:LET DC1=0:LET DC2=0:LET DC3=0:LET DC4=0:LET DC5=0:LET DC6=0
 1405 PRINT AT 0,0;,,,,,,,,,,,,,,,,,,; AT 13,0;,,,,,,,,,,,,,,,,,,
 1406 PRINT AT 8,11; PAPER 0; INK 7; FLASH 1;" WE PUSH ! "
 1410 PAUSE 120:PRINT AT 8,0;,,:LET L=L+1:GO TO 5002
 1600 REM \{20}\{1}PLAYER\{20}\{0} \{20}\{1}BUSTS\{20}\{0}
 1602 PRINT AT 8,11; PAPER 1; INK 7; FLASH 1;" YOU BUST ! "
 1604 LET Q=A:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800
 1606 PRINT AT 12,16;"  ":PAUSE 300:GO TO 5000
 1800 REM \{20}\{1}DEALER\{20}\{0} \{20}\{1}BUSTS\{20}\{0}
 1802 PRINT AT 8,7; PAPER 2; INK 7; FLASH 1;" THE HOUSE BUSTS ! "
 1804 PAUSE 120:FOR I=1 TO BT:LET BK=BK+2:PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":BEEP .01,0:NEXT I
 1806 PAUSE 120:GO TO 5000
 3000 REM \{20}\{1}DRAW BOARD\{20}\{0}
 3001 PRINT AT 12,4;"THE BET IS"
 3006 PRINT AT 10,4; PAPER 7; INK 1;"   INSURANCE PAYS  2/1   "
 3010 \{20}\{0} PRINT INK 2; PAPER 7; AT 9,4;"B  L  A  C  K  J  A  C  K"
 3012 PRINT AT 11,4; PAPER 7; INK 2;"YOUR BANK TOTAL IS "; INK 0;"$ ";BK
 3018 RETURN 
 3019 REM \{20}\{1}CARD BACK\{20}\{0}
 3020 PRINT AT X,Y; PAPER 7; INK 1;"\k\l\l\l\m"
 3022 PRINT AT X,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+1,Y;"\k\l\l\l\m"
 3024 PRINT AT X+1,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+2,Y;"\k\l\l\l\m"
 3026 PRINT AT X+2,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+3,Y;"\k\l\l\l\m"
 3028 PRINT AT X+3,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+4,Y;"\k\l\l\l\m"
 3030 PRINT AT X+4,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+5,Y;"\k\l\l\l\m"
 3032 PRINT AT X+5,Y; PAPER 7; INK 1;"\j\f\f\f\n"; AT X+6,Y;"\k\l\l\l\m"; AT X,Y;"\g\h\h\h\i"
 3034 BEEP .25,25:RETURN 
 3100 REM ****TAKE BETS****
 3101 IF BK=0 THEN GO TO 9100
 3102 PRINT AT 12,16;,; AT 0,0;,,,,,,,,,,,,,,,,,,; AT 14,0;,,,,,,,,,,,,,,,,; AT 11,25; PAPER 7; INK 0;BK:IF L >=40 THEN GO SUB 9000
 3103 PRINT AT 2,5;"PLACE YOUR BET PLAESE"; AT 3,10;"$50 LIMIT":INPUT BT
 3104 IF BT>50 THEN PRINT AT 5,5;"I SAID THE LIMIT IS $50":GO TO 3103
 3106 IF BT>BK THEN PRINT AT 5,5,,; AT 5,5;" YOU AIN'T GOT THAT MUCH DORK!":GO TO 3103
 3112 FOR I=1 TO BT:LET BK=BK-1:BEEP .01,0:
 3114 PRINT AT 12,14;" $";I
 3120 PRINT AT 11,25; PAPER 7; INK 0;BK; PAPER 8;" "
 3122 NEXT I
 3124 FOR I=2 TO 6:PRINT AT I,0;,,:NEXT I
 3126 LET PC1=0:LET PC2=0:LET PC3=0:LET PC4=0:LET PC5=0:LET PC6=0:LET PC7=0:LET PC8=0:LET PC9=0:LET PC10=0:LET PC11=0:LET A=0:LET DC1=0:LET DC2=0:LET DC3=0:LET DC4=0:LET DC5=0:LET DC6=0:LET D=0:LET SP=0:LET PT=0:LET DT=0
 3128 PAUSE 30:RETURN 
 5000 REM \{20}\{1}PLAYER 1ST CARD\{20}\{0}
 5001 GO SUB 3100:LET L=L+1
 5002 LET X=15:LET Y=11:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=C(L):LET PC1=C(L)
 5003 REM \{20}\{1}DEALER 1ST CARD\{20}\{0}
 5004 LET L=L+1:LET A=C(L):LET X=0:LET Y=11:GO SUB 3020
 5005 IF C(L)>10 THEN LET C(L)=10
 5006 IF C(L)=1 THEN LET C(L)=11
 5007 LET DC1=C(L):LET DT=C(L)
 5008 REM \{20}\{1}PLAYER 2ND CARD\{20}\{0}
 5009 LET L=L+1
 5010 LET X=15:LET Y=17:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=PT+C(L):LET PC2=C(L):GO SUB 7800
 5011 PRINT AT 14,11;"YOU HAVE ";PT
 5012 IF PT=10 OR PT=11 THEN LET D=1
 5013 REM \{20}\{1}DEALER 2ND CARD\{20}\{0}
 5014 LET L=L+1:\{20}\{1}\{20}\{1}\{20}\{0} LET X=0:LET Y=17:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET DT=DT+C(L):LET DC2=C(L):GO SUB 7800
 5015 IF DC2=11 THEN GO TO 6000
 5016 IF PT=21 AND DT <>21 THEN GO TO 5300
 5017 IF DT=21 AND PT=21 THEN GO TO 1400
 5018 IF DT=21 THEN GO TO 6010
 5020 GO SUB 6800
 5021 REM \{20}\{1}PLAYER 3ED CARD\{20}\{0}
 5022 LET L=L+1
 5024 LET X=15:LET Y=23:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=PT+C(L):LET PC3=C(L)
 5026 GO SUB 7800:PRINT AT 14,20;PT
 5027 IF PT>21 THEN GO TO 1600
 5028 GO SUB 6800
 5030 REM \{20}\{1}PLAYER 4TH CARD\{20}\{0}
 5032 LET L=L+1
 5034 LET X=15:LET Y=5:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=PT+C(L):LET PC4=C(L)
 5036 GO SUB 7800:PRINT AT 14,20;PT
 5037 IF PT>21 THEN GO TO 1600
 5038 GO SUB 6800
 5040 REM \{20}\{1}PLAYER 5TH CARD\{20}\{0}
 5044 LET L=L+1:LET X=15:LET Y=0:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=PT+C(L):LET PC5=C(L)
 5046 GO SUB 7800:PRINT AT 14,20;PT
 5047 IF PT>21 THEN GO TO 1600
 5048 GO SUB 6800
 5050 REM \{20}\{1}PLAYER 6TH CARD\{20}\{0}
 5054 LET L=L+1:LET X=15:LET Y=23:LET Q=C(L):GO SUB 8820:GO SUB 8800:LET PT=PT+C(L):LET PC6=C(L)
 5056 GO SUB 7800:PRINT AT 14,20;PT
 5057 IF PT>21 THEN GO TO 1600
 5058 GO SUB 6800
 5060 REM \{20}\{1}PLAYER 7TH CARD\{20}\{0}
 5066 GO SUB 7800:PRINT AT 14,20;PT
 5300 REM \{20}\{1}PLAYER ONLY BLACKJACK\{0}\{20}\{0}
 5310 PRINT AT 17,11; PAPER 6; INK 2; FLASH 1;"BLACKJACK"
 5311 PRINT AT 19,13; PAPER 6; INK 2; FLASH 1;"BLACKJACK"
 5312 PAUSE 120
 5314 LET Q=DC1:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800:PAUSE 120
 5315 LET G=BT+ INT (BT*1.5)
 5318 FOR I=1 TO G:LET BK=BK+1:BEEP .01,0:PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":NEXT I
 5320 PAUSE 120:PRINT AT 12,16;"  ":PRINT AT 13,19;" ":GO TO 5000
 5500 REM \{20}\{1}DEALER SECTION NORMAL\{20}\{0}
 5502 LET Q=A:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800
 5504 PRINT AT 7,12; PAPER 1; INK 7;"I HAVE ";DT:PAUSE 120
 5508 IF DT<17 THEN GO TO 5512
 5510 GO TO 5800
 5511 REM \{20}\{1}DEALER 3ED CARD\{20}\{0}\{20}\{0}
 5512 LET L=L+1:LET Q=C(L):LET X=0:LET Y=23:GO SUB 8820:GO SUB 8800:LET DC3=C(L):LET DT=DT+C(L)
 5518 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 5520 IF DT>21 THEN GO TO 1800
 5522 IF DT<17 THEN GO TO 5530
 5524 GO TO 5800
 5526 REM \{20}\{1}DEALER 4TH CARD\{20}\{0}\{20}\{0}
 5530 LET L=L+1:LET Q=C(L):LET X=0:LET Y=5:GO SUB 8820:GO SUB 8800:LET DC4=C(L):LET DT=DT+C(L)
 5532 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 5534 IF DT>21 THEN GO TO 1800
 5536 IF DT<17 THEN GO TO 5542
 5538 GO TO 5800
 5540 REM \{20}\{1}DEALER 5TH CARD\{20}\{0}\{20}\{0}
 5542 LET L=L+1:LET Q=C(L):LET X=0:LET Y=26:GO SUB 8820:GO SUB 8800:LET DC5=C(L):LET DT=DT+C(L)
 5544 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 5546 IF DT>21 THEN GO TO 1800
 5548 IF DT<17 THEN GO TO 5554
 5550 GO TO 5800
 5552 REM \{20}\{1}DEALER 6TH CARD\{20}\{0}\{20}\{0}
 5554 LET L=L+1:LET Q=C(L):LET X=0:LET Y=0:GO SUB 8820:GO SUB 8800:LET DC6=C(L):LET DT=DT+C(L)
 5556 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 5558 IF DT>21 THEN GO TO 1800
 5560 GO TO 5800
 5800 REM \{20}\{1}NON BUST DETERMINATION\{20}\{0}
 5810 IF DT<PT THEN GO TO 1000
 5812 IF DT>PT THEN GO TO 1200
 5814 IF DT=PT THEN GO TO 1404
 5999 REM \{20}\{1}INSURENCE\{20}\{0}
 6000 PRINT AT 7,11; INVERSE 1; FLASH 1; INK 2; PAPER 7;"INSURENCE ?"
 6002 INPUT  LINE Z$
 6003 IF Z$="" THEN GO TO 6002
 6004 IF Z$(1) <>"Y" AND Z$(1) <>"N" THEN GO TO 6000
 6006 IF Z$(1)="Y" THEN GO TO 6020
 6008 IF DC1 <>10 THEN PRINT AT 7,0;,,,,:GO TO 5016
 6010 LET X=0:LET Y=11:LET Q=A:GO SUB 8820:GO SUB 8800:
 6012 PRINT AT 7,0;,,,,; AT 7,12; FLASH 1; PAPER 7; INK 0; INVERSE 1;"BLACKJACK"
 6013 IF PT=21 THEN PAUSE 120:GO TO 6072
 6014 PRINT AT 12,16;"  "
 6018 PAUSE 120:GO TO 5000
 6020 PRINT AT 7,7;"YOU CAN BET UP TO "; INT (BT/2)
 6022 INPUT IB
 6024 IF IB> INT (BT/2) THEN GO TO 6020
 6026 PRINT AT 7,0;,,,,:PRINT AT 7,5;"YOUR INSURENCE BET IS ";IB; AT 8,10;"I THANK YOU"
 6027 PAUSE 120
 6028 FOR I=IB TO 1 STEP -1:LET BK=BK-1
 6030 PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":BEEP .01,1:NEXT I
 6031 PAUSE 120
 6032 IF DC1=10 THEN GO TO 6040
 6034 PRINT AT 7,0;,,,,:PRINT AT 7,5;"I DON'T HAVE BLACKJACK"; AT 8,4;"I THANK YOU FOR YOUR BET"
 6036 PAUSE 120
 6038 PRINT AT 7,0,,,,:GO TO 5016
 6040 IF PT=21 THEN GO TO 6058
 6041 PRINT AT 7,0;,,,,; AT 7,12; FLASH 1; PAPER 7; INK 0; INVERSE 1;"BLACKJACK"
 6042 LET Q=DC1:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800:
 6044 PRINT AT 12,16;"  "
 6046 FOR I=1 TO IB:LET BK=BK+3:
 6048 PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":BEEP .01,0:NEXT I
 6051 PAUSE 120
 6052 PRINT AT 7,0;,,,,
 6054 GO TO 5000
 6058 LET Q=DC1:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800:
 6060 PRINT AT 7,0;,,,,; AT 7,5;"WE PUSH AND YOU WIN YOUR"; AT 8,10;"INSURENCE BET"
 6061 LET BK=BK+BT
 6062 PRINT AT 11,25; PAPER 7;BK; PAPER 8;" "
 6064 FOR I=1 TO IB:LET BK=BK+2:BEEP .01,0:PRINT AT 11,25; PAPER 7;BK; PAPER 8;" ":NEXT I
 6065 PAUSE 120
 6066 PRINT AT 12,16;"  "; AT 7,0;,,,,
 6070 PAUSE 120:GO TO 5000
 6072 PRINT AT 7,0;,,,,; AT 8,14; INK 7; PAPER 1;"PUSH"
 6074 PRINT AT 12,16;"  "
 6076 LET BK=BK+BT
 6078 PRINT AT 13,23;"$";BK; PAPER 8;" "
 6080 PAUSE 180
 6082 GO TO 5000
 6801 IF D THEN GO TO 6826
 6802 PRINT AT 8,10; FLASH 1;" HIT "; FLASH 0;"/"; FLASH 1;" STAND "
 6803 INPUT  LINE Z$
 6804 IF Z$="" THEN GO TO 6803
 6805 IF Z$(1) <>"S" AND Z$(1) <>"H" THEN GO TO 6803
 6806 PRINT AT 8,10;,,
 6808 IF Z$(1)="H" THEN PRINT AT 8,0;,,:RETURN 
 6810 GO TO 5500
 6826 PRINT AT 7,0;" DO YOU WANT TO GO FOR DOUBLES";,;"  YOU GET ONE CARD FACE DOWN."
 6828 INPUT  LINE Z$
 6829 IF Z$="" THEN GO TO 6828
 6830 IF Z$ <>"Y" AND Z$ <>"N" THEN GO TO 6828
 6832 PRINT AT 7,0;,,,,
 6833 IF Z$(1)="Y" THEN GO TO 7000
 6834 LET D=0:GO TO 6800
 6999 REM \{20}\{1}DOUBLE SECTION\{20}\{0}
 7000 GO SUB 7300:LET L=L+1:LET AA=C(L):LET X=15:LET Y=14:GO SUB 3020
 7001 IF C(L)>10 THEN LET C(L)=10
 7002 IF C(L)=1 THEN LET C(L)=11
 7003 LET PT=PT+C(L):LET PC3=C(L)
 7004 GO SUB 7800
 7006 LET Q=A:LET X=0:LET Y=11:GO SUB 8820:GO SUB 8800
 7007 PRINT AT 7,12; PAPER 1; INK 7;"I HAVE ";DT:PAUSE 120
 7008 IF DT<17 THEN GO TO 7012
 7010 GO TO 7400
 7012 LET L=L+1:LET Q=C(L):LET X=0:LET Y=23:GO SUB 8820:GO SUB 8800:LET DC3=C(L):LET DT=DT+C(L)
 7018 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 7020 IF NOT DT>21 THEN IF DT<17 THEN GO TO 7030
 7024 GO TO 7400
 7030 LET L=L+1:LET Q=C(L):LET X=0:LET Y=5:GO SUB 8820:GO SUB 8800:LET DC4=C(L):LET DT=DT+C(L)
 7032 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 7034 IF NOT DT>21 THEN IF DT<17 THEN GO TO 7042
 7036 GO TO 7400
 7042 LET L=L+1:LET Q=C(L):LET X=0:LET Y=26:GO SUB 8820:GO SUB 8800:LET DC5=C(L):LET DT=DT+C(L)
 7044 GO SUB 7800:PRINT AT 7,19; PAPER 1; INK 7;DT:PAUSE 180
 7046 GO TO 7400
 7300 FOR I=1 TO BT:LET BK=BK-1:LET BT=BT+1:PRINT AT 11,25; PAPER 7;BK; PAPER 8;"  "; AT 12,16;BT;"  ":BEEP .01,0:NEXT I
 7302 RETURN 
 7400 LET Q=AA:LET X=15:LET Y=14:GO SUB 8820:GO SUB 8800:
 7402 PRINT AT 14,11;"YOU HAVE ";PT
 7404 PAUSE 120:
 7405 LET D=0
 7406 IF DT>21 THEN GO TO 1800
 7408 IF DT<PT THEN GO TO 1000
 7410 IF DT>PT THEN GO TO 1200
 7412 LET BT= INT (BT/2):LET BK=BK+BT:PRINT AT 12,16;BT;"   "; AT 11,25; PAPER 7;BK; PAPER 8;" "
 7414 IF DT=PT THEN GO TO 1400
 7800 REM \{20}\{1}ACE ONE OR ELEVEN\{20}\{0}
 7802 IF PC1=11 AND PT>21 THEN LET PC1=1:LET PT=PT-10:RETURN 
 7803 IF DC1=11 AND DT>21 THEN LET DC1=1:LET DT=DT-10:RETURN 
 7804 IF PC2=11 AND PT>21 THEN LET PC2=1:LET PT=PT-10:RETURN 
 7805 IF DC2=11 AND DT>21 THEN LET DC2=1:LET DT=DT-10:RETURN 
 7806 IF PC3=11 AND PT>21 THEN LET PC3=1:LET PT=PT-10:RETURN 
 7807 IF DC3=11 AND DT>21 THEN LET DC3=1:LET DT=DT-10:RETURN 
 7808 IF PC4=11 AND PT>21 THEN LET PC4=1:LET PT=PT-10:RETURN 
 7809 IF DC4=11 AND DT>21 THEN LET DC4=1:LET DT=DT-10:RETURN 
 7810 IF PC5=11 AND PT>21 THEN LET PC5=1:LET PT=PT-10:RETURN 
 7811 IF DC5=11 AND DT>21 THEN LET DC5=1:LET DT=DT-10:RETURN 
 7812 IF PC6=11 AND PT>21 THEN LET PC6=1:LET PT=PT-10:RETURN 
 7813 IF DC6=11 AND DT>21 THEN LET DC6=1:LET DT=DT-10:RETURN 
 7814 IF PC7=11 AND PT>21 THEN LET PC7=1:LET PT=PT-10:RETURN 
 7816 IF PC8=11 AND PT>21 THEN LET PC8=1:LET PT=PT-10:RETURN 
 7818 IF PC9=11 AND PT>21 THEN LET PC9=1:LET PT=PT-10:RETURN 
 7820 IF PC10=11 AND PT>21 THEN LET PC10=1:LET PT=PT-10:RETURN 
 7822 IF PC11=11 AND PT>21 THEN LET PC11=1:LET PT=PT-10:RETURN 
 7824 RETURN 
 7999 REM \{20}\{1}CARD PRINTIMG\{20}\{0}
 8800 IF V1=74 OR V1=75 OR V1=81 THEN GO TO 8804
 8801 IF V1=65 THEN GO TO 8818
 8802 PRINT AT X,Y; PAPER 7; INK K; CHR$ V1;"    "; AT X+1,Y; CHR$ S1; CHR$ A13; CHR$ A14; CHR$ A15;" "; AT X+2,Y;" "; CHR$ A10; CHR$ A11; CHR$ A12;" "; AT X+3,Y;" "; CHR$ A7; CHR$ A8; CHR$ A9;" "; AT X+4,Y;" "; CHR$ A4; CHR$ A5; CHR$ A6;" "; AT X+5,Y;" "; CHR$ A1; CHR$ A2; CHR$ A3; CHR$ V1; AT X+6,Y;"    "; CHR$ S1
 8803 BEEP .25,25:RETURN 
 8804 IF V1 <>74 THEN GO TO 8808
 8806 PRINT AT X,Y; PAPER 7; INK K; CHR$ V1;"    "; AT X+1,Y; CHR$ S1;"\{20}\{1}\{20}\{0}\::\::\:: "; AT X+2,Y;"  \::  "; AT X+3,Y;"  \::  "; AT X+4,Y;"\ : \::  "; AT X+5,Y;"\ :\::\:: "; CHR$ V1; AT X+6,Y;"    "; CHR$ S1
 8807 BEEP .25,25:RETURN 
 8808 IF V1 <>81 THEN GO TO 8812
 8810 PRINT AT X,Y; PAPER 7; INK K; CHR$ V1;"    "; AT X+1,Y; CHR$ S1;"\::\::\:: "; AT X+2,Y;" \:  \ : "; AT X+3,Y;" \:  \ : "; AT X+4,Y;" \: \ :\ : "; AT X+5,Y;" \::\::\::"; CHR$ V1; AT X+6,Y;"  \ ' "; CHR$ S1
 8811 BEEP .25,25:RETURN 
 8812 PRINT AT X,Y; PAPER 7; INK K; CHR$ V1;"    "; AT X+1,Y; CHR$ S1;"    "; AT X+2,Y;"     "; AT X+3,Y;" ^^^ "; AT X+3,Y; OVER 1;" \..\..\.. "; OVER 0; AT X+4,Y;" \''\''\'' "; AT X+5,Y;"    "; CHR$ V1; AT X+6,Y;"    "; CHR$ S1
 8813 BEEP .25,25:RETURN 
 8818 PRINT AT X,Y; PAPER 7; INK K; CHR$ V1;"    "; AT X+1,Y; CHR$ S1;"    "; AT X+2,Y;"     "; AT X+3,Y;"  "; CHR$ S1;"  "; AT X+4,Y;"     "; AT X+5,Y;"    "; CHR$ V1; AT X+6,Y;"    "; CHR$ S1
 8819 BEEP .25,25:RETURN 
 8820 IF Q <>1 THEN GO TO 8830
 8821 LET V1=65
 8822 IF P(1)=0 THEN LET K=0:LET S1=148
 8823 IF P(1)=1 THEN LET K=2:LET S1=145:GO TO 8829
 8824 IF P(1)=2 THEN LET K=0:LET S1=147:GO TO 8829
 8825 IF P(1)=3 THEN LET K=2:LET S1=146
 8829 LET P(1)=P(1)+1:LET C(L)=11:RETURN 
 8830 IF Q <>2 THEN GO TO 8840
 8831 LET V1=50
 8832 IF P(2)=0 THEN LET K=2:LET S1=145:GO TO 8836
 8833 IF P(2)=1 THEN LET K=0:LET S1=148:GO TO 8836
 8834 IF P(2)=2 THEN LET K=2:LET S1=146:GO TO 8836
 8835 IF P(2)=3 THEN LET K=0:LET S1=147
 8836 LET A1=32:LET A2=S1:LET A3=32:LET A4=32:LET A5=32:LET A6=32:LET A7=32:LET A8=32:LET A9=32
 8837 LET A10=32:LET A11=32:LET A12=32:LET A13=32:LET A14=S1:LET A15=32
 8839 LET P(2)=P(2)+1:RETURN 
 8840 IF Q <>3 THEN GO TO 8850
 8841 LET V1=51
 8842 IF P(3)=0 THEN LET K=0:LET S1=148:GO TO 8847
 8843 IF P(3)=1 THEN LET K=2:LET S1=145:GO TO 8847
 8844 IF P(3)=2 THEN LET K=0:LET S1=147:GO TO 8847
 8845 IF P(3)=3 THEN LET K=2:LET S1=146
 8847 LET A1=32:LET A2=S1:LET A3=32:LET A4=32:LET A5=32:LET A6=32:LET A7=32:LET A8=S1:LET A9=32
 8848 LET A10=32:LET A11=32:LET A12=32:LET A13=32:LET A14=S1:LET A15=32
 8849 LET P(3)=P(3)+1:RETURN 
 8850 IF Q <>4 THEN GO TO 8860
 8851 LET V1=52
 8852 IF P(4)=0 THEN LET K=2:LET S1=146:GO TO 8857
 8853 IF P(4)=1 THEN LET K=0:LET S1=148:GO TO 8857
 8854 IF P(4)=2 THEN LET K=2:LET S1=145:GO TO 8857
 8855 IF P(4)=3 THEN LET K=0:LET S1=147
 8857 LET A1=S1:LET A2=32:LET A3=S1:LET A4=32:LET A5=32:LET A6=32:LET A7=32:LET A8=32:LET A9=32
 8858 LET A10=32:LET A11=32:LET A12=32:LET A13=S1:LET A14=32:LET A15=S1
 8859 LET P(4)=P(4)+1:RETURN 
 8860 IF Q <>5 THEN GO TO 8870
 8861 LET V1=53
 8862 IF P(5)=0 THEN LET K=0:LET S1=147:GO TO 8867
 8863 IF P(5)=1 THEN LET K=2:LET S1=146:GO TO 8867
 8864 IF P(5)=2 THEN LET K=2:LET S1=145:GO TO 8867
 8865 IF P(5)=3 THEN LET K=0:LET S1=148
 8867 LET A1=S1:LET A2=32:LET A3=S1:LET A4=32:LET A5=32:LET A6=32:LET A7=32:LET A8=S1:LET A9=32
 8868 LET A10=32:LET A11=32:LET A12=32:LET A13=S1:LET A14=32:LET A15=S1
 8869 LET P(5)=P(5)+1:RETURN 
 8870 IF Q <>6 THEN GO TO 8880
 8871 LET V1=54
 8872 IF P(6)=0 THEN LET K=2:LET S1=146:GO TO 8877
 8873 IF P(6)=1 THEN LET K=0:LET S1=148:GO TO 8877
 8874 IF P(6)=2 THEN LET K=2:LET S1=145:GO TO 8877
 8875 IF P(6)=3 THEN LET K=0:LET S1=147
 8877 LET A1=S1:LET A2=32:LET A3=S1:LET A4=32:LET A5=32:LET A6=32:LET A7=S1:LET A8=32:LET A9=S1
 8878 LET A10=32:LET A11=32:LET A12=32:LET A13=S1:LET A14=32:LET A15=S1
 8879 LET P(6)=P(6)+1:RETURN 
 8880 IF Q <>7 THEN GO TO 8890
 8881 LET V1=55
 8882 IF P(7)=0 THEN LET K=0:LET S1=147:GO TO 8887
 8883 IF P(7)=1 THEN LET K=2:LET S1=145:GO TO 8887
 8884 IF P(7)=2 THEN LET K=0:LET S1=148:GO TO 8887
 8885 IF P(7)=3 THEN LET K=2:LET S1=146
 8887 LET A1=S1:LET A2=32:LET A3=S1:LET A4=32:LET A5=32:LET A6=32:LET A7=S1:LET A8=S1:LET A9=S1
 8888 LET A10=32:LET A11=32:LET A12=32:LET A13=S1:LET A14=32:LET A15=S1
 8889 LET P(7)=P(7)+1:RETURN 
 8890 IF Q <>8 THEN GO TO 8900
 8891 LET V1=56
 8892 IF P(8)=0 THEN LET K=0:LET S1=147:GO TO 8897
 8893 IF P(8)=1 THEN LET K=0:LET S1=148:GO TO 8897
 8894 IF P(8)=2 THEN LET K=2:LET S1=145:GO TO 8897
 8895 IF P(8)=3 THEN LET K=2:LET S1=146
 8897 LET A1=S1:LET A2=32:LET A3=S1:LET A4=32:LET A5=S1:LET A6=32:LET A7=S1:LET A8=32:LET A9=S1
 8898 LET A10=32:LET A11=S1:LET A12=32:LET A13=S1:LET A14=32:LET A15=S1
 8899 LET P(8)=P(8)+1:RETURN 
 8900 IF Q <>9 THEN GO TO 8910
 8901 LET V1=57
 8902 IF P(9)=0 THEN LET K=0:LET S1=147:GO TO 8907
 8903 IF P(9)=1 THEN LET K=2:LET S1=146:GO TO 8907
 8904 IF P(9)=2 THEN LET K=2:LET S1=145:GO TO 8907
 8905 IF P(9)=3 THEN LET K=0:LET S1=148
 8907 LET A1=S1:LET A2=S1:LET A3=S1:LET A4=32:LET A5=32:LET A6=32:LET A7=S1:LET A8=S1:LET A9=S1
 8908 LET A10=32:LET A11=32:LET A12=32:LET A13=S1:LET A14=S1:LET A15=S1
 8909 LET P(9)=P(9)+1:RETURN 
 8910 IF Q <>10 THEN GO TO 8920
 8911 LET V1=144
 8912 IF P(10)=0 THEN LET K=0:LET S1=147:GO TO 8917
 8913 IF P(10)=1 THEN LET K=0:LET S1=148:GO TO 8917
 8914 IF P(10)=2 THEN LET K=2:LET S1=145:GO TO 8917
 8915 IF P(10)=3 THEN LET K=2:LET S1=146
 8917 LET A1=S1:LET A2=32:LET A3=S1:LET A4=S1:LET A5=32:LET A6=S1:LET A7=S1:LET A8=32:LET A9=S1
 8918 LET A10=S1:LET A11=32:LET A12=S1:LET A13=S1:LET A14=32:LET A15=S1
 8919 LET P(10)=P(10)+1:RETURN 
 8920 IF Q <>11 THEN GO TO 8930
 8921 LET V1=74
 8922 IF P(11)=0 THEN LET K=2:LET S1=145:GO TO 8929
 8923 IF P(11)=1 THEN LET K=0:LET S1=148:GO TO 8929
 8924 IF P(11)=2 THEN LET K=0:LET S1=147:GO TO 8929
 8925 IF P(11)=3 THEN LET K=2:LET S1=146
 8929 LET P(11)=P(11)+1:LET C(L)=10:RETURN 
 8930 IF Q <>12 THEN GO TO 8940
 8931 LET V1=81
 8932 IF P(12)=0 THEN LET K=0:LET S1=147:GO TO 8939
 8933 IF P(12)=1 THEN LET K=2:LET S1=146:GO TO 8939
 8934 IF P(12)=2 THEN LET K=2:LET S1=145:GO TO 8939
 8935 IF P(12)=3 THEN LET K=0:LET S1=148
 8939 LET P(12)=P(12)+1:LET C(L)=10:RETURN 
 8941 LET V1=75
 8942 IF P(13)=0 THEN LET K=2:LET S1=145:GO TO 8949
 8943 IF P(13)=1 THEN LET K=0:LET S1=148:GO TO 8949
 8944 IF P(13)=2 THEN LET K=0:LET S1=147:GO TO 8949
 8945 IF P(13)=3 THEN LET K=2:LET S1=146
 8949 LET P(13)=P(13)+1:LET C(L)=10:RETURN 
 8999 REM \{20}\{1}SHUFFEL\{20}\{0}
 9000 RANDOMIZE :PRINT AT 7,11; PAPER 0; INK 2; FLASH 1; INVERSE 1; BRIGHT 1;"SHUFFELING"
 9002 FOR I=1 TO 52:LET C(I)=I:BEEP .001,I:NEXT I
 9004 FOR I=1 TO 52:LET R= INT (52* RND)+1:LET Z=C(I):LET C(I)=C(R):LET C(R)=Z:BEEP .001,I:NEXT I
 9006 FOR I=1 TO 52
 9008 IF C(I)<14 THEN LET C(I)=C(I)
 9009 IF C(I)>13 AND C(I)<27 THEN LET C(I)=C(I)-13
 9010 IF C(I)>26 AND C(I)<40 THEN LET C(I)=C(I)-26
 9011 IF C(I)>39 THEN LET C(I)=C(I)-39
 9012 BEEP .001,I:NEXT I
 9014 FOR I=1 TO 13:LET P(I)=0:BEEP .01,I*3:NEXT I
 9015 LET DT=0:LET PT=0:LET L=0:LET A=0:LET PC1=0:LET PC2=0:LET PC3=0:LET PC4=0:LET PC5=0:LET PC6=0:LET PC7=0:LET PC8=0:LET PC9=0:LET PC10=0:LET PC11=0:LET DC1=0:LET DC2=0:LET DC3=0:LET DC4=0:LET DC5=0:LET DC6=0
 9018 PRINT AT 7,11; PAPER 4; INK 0; FLASH 0; INVERSE 0; BRIGHT 0;"          "
 9022 RETURN 
 9100 CLS 
 9110 FOR I=0 TO 21:PRINT AT I,0; PAPER 1,,:PAUSE 5:NEXT I
 9120 INK 7:PLOT 30,71:DRAW 200,0:DRAW 0,-11:DRAW -200,0:DRAW 0,11
 9130 PLOT 40,60:DRAW 0,-50:DRAW 180,0:DRAW 0,50
 9140 PLOT 80,25:DRAW -20,0:DRAW 0,25:DRAW 130,0:DRAW 10,-10:DRAW 0,-15:DRAW -20,0
 9150 CIRCLE 90,25,5:CIRCLE 170,25,5:PLOT 100,25:DRAW 60,0:PLOT 60,40:DRAW 120,0
 9160 DRAW 0,-15
 9170 PRINT AT 17,12; INK 0;"GRAYHOUND"
 9180 PRINT AT 11,5; PAPER 1;"NEXT"; AT 12,5;"I"; AT 12,8;"I":PLOT 38,79:DRAW 0,9:DRAW 35,0:DRAW 0,-9:DRAW -35,0
 9190 PRINT AT 2,12; PAPER 1;"LAS VEGAS"
 9192 PRINT AT 5,10; PAPER 1; INK 7;"TICKET COUNTER"
 9194 PRINT AT 7,2; PAPER 7; INK 0;" BUS LEAVES EVERY 30 MINUTES"
 9498 PAUSE 0
 9499 STOP 
 9500 PRINT AT 0,0;,,,,,,,,,,,,,,,,,,,,; AT 14,0;,,,,,,,,,,,,,,,, AT 10,16;"  ":GO SUB 9000:GO TO 5000
 9700 GO TO 9830:REM \{20}\{1}RULES\{20}\{0}
 9701 PRINT :PRINT " THE OBJECT OF BLACKJACK IS TO "
 9702 PRINT :PRINT "   REACH A POINT TOTAL OF 21 "
 9704 PRINT :PRINT "   ...WITHOUT GOING OVER...."
 9706 PRINT :PRINT "   IF YOU GO OVER YOU ""BUST"" "
 9708 PRINT :PRINT "   (I hear it happens a lot)"
 9710 PRINT :PRINT " THE FOLLOWING LIST THE DETAILS"
 9712 GO SUB 9850
 9713 CLS 
 9714 PRINT :PRINT " A BLACKJACK (AUTOMATIC 21) IS"
 9716 PRINT :PRINT " AN ACE AND ANY FACE CARD."
 9718 PRINT :PRINT " IF YOU HAVE A BLACKJACK AND "
 9720 PRINT :PRINT " THE HOUSE HAS ONE AT THE SAME "
 9722 PRINT : PRINT " TIME; THIS IS CALLED A ""PUSH"""
 9724 PRINT :PRINT " ( A TIE IN ENGLISH ) AND THE "
 9726 PRINT :PRINT " HAND AND BET ARE CANCELED"
 9728 PRINT :PRINT " THIS RULE APPLIES TO ALL TIES"
 9730 GO SUB 9850
 9731 CLS 
 9732 PRINT :PRINT " YOU PLACE YOUR BET DEFORE THE"
 9734 PRINT :PRINT " CARDS ARE DEALT UP TO THE MAX."
 9736 PRINT :PRINT " IF YOUR FIRST TWO CARDS EQUAL"
 9738 PRINT :PRINT " TEN OR ELEVEN THE COMPUTER "
 9740 PRINT :PRINT " WILL ASK ""DOUBLE ?"". IF YOU"
 9742 PRINT :PRINT " ENTER ""N"" (NO) THE HAND WILL"
 9744 PRINT :PRINT " CONTINUE. IF YOU ENTER ""Y""(YES)"
 9746 PRINT :PRINT " YOUR BET WILL DOUBLE AND YOU"
 9748 PRINT :PRINT " WILL RECEIVE (ONLY) ONE CARD"
 9750 GO SUB 9850
 9751 CLS 
 9770 PRINT :PRINT " IF THE DEALER HAS AN ACE FACE"
 9772 PRINT :PRINT " UP THE COMPUTER WILL ASK IF "
 9774 PRINT :PRINT " YOU WANT INSURANCE. IF YOU "
 9776 PRINT :PRINT " HAVE A GOOD HAND AND YOU THINK"
 9778 PRINT :PRINT " THE DEALER HAS BLACKJACK THEN"
 9780 PRINT :PRINT " YOU BET UP TO 1/2 OF YOUR "
 9782 PRINT :PRINT " CURRENT BET. IF THE DEALER"
 9784 PRINT :PRINT " DOESN'T HAVE BLACKJACK THEN "
 9786 PRINT :PRINT " YOU LOSE YOUR INSURANCE BET."
 9788 GO SUB 9850
 9789 CLS 
 9790 PRINT :PRINT " IF THE DEALER DOES HAVE A"
 9792 PRINT :PRINT " BLACKJACK THEN YOU LOSE YOUR"
 9793 PRINT :PRINT " BET AND ARE PAID DOUBLE FOR "
 9794 PRINT :PRINT  " YOUR INSURANCE WAGER."
 9795 PRINT :PRINT " YOU INSURANCE BET ACTUALY "
 9796 PRINT :PRINT " NULLIFIES HIS BLACKJACK."
 9797 GO SUB 9850
 9798 CLS 
 9799 PRINT ''" YOU HAVE $1000. "
 9800 PRINT ''" THE MAXIMUM BET AT THIS TABLE   IS $50"
 9802 PRINT ''" TO GET ANOTHER CARD YOU ""HIT"""
 9804 PRINT ''" YOU ""STAND"" IF YOU DON'T WANT   ANY MORE CARDS"
 9806 PRINT ''" 2-9=FACE VALUE",," 10-J-Q-K=10",," A=1 OR 11"
 9808 PRINT ''" PRESS ENTER TO PLACE YOUR BET"
 9825 GO SUB 9850:CLS :RETURN 
 9830 PRINT AT 2,0;" PRESS KEY ""Y"" TO SEE RULES"," PRESS ENTER  TO START GAME"
 9835 INPUT A$
 9840 IF A$="Y" THEN GO TO 9701
 9845 CLS :RETURN 
 9850 INPUT "PRESS ENTER TO CONTINUE"; LINE Z$:BEEP .05,10:RETURN 
 9899 RETURN 
 9900 REM \{20}\{1}INITILISE\{20}\{0}
 9901 PAPER 4:BORDER 1:CLS 
 9910 LET G=0:LET L=0:LET DT=0:LET PT=0:LET Q=0:DIM P(13):DIM C(52):LET BT=0:LET BK=1000:LET Z=21
 9920 RETURN 
 9999 PAPER 7:BORDER 7:INK 0

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.

People

No people associated with this content.

Scroll to Top