File GAM1.TMP

Directory of image this file is from
This file as a plain text file

1 PRINT "GAM1 CONSISTS OF TWO GAMES: BANDIT & BLKJAC" \ PRINT
2 PRINT "TO ACCESS 'BLKJAC', TYPE:" \ PRINT "DEL 1,140" \ PRINT "RUN"
3 PRINT "TO OBTAIN 'BANDIT', TYPE:" \ PRINT "DEL 1,10" \ PRINT "DEL "; 
4 PRINT "141,1700" \ PRINT "RUN" \ PRINT "WHEN ONE GAME IS SELECTED";  
5 PRINT "; IN ORDER TO OBTAIN THE OTHER," \ PRINT "USER HAS "; 
6 PRINT "TO RECALL GAM1 AGAIN." \ PRINT "HAVE FUN!"  
8 STOP 
11 PRINT "ONE ARM BANDIT" \ PRINT \ GOTO 20 
12 RANDOM \ LET Q=INT(711*RND(0)+1) \ PRINT 
13 DATA 43 \ READ Q9 \ LET U=INT(Q+Q9)  
14 V=RND(I) \ LET S=50
16 PRINT "YOU ARE GIVEN $50 TO PLAY WITH, GOOD LUCK."\PRINT\GOTO 30 
20 PRINT\PRINT"EACH PLAY YOU CAN PUT ANY AMOUNT OF SILVER DOLLARS"
21 PRINT"INTO THE MACHINE, UP TO THE BALANCE YOU HAVE, BY TYPING IN"
22 PRINT"THE QUANTITY OF DOLLARS."\PRINT
24 PRINT"YOU 'PULL DOWN THE HANDLE' BY DEPRESSING THE 'RETURN' KEY."
26 PRINT\PRINT"WHEN YOUR BALANCE REACHES ZERO, THE GAME IS OVER....." 
27 PRINT "OR TYPE A ZERO ('0') TO QUIT AT ANY TIME."\PRINT
29 GOTO 12
30 PRINT"HOW MANY DOLLARS DO YOU WANT TO PUT IN ON YOUR FIRST PLAY";
31 INPUT Z
32 IF Z=INT(Z) THEN 36  
34 PRINT"NO FRACTIONAL DOLLARS ALLOWED AT THIS CASINO!" \ GOTO 39 
36 IF Z<=0 THEN 41 \IF Z<S+1 THEN 44 \ PRINT
39 PRINT"..ILLEGAL PLAY..TRY AGAIN..WHAT'S YOUR PLEASURE";\GOTO 31  
41 PRINT\PRINT"..SO SOON!..YOU HAVEN'T YET GIVEN IT A WHIRL!"\GOTO 140
44 PRINT \ DIM R(3),T(3),P(3,6) \ FOR I=1 TO 3 \ FOR J=1 TO 6 
48 READ P(I,J) \ NEXT J \ NEXT I \ LET E4=0 
52 FOR I=1 TO 3 \ LET R=RND(I) \ FOR J=1 TO 6 
55 LET T(I)=J \ IF R<P(I,J) THEN 58 \ NEXT J
58 NEXT I \ FOR I=1 TO 3 \ LET W=T(I) 
61 IF W=1 THEN 67 \ IF W=2 THEN 69 \ IF W=3 THEN 71 
64 IF W=4 THEN 73 \ IF W=5 THEN 75 \ IF W=6 THEN 77 
67 PRINT"LEMON   "; \ GOTO 79 
69 PRINT"CHERRY  "; \ GOTO 79 
71 PRINT"ORANGE  "; \ GOTO 79 
73 PRINT"PLUM    "; \ GOTO 79 
75 PRINT"BELL    "; \ GOTO 79 
77 PRINT"LIBERTY "; \ GOTO 79 
79 NEXT I 
80 LET D=100*T(1)+10*T(2)+T(3)
81 IF D=221 THEN 93 \ IF D=223 THEN 96 \ IF D=224 THEN 97 
84 IF D=225 THEN 99 \ IF D=226 THEN 101 \ IF D=333 THEN 103 
87 IF D=444 THEN 105 \ IF D=555 THEN 107 \ IF D=336 THEN 109
90 IF D=446 THEN 111 \ IF D=556 THEN 113 \ IF D=666 THEN 115
93 LET D=0 \ PRINT "..A LOSER" \ GOTO 119 
96 LET D=2*Z \ GOTO 119 
97 LET D=4*Z \ GOTO 119 
99 LET D=6*Z \ GOTO 119 
101 LET D=8*Z \ GOTO 119 
103 LET D=10*Z \ GOTO 119
105 LET D=12*Z \ GOTO 119
107 LET D=14*Z \ GOTO 119
109 LET D=16*Z \ GOTO 119
111 LET D=18*Z \ GOTO 119
113 LET D=20*Z \ GOTO 119
115 LET D=INT(200+400*RND(T(2))) 
116 PRINT "...YOU HIT THE JACKPOT OF $";D \ PRINT \ LET E4=1 
119 LET S=S+D-Z \ IF S>0 THEN 123
121 PRINT "...YOU HAVE RUN OUT OF MONEY..." \ GOTO 139 
123 IF D=0 THEN 126 \ IF E4=1 THEN 126 
125 PRINT "YOU WIN: $";D;"  "; 
126 PRINT "BALANCE: $";S;"NEXT WAGER"; 
127 INPUT Z
128 IF Z=INT(Z) THEN 132 \ PRINT 
130 PRINT"NO FRACTIONAL DOLLARS ALLOWED AT THIS CASINO!" \ GOTO 134
132 IF Z<=0 THEN 139 \ IF Z<S+1 THEN 135 \ PRINT 
134 PRINT "..ILLEGAL PLAY..TRY AGAIN..WHAT'S YOUR PLEASURE";\GOTO 127
135 PRINT \ GOTO 52 \ PRINT
136 PRINT"THE GAME IS OVER.. BETTER LUCK NEXT TIME."\GOTO 140
137 DATA 0,.2,.4,.6,.8,1  \  DATA .05,.3,.45,.7,.85,1
138 DATA .15,.35,.5,.7,.8,1
139 PRINT \ PRINT "..SO SOON! ANYWAY, IT WAS FUN, WASN'T IT?"
140 END
141 PRINT "DO YOU WANT INSTRUCTIONS (IF SO TYPE A 1)"; \ INPUT K 
142 IF K<>1 THEN 150 \ PRINT \ PRINT \ PRINT \ PRINT 
143 PRINT"THIS IS A GAME OF BLACKJACK, LAS VEGAS STYLE." 
144 PRINT"HERE ARE THE RULES OF THE HOUSE.  THE DEALER"  
145 PRINT"MUST HIT ON 16 OR LESS AND WILL STAY ON 17 OR" 
146 PRINT"MORE.  YOU MAY SPLIT TWO CARDS IF THEY ARE THE"
147 PRINT"SAME AND PLAY ONE HAND WITH EACH OF THEM.  ALSO,"
148 PRINT"YOU MAY DOUBLE YOUR BET AND RECEIVE EXACTLY ONE "
149 PRINT"MORE CARD ANY TIME ON YOUR FIRST HIT." 
150 PRINT"INSTRUCTIONS ARE: 0-NO HIT; 1-HIT; 2-DOUBLE; AND"
151 PRINT "3-SPLIT A PAIR." \ IF K<> 1 THEN 160
152 PRINT"WHEN THE DEALER HAS AN EXPOSED ACE HE WILL ASK"
153 PRINT"YOU FOR AN INSURANCE BET.  AN INSURANCE BET WILL"
154 PRINT"RISK HALF YOUR BET FOR AN AMOUNT EQUAL TO YOUR BET"
155 PRINT"IF YOU WIN.  YOU WIN IF THE DEALER HAS A BLACKJACK"
156 PRINT"AND LOSE IF HE DOESN'T.  THE HOUSE LIMIT IS $500.00" 
157 PRINT"GOOD LUCK.  OH, BY THE WAY, THE DEALER IS NOTED FOR" 
158 PRINT"DEALING OFF THE BOTTOM OF THE DECK.  WATCH HIM VERY" 
159 PRINT"CLOSELY.  HERE HE IS NOW." \ PRINT \ PRINT \ PRINT 
160 LET K=0 \ LET W1=0 
165 PRINT
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   GOTO315
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, CHARLIE."
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 \ RETURN 
1425   PRINT"YOU'RE BEHIND $"-W1 \ RETURN 
1435   PRINT"YOU'RE EVEN" \ RETURN
1445   PRINT \ PRINT "I MUST HAVE DEALT WRONG." \ PRINT \ GOTO 1330 
1465 PRINT \ PRINT"YOU LUCKED OUT AGAIN:" \ PRINT \ GOTO 1330 
1485 PRINT \ PRINT"YOU MUST HAVE BEEN PEEKING." \ PRINT \ GOTO 1330 
1505   PRINT \ PRINT"I COULD LOSE MY JOB THIS WAY." \ PRINT \ GOTO 1330 
1525 PRINT\ PRINT"THE CARDS HAVE TURNED AGAINST ME:"\ PRINT\ GOTO 1330  
1545 PRINT\PRINT"THE BOTTOM OF THE DECK STRIKES AGAIN:"\PRINT\GOTO 1330 
1565 PRINT \ PRINT"A VICTORY FOR US GOOD GUYS." \ PRINT \ GOTO 1330 
1585   PRINT \ PRINT"YOU CAN'T BEAT SKILL." \ PRINT \ GOTO 1330 
1605   PRINT \ PRINT"YOU CAN'T WIN 'EM ALL." \ PRINT \ GOTO 1330
1625   PRINT\PRINT"BABY GETS A NEW PAIR OF SHOES:"\PRINT\GOTO 1330
1645   FOR M9 = 1 TO 52 \ LET D(M9)=0 \ NEXT M9 
1660    LET R=0 \ PRINT \ PRINT "I RESHUFFLED" \ PRINT \ RETURN 
1685 STOP 
1700 END



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search