Compucolor.org – Virtual Media

Listing of file='ACEDUC.BAS;01' on disk='vmedia/chess-sector.ccvf'

100 DIM  CD(52),BD(52),SU$(25)
110 A0$= "t         u"
120 A1$= "           "
130 A2$= "v         w"
140 A3$= "   "
150 Z$(1)= "c" : Z$(2)= "d" : Z$(3)= "h" : Z$(4)= "s"
160 BG= 14
170 PLOT  6,32,12,27,11,14,3,12,6
180 PRINT "   COMPUCOLOR  PRESENTS  ACEY  DUCEY   "
190 PLOT 3,64,0:S= RND (PEEK (33209)):GOSUB 1550:PLOT 6,2,12,29,18,14,12
200 PRINT "ACEY-DUCEY IS PLAYED IN THE FOLLOWING MANNER :":PRINT
210 PRINT "THE DEALER (ME) DEALS TWO CARDS FACE UP."
220 PRINT "YOU HAVE TO ANTE AT LEAST FIVE DOLLARS."
230 PRINT "AFTER I GIVE YOU TWO CARDS, YOU BET ON WHETHER"
240 PRINT "YOU FEEL THAT THE VALUE OF THE NEXT CARD WILL"
250 PRINT "BE BETWEEN THE FIRST TWO CARDS I DELT YOU OR NOT."
260 PRINT
270 PLOT 3,0,16:PRINT "HIT THE RETURN KEY TO RESUME :";
280 POKE 33278,0
290 INPUT "";Q$
300 PLOT 12,14
310 N= 100 : Q= 100
320 PLOT 3,0,0:PRINT "YOU HAVE "Q" DOLLARS    "
330 PRINT
340 GOTO 400
350 Q= Q+ M+ M1
360 GOTO 320
370 Q= Q- M- M1
380 IF  Q< 5 THEN 920
390 GOTO 320
400 IF CN> 39THEN GOSUB 2250
410 PLOT 3,0,4:INPUT "WHAT IS YOUR ANTE ? ";M1
420 IF M1> 4THEN 450
430 PRINT "CHICKEN ! MINIMUM ANTE IS FIVE DOLLARS "
440 FOR I= 1TO 1000:NEXT :PLOT 28,11,28,11:GOTO 410
450 IF M1< = QTHEN PLOT 28:PRINT "YOUR ANTE IS       $":PLOT 3,0,0:PRINT "YOU HAVE "Q- M1" DOLLARS    "
460 IF  M1> Q THEN 480
470 IF M1< = QTHEN 500
480 PRINT "YOU CAN'T ANTE MORE THAN YOU HAVE !"
490 FOR I= 1TO 1000:NEXT :PLOT 28,11,28,11:GOTO 410
500 PLOT 10,3,0,8:PRINT "HERE ARE YOUR NEXT TWO CARDS....."
510 CN= CN+ 1:GOSUB 1720:GOSUB 1690
520 X= 4:GOSUB 1900:A= CX
530 CN= CN+ 1:GOSUB 1720:GOSUB 1690
540 X= 20:GOSUB 1900:B= CX
550 PLOT  6,2
560 IF  A< BTHEN MN= A:MX= B
570 IF  B< ATHEN MN= B:MX= A
580 IF  A= BTHEN MN= 99
590 PLOT 14,3,0,30,27,24
600 INPUT "WHAT IS YOUR BET ? ";M
610 PLOT 3,0,30,11,3,0,30:PRINT "YOUR BET IS $"M
620 IF  M< > 0THEN 640
630 GOTO 680
640 IF  M+ M1< = QTHEN 680
650 PLOT  3,0,30,11,3,0,30
660 PRINT "NO! %$&*@# YOU ONLY HAVE "Q- M1" DOLLARS TO BET WITH !"
670 FOR I= 1TO 1000:NEXT :PLOT 3,0,30,11:GOTO 590
680 CN= CN+ 1:GOSUB 1720:GOSUB 1690
690 X= 36:GOSUB 1900:C= CX
700 PLOT  6,2,14
710 IF  C> MNTHEN 730
720 PLOT 3,50,14:GOTO 760
730 IF  C> = MXTHEN PLOT 3,50,14:GOTO 760
740 PLOT 3,48,BG:PRINT "YOU WIN !!!!!":PLOT 3,64,0
750 GOSUB 2190:GOTO 350
760 PRINT "YOU LOSE"
770 PLOT  3,64,0
780 GOSUB 2190:IF M+ M1< QTHEN 370
790 PLOT  12
800 PRINT
810 PRINT "SORRY FRIEND, BUT YOU BLEW IT "
820 PRINT
830 PRINT "YOU HAVE JUST BEEN BEATEN BY A COMPUCOLOR II"
840 PRINT
850 FOR I= 1TO 2000:NEXT :PLOT 12
860 PRINT "TRY AGAIN ? (YES OR NO) ";
870 POKE 33278,0
880 S= RND (8):IF PEEK (33278)= 0THEN 880
890 S= PEEK (33278):IF S< > 13THEN INPUT "";Q$:Q$= CHR$ (S)+ Q$
900 IF S= ASC ("Y")THEN GOSUB 2250:GOTO 300
910 GOTO 950
920 PLOT  12:PRINT
930 PRINT "THE HOUSE RULES SAY YOU MUST HAVE MINIMUM STAKE OF 5 DOLLARS"
940 GOTO 800
950 PLOT 27,11,6,2,12,1
960 FOR  Z= 1 TO  25 : SU$(Z)= " " : NEXT  : RETURN
970 REM

     MAKE A DEUCE, SUIT PREVIOUSLY DEFINED

980 GOSUB 960: REM  BLANK MATRIX
990 SU$(3)= ST$ : SU$(23)= ST$
1000 RETURN
1010 REM

MAKE A TREY

1020 GOSUB 960
1030 SU$(3)= ST$ : SU$(13)= ST$ : SU$(23)= ST$
1040 RETURN
1050 REM

MAKE A FOUR

1060 GOSUB 960
1070 SU$(1)= ST$ : SU$(5)= ST$ : SU$(21)= ST$ : SU$(25)= ST$
1080 RETURN
1090 REM

MAKE A FIVE

1100 GOSUB 960
1110 SU$(13)= ST$ : GOSUB 1070
1120 RETURN
1130 REM

MAKE A SIX

1140 GOSUB 960
1150 SU$(11)= ST$ : SU$(15)= ST$ : GOSUB 1070
1160 RETURN
1170 REM

MAKE A SEVEN

1180 GOSUB 960
1190 GOSUB 1110: GOSUB 1150
1200 RETURN
1210 REM

MAKE AN EIGHT

1220 GOSUB 960
1230 SU$(8)= ST$ : SU$(18)= ST$ : GOSUB 1150
1240 RETURN
1250 REM

MAKE A NINE

1260 GOSUB 960
1270 GOSUB 1030: GOSUB 1150
1280 RETURN
1290 REM

MAKE A TEN

1300 GOSUB 960
1310 SU$(6)= ST$ : SU$(10)= ST$ : SU$(16)= ST$ : SU$(20)= ST$
1320 GOSUB 1150: RETURN
1330 REM

MAKE THE JACK

1340 GOSUB 960
1350 SU$(9)= "b" : SU$(14)= SU$(9)
1360 SU$(17)= "v": SU$(18)= "" : SU$(19)= "w"
1370 RETURN
1380 REM

MAKE THE QUEEN

1390 GOSUB 960
1400 SU$(7)= "t" : SU$(8)= "e" : SU$(9)= "u"
1410 SU$(12)= "a" : SU$(14)= "b"
1420 SU$(17)= "v" : SU$(18)= "" : SU$(19)= "x"
1430 RETURN
1440 REM

MAKE THE KING

1450 GOSUB 960
1460 SU$(6)= "b" : SU$(11)= "b" : SU$(16)= "b"
1470 SU$(9)= "~" : SU$(13)= "<" : SU$(19)= "|" : SU$(12)= "g"
1480 RETURN
1490 REM

MAKE THE ACE

1500 GOSUB 960
1510 SU$(7)= "t" : SU$(8)= "e" : SU$(9)= "u"
1520 SU$(12)= "l":SU$(13)= "":SU$(14)= "m"
1530 SU$(17)= "a": SU$(19)= "b"
1540 RETURN
1550 REM
         NEW DECK

1560 BACK= 37- BACK
1570 PLOT  3,64,0
1580 FOR  V= 1 TO  100000
1590 C1= INT (1+ 52* RND (5))
1600 IF  BD(C1) =  1 THEN 1640
1610 S1= S1+ 1
1620 CD(S1)= C1
1630 BD(C1)= 1
1640 IF  S1 =  52 THEN 1660
1650 NEXT  V
1660 FOR  V= 1 TO  52 : BD(V)= 0 : NEXT  V
1670 CN= 0 : S1= 0
1680 RETURN
1690 REM
          SELECT CORRECT CARD

1700 ON CX- 1GOSUB 970,1010,1050,1090,1130,1170,1210,1250,1290,1330,1380,1440,1490
1710 RETURN
1720 REM
          SORT OUT SUIT & CARD #

1730 IF CN= 0THEN CN= 1
1740 CX= CD(CN)
1750 SU= 0
1760 IF CX< 14THEN SU= 1
1770 IF CX< 27AND SU= 0THEN SU= 2
1780 IF CX< 40AND SU= 0THEN SU= 3
1790 IF SU= 0THEN SU= 4
1800 ST$= Z$(SU)
1810 ON SUGOTO 1820,1840,1860,1880
1820 CX= CX+ 1
1830 RETURN
1840 CX= CX- 12
1850 RETURN
1860 CX= CX- 25
1870 RETURN
1880 CX= CX- 38
1890 RETURN
1900 REM
          DRAW THE CARDS

1910 PLOT 14,3,X,BG
1920 PRINT A0$:K= 16:IF SU= 2OR SU= 3THEN K= 17
1930 PLOT 30,23,29,K,3,X,BG+ 2
1940 PRINT A3$;
1950 FOR H= 1TO 5:PRINT SU$(H);:NEXT
1960 PRINT A3$
1970 PLOT 15,3,X,BG+ 1
1980 GOSUB 2130
1990 PLOT 3,X+ 1,BG+ 2:PRINT ST$:PRINT :PLOT 14
2000 FOR I= 1TO 4
2010 PLOT  3,X,BG+ 2+ I* 2
2020 PRINT A3$;
2030 FOR J= 1TO 5
2040 PRINT SU$(5* I+ J);
2050 NEXT  J
2060 PRINT A3$
2070 NEXT  I
2080 PLOT 3,X,BG+ 12:PRINT A2$
2090 PLOT 30,23,29,K
2100 PLOT 15,3,X+ 9,BG+ 11:PRINT ST$
2110 Y= 8:IF CX= 10THEN Y= 7
2120 PLOT 3,X+ Y,BG+ 12
2130 IF CX< 11THEN PRINT STR$ (CX)
2140 IF CX= 11THEN PRINT " J"
2150 IF CX= 12THEN PRINT " Q"
2160 IF CX= 13THEN PRINT " K"
2170 IF CX= 14THEN PRINT " A"
2180 RETURN
2190 REM
          CLEAR WORK AREA

2200 FOR I= 1TO 1000:NEXT
2210 FOR I= 4TO 30STEP 2
2220 PLOT 3,0,I,11
2230 NEXT
2240 RETURN
2250 PLOT  3,10,16,14,6,71
2260 PRINT "SHUFFLING DECK"
2270 PLOT  3,64,0,15,14
2280 GOSUB 1550
2290 PLOT 3,0,16,11
2300 RETURN