99 REM control
100 GOSUB 9000: ' variables 110 GOTO 8500: ' title screen 120 GOSUB 13000:' instructions? 130 GOSUB 12000:' instructions 150 GOSUB 5000: ' draw fruit machine graphics 155 GOSUB 6000: ' decide if holds to be given 160 GOSUB 7500: ' input credits or end game 165 GOSUB 3500: ' start 170 GOSUB 1000: ' roll reels 180 GOSUB 3000: ' check for win 185 GOSUB 8000: ' if win available then display it, returning to line 150 190 GOSUB 5500: ' decide if nudges to be given 200 GOTO 150 210 REM 699 REM silly sound routine 700 cnt=0:count=0:RESTORE 750:ENT -1,1,1,4,2,-1,4,1,1,5:ENV 1,5,3,1,4,-1,5,1,0,50,11,-1,10 710 SOUND 1,snd,15,15,1,1,0:SOUND 2,snd+100,25,15,1,1,0:SOUND 3,snd+200,35,15,1,1,0 720 cnt=cnt+1:IF cnt=7 THEN READ snd:cnt=0:count=count+1:IF count=8 THEN 800 730 GOTO 710 750 DATA 100,300,200,350,150,300,100,50 800 cnt=0:count=0:RESTORE 750:ENT -1,1,1,4,2,-1,4,1,1,5:ENV 1,5,3,1,4,-1,5,1,0,50,11,-1,10 810 SOUND 1,snd,10,15,1,1,1:SOUND 2,snd+100,15,15,1,1,0:SOUND 3,snd+200,25,15,1,1,0 820 cnt=cnt+1:IF cnt=7 THEN READ snd:cnt=0:count=count+1:IF count=8 THEN 900 830 GOTO 810 900 CALL &BB00:cnt=0:count=0:RESTORE 750:ENT -1,1,1,4,2,-1,4,1,1,5:ENV 1,5,3,1,4,-1,5,1,0,50,11,-1,10 910 SOUND 1,snd,3,15,1,1,1:SOUND 2,snd+100,9,15,1,1,0:SOUND 3,snd+200,15,15,1,1,0 920 cnt=cnt+1:IF cnt=7 THEN READ snd:cnt=0:count=count+1:IF count=8 THEN RETURN 930 GOTO 910 950 IF flga=1 THEN LOCATE 17,13:PRINT CHR$(230):LOCATE 17,12:PRINT CHR$(231):LOCATE 16,13:PRINT CHR$(232) ELSE LOCATE 17,13:PRINT CHR$(230):LOCATE 16,13:PRINT CHR$(233) 955 IF INKEY$<>"" THEN 120 960 IF flga=1 THEN flga=0 ELSE IF flga=0 THEN flga=1 970 RETURN 999 REM decide which reel to roll 1000 credits=credits-1 1002 IF reel1$="H" AND reel2$="H" AND reel3$="H" THEN GOTO 1030 1005 IF reel1$="H" THEN 1010 ELSE GOSUB 1500 1010 IF reel2$="H" THEN 1020 ELSE GOSUB 2000 1020 IF reel3$="H" THEN 1030 ELSE GOSUB 2500 1030 RETURN 1499 REM roll reel one 1500 FOR outloop=1 TO INT(RND*3)+20 1505 reel$(1)=RIGHT$(reel$(1),LEN(reel$(1))-1)+LEFT$(reel$(1),1) 1510 FOR loop=1 TO 3:PEN #1,0:LOCATE #1,2,loop:PRINT #1,MID$(reel$(1),1+(loop-1),1) 1512 NEXT loop 1520 NEXT outloop 1525 SOUND 1,500,3,7:SOUND 2,503,3,7:SOUND 3,506,3,7:' reel stop sound 1530 RETURN 1999 REM roll reel two 2000 FOR outloop=1 TO INT(RND*3)+20 2005 reel$(2)=RIGHT$(reel$(2),LEN(reel$(2))-1)+LEFT$(reel$(2),1) 2010 FOR loop=1 TO 3:PEN #2,0:LOCATE #2,2,loop:PRINT #2,MID$(reel$(2),1+(loop-1),1) 2030 NEXT loop 2050 NEXT outloop 2055 SOUND 1,480,3,7:SOUND 2,483,3,7:SOUND 3,486,3,7:' reel stop sound 2060 RETURN 2499 REM roll reel three 2500 FOR outloop=1 TO INT(RND*3)+20 2505 reel$(3)=RIGHT$(reel$(3),LEN(reel$(3))-1)+LEFT$(reel$(3),1) 2510 FOR loop=1 TO 3:PEN #3,0:LOCATE #3,2,loop:PRINT #3,MID$(reel$(3),1+(loop-1),1) 2530 NEXT loop 2550 NEXT outloop 2555 SOUND 1,460,3,7:SOUND 2,463,3,7:SOUND 3,466,3,7:' reel stop sound 2560 RETURN 2999 REM check for win 3000 value$=MID$(reel$(1),2,1):value$=value$+MID$(reel$(2),2,1):value$=value$+MID$(reel$(3),2,1) 3010 IF value$=win1$ THEN win=win(1):RETURN 3020 IF LEFT$(value$,2)=win2$ THEN win=win(2):RETURN 3030 IF value$=win3$ THEN win=win(3):RETURN 3040 IF LEFT$(value$,2)=win4$ THEN win=win(4):RETURN 3050 IF value$=win5$ THEN win=win(5):RETURN 3060 IF value$=win6$ THEN win=win(6):RETURN 3070 IF LEFT$(value$,2)=win7$ THEN win=win(7):RETURN 3080 IF value$=win8$ THEN win=win(8):RETURN 3090 IF value$=win9$ THEN win=win(9):RETURN 3100 IF value$=win10$ THEN win=win(10):RETURN 3110 IF value$=win11$ THEN win=win(11):RETURN 3120 IF value$=win12$ THEN win=win(12):RETURN 3130 IF value$=win13$ THEN win=win(13):RETURN 3140 IF value$=win14$ THEN win=win(14):RETURN 3150 IF value$=win15$ THEN win=win(15):RETURN 3160 IF LEFT$(value$,2)=win16$ THEN win=win(16):RETURN 3170 IF value$=win17$ THEN win=win(17):RETURN 3180 IF value$=win18$ THEN win=win(18):RETURN 3190 IF value$=win19$ THEN win=win(19):RETURN 3200 IF value$=win20$ THEN win=win(20):RETURN 3210 win=0:RETURN 3499 REM start 3500 INK 8,5,15 3510 IF INKEY(18)=0 THEN INK 8,10:SOUND 1,100,3,7:SOUND 2,102,5,7:SOUND 3,104,7,7:RETURN 3520 GOTO 3510 3999 REM nudge routine 4000 PEN 2:PAPER 1:SPEED INK 10,10 4005 GOSUB 4300:nudges=INT(RND*8)+1:LOCATE 13,12:PRINT nudges:IF INKEY(47)<>0 THEN 4005 4007 nudge=nudges 4015 IF nudges=0 THEN 4100 ELSE LOCATE 13,12:PRINT nudges 4017 tmp1$=reel$(1):tmp2$=reel$(2):tmp3$=reel$(3) 4020 IF INKEY(10)=0 THEN reel$(1)=RIGHT$(reel$(1),15):reel$(1)=reel$(1)+LEFT$(tmp1$,1) ELSE 4030 4025 FOR lop=1 TO 3:PEN #1,0:LOCATE #1,2,lop:PRINT #1,MID$(reel$(1),1+(lop-1),1):NEXT lop:nudges=nudges-1:GOTO 4015 4030 IF INKEY(11)=0 THEN reel$(2)=RIGHT$(reel$(2),15):reel$(2)=reel$(2)+LEFT$(tmp2$,1) ELSE 4040 4035 FOR lop=1 TO 3:PEN #2,0:LOCATE #2,2,lop:PRINT #2,MID$(reel$(2),1+(lop-1),1):NEXT lop:nudges=nudges-1:GOTO 4015 4040 IF INKEY(3)=0 THEN reel$(3)=RIGHT$(reel$(3),15):reel$(3)=reel$(3)+LEFT$(tmp3$,1) ELSE 4050 4045 FOR lop=1 TO 3:PEN #3,0:LOCATE #3,2,lop:PRINT #3,MID$(reel$(3),1+(lop-1),1):NEXT lop:nudges=nudges-1:GOTO 4015 4050 IF INKEY(20)=0 THEN temp$=RIGHT$(reel$(1),1):temp$=temp$+LEFT$(tmp1$,15):reel$(1)=temp$:temp$="" ELSE 4060 4055 FOR lop=1 TO 3:PEN #1,0:LOCATE #1,2,lop:PRINT #1,MID$(reel$(1),1+(lop-1),1):NEXT:nudges=nudges-1:GOTO 4015 4060 IF INKEY(12)=0 THEN temp$=RIGHT$(reel$(2),1):temp$=temp$+LEFT$(tmp2$,15):reel$(2)=temp$:temp$="" ELSE 4070 4065 FOR lop=1 TO 3:PEN #2,0:LOCATE #2,2,lop:PRINT #2,MID$(reel$(2),1+(lop-1),1):NEXT lop:nudges=nudges-1:GOTO 4015 4070 IF INKEY(4)=0 THEN temp$=RIGHT$(reel$(3),1):temp$=temp$+LEFT$(tmp3$,15):reel$(3)=temp$:temp$="" ELSE 4080 4075 FOR lop=1 TO 3:PEN #3,0:LOCATE #3,2,lop:PRINT #3,MID$(reel$(3),1+(lop-1),1):NEXT lop:nudges=nudges-1:GOTO 4015 4080 IF INKEY(18)=0 THEN 4100 4090 GOTO 4020 4100 GOSUB 3000 4110 IF win>0 THEN GOSUB 8000 4115 GOSUB 5000 4120 RETURN 4199 REM gamble or collect sound routine 4200 SOUND 1,flg,7,7:SOUND 2,flg+2,7,7:SOUND 3,flg+4,7,7 4210 IF flg=1000 THEN flg=900 ELSE IF flg=900 THEN flg=1000:' note value 4220 RETURN 4299 REM nudge sound routine 4300 SOUND 1,flag,10,7:SOUND 2,flag+2,10,7:SOUND 3,flag+4,10,7 4310 IF flag=100 THEN flag=200 ELSE IF flag=200 THEN flag=100 4320 RETURN 4499 REM hold routine 4500 INK 11,3,22:SPEED INK 20,20 4510 IF INKEY(13)=0 THEN reel1$="H":PAPER 0:PEN 1:LOCATE 6,21:PRINT "H":LOCATE 6,22:PRINT "E":LOCATE 6,23:PRINT "L":LOCATE 6,24:PRINT "D" 4520 IF INKEY(14)=0 THEN reel2$="H":PAPER 0:PEN 1:LOCATE 10,21:PRINT "H":LOCATE 10,22:PRINT "E":LOCATE 10,23:PRINT "L":LOCATE 10,24:PRINT "D" 4530 IF INKEY(5)=0 THEN reel3$="H":PAPER 0:PEN 1:LOCATE 14,21:PRINT "H":LOCATE 14,22:PRINT "E":LOCATE 14,23:PRINT "L":LOCATE 14,24:PRINT "D" 4540 IF INKEY(6)=0 THEN reel1$="":reel2$="":reel3$="":PAPER 11:PEN 1:OUTp$="HOLD":inw=21:FOR mnloop=1 TO 4:LOCATE 6,inw:PRINT MID$(OUTp$,mnloop,1):LOCATE 10,inw:PRINT MID$(OUTp$,mnloop,1):LOCATE 14,inw:PRINT MID$(OUTp$,mnloop,1):inw=inw+1:NEXT mnloop 4545 SOUND 1,20,3,7:SOUND 2,40,6,7 4550 IF INKEY(18)=0 THEN INK 11,8:RETURN 4560 GOTO 4510 4999 REM draw fruit machine graphics in mode 0 on screen 5000 DI:SPEED INK 30,30 5005 MOVE 10,10:DRAW 70,200,2:MOVE 630,10:DRAW 570,200,2:MOVE 70,200:DRAW 570,200,2:MOVE 10,10:DRAW 630,10,2:MOVE 10,10:DRAW 10,0,2:MOVE 630,10:DRAW 630,0,2:' lower half outline 5010 MOVE 70,200:DRAW 70,390,3:DRAW 570,390,3:DRAW 570,200,3:' upper half outline 5020 IF prog=0 THEN MOVE 48,120:DRAW 590,120,1 5030 IF prog=0 THEN WINDOW #1,5,7,17,19:WINDOW #2,9,11,17,19:WINDOW #3,13,15,17,19:PAPER #1,4:PAPER #2,4:PAPER #3,4:CLS #1:CLS #2:CLS #3:' windows for reels 5040 IF prog=0 THEN WINDOW #4,13,17,8,10:PAPER #4,8:CLS #4:PEN #4,0:LOCATE #4,1,2:PRINT #4,"START" 5050 IF prog=0 THEN WINDOW #5,4,8,8,10:PAPER #5,9:PEN #5,0:CLS #5:LOCATE #5,1,2:PRINT #5,"NUDGE" 5060 PAPER 11:PEN 1:OUTp$="HOLD" 5065 inw=21 5070 FOR mnloop=1 TO 4 5080 LOCATE 6,inw:PRINT MID$(OUTp$,mnloop,1):LOCATE 10,inw:PRINT MID$(OUTp$,mnloop,1):LOCATE 14,inw:PRINT MID$(OUTp$,mnloop,1) 5090 inw=inw+1:NEXT mnloop 5100 PAPER 0:PEN 0:LOCATE 8,6:PRINT "#":LOCATE 9,6:PRINT USING "##.##";win 5110 PAPER 2:LOCATE 5,2:PEN 0:PRINT "DOUGH:#";:PRINT USING "##.##";dough 5120 PAPER 1:LOCATE 6,12:PEN 2:PRINT "NUDGES:";nudges 5130 PAPER 10:LOCATE 5,14:PEN 3:PRINT "CREDITS:";credits 5135 PAPER 0:LOCATE 9,6:PRINT " " 5140 FOR loop=1 TO 3:PEN #1,0:LOCATE #1,2,loop:PRINT #1,MID$(reel$(1),1+(loop-1),1):NEXT loop:FOR loop=1 TO 3:PEN #2,0:LOCATE #2,2,loop:PRINT #2,MID$(reel$(2),1+(loop-1),1):NEXT loop:FOR loop=1 TO 3:PEN #3,0:LOCATE #3,2,loop 5150 PRINT #3,MID$(reel$(3),1+(loop-1),1):NEXT loop 5190 PAPER 0 5480 prog=1:IF credits=0 AND dough<=0.05 THEN 10500 5490 INK 9,10:RETURN 5499 REM decide whether to give nudges 5500 IF RND>0.87 THEN INK 9,0,26:GOSUB 4000:INK 9,12:RETURN 5510 RETURN 5999 REM decide whether to give holds 6000 IF credits<=0 THEN RETURN ELSE reel1$="":reel2$="":reel3$="" 6005 IF RND<0.73 THEN reel1$="":reel2$="":reel3$="":SPEED INK 40,40:RETURN 6010 GOSUB 4500:RETURN 7499 REM input credits 7500 IF dough>0.05 THEN INK 10,2,17 7501 IF INKEY(68)<>0 THEN 7504 7502 IF INKEY(68)=0 AND ddough>0.5 THEN credits=credits+1:ddough=ddough-1:dough=ddough/10 7503 IF dough>0 THEN SOUND 7,500,3,7 7504 IF credits>0 THEN INK 8,5,15 7505 LOCATE 13,14:PEN 4:PRINT credits:LOCATE 12,2:PEN 1:PRINT USING "##.##";dough 7510 IF INKEY(18)=0 AND credits=0 THEN 10000 ELSE IF INKEY(18)=0 THEN INK 10,14:INK 8,10:RETURN 7515 WHILE INKEY$<>"":WEND 7520 GOTO 7500 7999 REM display win if available then return to line 150 else return 8000 IF win=0 THEN RETURN 8005 INK 9,10:SPEED INK 15,15:PAPER 0 8010 LOCATE 7,4:PEN 11:PRINT "!!WIN!!" 8020 FOR f=100 TO 10 STEP -10:SOUND 1,f,5,7:SOUND 2,f+2,6,7:SOUND 3,f+4,7,7:NEXT 8030 LOCATE 7,6:PRINT "#";USING "##.##";win 8040 PAPER 0:INK 14,0,26:INK 13,26,0:LOCATE 3,15:PEN 13:PRINT "GAMBLE":LOCATE 12,15:PEN 14:PRINT "COLLECT" 8050 GOSUB 4200:IF INKEY(47)=0 THEN 8100 ELSE IF INKEY(18)=0 THEN 8200 ELSE 8050 8099 REM gamble win 8100 IF RND>0.5 THEN wnflg=1 ELSE wnflg=0 8105 IF wnflg=0 THEN 8120 8110 IF wnflg=1 THEN LOCATE 7,4:PEN 14:PRINT "!!WIN!!":FOR f=100 TO 10 STEP -10:SOUND 1,f,5,7:SOUND 2,f+2,6,7:SOUND 3,f+4,7,7:NEXT 8112 win=win*2 8115 LOCATE 8,6:PEN 1:PRINT USING "##.##";win:GOTO 8040 8120 LOCATE 7,4:PEN 15:PRINT " LOSE!!" 8125 FOR f=10 TO 100 STEP 10:SOUND 1,f,5,7:SOUND 2,f+2,6,7:SOUND 3,f+4,7,7:NEXT 8130 IF win=0.1 THEN win=0 ELSE win=win/2 8140 IF win=0 THEN LOCATE 7,4:PRINT " ":GOTO 150 8150 ddough=ddough+(win*10):dough=ddough/10:LOCATE 12,2:PEN 1:PAPER 0:PRINT USING "##.##";dough 8160 PAPER 0:LOCATE 3,15:PRINT SPACE$(16):LOCATE 7,4:PRINT " ":GOTO 150 8199 REM take win 8200 ddough=ddough+(win*10):dough=ddough/10:LOCATE 12,2:PEN 1:PAPER 0:PRINT USING "##.##";dough 8210 PAPER 0:LOCATE 3,15:PRINT SPACE$(16):LOCATE 7,4:PRINT " ":GOTO 150 8499 REM title screen 8500 BORDER 1:CLS:fl=1:INK 12,0,26:INK 13,26,0:SPEED INK 7,7:flga=1:DI:EVERY 10,3 GOSUB 950 8510 FOR loop=1 TO 20 8520 IF fl=1 THEN PEN 12 ELSE PEN 13 8530 LOCATE loop,1:PRINT CHR$(164):LOCATE loop,24:PRINT CHR$(164) 8540 IF fl=1 THEN fl=0 ELSE IF fl=0 THEN fl=1 8550 NEXT 8560 FOR loop=2 TO 23 8570 IF fl=1 THEN PEN 12 ELSE PEN 13 8580 LOCATE 1,loop:PRINT CHR$(164):LOCATE 20,loop:PRINT CHR$(164) 8590 IF fl=1 THEN fl=0 ELSE IF fl=0 THEN fl=1 8600 NEXT 8610 PEN 8:d$="FRUIT MACHINE!":FOR loop=12 TO 5 STEP -1:LOCATE 4,loop:PRINT d$:NEXT:FOR loop=12 TO 6 STEP -1:LOCATE 4,loop:PRINT SPACE$(14):NEXT 8620 PEN 9:LOCATE 2,10:PRINT "(C) Richard Kemley" 8630 PEN 10:LOCATE 3,13:PRINT "DECEMBER 1984." 8640 PEN 12:LOCATE 4,20:PRINT "PRESS":LOCATE 14,20:PRINT "KEY":PEN 13:LOCATE 10,20:PRINT "ANY" 8647 PEN 10:EI 8650 GOSUB 700 8699 REM winning combinations 8700 snd=200:CLS:PEN 3:LOCATE 1,1:PRINT "WINNING COMBINATIONS" 8710 PEN 2:FOR loop=1 TO 20:SOUND 1,snd,5,7:SOUND 2,snd+2,5,7:SOUND 3,snd+4,5,7:LOCATE 1,loop+2:PRINT demo$(loop):snd=snd-10:NEXT 8715 PEN 1:FOR loop=3 TO 22:SOUND 7,RND*1000,5,7:LOCATE 7,loop:PRINT "#":NEXT 8720 PEN 12:LOCATE 4,25:PRINT "PRESS ANY KEY" 8725 PEN 10 8730 GOSUB 700 8799 REM characters 8800 DI:snd=100:CLS:PEN 4:LOCATE 3,1:PRINT "GAME CHARACTERS" 8810 FOR loop=1 TO 16:SOUND 1,snd,5,7:SOUND 2,snd+2,5,7:SOUND 3,snd+4,5,7:PEN (RND*2)+1:LOCATE 1,loop+2:PRINT CHR$(239+loop):LOCATE 3,loop+2:PRINT desc$(loop):snd=snd-5:NEXT 8815 EI 8820 PEN 12:LOCATE 4,25:PRINT "PRESS ANY KEY" 8825 PEN 10 8830 GOSUB 700 8850 GOTO 8500 8999 REM variables 9000 zxz=FRE(""):MODE 0:CLS:RANDOMIZE TIME:SPEED INK 25,25 9003 reel1$="":reel2$="":reel3$="":' if these hold 'H' then reels are held 9005 DIM win(21):RESTORE 9007:FOR f=1 TO 20:READ value:win(f)=value:NEXT 9007 DATA 1,.8,2,1.5,.5,1.5,.5,1,.75,3,.5,.5,.3,.5,1,.75,.5,.75,1,1 9010 FOR loop=240 TO 255:reel$(1)=reel$(1)+CHR$(loop):NEXT 9020 FOR loop=246 TO 255:reel$(2)=reel$(2)+CHR$(loop):NEXT:FOR loop=240 TO 245:reel$(2)=reel$(2)+CHR$(loop):NEXT 9030 FOR loop=250 TO 255:reel$(3)=reel$(3)+CHR$(loop):NEXT:FOR loop=240 TO 249:reel$(3)=reel$(3)+CHR$(loop):NEXT 9035 reel$(mnloop)=reel$(mnloop)+CHR$(random) 9037 DEFREAL d-d 9040 flg=900:flag=100:prog=0:ddough=10:dough=ddough/10:nudges=0 9090 RESTORE 9100:PAPER 0:FOR loop=0 TO 13:READ col:INK loop,col:NEXT:INK 14,1,24:INK 15,16,11 9100 DATA 1,24,20,6,26,0,2,8,10,12,14,16,18,22 9110 win1$=CHR$(240)+CHR$(240)+CHR$(240) 9115 win2$=CHR$(240)+CHR$(240) 9120 win3$=CHR$(241)+CHR$(241)+CHR$(241) 9125 win4$=CHR$(241)+CHR$(241) 9130 win5$=CHR$(242)+CHR$(242)+CHR$(242) 9135 win6$=CHR$(243)+CHR$(243)+CHR$(243) 9140 win7$=CHR$(243)+CHR$(243) 9145 win8$=CHR$(244)+CHR$(244)+CHR$(244) 9150 win9$=CHR$(245)+CHR$(245)+CHR$(245) 9155 win10$=CHR$(246)+CHR$(246)+CHR$(246) 9160 win11$=CHR$(247)+CHR$(247)+CHR$(247) 9165 win12$=CHR$(248)+CHR$(248)+CHR$(248) 9170 win13$=CHR$(249)+CHR$(249)+CHR$(249) 9175 win14$=CHR$(250)+CHR$(250)+CHR$(250) 9180 win15$=CHR$(251)+CHR$(251)+CHR$(251) 9185 win16$=CHR$(251)+CHR$(251) 9190 win17$=CHR$(252)+CHR$(252)+CHR$(252) 9195 win18$=CHR$(253)+CHR$(253)+CHR$(253) 9200 win19$=CHR$(254)+CHR$(254)+CHR$(254) 9205 win20$=CHR$(255)+CHR$(255)+CHR$(255) 9210 DIM demo$(21) 9215 demo$(1)=win1$:demo$(1)=demo$(1)+SPACE$(13):demo$(1)=demo$(1)+STR$(win(1)) 9220 demo$(2)=win2$:demo$(2)=demo$(2)+SPACE$(14):demo$(2)=demo$(2)+STR$(win(2)) 9225 demo$(3)=win3$:demo$(3)=demo$(3)+SPACE$(3):demo$(3)=demo$(3)+STR$(win(3)) 9230 demo$(4)=win4$:demo$(4)=demo$(4)+SPACE$(4):demo$(4)=demo$(4)+STR$(win(4)) 9235 demo$(5)=win5$:demo$(5)=demo$(5)+SPACE$(3):demo$(5)=demo$(5)+STR$(win(5)) 9240 demo$(6)=win6$:demo$(6)=demo$(6)+SPACE$(3):demo$(6)=demo$(6)+STR$(win(6)) 9245 demo$(7)=win7$:demo$(7)=demo$(7)+SPACE$(4):demo$(7)=demo$(7)+STR$(win(7)) 9250 demo$(8)=win8$:demo$(8)=demo$(8)+SPACE$(3):demo$(8)=demo$(8)+STR$(win(8)) 9255 demo$(9)=win9$:demo$(9)=demo$(9)+SPACE$(3):demo$(9)=demo$(9)+STR$(win(9)) 9260 demo$(10)=win10$:demo$(10)=demo$(10)+SPACE$(3):demo$(10)=demo$(10)+STR$(win(10)) 9265 demo$(11)=win11$:demo$(11)=demo$(11)+SPACE$(3):demo$(11)=demo$(11)+STR$(win(11)) 9270 demo$(12)=win12$:demo$(12)=demo$(12)+SPACE$(3):demo$(12)=demo$(12)+STR$(win(12)) 9275 demo$(13)=win13$:demo$(13)=demo$(13)+SPACE$(3):demo$(13)=demo$(13)+STR$(win(13)) 9280 demo$(14)=win14$:demo$(14)=demo$(14)+SPACE$(3):demo$(14)=demo$(14)+STR$(win(14)) 9285 demo$(15)=win15$:demo$(15)=demo$(15)+SPACE$(3):demo$(15)=demo$(15)+STR$(win(15)) 9290 demo$(16)=win16$:demo$(16)=demo$(16)+SPACE$(4):demo$(16)=demo$(16)+STR$(win(16)) 9295 demo$(17)=win17$:demo$(17)=demo$(17)+SPACE$(3):demo$(17)=demo$(17)+STR$(win(17)) 9300 demo$(18)=win18$:demo$(18)=demo$(18)+SPACE$(3):demo$(18)=demo$(18)+STR$(win(18)) 9305 demo$(19)=win19$:demo$(19)=demo$(19)+SPACE$(3):demo$(19)=demo$(19)+STR$(win(19)) 9310 demo$(20)=win20$:demo$(20)=demo$(20)+SPACE$(3):demo$(20)=demo$(20)+STR$(win(20)) 9320 RESTORE 9350 9330 DIM desc$(17) 9340 FOR loop=1 TO 16:READ value$:desc$(loop)=value$:NEXT 9350 DATA The bells!,BAR symbol,Silly shape,Pac-Man,3d box?,Arthur Scargill,Ultimate initials,A Resistor,Thane of Cawdor,A medal,A Game,Floppy Fisk,1989???,Who Knows..,Sensible Arrows,Silly Arrows 9480 GOSUB 9500 9490 RETURN 9499 REM user defined graphics 9500 SYMBOL AFTER 230:' i can define all chars from 230 to 255 now 9510 SYMBOL 240,&18,&24,&42,&5A,&42,&81,&FF,&18 9520 SYMBOL 241,&FF,&0,&FF,&B6,&FE,&B6,&F6,&0 9530 SYMBOL 242,&0,&1C,&22,&49,&5D,&49,&22,&1C 9540 SYMBOL 243,&0,&30,&68,&FC,&E0,&F0,&7C,&30 9550 SYMBOL 244,&0,&FC,&C6,&BF,&A5,&FD,&63,&3F 9560 SYMBOL 245,&18,&24,&42,&A5,&81,&5A,&24,&18 9570 SYMBOL 246,&E7,&A0,&E9,&CA,&AC,&AC,&A,&E9 9580 SYMBOL 247,&0,&0,&3C,&FF,&BD,&81,&81,&0 9590 SYMBOL 248,&7E,&C3,&BD,&B5,&AD,&BD,&C3,&7E 9600 SYMBOL 249,&FF,&10,&28,&54,&AA,&54,&28,&10 9610 SYMBOL 250,&E8,&54,&49,&56,&ED,&80,&C0,&8F 9620 SYMBOL 251,&FF,&99,&A5,&99,&81,&99,&99,&FF 9630 SYMBOL 230,&BC,&6C,&F4,&F8,&7E,&3D,&24,&6C 9640 SYMBOL 231,&3C,&3C,&7E,&2C,&7C,&3C,&18,&FC 9650 SYMBOL 232,&1,&2,&4,&38,&0,&30,&30,&0 9660 SYMBOL 233,&3F,&0,&30,&30,&0,&0,&0,&0 9990 RETURN 9999 REM take the money and run 10000 amount=dough-5:IF amount<0 THEN amount=0 10005 MODE 0:CLS:PEN 1:LOCATE 1,5:PRINT " You won #";USING "##.##";dough 10010 tt=TIME:INK 12,0,26:INK 13,26,0 10020 LOCATE 6,12:PEN 12:PRINT "TRY ";:PEN 13:PRINT "AGAIN" 10030 IF (TIME-tt>6000 OR INKEY$<>"") THEN RUN 10040 GOTO 10030 10499 REM game over 10500 a$="!!GAME OVER!!":FOR loop=1 TO 25:PEN RND*15:LOCATE 4,loop:PRINT a$:SOUND 1,loop*100,10,7:SOUND 2,loop*101,10,7:SOUND 4,loop*99,10,7:NEXT 10505 ERASE win:ERASE reel$:ERASE demo$:ERASE desc$ 10510 RUN 11999 REM instructions 12000 IF a$<>"y" AND a$<>"Y" THEN RETURN 12005 MODE 1:CLS:ins$="PRESS ANY KEY" 12010 LOCATE 5,1:PEN 3:PRINT "***FRUIT MACHINE INSTRUCTIONS***":PEN 1 12030 LOCATE 1,3:PRINT " The aim of the game is to win as muchmoney as possible by both luck andskill. The game is very easy to play...." 12040 LOCATE 1,8:PRINT " The large ENTER key is the STARTbutton and the COLLECT button. The SPACE-BAR is the gamble key and is usedto stop the nudge spinner. On the 12045 PRINT "numeric keypad, the top row of numbersare used, when appropriate, to NUDGE" 12050 PRINT "UP. The next row are used to NUDGE DOWN.The next row are used to HOLD the 1st, 2nd and 3rd reels respectively. The small ENTER key acts as a CANCEL button." 12060 PRINT "The TAB key is used to add credits, atthe expense of your capital. When theCREDITS window flashes, you can entercredits." 12065 ct=1:PEN 2 12067 WHILE INKEY$="" 12070 LOCATE 12+ct,25:PRINT MID$(ins$,ct,1):ct=ct+1:IF ct>LEN(ins$) THEN LOCATE 13,25:PRINT " ":ct=1 12080 FOR wa=1 TO 77:NEXT:WEND:CLS 12100 LOCATE 5,1:PEN 3:PRINT "***FRUIT MACHINE INSTRUCTIONS***":PEN 1 12120 LOCATE 1,3:PRINT " At random points you will be able tohold reels. When this is done, the reelswhich were held will not spin next time.Also at random points, you will receivenudges which will allow you to move the" 12130 PRINT "reels up and down in an attempt to finda winning position." 12140 PRINT:PRINT:PRINT " If you press the START button whenyou have no credits, you are deemed tohave finished the game, and it will end." 12150 PEN 2:ct=1 12160 WHILE INKEY$="" 12170 LOCATE 12+ct,25:PRINT MID$(ins$,ct,1):ct=ct+1:IF ct>LEN(ins$) THEN LOCATE 13,25:PRINT " ":ct=1 12180 FOR wa=1 TO 77:NEXT:WEND 12200 MODE 0:CLS:RETURN 12999 REM instructions? 13000 INK 13,0,26:INK 12,26,0:CLS:LOCATE 1,1:PEN 3:PRINT "INSTRUCTIONS ( / )":LOCATE 15,1:PEN 12:PRINT "Y":LOCATE 17,1:PEN 13:PRINT "N" 13010 a$=INKEY$:IF a$="" THEN 13010 13020 CLS:RETURN |