100 CLS 200 CLEAR 300 300 PRINT TAB(34);"GOLF J.WISE" 400 PRINT 500 PRINT 600 PRINT "WELCOME TO THE ICL COUNTRY CLUB" 700 PRINT "AN 18 HOLE CHAMPIONSHIP LAYOUT" 800 PRINT "LOCATED A SHORT DISTANCE FROM" 900 PRINT "SCENIC DOWNTOWN UTICA " 1000 PRINT 1100 G1=18 1200 DIM L(4) 1300 R=-RND(1) : I=RND(R) 1400 IF L(4)>0 THEN 1600 1500 LET L(4)=48 1600 G2=0 : E1=0 : P1=0 : B1=0 : P3=0 1700 G3=0 : A$=" " 1800 B2=0 : B3=0 : B4=0 : B5=0 1900 RESTORE 2000 N=.8 2100 S2=0 2200 F=1 2300 PRINT "WHAT IS YOUR HANDICAP (0 FOR NOVICE)"; 2400 INPUT H 2500 IF H>39 THEN 8600 2600 IF H<-9.999991 THEN 8600 2700 PRINT "DIFFICULTIES AT GOLF INCLUDE" 2800 PRINT "0=HOOK, 1=SLICE, 2=POOR DISTANCE" 2900 PRINT "3=TRAP SHOTS, 4=PUTTING" 3000 PRINT "WHICH ONE IS YOUR WORST"; 3100 INPUT T 3200 IF T>5 THEN 2700 3300 S1=0 3400 REM BEGINING OF A HOLE 3500 L(1)=0 3600 J=0 3700 REM 3800 S2=S2+1 3900 K=0 4000 IF F=1 THEN 6800 4100 GOSUB 4900 4200 GOTO 5200 4300 REM 4400 REM 4500 REM 4600 REM 4700 REM 4800 REM 4900 LOCATE 23,3 5000 PRINT "YOUR SCORE ON HOLE";F-1;"WAS";S1 5100 RETURN 5200 GOSUB 28500 5300 LOCATE 23,32 5400 IF S1>P+3 THEN PRINT "YOU STINK " ; : B5=B5+1 : GOTO 6500 5500 IF S1=P+3 THEN PRINT "A TRIPLE BOGIE"; : B4=B4+1 : GOTO 6500 5600 IF S1=P+2 THEN PRINT "A DOUBLE BOGIE"; : B3=B3+1 : GOTO 6500 5700 IF S1=P+1 THEN PRINT "A BOGIE. NOT BAD" : B2=B2+1 : GOTO 6800 5800 IF S1=P THEN PRINT "A PAR. NICE GOING" : P1=P1+1 : GOTO 6800 5900 IF S1=P-1 THEN PRINT "A BIRDIE!" : B1=B1+1 : GOTO 6800 6000 IF S1=P-2 THEN E1=E1+1 : GOTO 6300 6100 IF S1=P-3 THEN PRINT "A DOUBLE EAGLE??" : E1=E1+1 : GOTO 6800 6200 GOTO 6800 6300 IF P<>3 THEN PRINT "AN EAGLE!!!" : GOTO 6800 6400 PRINT "A HOLE IN ONE!!" : GOTO 6800 6500 PRINT ". KEEP YOUR HEAD DOWN" 6600 REM 6700 REM 6800 INPUT Z$:IF Z$="Q" THEN 29600 ELSE IF F=19 THEN GOSUB 28600 : GOTO 29000 6900 S3=S1 7000 S1=0 7100 IF S1=0 THEN 26000 7200 IF L(1)<1 THEN 20300 7300 X=1 7400 IF L(1)>5 THEN 20700 7500 GOSUB 36900 'MOVE BALL 7600 LOCATE 9,60 :PRINT D2-1;:LOCATE 9,65 :PRINT "YDS. FROM CUP" 7700 GOTO 10000 7800 IF L(X)=1 THEN 8800 7900 IF L(X)=2 THEN 9000 8000 IF L(X)=3 THEN 9200 8100 IF L(X)=4 THEN 9400 8200 IF L(X)=5 THEN 9600 8300 IF L(X)=6 THEN 9800 8400 PRINT "OUT OF BOUNDS" 8500 GOTO 27800 8600 PRINT "PGA RULES HANDICAP = 0 TO 30" 8700 GOTO 2300 8800 PRINT "FAIRWAY" 8900 GOTO 27800 9000 PRINT "ROUGH" 9100 GOTO 27800 9200 PRINT "TREES" 9300 GOTO 27800 9400 PRINT "ADJACENT FAIRWAY" 9500 GOTO 27800 9600 PRINT "TRAP" 9700 GOTO 27800 9800 PRINT "WATER" 9900 GOTO 27800 10000 REM 10100 LOCATE 12,1 10200 PRINT "YARDAGE DESIRED"; : LOCATE 12,18 :PRINT "SUGGESTED CLUBS" 10300 PRINT "280 TO 200 YDS.";:LOCATE 13,24 : PRINT "1 TO 4" 10400 PRINT "200 TO 130 YDS.";:LOCATE 14,23 : PRINT "12 TO 19" 10500 PRINT "120 TO 0 YDS.";:LOCATE 15,26 : PRINT "20" 10600 LOCATE 12,60 : PRINT " "; 10700 LOCATE 12,35 10800 PRINT "WHAT CLUB DO YOU CHOOSE"; 10900 INPUT C 11000 LOCATE 14,35 : PRINT " "; 11100 PRINT " " 11200 IF C<1 THEN 11900 11300 IF C>20 THEN 11900 11400 IF C<5 THEN 11700 11500 IF C<12 THEN 11900 11600 LET C=C-6 11700 IF L(1)<=5 THEN 12100 11800 S1=S1-1 11900 LOCATE 14,35 : PRINT "THAT CLUB NOT IN BAG." 12000 GOTO 10000 12100 S1=S1+1 12200 W=1 12300 IF C=14 THEN 16300 12400 IF L(1)<>2 THEN 12600 'JUMP NOT IN ROUGH 12500 IF C*RND(1)-H/40<2 THEN 16000 'DUBBED IT 12600 IF RND(1)-H/3000<.05 THEN 16000 12700 IF C<4 THEN 12900 12800 GOTO 13000 12900 IF L(1)=2 THEN 14500 13000 IF S1>7 THEN 14800 13100 D1=INT(((40-H)*2.5+187-((40-H)*.25+15)*C/2)+15*RND(1)) 13200 D1=INT(D1*W) 13400 IF T=2 THEN 20500 13500 D4=(D1*.0035) 13600 D4=D4*(252 - D4)/((90-D4)*(162+D4)) 13700 O=(RND(1)/.8*(2*H+16)*ABS(D4)) 13800 D3=ABS(D-D1) 13900 LET D2=INT(O*O+D3*D3) 14000 GOSUB 30000 14100 IF D-D1<0 THEN 15000 14200 GOTO 15300 14300 LET D1=5 14400 GOTO 14600 14500 LET D1=INT(100*RND(1)) 14600 LOCATE 14,35 : PRINT "YOU DUBBED IT." 14700 GOTO 13500 14800 IF D<200 THEN 22100 14900 GOTO 13100 15000 IF D2<20 THEN 15300 15100 LOCATE 14,35 15200 PRINT "TOO MUCH CLUB. YOU'RE PAST THE HOLE." 15300 B=D 15400 D=D2 15500 IF D2>27 THEN 17700 15600 IF D2>20 THEN 19500 15700 IF D2>.5 THEN 19700 15800 L(1)=9 15900 GOTO 24700 16000 IF S1>1 THEN 14500 16100 IF RND(1)>.5 THEN 14500 16200 GOTO 17100 16300 LOCATE 14,35 : PRINT "ADJUST DIST,(1-100%) OF SWING"; 16400 INPUT W 16500 LOCATE 14,35 : PRINT " " 16600 LET W=ABS(W/100) 16700 IF W>1 THEN 11800 16800 IF 100*RND(1)+H>95 THEN 14300 16900 IF L(1)=5 THEN 22000 17000 GOTO 13000 17100 IF D<95 THEN 14500 17200 LOCATE 14,35 : PRINT "BALL HIT TREE-BOUNCED INTO ROUGH"; 17300 LET D=D-INT(100*RND(1)) 17400 LOCATE 9,60 : PRINT D 17500 LET L(1)=2 17600 D2=D : GOTO 7500 17700 IF O<30 THEN 20300 17800 IF J>0 THEN 20300 17900 IF T>0 THEN 18700 18000 S9=(S2+1)/15 18100 IF INT(S9)=S9 THEN 19000 18200 LOCATE 14,35 18300 PRINT "YOU HOOKED-"; 18400 L(1)=L(3) 18500 IF O>45 THEN 19300 18600 GOTO 7100 18700 S9=(S2+1)/15 18800 IF INT(S9)=S9 THEN 18300 18900 LOCATE 14,35 19000 PRINT "YOU SLICED- "; 19100 L(1)=L(2) 19200 GOTO 18500 19300 PRINT "BADLY." 19400 GOTO 7100 19500 L(1)=5 19600 GOTO 7100 19700 L(1)=8 19800 IF D2<9.600001 THEN D2=INT(D2*6) : Z$="L" : U=39 : Y$="1" : GOTO 23000 19900 IF D2>10.4 THEN D2=INT((D2-10)*6) : Z$="R" : U=39 : GOTO 20100 20000 D2=0 : GOTO 24700 20100 Y$="1" : GOTO 23000 20200 REM 20300 L(1)=1 20400 GOTO 7100 20500 D1=INT(.85*D1) 20600 GOTO 13500 20700 IF L(1)>6 THEN 21800 20800 LOCATE 14,35 20900 PRINT "YOUR SHOT FOUND THE POND." 21000 S1=S1+1 21100 LOCATE 14,35 21200 PRINT "PENALTLY STROKE ASSESSED. HIT AGAIN" 21300 J=J+1 21400 L(1)=1 21500 D=B 21600 GOTO 10000 21700 LOCATE 14,35 21800 PRINT "YOUR SHOT WENT OUT OF BOUNDS." 21900 GOTO 21000 22000 IF T=3 THEN 22300 22100 D2=1+(3*INT((80/(40-H))*RND(1))) 22200 GOTO 19800 22300 IF RND(1)>N THEN 23000 22400 N=N*.2 22500 LOCATE 14,35 22600 PRINT "SHOT DUBBED, STILL IN TRAP." 22700 GOTO 10000 22800 N=.8 22900 GOTO 22100 23000 IF Y$<> "0" THEN CLS : C1=0 23100 GOSUB 33500 : GOSUB 34800 23200 LOCATE 18,1 23300 PRINT "HOW FIRM OF PUTTING STROKE 1-13"; 23400 INPUT I 23500 LOCATE 18,34 : PRINT " " 23600 P2=P2+1 23700 LOCATE 17,39 : PRINT " " 23800 IF I<=0 THEN 23200 23900 IF I>13 THEN 23200 24000 S1=S1+1 24100 IF D2=0 THEN 24700 24200 K=K+1 24300 IF T=4 THEN 25600 24400 C1=I*(4+2*RND(1))+2.5 24500 IF D2-C1<-2 THEN 25800 24600 IF D2-C1>2 THEN 25300 24700 LOCATE 20,1 : PRINT "YOU HOLED IT" 24800 PRINT 24900 F=F+1 25000 IF P2=1 THEN P3=P3+1 25100 P2=0 25200 GOTO 3500 25300 LOCATE 17,40 : PRINT "PUTT SHORT" 25400 C1=INT(C1) 25500 GOTO 23100 25600 C1=I*(4+RND(1))+1.5 25700 GOTO 24500 25800 LOCATE 17,40 : PRINT "PASSED BY CUP" 25900 GOTO 25400 26000 READ D,P,L(2),L(3) 26100 CLS 26200 S1=S3 26300 LOCATE 5,1 : PRINT "HOLE #";F:LOCATE 6,1:PRINT "YDS";:LOCATE 6,6:PRINT D 26400 LOCATE 7,1 : PRINT "PAR"; : LOCATE 7,8 : PRINT P 26500 IF F<>1 THEN GOSUB 4900 : GOSUB 28600 : GOTO 26600 26600 GOSUB 31400 : GOSUB 38300 26700 S1=0 26800 G3=G3+P 26900 LOCATE 9,1 27000 PRINT "ON YOUR RIGHT IS "; 27100 X=2 27200 GOSUB 7800 27300 LOCATE 10,1 27400 PRINT "ON YOUR LEFT IS "; 27500 X=3 27600 GOSUB 7800 27700 GOTO 10000 27800 RETURN 27900 DATA 361,4,4,2,389,4,3,3,206,3,4,2,500,5,7,2 28000 DATA 408,4,2,4,359,4,6,4,424,4,4,2,388,4,4,4 28100 DATA 196,3,7,2,400,4,7,2,560,5,7,2,132,3,2,2 28200 DATA 357,4,4,4,294,4,2,4,475,5,2,3,375,4,4,2 28300 DATA 180,3,6,2,550,5,6,6 28400 REM 28500 G2=G2+S1 28600 GOSUB 31000 28700 LOCATE 24,3:PRINT "TOTAL";G2;:LOCATE 24,14:IF G4<>0 THEN PRINT G4; 28800 LOCATE 24,18 : PRINT B$; : PRINT " PAR"; 28900 RETURN 29000 CLS : GOSUB 4900 : GOSUB 28600 : GOSUB 38300 29100 IF G2>=L(4) THEN 29500 29200 LET L(4)=G2 : G3=L(4) 29300 LOCATE 11,35 : PRINT "NEW COURSE RECORD";G2 29400 LOCATE 12,35 : PRINT "OLD COURSE RECORD";G3 29500 LOCATE 13,35 : PRINT "COURSE RECORD IS";L(4) 29600 LOCATE 13,60 : PRINT "PLAY AGAIN Y/N"; 29700 INPUT S$ : K$=" " 29800 IF S$="Y" GOTO 100 29900 END 30000 LET Q1=0 30100 LET Q=1 30200 FOR S=3 TO D2 STEP 2 30300 LET Q=Q+1 30400 LET Q1=Q1+S 30500 IF Q1G2 THEN B$="UNDER" 31200 IF G3D2 THEN 36100 'PASS THE CUP? 35200 IF Z$="R" THEN 35800 'RIGHT OF CUP? 35300 U=U+D6 'MOVE IT RIGHT 35400 LOCATE 7,U : PRINT "O" 'DISPLAY 35500 D2=ABS(D2-C1) 35600 LOCATE 10,40:PRINT D2;:LOCATE 10,43:PRINT "FEET FROM CUP" 35700 RETURN 35800 U=U-D6 'MOVE IT LEFT 35900 GOTO 35400 36000 REM 36100 D6=INT((C1-D2)/3+.5) : U=39 'PASSED CUP TAB 36200 IF Z$="L" THEN Z$="R" : GOTO 35300 'REVERSE SIDES 36300 Z$="L" : GOTO 35800 36400 REM 36500 D6=INT(D2/3+.5) : Y$="0" 36600 IF Z$="L" THEN 35800 36700 GOTO 35300 36800 REM 36900 LOCATE 5,D8 : PRINT " "; 37000 D7=INT((D1+5)/10) 37100 D9=D8+D7 37200 FOR I=D8 TO D9 37300 LOCATE 5,I : PRINT " "; 37400 LOCATE 5,I+1 : PRINT "O"; 37500 LOCATE 5,D5 : PRINT "P"; 37600 FOR J=1 TO 20 37700 NEXT J 37800 BEEP 37900 NEXT I 38000 D8=D9 38100 RETURN 38200 REM 38300 LOCATE 16,35 : PRINT "EAGLES BIRDIES PARS ONE PUTTS"; 38400 LOCATE 19,35 : PRINT "BOGIES DBL BOGIES TPL BOGIES"; 38500 LOCATE 19,68 : PRINT "PEEYOUS"; 38600 LOCATE 17,37:PRINT E1;:LOCATE 17,46:PRINT B1;:LOCATE 17,53:PRINT P1; 38700 LOCATE 17,64 : PRINT P3; 38800 LOCATE 20,37:PRINT B2;:LOCATE 20,47:PRINT B3;:LOCATE 20,59:PRINT B4; 38900 LOCATE 20,71 : PRINT B5 39000 RETURN 39100 REM VARIABLES 39200 REM G2=TOTAL SCORE G3=COURSE PAR 39300 REM H=HANDICAP T=SELECTED DIFFICULTY