70 REM By Byron Myhre 80 REM 73125,744 90 REM Written 11/11/88 100 CLS 105 DIM SS(52),CN$(13) 108 ' 109 ' Reads in card numbers and suits 110 FOR N=1 TO 13:READ CN$(N):NEXT N 115 FOR N=1 TO 4:READ C:CS$(N)=CHR$(C):NEXT N 120 DATA 2,3,4,5,6,7,8,9,T,J,Q,K,A 130 DATA 156,157,158,159 160 GOSUB 2300 'load in the players 170 IF CC<10 THEN GOSUB 1500 ' shuffle cards 180 GOSUB 1990 'draws blank table 200 CT=1:LU=69:RL=86:CL=52: GOSUB 1100 ' picks and draws first card 210 CT=2:LU=140:RL=157:CL=64:GOSUB 1100 ' Picks and draws second card 220 IF CD(1)=CD(2) THEN PRINT@195,"*"; ELSE GOTO 250 230 IF CD(1)>10 THEN GOSUB 1900:GOTO 430 ELSE GOSUB 1700:GOTO 170 250 IF CD(1)>CD(2) THEN SW=CD(2):CD(2)=CD(1):CD(1)=SW 260 IF CD(2)-CD(1)=1 THEN PRINT@190,"*"; ELSE GOTO 290 280 GOSUB 1700:GOTO 170 ' for push bet 290 SP=CD(2)-CD(1) 310 IF SP=2 THEN OD=9:PRINT@168,"*";:GOTO 370 320 IF SP=3 THEN OD=5:PRINT@172,"*";:GOTO 370 330 IF SP=4 THEN OD=3:PRINT@176,"*";:GOTO 370 340 IF SP=5 THEN OD=2:PRINT@180,"*";:GOTO 370 345 OD=1:PRINT@184,"*"; 370 FOR N=1 TO NP 380 PRINT@281,PN$(N);" how much do you raise (0-9)?"; 382 A$=INKEY$:IF A$="" THEN 382 384 RA=VAL(A$) 390 BE(N)=1+RA 395 PRINT@281,SPACE$(38); 400 NEXT N 410 CT=3:LU=105:RL=122:CL=58:GOSUB 1100 420 IF CD(3)>CD(1) AND CD(3) to continue"; 485 A$=INKEY$:IF A$="" THEN 485 490 IF A$="Q" OR A$="q" THEN GOTO 530 ELSE GOTO 170 500 END 530 CLS 540 PRINT"FINAL WINNINGS" 550 FOR N=1 TO NP 560 PRINT PN$(N);" has $";PM(N) 570 NEXT N 580 END 1100 CN=SS(CC)'select crd from top of stack 1110 GOSUB 1200 ' select card and draw it 1120 CD(CT)=CN 'record card number 1130 LINE(LU,1)-(RL,28),1,BF 1140 PRINT@CL,CN$(CN);CS$(CS); 1150 CC=CC-1 1160 RETURN 1198 ' 1200 CS=0 1210 FOR N=1 TO 4 1220 CN=CN-13:CS=CS+1 1230 IF CN=<0 THEN CN=CN+13:N=4 1240 NEXT N 1245 RETURN 1498 ' 1499 ' Shuffle routine 1500 CLS:PRINT"Shuffling!" 1505 FOR N=1 TO 52:SS(N)=0:NEXT N 1510 RJ=VAL(RIGHT$(TIME$,2)) 1520 FOR N=1 TO RJ:R=RND(1):NEXT N 1540 FOR N=1 TO 52 1550 R=INT(RND(1)*52+1) 1560 IF SS(R)=0 THEN SS(R)=N ELSE GOTO 1550 1570 NEXT N 1580 CLS:CC=52:RETURN 1700 PRINT@281,"Push-all bets returned"; 1705 FOR N=1 TO 500:NEXT N 1708 PRINT@294,SPACE$(24); 1710 PRINT@304,"Press any key"; 1715 A$=INKEY$:IF A$="" THEN 1715 1720 RETURN 1800 FOR N=1 TO NP ' win routine 1810 PM(N)=PM(N)+BE(N)*OD 1815 PRINT@281,"WIN !!"; 1820 NEXT N 1830 RETURN 1850 FOR N=1 TO NP ' lose routine 1860 PM(N)=PM(N)-BE(N) 1870 NEXT N 1875 PRINT@281,"Lose."; 1880 RETURN 1899 ' third card for a >10 pair 1900 CT=3:LU=105:RL=122:CL=58:GOSUB 1100 1910 IF CD(3)<>CD(1) THEN GOSUB 1700:RETURN 1920 PRINT@281,"WIN !!! Pays 11";:FOR N=1 TO NP:PM(N)=PM(N)+11:NEXT N 1930 GOSUB 1710:RETURN 1988 ' 1989 'Draws the game table 1990 CLS:PRINT@8,"RED";:PRINT@30,"DOG"; 2000 LINE (69,1)-(86,26),1,B 2010 LINE(105,1)-(122,26),1,B 2020 LINE(140,1)-(157,26),1,B 2090 PRINT@161,"Spread 1 2 3 4 5-11 Con Pr"; 2100 PRINT@201,"Odds 9-1 5-1 4-1 2-1 even tie tie"; 2110 LINE(44,30)-(230,48),1,B 2115 LINE(44,39)-(230,39) 2120 LINE(68,30)-(68,47) 2130 LINE(90,30)-(90,47) 2140 LINE(115,30)-(115,47) 2150 LINE(143,30)-(143,47) 2151 LINE(175,30)-(175,47) 2152 LINE(206,30)-(206,47) 2160 RETURN 2300 CLS:NP=0 ' load in players 2310 PRINT"Press for no more players 2320 PRINT"After the name, enter the Amt. of money" 2325 FOR N=1 TO 4 2330 PRINT"Enter player #";N;"'s name" 2340 INPUT PN$(N):IF PN$(N)="" THEN N=4 AND NP=N-1:GOTO 2360 2350 NP=NP+1:PRINT"Enter ";PN$(N);"'s poke (<$1000)";: INPUT PM(N) 2360 NEXT N 2370 RETURN