home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frostbyte's 1980s DOS Shareware Collection
/
floppyshareware.zip
/
floppyshareware
/
USCX
/
GAMES-14.ZIP
/
SLOTCOLR.BAS
< prev
next >
Wrap
BASIC Source File
|
1980-01-01
|
10KB
|
211 lines
10 M=25
20 RANDOMIZE INT(VAL(MID$(TIME$,7,2)))
30 PRINT "Sound effects (Y/N) ?"
40 NS$=INKEY$: IF NS$="" GOTO 40
50 WIDTH 80:SCREEN 0,1,0,0:COLOR 7,0,2:CLS
60 KEY OFF:GOSUB 1620:COLOR 7,0:CLS
70 REM 'CONVERTED FOR IBM-PC FROM 101 BASIC COMPUTER GAMES BY DIGITAL
80 REM 'EQUIPMENT CORP. SUBMITTED TO DIGITAL BY ROB HOFFBERG OF ROSLYN N.Y.
90 REM 'AUTHOR UNKNOWN
100 REM 'ENHANCED FOR COLOR AND SOUND BY ARNOLD THOMSEN OF SCOTTSDALE, AZ
110 PRINT "OK ";N$;" Here are the odds:"
120 LOCATE 5,10:PRINT "SYMBOL HOW MANY PAYOUT"
130 LOCATE 6,10:PRINT "111111111111111111111111111111"
140 LOCATE 7,10:PRINT "CHERRY 3 $2.00"
150 LOCATE 8,10:PRINT "CHERRY 2 $1.00 LEFT & MID WINDOWS ONLY!"
160 LOCATE 9,10:PRINT "CHERRY 1 $0.50 LEFT WINDOW ONLY!"
170 LOCATE 11,10:PRINT "PLUM 3 $5.00"
180 LOCATE 12,10:PRINT "ORANGE 3 $7.50"
190 LOCATE 13,10:PRINT "*BAR* 3 $10.00"
200 LOCATE 15,10:COLOR 6: PRINT " LEMONS ALWAYS LOOSE":COLOR 7,0
210 LOCATE 20,5:PRINT "When the message PULL appears, press ENTER to PULL."
220 LOCATE 21,5:PRINT "Or type END to end the session."
230 LOCATE 23,5:PRINT "When you are ready to begin press ENTER.";:INPUT Z9$
240 L$=CHR$(186)
250 S$=CHR$(205)
260 B$=CHR$(186)
270 DIM W$(4)
280 W$(1)=" CHERRY ":W$(2)=" ":W$(3)=" *BAR* ":W$(4)=" PLUM "
290 REM "WHEEL ONE
300 DIM V$(7)
310 V$(1)=" ORANGE ":V$(2)=" PLUM ":V$(3)=" LEMON ":V$(4)=" *BAR* "
320 V$(7)=" CHERRY ":V$(5)=" CHERRY ":V$(6)=" CHERRY "
330 REM "WHEEL TWO
340 DIM V1$(7)
350 V1$(1)=" *BAR* ":V1$(2)=" LEMON ":V1$(3)=" PLUM "
360 V1$(4)=" CHERRY ":V1$(5)=" PLUM ":V1$(6)=" ORANGE ":V1$(7)=" CHERRY "
370 REM "WHEEL THREE
380 DIM V3$(5)
390 V3$(1)=" PLUM ":V3$(2)=" *BAR* ":V3$(3)=" CHERRY ":V3$(4)=" LEMON "
400 V3$(5)=" ORANGE "
410 COLOR 15,0:CLS
420 Y=16:FOR X=1 TO 18:LOCATE X,Y:PRINT S$:NEXT X
430 X=18:FOR Y=17 TO 50:LOCATE X,Y:PRINT B$:NEXT Y
440 Y=51:FOR X=18 TO 1 STEP-1:LOCATE X,Y:PRINT S$:NEXT X
450 X=1:FOR Y=50 TO 17 STEP-1:LOCATE X,Y:PRINT L$:NEXT Y
460 COLOR 4,1
470 FOR X = 2 TO 17
480 LOCATE X,17
490 FOR Z = 1 TO 17:PRINT CHR$(36);CHR$(1);:NEXT Z
500 NEXT X
510 Q$ = "QUALITY"
520 LOCATE 3,30:COLOR 15,1:PRINT Q$
530 GOSUB 550:GOTO 590
540 REM "ARM
550 LOCATE 14,52:PRINT "/";
560 Y=52:FOR X=13 TO 8 STEP-1:LOCATE X,Y:PRINT "//";:Y=Y+1:NEXT X
570 FOR X=7 TO 6 STEP-1:LOCATE X,57:PRINT STRING$(3,196):NEXT X
580 FOR X = 1 TO 512:NEXT:RETURN
590 LOCATE 13,28:COLOR 15,1:PRINT "P A Y O U T":LOCATE 14,33
600 X=15:FOR Y=24 TO 42:LOCATE X,Y:PRINT L$:NEXT Y
610 FOR X=15 TO 17:LOCATE X,43:PRINT S$:NEXT X
620 FOR Y=42 TO 24 STEP-1:LOCATE 17,Y:PRINT B$:NEXT Y
630 FOR X=17 TO 15 STEP-1:LOCATE X,23:PRINT S$:NEXT X
640 COLOR 15,0
650 REM "******LEFT WINDOW*****
660 FOR Y=18 TO 26:LOCATE 5,Y:PRINT L$:NEXT Y
670 FOR X=5 TO 7:LOCATE X,27:PRINT S$:NEXT X
680 FOR Y=26 TO 18 STEP-1:LOCATE 7,Y:PRINT B$:NEXT Y
690 FOR X=7 TO 5 STEP-1:LOCATE X,18:PRINT S$:NEXT X
700 REM "*****MID WINDOW*****
710 FOR Y=30 TO 37:LOCATE 5,Y:PRINT L$:NEXT Y
720 FOR X=5 TO 7:LOCATE X,38:PRINT S$:NEXT X
730 FOR Y=37 TO 30 STEP-1:LOCATE 7,Y:PRINT B$:NEXT Y
740 FOR X=7 TO 5 STEP-1:LOCATE X,29:PRINT S$:NEXT X
750 REM "*****RIGHT WINDOW*****
760 FOR Y=41 TO 48:LOCATE 5,Y:PRINT L$:NEXT Y
770 FOR X=5 TO 7:LOCATE X,49:PRINT S$:NEXT X
780 FOR Y=48 TO 41 STEP-1:LOCATE 7,Y:PRINT B$:NEXT Y
790 FOR X=7 TO 5 STEP-1:LOCATE X,40:PRINT S$:NEXT X
800 REM "DO YOU PULL OR END
810 LOCATE 21,24:PRINT "YOU NOW HAVE ";:PRINT USING "$$###.##";M
815 IF M=0 THEN LOCATE 23,12:PRINT "YOU ARE BROKE! AT ";TIME$;" ON ";DATE$:END
820 LOCATE 22,26:PRINT "PULL(ENTER)/END";:INPUT A$
830 IF A$="END" OR A$="E" THEN 1570
840 COLOR 0,0:LOCATE 22,26:PRINT "PULL(ENTER)/END? ":GOSUB 550
850 LOCATE 16,24:COLOR 0,0:E$=" ":PRINT E$;E$;E$;E$;" "
860 LOCATE 6,19:PRINT E$;E$:LOCATE 6,30:PRINT E$;E$:LOCATE 6,41:PRINT E$;E$
870 COLOR 15,1:GOSUB 550
880 REM " * PICK THE WHEELS
890 FOR I=1 TO 2:Z(I)=INT((RND*7)+1):NEXT I
900 Z(3)=INT((RND*5)+1)
910 COLOR 7,0
920 REM "***** ROLL ALL WINDOWS AND PICK LEFT *****
930 FOR X=1 TO 10:FOR Y=1 TO 4:LOCATE 6,19:PRINT W$(Y)
940 LOCATE 6,30:PRINT W$(Y):LOCATE 6,41:PRINT W$(Y):NEXT Y:NEXT X
950 IF V$(Z(1)) = " CHERRY " THEN COLOR 12,0
960 IF V$(Z(1)) = " ORANGE " THEN COLOR 12,6
970 IF V$(Z(1)) = " PLUM " THEN COLOR 9,4
980 IF V$(Z(1)) = " LEMON " THEN COLOR 14,0
990 IF V$(Z(1)) = " *BAR* " THEN COLOR 31,0
1000 LOCATE 6,19:PRINT V$(Z(1)):COLOR 7,0
1010 IF NS$ = "N" OR NS$ = "n" GOTO 1030 ELSE SOUND 200,2
1020 REM " ***** ROLL MID AND RIGHT AND PICK MID *****
1030 FOR X=1 TO 15:FOR Y=1 TO 4
1040 LOCATE 6,30:PRINT W$(Y):LOCATE 6,41:PRINT W$(Y):NEXT Y:NEXT X
1050 IF V1$(Z(2)) = " CHERRY " THEN COLOR 12,0
1060 IF V1$(Z(2)) = " ORANGE " THEN COLOR 12,6
1070 IF V1$(Z(2)) = " PLUM " THEN COLOR 9,4
1080 IF V1$(Z(2)) = " LEMON " THEN COLOR 14,0
1090 IF V1$(Z(2)) = " *BAR* " THEN COLOR 31,0
1100 LOCATE 6,30:PRINT V1$(Z(2)):COLOR 7,0
1110 IF NS$ = "N" OR NS$ = "n" GOTO 1130 ELSE SOUND 300,2
1120 REM "***** ROLL RIGHT AND PICK RIGHT *****
1130 FOR X=1 TO 20:FOR Y=1 TO 4
1140 LOCATE 6,41:PRINT W$(Y):NEXT Y:NEXT X
1150 IF V3$(Z(3)) = " CHERRY " THEN COLOR 12,0
1160 IF V3$(Z(3)) = " ORANGE " THEN COLOR 12,6
1170 IF V3$(Z(3)) = " PLUM " THEN COLOR 9,4
1180 IF V3$(Z(3)) = " LEMON " THEN COLOR 14,0
1190 IF V3$(Z(3)) = " *BAR* " THEN COLOR 31,0
1200 LOCATE 6,41:PRINT V3$(Z(3)):COLOR 7,0
1210 COLOR 7,0
1220 IF NS$ = "N" OR NS$ = "n" GOTO 1240 ELSE SOUND 400,2
1225 FOR X= 1 TO 512:NEXT X 'DELAY
1230 REM "DO I HAVE 3 OF A KIND
1240 IF V$(Z(1))<>V1$(Z(2)) THEN 1370
1250 IF V1$(Z(2))<>V3$(Z(3)) THEN 1370
1260 IF V$(Z(1))<>" CHERRY " THEN 1280
1270 LOCATE 16,27:PRINT "YOU WIN $2.00 ":M=M+2:GOSUB 5100:GOTO 800
1280 IF V$(Z(1))<>" PLUM " THEN 1300
1290 LOCATE 16,27:PRINT "YOU WIN $5.00 ":M=M+5:GOSUB 4000:GOTO 800
1300 IF V$(Z(1))<>" ORANGE " THEN 1320
1310 LOCATE 16,27:PRINT "YOU WIN $7.50 ":M=M+7.5:GOSUB 3000:GOTO 800
1320 IF V$(Z(1))<>" *BAR* " THEN 1340
1330 LOCATE 16,27:PRINT "YOU WIN $10.00 ":M=M+10:GOSUB 2000:GOTO 800
1340 REM "LEMONS
1350 LOCATE 16,28:PRINT "LEMONS LOSE!":M=M-.25:GOTO 800
1360 REM
1370 REM "DO I HAVE CHERRIES
1380 IF V$(Z(1))<>" CHERRY " THEN 1460
1390 IF V1$(Z(2))<>" CHERRY " THEN 1440
1400 REM
1410 REM "2 CHERRIES
1420 LOCATE 16,27:PRINT "YOU WIN $1.00 ":M=M+1:GOSUB 5000:GOTO 800
1430 REM
1440 REM " 1 CHERRY
1450 LOCATE 16,27:PRINT "YOU WIN $0.50 ":M=M+.5:GOTO 800
1460 REM
1470 REM " GOT SCHMALTZ
1480 ON Z(3) GOSUB 1500,1510,1520,1530,1540,1550,1560
1490 M=M-.25:GOTO 800
1500 LOCATE 16,25:FG=3:COLOR FG,0:PRINT "TRY BINGO INSTEAD ":RETURN
1510 LOCATE 16,25:FG=6:COLOR FG,0:PRINT "HA HA YOU LOSE ":RETURN
1520 LOCATE 16,25:FG=5:COLOR FG,0:PRINT "ZILCH-O ":RETURN
1530 LOCATE 16,25:FG=4:COLOR FG,0:PRINT "TRY AGAIN SUCKER ":RETURN
1540 LOCATE 16,24:FG=1:COLOR FG,7:PRINT "TRY VEGAS INSTEAD ":RETURN
1550 LOCATE 16,25:FG=2:COLOR FG,0:PRINT "YOU GOT SCHMALTZ ":RETURN
1560 LOCATE 16,25:FG=23:COLOR FG,0:PRINT "BACK TO STAR TREK":RETURN
1570 LOCATE 16,24:COLOR 15,1:PRINT " BYE-BYE "
1580 LOCATE 17,29:PRINT N$
1590 A$=INKEY$:IF A$="" THEN GOTO 1590
1600 END
1610 END
1620 FOR J=2 TO 22
1630 LOCATE 2,2:PRINT CHR$(201):LOCATE 2,79:PRINT CHR$(187)
1640 LOCATE 23,2:PRINT CHR$(200):LOCATE 23,79:PRINT CHR$(188)
1650 LOCATE J,2:PRINT CHR$(186)
1660 LOCATE J,79:PRINT CHR$(186)
1670 NEXT J
1680 FOR J=3 TO 78
1690 LOCATE 2,J:PRINT CHR$(205)
1700 LOCATE 23,J:PRINT CHR$(205)
1710 NEXT J
1720 COLOR 5
1730 LOCATE 4,4:PRINT "W E L C O M E T O . . ."
1740 LOCATE 8,30:PRINT "I B M ' S C A S I N O"
1750 LOCATE 17,4:PRINT "Today you will lose your money at IBM's famous slot machine."
1760 LOCATE 18,4:PRINT "You have been given a credit line of $25.00. Therefore at 25 a pull you"
1770 LOCATE 19,4:PRINT "have a minimum of 100 pulls!"
1780 LOCATE 20,4:PRINT "By the way what is your name";:INPUT N$
1790 RETURN
2000 IF NS$="N" OR NS$="n" THEN RETURN 'STARS AND STRIPES FOREVER
2010 PLAY "T220 L4 C2 O3 B-AA2 G+ A A..... G+A A2 G+ A "
2020 PLAY "O4 C O3 A. O4 C O3 B-1 G P4 G2 F+ G G2 F+G"
2030 PLAY "B-..... A G A O4 C2.D2. D O3 G.... P4"
2040 PLAY "O4 C2 C2 O3 B- A A2 G+ A A..... G+ A A2 G+ A B- AGE"
2050 PLAY "G1 F P4 F2 F2 EF A-2 GF O4 F.... O3 FGA O4 C"
2060 PLAY "P2 P4 O3 CDA G2 F O4 F8"
2070 RETURN
3000 IF NS$="N" OR NS$="n" THEN RETURN 'ENTERTAINER
3010 A$="O3 D8 D+8 E8 O4 C O3 E8 O4 C O3 E8 O4 C2."
3020 PLAY "T160 L4;XA$; O4 L8 CDD+ECDE4 O3 B O4 DC2."
3030 PLAY "XA$;L8 O3 AGF+A O4 C E4 DC O3 A O4 D2."
3040 PLAY "XA$; O4 L8 CDD+ECDE4 O3 B O4 D"
3050 PLAY "C2.CDECDE4CDCECDE4CDCECDE4 O3 B O4 D4 C2."
3060 RETURN
4000 IF NS$="N" OR NS$="n" THEN RETURN 'I LEFT MY HEART IN SAN FRANCISCO
4005 S1$ = "F2..GAB-GC1CO2B O3 C"
4010 PLAY "T100 O3 L4 DE-G;XS1$;G....B-A.F8D....P8"
4020 PLAY "L4 DE-EL8FE-DE-L4F....G"
4030 PLAY "L8 AGFGA2. AG+ A8 B-.... C 03 A. C8 F2.. G8 F8 E- D E-G"
4040 PLAY "O3;XS1$; A.... AB- O4CD.... P8 DC+DE-2. D O3 B O4 CDC"
4050 PLAY "O3 G... P8 GF+G O4 E-... O3 G O4 D2 D2 O3 B-...."
4060 RETURN
5000 IF NS$="N" OR NS$="n" THEN RETURN 'SIDEWALKS
5010 PLAY "T200 L2 O4 G.E.D.C.DC4 O3 A B4 O4 C...":RETURN
5100 IF NS$="N" OR NS$="n" THEN RETURN 'DONNA E MOBILE
5110 PLAY "T200 L4 O4 EEE G8 F8 D2 DDD F8 E8 C2 EDC C8"
5120 PLAY "O3 B8 B2 O4 DC O3 A A8 G8 G2"
5130 RETURN