Compucolor.org – Virtual Media

Listing of file='BERT.BAS;01' on disk='vmedia/berts_bar-sector.ccvf'

1 REM  ** BARTENDER **
2 REM ** ADAPTED FOR COMPUCOLOR II  BY RON COWLING **
3 PLOT 12,15,3,65,0,27,4:PRINT "LOAD BERT.DSP":PLOT 27,27:FOR N= 1TO 2000:NEXT
4 PLOT 27,11,3,0,31:FOR N= 1TO 5:PLOT 10:NEXT :PLOT 27,24
5 CLEAR 1000:DIM IM(70),IN(70),Q(10)
6 PLOT 6,2
9 FILE "R",1,"DRINKS",1
10 GOTO 4150
11 PRINT "CURACAO";:RETURN
12 PRINT "BRANDY";:RETURN
13 PRINT "TRIPLE SEC";:RETURN
14 PRINT "GALLIANO";:RETURN
15 PRINT "COFFEE LIQUER";:RETURN
16 PRINT "CHERRY LIQUER";:RETURN
17 PRINT "CREME DE CACAO";:RETURN
18 PRINT "WHITE CREME DE MENTHE";:RETURN
19 PRINT "ANISETTE";:RETURN
20 PRINT "CREME DE CASSIS";:RETURN
21 PRINT "LIME LIQUER";:RETURN
22 PRINT "KIRSCH";:RETURN
23 PRINT "COMPARI";:RETURN
24 PRINT "SWEET VERMOUTH";:RETURN
25 PRINT "DRY VERMOUTH";:RETURN
26 PRINT "DUBONNET";:RETURN
27 PRINT "PORT";:RETURN
28 PRINT "COGNAC";:RETURN
29 PRINT "GRAND MARNIER";:RETURN
30 PRINT "CALVADOS";:RETURN
31 PRINT "DRAMBUIE";:RETURN
32 PRINT "BENEDICTINE";:RETURN
33 PRINT "PERNOD";:RETURN
34 PRINT "STRAWBERRRY LIQUER";:RETURN
35 PRINT "BRUT CHAMPAGNE";:RETURN
36 PRINT "ORZATA";:RETURN
37 PRINT "KAHLUA";:RETURN
38 PRINT "BYRRH";:RETURN
39 PRINT "BANNANA LIQUER";:RETURN
40 PRINT "RUM";:RETURN
41 PRINT "VODKA";:RETURN
42 PRINT "GIN";:RETURN
43 PRINT "SOUTHERN COMFORT";:RETURN
44 PRINT "BLENDED WHISKY";:RETURN
45 PRINT "SCOTCH";:RETURN
46 PRINT "BOURBON";:RETURN
47 PRINT "TEQUILLA";:RETURN
48 PRINT "LEMON JUICE";:RETURN
49 PRINT "CREAM";:RETURN
50 PRINT "EGG WHITE";:RETURN
51 PLOT 26,26,26,26:PRINT "CUP CRACKED ICE";:RETURN
52 PRINT "ORANGE JUICE";:RETURN
53 PLOT 26,26,26,26:PRINT "TSP GRENADINE";:RETURN
54 PRINT "LIME JUICE";:RETURN
55 PRINT "CLUB SODA";:RETURN
56 PLOT 26,26,26,26:PRINT "DASH ANGOSTURA BITTERS";:RETURN
57 PLOT 26,26,26,26:PRINT "TSP SUGAR";:RETURN
58 PRINT "GRAPEFRUIT JUICE";:RETURN
59 PRINT "ORANGE-FLOWER WATER";:RETURN
60 PRINT "APPLE JUICE";:RETURN
61 PRINT "TOMATO JUICE";:RETURN
62 PRINT "WORCESTERSHIRE SAUCE";:RETURN
63 PLOT 26,26,26,26:PRINT "DASH TABASCO SAUCE";:RETURN
64 PLOT 26,26,26,26:PRINT "TSP CATSUP";:RETURN
65 PRINT "ORANGE SLICE";:RETURN
66 PRINT "LIME SLICE";:RETURN
67 PRINT "LEMON SLICE";:RETURN
68 PRINT "LEMON PEEL";:RETURN
69 PRINT "ORANGE PEEL";:RETURN
70 PRINT "STRAWBERRY";:RETURN
71 PRINT "PINEAPPLE CHUNK";:RETURN
72 PRINT "MINT SPRIG";:RETURN
73 PRINT "MINT LEAF";:RETURN
74 PLOT 26,26,26,26:PRINT " OZ GREEN CREME DE MENTHE";:RETURN
75 PRINT "APPLE SLICE";:RETURN
1005 REM  D IS DRINK NUMBER
1010 GET 1,D,1;D$[23]
1015 GOSUB 8000
1017 PLOT 3,0,18,6,29,14:PRINT SPC( 34)
1020 PLOT 3,10,18:PRINT D$
1021 PLOT 15
1025 GET 1,D,24;NI
1030 FOR I= 1TO NI
1035 GET 1,D,20+ I* 8;Q(I)
1040 GET 1,D,24+ I* 8;IN(I)
1045 NEXT I
1047 PLOT 3,0,21,6,2
1048 IF NI= 7THEN PLOT 3,0,20
1050 GET 1,D,84;RR$[172]
1055 FOR I= 1TO NI
1060 PRINT "";Q(I);
1061 IF IN(I)< 55THEN PRINT TAB( 5);" OZ";
1062 PRINT TAB( 9);"";
1063 IN= IN(I):GOSUB 3000:PRINT
1065 NEXT I
1068 PLOT 3,0,27:PRINT LEFT$ (RR$,64)
1069 PLOT 3,0,28:PRINT MID$ (RR$,65,64)
1070 PLOT 3,0,29:PRINT MID$ (RR$,129,44)
1075 PLOT 3,0,31:INPUT "HOW MANY OF THIS DRINK DO YOU PLAN TO SERVE ";HM
1080 FOR I= 1TO NI
1085 IM(IN(I))= IM(IN(I))+ (HM* Q(I))
1090 NEXT I
1092 PLOT 3,0,31,11
1095 YN$= "*":INPUT "WANT TO SERVE ANOTHER DRINK ? ";YN$
1100 IF LEFT$ (YN$,1)= "Y"THEN 3700
1105 IF LEFT$ (YN$,1)= "N"THEN RETURN
1110 GOTO 1092
1500 REM  *** CALCULATE INGREDIENTS
1510 RESTORE :IC= 1
1520 GOSUB 8000:PRINT :INPUT "WHICH SPIRIT OR LIQUEUR DO YOU WANT TO USE    ";SI$
1530 SI= 0
1540 READ A$:IF A$= "END"THEN  PRINT "I DO NOT KNOW THAT INGREDIENT.":FOR N= 1TO 1000:NEXT :GOTO 1500
1550 IF LEFT$ (A$,LEN (SI$))= SI$THEN SI= IC:GOTO 6000
1560 IC= IC+ 1:GOTO 1540
3000 REM  *** PRINT INGREDIENT ***
3010 L= 0
3030 ON INGOSUB 11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37
3032 IF IN< 28THEN 3040
3033 ON IN- 27GOSUB 38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60
3035 IF IN< 51THEN 3040
3036 ON IN- 50GOSUB 61,62,63,64,65,66,67,68,69,70,71,72,73,74,75
3040 RETURN
3500 GOSUB 8000:PLOT 6,2
3510 L= 0:LL= 1
3520 RESTORE
3525 FOR I= 1TO 38:READ A$:NEXT I
3526 PRINT
3530 READ A$
3540 IF A$= "END"THEN PRINT :INPUT "PRESS ENTER FOR MORE INFO";A$:RETURN
3550 PRINT TAB( 20);"";LL;"... ";A$:L= L+ 1:LL= LL+ 1
3560 IF L> 8THEN PRINT :INPUT "PRESS ENTER TO CONT.";A$:L= 0:PLOT 6,2:GOSUB 8000:PRINT
3570 GOTO 3530
3700 GOSUB 8000:PLOT 10,6,6:INPUT "DRINK NAME ( OR LIST NUMBER )   ";DD$
3705 IF ASC (DD$)> 48AND ASC (DD$)< 58THEN D= VAL (DD$):IF D< 43GOTO 1005
3710 RESTORE :D= 1
3715 FOR I= 1TO 38:READ A$:NEXT I
3720 READ A$
3730 IF LEFT$ (A$,LEN (DD$))= DD$THEN 3790
3740 IF A$= "END"THEN  PLOT 10:PRINT "THAT DRINK IS UNKNOWN TO ME.":FOR N= 1TO 1000:NEXT :RETURN
3750 D= D+ 1:GOTO 3720
3790 GOTO 1005
4000 REM  *** LIST OF MEASUREMENTS ***
4010 GOSUB 8000
4015 PRINT
4030 PRINT "TEASPOON";TAB( 12);"1/6 OZ,(1/3 TABLESPOON)"
4040 PRINT "TABLESPOON";TAB( 12);"1/2 OZ,(3 TEASPOONS)"
4050 PRINT "PONY";TAB( 12);"1 OZ"
4060 PRINT "JIGGER";TAB( 12);"1.5 OUNCES"
4070 PRINT "SPLIT";TAB( 12);"6.5 OUNCES"
4080 PRINT "PINT";TAB( 12);"16 OUNCES,(1/2 QUART,2 CUPS)"
4090 PRINT "FIFTH";TAB( 12);"25.6 OUNCES,(4/5 QUART,1/5 GALLON)"
4110 PRINT "HALF GALLON";TAB( 12);"64 OUNCES"
4120 PRINT "MAGNUM";TAB( 12);"64 OUNCES"
4130 PRINT "JEREBOAM";TAB( 12);"104 OUNCES"
4140 INPUT "PRESS ENTER FOR MORE INFO";A$:RETURN
4150 PLOT 3,0,22,14:PRINT TAB( 25)"SUGGESTIONS"
4155 PRINT TAB( 15);"FIGURE 2-3 COCKTAILS PER PERSON"
4160 PRINT TAB( 15);"1-2 AFTER DINNER DRINKS PER PERSON"
4180 FOR N= 1TO 2000:NEXT
4200 REM  **** MAIN LOOP-INSTRUCTION DECODER ****
4205 PLOT  15
4210 GOSUB 8000
4220 PRINT :PRINT  TAB( 17)"OPTIONS"
4230 PRINT  TAB( 10)"1. MIX A DRINK"
4240 PRINT  TAB( 10)"2. MIX A DRINK WITH A PARTICULAR INGREDIENT"
4250 PRINT  TAB( 10)"3. LIST ALL DRINKS THAT I KNOW"
4260 PRINT  TAB( 10)"4. LIST OF LIQUID MEASURES"
4270 PRINT  TAB( 10)"5. TIPS ON GLASSWARE"
4280 PRINT TAB( 10)"6. END OF PROGRAM"
4285 PRINT  TAB( 14)"(PRINT LIST OF ALL REQUIRED INGREDIENTS)"
4290 PRINT  :INPUT "OPTION #  ";OP
4300 IF OP< 1OR OP> 6THEN PRINT "USE NUMBERS 1-6.":FOR N= 1TO 1000:NEXT :GOTO 4200
4310 ON OPGOSUB 3700,1500,3500,4000,5000,10000
4320 GOTO 4200
5000 REM  *** DISPLAY GLASWARE ***
5005 GOSUB 8000
5010 PRINT ""
5020 PRINT "1. HIGHBALL OR COLLINS"
5030 PRINT "2. CORDIAL"
5040 PRINT "3. SHOT OR JIGGER"
5050 PRINT "4. DELMONICO OR SOUR"
5060 PRINT "5. WINE GLASS"
5070 PRINT "6. COCKTAIL GLASS"
5080 PRINT "7. CHAMPAGNE GLASS"
5090 PRINT "8. OLD FASHIONED"
5100 PRINT "9. COOLER"
5110 PRINT "ENTER NUMBER OF GLASS YOU WANT INFO ABOUT."
5115 PLOT 15
5120 G= 0:PLOT 11:INPUT "IF YOU WANT MORE INFO,TYPE 'RETURN'  ";G
5130 IF G= 0THEN RETURN
5135 IF G< 1OR G> 9THEN PLOT 28,28:GOTO 5110
5140 ON GGOSUB 9000,9100,9200,9300,9400,9500,9600,9700,9800
5150 GOTO 5010
6000 REM  *** SELECT DRINKS WITH GIVEN INGREDIENT ***
6010 D= 1
6020 IF D> 42THEN GOSUB 8000:PRINT :PRINT TAB( 20);"END OF LIST":FOR NN= 1TO 1000:NEXT :RETURN
6030 GET 1,D,24;NI
6035 FOR I= 1TO NI
6040 GET 1,D,20+ I* 8;Q(I)
6050 GET 1,D,24+ I* 8;IN(I)
6060 NEXT I
6080 ST= 0:REM  ST IS SEARCH TEST FLAG- 1 FOR YES, 0 FOR NO
6090 FOR I= 1TO NI
6100 IF IN(I)= SITHEN ST= 1
6110 NEXT I
6120 IF ST= 0THEN D= D+ 1:GOTO 6020
6125 GOSUB 8000
6130 GET 1,D,1;D$[23]
6132 PLOT 3,0,18,6,29,14:PRINT SPC( 34)
6135 PLOT 3,10,18:PRINT D$
6137 PLOT 15,3,0,21,6,2
6138 IF NI= 7THEN PLOT 3,0,20
6140 FOR I= 1TO NI
6150 PRINT "";Q(I);
6151 IF IN(I)< 55THEN PRINT TAB( 5);" OZ";
6152 PRINT TAB( 9);"";
6153 IN= IN(I):GOSUB 3000:PRINT
6160 NEXT I
6170 GET 1,D,84;RR$[172]
6171 PLOT 3,0,27:PRINT LEFT$ (RR$,64)
6172 PLOT 3,0,28:PRINT MID$ (RR$,65,64)
6173 PLOT 3,0,29:PRINT MID$ (RR$,129,44)
6174 PLOT 3,0,31
6175 HM= 0:INPUT "HOW MANY OF THIS DRINK DO YOU PLAN TO SERVE ";HM
6180 FOR I= 1TO NI
6190 IM(IN(I))= IM(IN(I))+ (HM* Q(I))
6195 NEXT I
6197 PLOT 3,0,31,11
6200 YN$= "YES":INPUT "WANT TO SEE ANOTHER DRINK WITH SAME INGREDIENT ";YN$
6210 IF LEFT$ (YN$,1)= "Y"THEN D= D+ 1:GOTO 6020
6220 IF LEFT$ (YN$,1)= "N"THEN 6235
6230 GOTO 6197
6235 PLOT 3,0,31,11
6240 YN$= "YES":INPUT "WANT TO SEE ANOTHER DRINK ";YN$
6250 IF LEFT$ (YN$,1)= "Y"THEN 4200
6260 IF LEFT$ (YN$,1)= "N"THEN RETURN
6270 GOTO 6235
6900 DATA CURACAO,BRANDY,"TRIPLE SEC",GALLIANO,"COFFEE LIQUEUR","CHERRY LIQUEUR","CREME DE CACAO"
6905 DATA "WHITE CREME DE MENTHE",ANISETTE,"CREME DE CASSIS","LIME LIQUEUR",KIRSCH,COMPARI
6910 DATA "SWEET VERMOUTH","DRY VERMOUTH",DUBONNET,PORT,COGNAC,"GRAND MARNIER",CALVADOS
6915 DATA DRAMBUIE,BENEDICTINE,PERNOD,"STRAWBERRY LIQUEUR","BRUT CHAMPAGNE",ORZATA,KAHLUA
6920 DATA BYRRH,"BANNANA LIQUEUR",RUM,VODKA,GIN,"SOUTHERN COMFORT","BLENDED WHISKY",SCOTCH
6930 DATA BOURBON,TEQUILLA,END
7000 DATA "CHIQUITA PUNCH","GOLD CADILLAC",GRASSHOPPER,LIMEY
7010 DATA "ORANGE COMFORT","RUSSIAN COFFEE",AMERICANO,DIABOLO,NEGRONI
7020 DATA "VERMOUTH CASSIS",ZAZA,"APPLE GRAND MARNIER",BOMBAY,FEMINA
7030 DATA STINGER,"CHAMPAGNE FRAISE","CHAMPAGNE COCKTAIL",BRONX,"FOGGY DAY"
7040 DATA GIMLET,MARTINI,"FROZEN ORANGE BLOSSOM","PINK LADY",BACARDI
7050 DATA "CHERRY DAIQUIRI",DIAQUIRI,"FROZEN APPLE DIAQUIRI",MAITAI,SCORPION
7060 DATA MARGERITA,"TEQUILA SOUR","BLACK RUSSIAN","BLOODY MARY",SCREWDRIVER,"SALTY DOG"
7070 DATA MANHATTAN,"OLD FASHIONED","RUSTY NAIL","TOM COLLINS","BYRRH CASSIS COOLER","MINT JULEP","GIN FIZZ"
7080 DATA "END"
8000 PLOT 3,0,18,14,6,11:PRINT "``````````````````````````````````"
8002 PLOT 6,2,15
8005 PLOT 3,0,20:FOR N= 1TO 12:PLOT 11,10:NEXT :PLOT 3,0,20:RETURN
8100 FOR N= 20TO 31:PLOT 3,49,N:PRINT "              ":NEXT :RETURN
9000 GOSUB 8100
9005 PLOT 3,49,24:PRINT "neo HIGHBALL"
9010 PLOT 3,49,25:PRINT "a b   OR   "
9020 PLOT 3,49,26:PRINT "a b COLLINS"
9030 PLOT 3,49,27:PRINT "a b"
9040 PLOT 3,49,28:PRINT "vw 8-11 OZS"
9080 PLOT  3,0,20,29
9090 RETURN
9100 GOSUB 8100
9105 PLOT 6,6,3,49,24,27,10,30,110,97,124,98,101,3,50,24,111,98,126,97,101,27,24
9110 PLOT  6,1,3,54,25:PRINT "CORDIAL"
9120 PLOT  6,2,3,55,27:PRINT "1 OZ."
9180 PLOT  3,0,20,29
9190 RETURN
9200 GOSUB 8100
9205 PLOT 6,6,3,49,24,30,110,101,101,111,3,49,25,124,127,127,126,3,50,26,6,54,32,32,3,50,27,32,32,27,24
9210 PLOT 6,1,3,54,24:PRINT "SHOT"
9220 PLOT 3,55,25:PRINT "OR"
9230 PLOT 3,54,26:PRINT "JIGGER"
9240 PLOT 6,2,3,54,27:PRINT "1.5 OZS"
9280 PLOT 3,0,20,29
9290 RETURN
9300 GOSUB 8100
9305 PLOT 3,49,24:PRINT "    DELMONICO"
9310 PLOT 3,49,25:PRINT "neo    OR"
9315 PLOT 3,49,26:PRINT "a b   SOUR"
9320 PLOT 3,49,27:PRINT "vw 4-7 OZS"
9330 PLOT 3,0,20,29
9340 RETURN
9400 GOSUB 8100
9410 PLOT 3,49,23:PRINT "neo"
9415 PLOT 3,49,24:PRINT "a b"
9420 PLOT 3,49,25:PRINT "a b WINE GLASS"
9425 PLOT 3,49,26:PRINT "j z"
9430 PLOT 3,49,27:PRINT "k y"
9435 PLOT 3,49,28:PRINT " "
9440 PLOT 3,0,20,29
9450 RETURN
9500 GOSUB 8100
9510 PLOT 3,49,23:PRINT "neo"
9515 PLOT 3,49,24:PRINT "a b"
9520 PLOT 3,49,25:PRINT "|~ COCKTAIL"
9530 PLOT 3,49,26:PRINT "  3-5 OZS"
9540 PLOT 3,0,20,29
9550 RETURN
9600 GOSUB 8100
9610 PLOT 3,49,23:PRINT "neeo"
9615 PLOT 3,49,24:PRINT "j  z  DEEP"
9620 PLOT 3,49,25:PRINT "k  y  SAUCER"
9625 PLOT 3,49,26:PRINT " vw  CHAMPAGNE"
9630 PLOT 3,49,27:PRINT " ba"
9635 PLOT 3,49,28:PRINT " ee    6 OZS"
9640 PLOT 3,0,20,29
9650 RETURN
9700 GOSUB 8100
9710 PLOT 3,49,23:PRINT ""
9715 PLOT 3,49,24:PRINT "a  b"
9720 PLOT 3,49,25:PRINT "l  o  OLD"
9725 PLOT 3,49,26:PRINT "m  n FASHIONED"
9730 PLOT 3,49,27:PRINT "n  m  6-10 OZS"
9735 PLOT 3,49,28:PRINT "ol"
9740 PLOT 3,0,20,29
9750 RETURN
9800 GOSUB 8100
9810 PLOT 3,49,22:PRINT "neo"
9815 PLOT 3,49,23:PRINT "a b"
9820 PLOT 3,49,24:PRINT "a b"
9825 PLOT 3,49,25:PRINT "a b  COOLER"
9830 PLOT 3,49,26:PRINT "a b 14-21 OZS"
9835 PLOT 3,49,27:PRINT "a b"
9840 PLOT 3,49,28:PRINT "vw"
9850 PLOT 3,0,20,29
9860 RETURN
10000 REM  ***FINAL OUTPUT ROUTINE
10010 PLOT 12,27,11
10015 PLOT 6,1,14
10020 PRINT "TOTAL INGREDIENTS NEEDED"
10030 PRINT "TO MAKE THE DRINK YOU SPECIFIED"
10040 PRINT
10045 PLOT 6,3,15
10050 FOR I= 1TO 65
10055 IF IM(I)= 0THEN 10070
10060 PRINT "";INT (10* IM(I))/ 10;
10062 IF I< 55THEN PRINT TAB( 5);" OZ";
10064 PRINT TAB( 9);"";
10066 IN= I:GOSUB 3000:PRINT
10070 NEXT I
10080 PRINT :PRINT "END OF TABLE OF INGREDIENTS"
10090 PRINT :PRINT
10095 FILE "C",1
10100 END