Table of Contents
THE ONE ARMED BANDIT
INFO
Author | N. Barrington |
---|---|
Computer | Amstrad PCW 8256 / 8512 / 9512 |
Year | ???? |
Gender | arcade |
Controls | Keyboard |
Languages | English |
Status | preserved |
Screenshots
Description
A game that takes us back to slot machines, but this one, instead of a handle to pull it, we will have to do it with the space bar on our keyboard. Each game starts with 10 tokens stored on the left of the screen. We will try to accumulate a fortune without risking a single euro.
From time to time a special random function will appear, you have to press the space bar at the moment that this function appears. To push a drum you have to press the appropriate number (1, 2 or 3) corresponding to the drum you want to move. We can shift any drum in any order, as long as the right indicator continues to show the shift to the left. If we have the desired sequence before using all the available jokers, we simply press the space bar to continue the game.
If we want to leave the game at any time, we will only have to press the exit key.
Listing
- Listing 1 - FRUIT.BAS
2 hi=HIMEM 10 DIM b(8,20):MEMORY &HBFFE:FOR x=&HC070 TO &HC098:READ pk:POKE x,pk:NEXT x 20 DATA 243,62,129,211,241,62,130,211,242,175,95,103,22,184,58,153,192,111,41,41 30 DATA 41,25,17,154,192,235,1,8,0,237,176,62,133,211,241,62,134,211,242,251,201 40 char=179:count=76:ch=CHAR:WHILE char<count+ch:POKE &HC099,(char):FOR r=1 TO 8:READ b(r,ct):POKE &HC099+r,(b(r,ct)) 50 NEXT:cl=&HC070:CALL cl:char=char+1:WEND:MEMORY hi:RUN "fruit.ovl 51 DATA 28,28,28,28,28,28,28,28,254,255,7,7,7,7,7,127,254,224,224,224,224,224,255,255,127,7,7,7,7,7,255,254,224,224,224,224,224,224,224,224,224,224,230,230,255,255,6,6 52 DATA 255, 255, 224, 224, 224, 224, 224, 224, 255, 231, 231, 231, 231, 231, 255, 126, 255, 255, 7, 7, 14, 14, 28, 28, 126, 255, 231, 231, 231, 231, 231, 255, 126, 255, 231, 231, 231, 231, 231, 231 53 DATA 231,231,231,231,231,231,231,126 60 DATA 32,113,251,127,221,77,197,85,130,199,239,255,104,107,107,107,8,28,190,255,112,175,175,175,32,113,251,254,135,190,191,142,209,89,221,127,255,125,56,16,107,107,152,255,255,247,227,65 70 DATA 172, 174, 96, 255, 255, 223, 142, 4, 191, 190, 135, 254, 255, 124, 56, 16 80 DATA 0,0,0,0,1,3,127,255, 0,0,0,63,255,255,255,255, 0,0,0,254,255,255,255,255, 0,0,0,0,128,252,255,243 90 DATA 255,127,31,3,0,0,0,0 100 DATA 255, 255, 255, 255, 127, 0, 0, 0, 255, 255, 255, 255, 254, 0, 0, 0, 255, 254, 252, 128, 0, 0, 0, 0 110 DATA 0, 0, 0, 0, 0, 0, 7, 63, 1, 1, 2, 28, 112, 192, 224, 248, 0, 255, 255, 56, 14, 1, 7, 31, 0, 0, 192, 224, 32, 0, 248, 252 120 DATA 127, 228, 255, 228, 255, 127, 63, 15 130 DATA 252, 254, 254, 254, 252, 248, 240, 192, 127, 228, 255, 228, 255, 127, 63, 15, 254, 255, 255, 255, 254, 254, 252, 240 140 DATA 0, 1, 3, 2, 7, 14, 27, 63, 216, 255, 171, 127, 247, 91, 246, 223, 3, 6, 204, 252, 111, 255, 239, 255, 0, 0, 0, 0, 0, 192, 112, 220 150 DATA 55, 126, 127, 186, 95, 255, 222, 8 160 DATA 237, 117, 239, 207, 118, 232, 192, 0, 251, 111, 255, 252, 0, 0, 0, 0, 248, 240, 224, 0, 0, 0, 0, 0 170 DATA 0, 0, 0, 0, 0, 0, 1, 1, 7, 12, 12, 31, 127, 255, 255, 255, 192, 96, 96, 240, 252, 254, 255, 255,0,0,0,0,0,0,0,0 180 DATA 3, 7, 15, 31, 63, 127, 255, 0 190 DATA 255, 255, 255, 255, 255, 255, 255, 120, 251, 251, 253, 254, 255, 255, 255, 0, 128, 192, 224, 240, 120, 190, 255, 0 200 DATA 31, 54, 107, 213, 171, 213, 171, 213, 252, 7, 0, 252, 135, 128, 128, 255, 0, 248, 15, 0, 248, 15, 6, 249, 0, 0, 128, 192, 32, 208, 248, 232 210 DATA 171, 213, 171, 215, 106, 55, 30, 0 220 DATA 0, 7, 252, 0, 3, 254, 0, 0, 14, 248, 3, 30, 240, 0, 0, 0, 24, 112, 192, 0, 0, 0, 0, 0 230 DATA 0, 0, 0, 0, 3, 15, 31, 63, 0, 0, 7, 127, 255, 255, 255, 255, 0, 0, 255, 255, 255, 254, 249, 247, 3, 14, 184, 240, 176, 240, 224, 192 240 DATA 127, 255, 255, 252, 195, 127, 30, 0 250 DATA 255, 252, 131, 127, 255, 248, 0, 0, 15, 255, 252, 240, 128, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0 260 DATA 0, 0, 0, 255, 192, 223, 217, 223, 0, 0, 0, 255, 0, 3, 134, 12, 0, 0, 0, 255, 0, 129, 193, 97, 0, 0, 0, 255, 3, 243, 155, 243 270 DATA 217, 217, 223, 192, 255, 0, 0, 0 280 DATA 159, 176, 48, 0, 255, 0, 0, 0, 241, 25, 25, 0, 255, 0, 0, 0, 227, 179, 155, 3, 255, 0, 0, 0 290 DATA 130, 197, 168, 144, 128, 162, 178, 170, 8, 20, 162, 65, 0, 151, 148, 148, 32, 81, 138, 4, 0, 29, 161, 161, 131, 69, 41, 17, 1, 229, 5, 197 300 DATA 166, 162, 128, 128, 144, 168, 197, 130 310 DATA 148, 103, 0, 0, 65, 162, 20, 8, 165, 29, 0, 0, 4, 138, 81, 32, 1, 229, 1, 1, 17, 41, 69, 131, 320 DATA 32,113,251,127,221,77,197,85,130,199,239,255,104,107,107,107,8,28,190,255,112,175,175,175,32,113,251,254,135,190,191,142,209,89,221,127,255,125,56,16,107,107,152,255,255,247,227,65, 330 DATA 172, 174, 96, 255, 255, 223, 142, 4, 191, 190, 135, 254, 255, 124, 56, 16, 340 DATA 28,28,28,28,28,28,28,28,254,255,7,7,7,7,7,127,254,224,224,224,224,224,255,255,127,7,7,7,7,7,255,254,224,224,224,224,224,224,224,224,224,224,230,230,255,255,6,6, 350 DATA 255, 255, 224, 224, 224, 224, 224, 224, 255, 231, 231, 231, 231, 231, 255, 126, 255, 255, 7, 7, 14, 14, 28, 28, 126, 255, 231, 231, 231, 231, 231, 255, 126, 255, 231, 231, 231, 231, 231, 231, 360 DATA 231,231,231,231,231,231,231,126,
- Listing 2 - FRUIT.OVL
2 OPTION RUN 10 DEFINT a-z 20 z$=CHR$(10)+STRING$(6,8) 30 zz$=CHR$(27)+"I" 40 FOR k=0 TO 7:FOR l=1 TO 4:f$(k)=f$(k)+CHR$(198+((k-1)*8)+l):NEXT:f$(k)=" "+f$(k)+" "+z$+" " 50 FOR l=5 TO 8:f$(k)=f$(k)+CHR$(198+((k-1)*8)+l):NEXT:f$(k)=f$(k)+" "+zz$:NEXT 60 f$(8)=" "+z$+" "+zz$ 70 RESTORE 1220:FOR k=1 TO 6:READ R$(k):NEXT k 80 FOR i=0 TO 9:READ x,y:n$(i)=CHR$(x)+CHR$(10)+CHR$(8)+CHR$(y)+CHR$(27)+"I":NEXT 90 rev$=CHR$(27)+"p":rof$=CHR$(27)+"q" 100 DEF FNat$(x,y)=CHR$(27)+"Y"+CHR$(32+x)+CHR$(32+y) 110 DEF FNcen$(y,a$)=CHR$(27)+"Y"+CHR$(32+y)+CHR$(32+((89-LEN(a$))/2))+a$ 120 cls$=CHR$(27)+"E" 130 DEF FNcb$(y)=CHR$(27)+"Y"+CHR$(32+y)+CHR$(32)+CHR$(27)+"J" 140 CON$=CHR$(27)+"e":COF$=CHR$(27)+"f":PRINT COF$ 150 DEF FNcl$=CHR$(27)+"K" 160 PRINT CHR$(27)+"E"+CHR$(27)+"0" 170 w=PEEK(64504!):RANDOMIZE(w) 180 T=10 190 D$=CHR$(134)+STRING$(10,138)+CHR$(140) 200 F$=CHR$(133)+SPACE$(10)+CHR$(133) 210 E$=CHR$(131)+STRING$(10,138)+CHR$(137):GOSUB 240 220 GOTO 340 230 'CALL screen 240 a$=rev$+SPACE$(70)+rof$:PRINT FNat$(2,11)a$:PRINT FNat$(0,11)a$:PRINT FNat$(1,11)rev$" T H E O N E A R M E D B A N D I T By N Barrington "rof$ 250 PRINT FNat$(4,11)CHR$(150)+STRING$(14,154)+CHR$(158)+STRING$(38,154)+CHR$(158)+STRING$(14,154)+CHR$(156) 260 PRINT FNat$(5,11)CHR$(149)+" "+D$+" "+CHR$(149)+" "+D$+D$+D$+" "+CHR$(149)+" "+D$+" "+CHR$(149) 270 PRINT FNat$(6,11)CHR$(149)+" "+F$+" "+CHR$(149)+" "+F$+F$+F$+" "+CHR$(149)+" "+F$+" "+CHR$(149) 280 PRINT FNat$(7,11)CHR$(149)+" "+F$+" "+CHR$(149)+" "+F$+F$+F$+" "+CHR$(149)+" "+F$+" "+CHR$(149) 290 PRINT FNat$(8,11)CHR$(149)+" "+E$+" "+CHR$(149)+" "+E$+E$+E$+" "+CHR$(149)+" "+E$+" "+CHR$(149) 300 PRINT FNat$(9,11)CHR$(147)+STRING$(14,154)+CHR$(155)+STRING$(38,154)+CHR$(155)+STRING$(14,154)+CHR$(153) 310 PRINT FNat$(12,10)CHR$(134)+STRING$(33,138)+CHR$(140)+" "+CHR$(134)+STRING$(33,138)+CHR$(140) 320 FOR x=13 TO 29:PRINT FNat$(x,10)CHR$(133)+SPACE$(33)+CHR$(133)+" "+CHR$(133)+SPACE$(33)+CHR$(133):NEXT x 330 PRINT FNat$(30,10)CHR$(131)+STRING$(33,138)+CHR$(137)+" "+CHR$(131)+STRING$(33,138)+CHR$(137):RETURN 340 PRINT FNat$(13,11)" ____ ____ "+F$(2)" "+n$(2) 350 PRINT FNat$(16,11)" ____ "+F$(2)+" "+F$(2)+" "+n$(4) 360 s$=" " 370 PRINT FNat$(19,13)" " F$(2) s$ F$(2) S$ F$(2) s$ s$ n$(6) 380 PRINT FNat$(22,13)" " F$(4) s$ F$(4) s$ F$(4) s$ s$ n$(1)" "n$(0) 390 PRINT FNat$(25,13)" " F$(4) s$ F$(4) s$ F$(7) s$ S$ n$(1)" "n$(0) 400 PRINT FNat$(28,13)" " F$(7) s$ F$(7) S$ F$(7) s$ s$ n$(2)" " n$(5) 410 PRINT FNat$(13,50)" " F$(3) s$ F$(3) S$ F$(3) s$ S$ n$(8) 420 PRINT FNat$(16,50)" " F$(3) s$ F$(3) S$ F$(7) S$ S$ n$(8) 430 PRINT FNat$(19,50)" " F$(5) s$ F$(5) s$ F$(5) s$ S$ n$(8) 440 PRINT FNat$(22,50)" " F$(5) s$ F$(5) s$ F$(7) S$ S$ n$(8) 450 PRINT FNat$(25,50)" " F$(6) s$ F$(6) S$ F$(6) S$ S$ n$(8) 460 PRINT FNat$(28,50)" " F$(6) S$ F$(6) S$ F$(7) S$ S$ n$(8) 470 GOSUB 1070:GOTO 980 480 ok=FRE(""):PRINT FNat$(7,68)" " 490 PRINT FNat$(10,0)CHR$(27)"K" FNat$(11,0)CHR$(27)"K" 500 r=INT(RND*10)+10:FOR i=1 TO r 510 GOSUB 1390 520 A$=F$(a) 530 GOSUB 1410 540 B$=F$(b) 550 GOSUB 1430 560 C$=F$(c) 570 PRINT FNat$(6,31)a$:PRINT FNat$(6,43)b$:PRINT FNat$(6,55)C$ 580 NEXT i:GOSUB 1370 590 R=INT(RND*10)+10:FOR i=1 TO r 600 GOSUB 1410:B$=F$(b) 610 GOSUB 1430 620 C$=F$(c) 630 PRINT FNat$(6,43)b$:PRINT FNat$(6,55)c$ 640 NEXT i:GOSUB 1370 650 R=INT(RND*10)+10:FOR i=1 TO r 660 GOSUB 1430: C$=F$(c) 670 PRINT FNat$(6,55)c$: 680 NEXT i 690 GOSUB 1370:T=T-1:FOR i=1 TO 1000:NEXT 700 GOSUB 1070 710 PRINT FNat$(10,0)CHR$(27)"K"FNAT$(11,0)CHR$(27)"K" 720 GOSUB 1370:IF C=2 THEN GOTO 750 730 IF A$=B$ THEN GOTO 800 740 GOTO 970 750 FOR i=1 TO 1000:NEXT i:IF B=2 THEN GOTO 770 760 W=2 :GOTO 890 770 IF A=2 THEN GOTO 790 780 W=4 :GOTO 890 790 W=6 :GOTO 890 800 FOR i=1 TO 1000:NEXT i:IF A$=C$ THEN GOTO 830 810 IF C=7 THEN GOTO 830 820 GOTO 980 830 ON A GOTO 980,980,880,850,880,880,860:GOTO 980 840 W=12 :GOTO 890 850 W=10 :GOTO 890 860 W=25 :GOSUB 1150 870 GOTO 890 880 W=8 :GOTO 890 890 IF W>4 THEN GOSUB 1190:GOTO 920 900 IF W=4 THEN GOSUB 1200:GOTO 920 910 IF W=2 THEN GOSUB 1210:GOTO 920 920 FOR i=1 TO W 930 T=T+1:PRINT CHR$(7);: 940 GOSUB 1070 950 NEXT i 960 W=0 970 j=INT(RND*12):IF j<4 THEN GOTO 1020 980 ok=FRE(""):PRINT FNat$(8,0)" ":Z$=INKEY$:IF Z$="" THEN GOTO 980 990 IF T<1 THEN GOTO 1100 1000 IF Z$=CHR$(27) THEN I=T:FOR T=i TO 0 STEP -1:GOSUB 1070:OUT 248,11:OUT 248,12:FOR j=1 TO 100:NEXT:NEXT:GOTO 1120 1010 GOTO 480 1020 X=0 1030 FOR j=1 TO 50:X=4:GOSUB 1080:FOR i=1 TO 500:NEXT i:IF INKEY$=" " THEN t=t+1:fl=1:j=51:GOTO 1055 1040 x=5:GOSUB 1080:FOR i=1 TO 500:NEXT i:IF INKEY$=" " THEN fl=2:j=51:GOTO 1055 1050 X=6:GOSUB 1080:FOR i=1 TO 500:NEXT i:IF INKEY$=" " THEN fl=3:j=51:GOTO 1055 1051 fl=0 1055 NEXT 1056 IF fl=1 THEN 480 1057 IF fl=2 THEN 710 1058 IF fl=3 THEN 1230 1060 GOTO 1030 1070 PRINT FNat$(6,14) n$(0)" " n$(0)" " n$((t\100)MOD 10)" "n$((t\10)MOD 10)" " n$(t MOD 10):RETURN 1080 PRINT FNat$(7,68)R$(X)CHR$(7) 1090 RETURN 1100 GOSUB 240:FOR i=1 TO 500:NEXT i:PRINT rev$ FNat$(7,29)" SORRY YOU HAVE RUN OUT OF TOKENS "rof$ 1110 FOR i=1 TO 3000:NEXT i 1120 FOR i=0 TO 15:FOR j=1 TO 25:NEXT j:PRINT FNat$((31-(i*2)),0)STRING$(86,32);:PRINT FNat$((0+(i*2)),0)STRING$(86,32);:NEXT i 1130 PRINT con$ CHR$(27)+"1" 1140 END 1150 PRINT FNat$(11,0)CHR$(27)"K"FNat$(10,0)CHR$(27)"K" 1160 FOR i=1 TO 20:PRINT CHR$(7);FNat$(7,68)" JACKPOT!!" 1170 PRINT FNat$(7,68)rev$" JACKPOT!!"rof$ 1180 PRINT FNat$(7,68)" ":NEXT:RETURN 1190 PRINT FNat$(6,31)rev$ a$ FNat$(6,43)b$ FNat$(6,55)c$ rof$:RETURN 1200 PRINT FNat$(6,43)rev$ b$ FNat$(6,55)c$ rof$:RETURN 1210 PRINT FNat$(6,55)rev$ c$ rof$:RETURN 1220 DATA ,,,"EXTRA TURN"," HOLD ALL ","**NUDGE**" 1230 PRINT FNat$(11,0)CHR$(27)"K"FNat$(10,0)CHR$(27)"K":v=INT((RND*18)+1) 1240 FOR go=1 TO v :FOR j=1 TO 5+go:OUT 248,11:OUT 248,12:FOR i=1 TO 10-go:NEXT:NEXT:PRINT FNat$(10,((go-1)*5)) f$(0) :NEXT 1250 ok=FRE(""):FOR go=v TO 1 STEP -1:GOSUB 1340 1260 PRINT FNat$(10,((go-1)*5))f$(8) 1270 IF X=1 THEN 1280 ELSE IF X=2 THEN 1290 ELSE 1300 1280 GOSUB 1390:A$=F$(a):GOSUB 1330:PRINT FNat$(6,31)a$:GOTO 1310 1290 GOSUB 1410:B$=F$(b):GOSUB 1330:PRINT FNat$(6,43)b$:GOTO 1310 1300 GOSUB 1430:C$=F$(c):GOSUB 1330:PRINT FNat$(6,55)C$ 1310 NEXT go 1320 PRINT FNat$(7,68)" ":GOTO 710 1330 FOR j=1 TO 10:OUT 248,11:FOR i=1 TO 2:NEXT:OUT 248,12:FOR i=1 TO 20-go:NEXT:NEXT:RETURN 1340 PRINT FNAT$(7,68)" ":X$=INPUT$(1):IF INSTR(" 123",X$)=0 THEN 1340 1350 X=VAL(X$):IF X>3 OR X<1 THEN GOTO 1320 1360 RETURN 1370 OUT 248,11:FOR i=1 TO 5:NEXT:OUT 248,12:RETURN 1380 DATA 189,190,179,179,180,181,180,182,183,184,185,182,185,186,187,179,188,186,188,182,189,190 1390 a=a+1:IF a=8 THEN a=1 1400 RETURN 1410 b=b+1:IF b=8 THEN b=1 1420 RETURN 1430 c=c+1:IF c=8 THEN c=1 1440 RETURN
Controls
1 = LEFT DRUM 2 = CENTER DRUM 3 = RIGHT DRUM SPACE = PLAY EXIT = LEAVE GAME
Loading the program
1.- Insert the CP/M disc on side 2 2.- Write BASIC and wait for it to load 3.- Remove the CP/M disk and insert the disk containing the game The One Armed Bandit 4.- Type run "Fruit" and press the "ENTER" key
Download
- The One Armed Bandit (game in dsk format, compressed with zip)