Listing of file='GOLF.BAS;01' on disk='vmedia/chip_24-sector.ccvf'
0 REM GOLF BY DON MILLER 100 PLOT 6,2,12,27,24,15:GOTO 5570 110 CLEAR 500:GOTO 320 120 QN= 10:QO= 1:QW= 24:QX= 0:QY= 22:GOSUB 5520:RETURN 130 PLOT 6,2:GOSUB 5740:RETURN 140 GOSUB 5740:PRINT "":RETURN 150 GOSUB 5740:RETURN 155 FOR AB= 1TO 10:GOSUB 140:NEXT AB:RETURN 157 FOR AB= 0TO AP:NEXT AB:RETURN 160 REM DISTANCE,PAR,RIGHT&LEFT 165 REM PEBBLE BEACH 170 DATA 361,4,4,2,389,4,3,3,206,3,4,2,500,5,7,2,408,4,2,4,359,4,6,4,424,4,4,2,388,4,4,4 180 DATA 196,3,7,2,400,4,7,2,500,5,7,2,132,3,2,2,357,4,4,4,294,4,2,4,475,5,2,3,375,4,4,2 190 DATA 180,3,6,2,550,5,6,6 195 REM THINKING MAN 200 DATA 365,4,2,3,538,5,3,3,450,4,3,3,220,3,2,3,388,4,4,4,459,4,4,3,625,5,2,4,183,3,2,4 210 DATA 360,4,2,2,378,4,2,4,190,3,3,3,458,4,3,4,460,4,3,3,405,4,3,4,448,4,2,4,595,5,7,6 220 DATA 155,3,2,3,530,5,3,6 225 REM BROOKLEA 230 DATA 350,4,3,7,525,5,3,7,190,3,3,3,430,4,3,2,430,4,3,3,400,4,7,3,540,5,7,3,320,4,7,3 240 DATA 150,3,3,2,480,5,6,3,550,5,7,6,150,3,6,6,450,4,3,3,400,4,3,3,430,4,3,3,450,4,3,3 250 DATA 420,4,3,3,180,3,3,3 255 REM RETREAT/SEASIDE 260 DATA 475,5,3,3,188,3,6,3,394,4,3,3,432,4,3,6,515,5,7,3,365,4,3,3,130,3,3,3,338,4,3,6 270 DATA 430,4,3,6,392,4,3,7,422,4,6,7,205,3,3,6,372,4,3,6,325,4,3,6,471,5,3,3,425,4,6,6 280 DATA 164,3,3,3,468,5,6,3 285 REM MARSHSIDE/PLANTATION 290 DATA 305,4,3,3,475,5,3,6,192,3,6,6,350,4,6,6,141,3,3,6,370,4,6,6,521,5,3,6,281,4,3,6 300 DATA 410,4,3,3,351,4,3,3,335,4,3,3,204,3,7,3,529,5,7,3,376,4,7,4,356,4,6,4,140,3,6,3 310 DATA 405,4,3,3,470,5,3,3 320 GOSUB 3310:REM TO HOUSEKEEPING 330 DIM L(11) 340 Z= 1 350 PLOT 6,6 355 PLOT 3,0,18,11 360 GOSUB 150:PRINT " WELCOME TO THE" 370 GOSUB 150:PRINT " COMPUCOLOR" 380 GOSUB 150:PRINT " OPEN" 390 GOSUB 140:AP= 500:GOSUB 157 400 GOSUB 155 401 GOSUB 150:PRINT " COPYRIGHT 1979" 402 GOSUB 150:PRINT " BY" 403 GOSUB 150:PRINT " DONALD R. MILLER" 404 FOR AA= 1TO 4:GOSUB 140:NEXT AA:AP= 750:GOSUB 157:GOSUB 155 410 GOSUB 150:PRINT "SELECT GOLF COURSE:" 412 FOR AA= 1TO 5:GOSUB 130:PRINT M$(AA):NEXT AA 470 GOSUB 150:INPUT "? ";AI 475 IF AI< 1OR AI> 5THEN GOSUB 130:PRINT "NOT 1-5":GOTO 400 480 GOSUB 155 490 GOSUB 3840:REM FILL IN SCORECARD ON CRT 500 REM SPIN RANDOM NUMBER GENERATOR 510 GOSUB 150:PRINT "HIT R E T U R N TO PLAY" 520 POKE 33278,0 530 AC= RND (1) 540 IF PEEK (33278)= 0THEN 530 550 X= 2:N= .8:S2= 0:F= 1 560 AE= 1:AG= 0:AD= 0 570 GOSUB 155 580 GOSUB 150:INPUT "HANDICAP (0-30) ? ";H 590 IF H< 0OR H> 30THEN GOSUB 130:PRINT "HANDICAP NOT 0-30":GOTO 580 600 GOSUB 140 610 IF H> 9THEN 640 620 GOSUB 130:PRINT "OH-OH, A HOT SHOT !" 630 GOTO 670 640 IF H< 20THEN 670 650 GOSUB 140 660 GOSUB 130:PRINT "ANYONE FOR TENNIS ?" 670 GOSUB 155 680 GOSUB 150:PRINT "DIFFICULTIES AT GOLF:" 690 FOR AA= 6TO 10:GOSUB 130:PRINT M$(AA):NEXT AA:GOSUB 140 750 GOSUB 150:INPUT "WHICH IS YOUR WORST: ?";T 760 IF T< 1OR T> 5THEN GOSUB 130:PRINT " DIFFICULTY NOT 1-5 !":GOTO 670 770 GOSUB 155 771 PLOT 3,0,18 772 PRINT "COURSE: "MID$ (M$(AI),5,20); 773 PRINT " HANDICAP:"H" PROBLEM: "MID$ (M$(T+ 5),5,13)"" 780 S1= 0 790 L(1)= 0 800 REM AGAIN TO SPIN 'RANDOM' NUMBER GENERATOR 810 R= PEEK (33209):FOR AA= 0TO R:RR= RND (1):NEXT AA 820 R= RND (1) 830 X1= 59:Y1= 12 840 GOSUB 5130:REM POSITION BALL 850 L(1)= 0:J= 0:Q= 0 860 S2= S2+ S1:K= 0 870 IF F= 1THEN 970 880 GOSUB 5430:REM DOG 885 GOSUB 140:GOSUB 150 890 IF S1> P+ 3THEN PRINT N1$:GOTO 960 895 IF S1= P+ 3THEN PRINT N2$:GOTO 960 900 IF S1= P+ 2THEN PRINT N3$:GOTO 960 905 IF S1= P+ 1THEN PRINT N4$:GOTO 960 910 IF S1= PTHEN PRINT N5$:GOTO 960 915 IF S1= P- 1THEN PRINT N6$:GOTO 960 920 IF S1= P- 2THEN 940 930 GOTO 960 940 IF P= 3THEN PRINT N8$:FOR AA= 1TO 13:GOSUB 150:PRINT N8$:NEXT AA:GOTO 960 950 PRINT N7$ 960 AP= 500:GOSUB 157:GOSUB 155 961 IF P> S1THEN GOSUB 5430:REM DOG 965 IF F= 19THEN GOSUB 3690:GOTO 3060 970 AH= S1:S1= 0 980 IF S1= 0THEN 2880 990 IF L(1)< 1THEN 2260 1000 X= 1 1010 IF L(1)> 5THEN 2450 1020 GOSUB 130:PRINT D1" YARDS &"D2" TO HOLE" 1030 GOSUB 140 1040 GOSUB 130:PRINT INT (O)" YARDS OFF LINE IN" 1050 GOSUB 1070 1060 GOTO 1410 1070 IF L(X)= 1THEN GOSUB 130:PRINT "FAIRWAY.":RETURN 1080 IF L(X)= 2THEN GOSUB 130:PRINT "ROUGH.":RETURN 1090 IF L(X)= 3THEN GOSUB 130:PRINT "TREES.":RETURN 1100 IF L(X)= 4THEN GOSUB 130:PRINT "ADJACENT FAIRWAY.":RETURN 1110 IF L(X)= 5THEN GOSUB 130:PRINT "TRAP.":RETURN 1120 IF L(X)= 6THEN GOSUB 130:PRINT "WATER.":RETURN 1130 GOSUB 130:PRINT "AND OUT OF BOUNDS.":RETURN 1140 GOSUB 130:PRINT C" CLUB NOT IN BAG !":GOTO 1410 1150 REM 1160 REM BUILD SCOREBOARD DISTANCE AND PAR AT TOP OF SCREEN 1170 BE= 0 1180 FOR AA= 1TO 18 1190 READ BA,BB,BC,BD 1200 BE= BE+ BB 1210 PLOT 3,AA* 3- 2,2 1220 IF AA> 9THEN PLOT 3,AA* 3- 2+ 5,2 1230 PLOT 6,1 1240 IF AA/ 2= INT (AA/ 2)THEN PLOT 6,6 1250 PRINT RIGHT$ ((STR$ (BA)),3) 1260 PLOT 6,3,3,AA* 3- 1,3 1270 IF AA> 9THEN PLOT 3,AA* 3- 1+ 5,3 1280 PRINT RIGHT$ ((STR$ (BB)),1) 1290 IF AA= 9THEN 1330 1300 IF AA= 18THEN 1370 1310 NEXT AA 1320 RETURN 1330 PLOT 6,3,3,29,3 1340 PRINT RIGHT$ ((STR$ (BE)),2) 1350 BE= 0 1360 GOTO 1310 1370 PLOT 6,3,3,61,3 1380 PRINT RIGHT$ ((STR$ (BE)),2) 1390 GOTO 1320 1400 REM 1410 REM SELECT CLUB 1420 GOSUB 5130:REM POSITION BALL 1430 GOSUB 140 1435 GOSUB 3681 1440 GOSUB 150:INPUT "CLUB(1-4,11-19,21-29)?";C 1460 GOSUB 140 1470 IF C= 20THEN 1140 1480 IF C< 1OR C> 29THEN 1140 1490 IF C> 4THEN 1550 1500 IF L(1)< 5THEN 1580 1510 IF C> 4THEN 1580 1530 GOTO 1140 1540 S1= S1- 1:W= 1:GOTO 1140 1550 IF C< 11THEN 1140 1560 C= C- 6 1570 GOTO 1500 1580 S1= S1+ 1 1590 W= 1 1600 IF C> 14THEN 1930 1610 IF F/ 3= INT (F/ 3)THEN 1880 1620 IF C< 4THEN 1640 1630 GOTO 1650 1640 IF L(1)= 2THEN 1730 1650 IF S1> 7THEN 1760 1660 D1= INT (((30- H)* 2.5+ 187- ((30- H)* .25+ 15)* C/ 2)+ 25* RND (1)) 1670 D1= INT (D1* W) 1675 AP= D1:GOSUB 157 1680 IF T= 2THEN 2430 1690 O= (RND (1)/ .8)* (2* H+ 16)* ABS (TAN (D1* .0035)) 1700 D2= INT (SQR (O^ 2+ ABS (D- D1)^ 2)) 1710 IF D- D1< 0THEN 1780 1720 GOTO 1810 1730 GOSUB 130:PRINT "YOU DUBBED IT !" 1740 D1= 35 1750 GOTO 1690 1760 IF D< 200THEN 2580 1770 GOTO 1660 1780 IF D2< 20THEN 1810 1790 GOSUB 130:PRINT "TOO MUCH CLUB - TOO LONG" 1810 B= D 1820 D= D2 1830 IF D2> 27THEN 2070 1840 IF D2> 20THEN 2210 1850 IF D2> .5THEN 2230 1860 L(1)= 9 1870 GOTO 2280 1880 IF S2+ Q+ (10* (F- 1)/ 18)< (F- 1)* (72+ ((H+ 1)/ .85))/ 18THEN 1900 1890 GOTO 1620 1900 Q= Q+ 1 1910 IF S1/ 2< > INT (S1/ 2)THEN 2000 1920 GOTO 1730 1930 GOSUB 130:INPUT "% FULL SWING (1-99) ?";W 1932 IF W< 1OR W> 99THEN 1930 1934 GOSUB 140 1940 W= W/ 100 1950 IF W> 1THEN 1540 1960 IF L(1)= 5THEN 2570 1970 IF C= 14THEN 1650 1980 C= C- 10 1990 GOTO 1650 2000 IF D< 95THEN 1730 2010 GOSUB 130:PRINT "HIT TREE."D- 75" YDS TO PIN" 2040 D1= 75 2045 O= (RND (1)/ .8)* (2* H+ 16)* ABS (TAN (D1* .0035)) 2050 L(1)= 1 2055 D2= INT (SQR (O^ 2+ ABS (D- D1)^ 2)) 2060 GOTO 1410 2070 IF O< 30THEN 2260 2080 IF J> 0THEN 2260 2090 IF T> 0THEN 2150 2100 IF (S2+ 1)/ 15= INT ((S2+ 1)/ 15)THEN 2160 2110 GOSUB 130:PRINT "YOU HOOKED." 2115 U1= 2 2120 L(1)= L(3) 2130 IF O> 45THEN 2190 2140 GOTO 980 2150 IF (S2+ 1)/ 15= INT ((S2+ 1)/ 15)THEN 2110 2160 GOSUB 130:PRINT "YOU SLICED." 2165 U1= 1 2170 L((1))= 1 2180 GOTO 2130 2190 GOSUB 130:PRINT "...BADLY." 2200 GOTO 980 2210 L(1)= 5 2220 GOTO 980 2230 L(1)= 8 2240 D2= INT (D2* 3) 2250 GOTO 2670 2260 L(1)= 1 2270 GOTO 980 2280 REM 2290 L(1)= 9 2300 GOSUB 2370 2310 GOSUB 5130 2320 F= F+ 1 2330 GOTO 850 2340 GOSUB 130:PRINT "PUTT SHORT." 2350 D2= INT (D2) 2360 GOTO 2670 2370 PLOT 6,70 2390 PLOT 2,0,56,242,0,99,127,99,127,56,0,56,255 2410 PLOT 6,2 2420 RETURN 2430 D1= INT (.85* D1) 2440 GOTO 1690 2450 IF L(1)> 6THEN 2550 2460 GOSUB 130:PRINT "SHOT WENT INTO WATER." 2470 S1= S1+ 1 2480 GOSUB 140 2490 GOSUB 130:PRINT "PENALTY STROKE ASSESSED." 2500 GOSUB 130:PRINT "HIT FROM PREVIOUS SPOT." 2510 J= J+ 1 2520 L(1)= 1 2530 D= B 2540 GOTO 1410 2550 GOSUB 130:PRINT "SHOT WENT OUT OF BOUNDS." 2560 GOTO 2470 2570 IF T= 3THEN 2600 2580 D2= 1+ (3* INT ((80/ (40- H))* RND (1))) 2590 GOTO 2670 2600 IF RND (1)> LTHEN 2650 2610 N= N* .2 2620 GOSUB 130:PRINT "DUBBED IT.STILL IN TRAP." 2640 GOTO 1410 2650 N= .8 2660 GOTO 2580 2670 L(1)= 8:GOSUB 5130 2675 GOSUB 140 2680 GOSUB 130:PRINT "ON GREEN"D2" FEET TO PIN" 2700 GOSUB 140 2705 GOSUB 3681:REM POST RUNNING SCORE 2706 GOSUB 140 2710 GOSUB 130:INPUT "PUTT POWER (1-20) ?";I 2715 IF I< 1OR I> 20THEN 2710 2716 GOSUB 140 2717 AP= I* 50:GOSUB 157 2720 S1= S1+ 1 2730 IF S1+ 1- P> (H* .072)+ 2THEN 2280 2740 IF K> 2THEN 2280 2750 K= K+ 1 2760 IF T= 4THEN 2820 2770 D2= D2- I* (4+ 2* RND (1))+ 1.5 2780 IF D2< - 2THEN 2840 2790 IF D2> 2THEN 2340 2800 L(1)= 9 2805 GOSUB 3681 2810 GOTO 2280 2820 D2= D2- I* (4+ RND (1))+ 1 2830 GOTO 2780 2840 GOSUB 130:PRINT "PASSED BY CUP." 2845 GOSUB 140 2850 D2= - D2 2860 GOTO 2350 2870 REM READ IN DISTANCE, PAR, RIGHT, LEFT FEATURES 2880 READ D,P,L(2),L(3) 2890 GOSUB 3690:REM TO POST SCORE FOR HOLE AT TOP 2910 IF F< > 1THEN 3055 2915 O1$= " " 2920 PLOT 3,9,20:PRINT O1$ 2930 PLOT 3,9,20:PRINT "HOLE "F"" 2945 IF F= 9THEN AJ= AD+ P 2950 AD= AD+ P 2960 X= 2 2970 REM TO FILL IN RIGHT SIDE OF FAIRWAY 2980 GOSUB 4950 2990 X= 3 3000 REM TO FILL IN LEFT SIDE OF FAIRWAY AND RESTORE HOLE 3010 GOSUB 5100:GOSUB 4060 3020 PLOT 3,59,12 3030 PRINT "d" 3040 REM TO SELECT CLUB 3050 GOTO 1410 3055 IF F= 10THEN 3070 3060 IF F> 9THEN PLOT 6,4,3,60,2:PRINT RIGHT$ ((STR$ (AD- AJ)),3):GOTO 3075 3070 PLOT 6,4,3,28,2:PRINT RIGHT$ ((STR$ (AD)),3) 3075 PLOT 6,2 3080 IF F= 19THEN 3100 3090 GOTO 2920 3100 REM POST ROUND DATA ON SCREEN: C, COURSE#,HANDICAP,SCORE 3105 GOSUB 155 3110 PLOT 6,4 3120 PLOT 3,BF* 8,6 3130 PRINT "C"; 3140 PLOT 6,5 3150 PRINT RIGHT$ ((STR$ (AI)),1); 3160 PLOT 6,3 3170 PRINT RIGHT$ ((STR$ (H)),2); 3180 PLOT 6,1 3190 PRINT RIGHT$ ((STR$ (S2)),3) 3200 BF= BF+ 1 3210 IF BF> 7THEN BF= 0 3211 GOSUB 140 3212 GOSUB 150:PRINT " PAR "AD" SCORE "S2"" 3214 GOSUB 140 3220 GOSUB 150:INPUT "PLAY AGAIN (Y/N) ?";AA$ 3230 IF LEFT$ (AA$,1)< > "Y"THEN 3260 3235 GOSUB 155 3236 PLOT 3,9,20:PRINT O1$ 3237 PLOT 3,28,2:PRINT " ":PLOT 3,60,2:PRINT " " 3240 GOSUB 3310 3250 GOTO 340 3260 GOSUB 150:PRINT "G A M E I S O V E R" 3270 GOSUB 3690 3280 PLOT 6,2,15,27,11 3290 LOAD "MENU":RUN 3300 END 3310 REM HOUSEKEEPING 3311 M$(1)= "1 - PEBBLE BEACH " 3312 M$(2)= "2 - THINKING MAN " 3313 M$(3)= "3 - BROOKLEA " 3314 M$(4)= "4 - RETREAT/SEASIDE " 3315 M$(5)= "5 - MARSHSIDE/PLANTATION" 3320 REM BUILD CRT 3321 M$(6)= "1 - HOOK " 3322 M$(7)= "2 - SLICE " 3323 M$(8)= "3 - POOR DISTANCE" 3324 M$(9)= "4 - TRAPSHOTS " 3325 M$(10)= "5 - PUTTING " 3330 PLOT 6,6 3340 PLOT 2,50,0,242,50,50,127,50,127,0,50,0,255 3341 N1$= "(YOU FINALLY HOLED IT) " 3342 N2$= "IT'S IN - TRIPLE BOGEY" 3343 N3$= "IT'S IN - DOUBLE BOGEY" 3344 N4$= "IT'S IN - BOGEY" 3345 N5$= "ALL RIGHT A PAR" 3346 N6$= "YEAH !!!!! - BIRDIE" 3347 N7$= "GO WITH IT !!!! EAGLE" 3348 N8$= "****** HOLE IN ONE******" 3350 PLOT 6,2 3360 PLOT 3,26,20 3370 PRINT " WOODS n<-BAG OF CLUBS->n IRONS " 3380 PLOT 3,26,21 3390 PRINT "1 DRIVER nHANDICAP:0-30.NOnFULL <FULL" 3400 PLOT 3,26,22 3410 PRINT "2 BRASSIEnSAND WEDGE. WHENn11 1 21 " 3420 PLOT 3,26,23 3430 PRINT "3 SPOON nYOU REACH GREEN,n12 2 22 " 3440 PLOT 3,26,24 3450 PRINT "4 WOOD nYOU WILL PUTT. n13 3 23 " 3460 PLOT 3,26,25 3470 PRINT "iiiiiiiii n14 4 24 " 3480 PLOT 3,26,26 3490 PRINT "NOTE: SCORER WILL ASK YOU n15 5 25 " 3500 PLOT 3,26,27 3510 PRINT "FOR % (1-99) FULL SWING ONn16 6 26 " 3520 PLOT 3,26,28 3530 PRINT "IRONS 21-29. PUTT POTENCYn17 7 27 " 3540 PLOT 3,26,29 3550 PRINT "IS HOW HARD YOU HIT PUTT -n18 8 28 " 3560 PLOT 3,26,30 3570 PRINT "INCREASE # FOR LONGER PUTTn19 9 29 " 3580 GOSUB 120 3590 PLOT 6,6 3600 PLOT 2,0,105,242,0,127,127,127,127,105,0,105,255 3610 PLOT 6,2 3620 PLOT 3,1,1 3630 PRINT " 1 2 3 4 5 6 7 8 9 TOT 10 11 12 13 14 15 16 17 18 TOT" 3640 FOR AA= 1TO 62:PLOT 3,AA,4:PRINT " ":NEXT AA 3650 F= 1 3660 REM TO BUILD HOLE 3670 GOSUB 3950 3680 RETURN 3681 PLOT 6,69,3,AE,4:PRINT RIGHT$ ((STR$ (S1)),2) 3682 IF F> 9THEN PLOT 6,5,3,60,4:PRINT RIGHT$ ((STR$ (S2+ S1- AF)),3):GOTO 3685 3683 PLOT 6,5,3,28,4:PRINT RIGHT$ ((STR$ (S2+ S1)),3) 3685 PLOT 6,2 3686 RETURN 3690 REM POST SCORES 3700 IF AG= 0THEN AG= 1:GOTO 3830 3710 PLOT 6,1 3720 PLOT 3,AE,4 3730 PRINT RIGHT$ ((STR$ (AH)),2) 3740 AE= AE+ 3 3750 PLOT 3,28,4 3760 IF AE= 28THEN PRINT RIGHT$ ((STR$ (S2)),3):GOTO 3800 3770 PLOT 3,60,4 3780 IF AE= 60THEN PRINT RIGHT$ ((STR$ (S2- AF)),3):GOTO 3820 3790 GOTO 3830 3800 AF= S2 3810 AE= 33 3820 REM 3830 RETURN 3840 REM SET UP PROPER DATA ENTRIES FOR COURSE SELECTED 3850 GOSUB 3890:REM SET UP DATA CORRESPONDING TO COURSE SELECTED FOR DISTANCE, PAR,ETC 3860 GOSUB 1160:REM PRINT SCORECARD FOR THIS (AI) COURSE 3870 GOSUB 3890:REM AGAIN, RESTORE DATA POINTER 3880 RETURN 3890 RESTORE 170 3900 IF AI= 2THEN RESTORE 200:GOTO 3940 3910 IF AI= 3THEN RESTORE 230:GOTO 3940 3920 IF AI= 4THEN RESTORE 260:GOTO 3940 3930 IF AI= 5THEN RESTORE 290:GOTO 3940 3940 RETURN 3950 REM DRAW HOLE FROM TEE TO GREEN ON CRT 3960 C2$= " " 3970 C3$= "````````````````````````````````````````````````````````````````" 3980 C4$= "````````````````````````````````````````````````````````````````" 3990 C6$= "`````````````````````````OUT OF BOUNDS``````````````````````````" 4000 C7$= "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" 4010 G2$= "```" 4012 G3$= "tu" 4014 G4$= "vw" 4020 PLOT 3,0,7 4030 PRINT C7$ 4040 PLOT 3,0,17 4050 PRINT C6$ 4060 PLOT 3,0,8 4070 PRINT C4$ 4080 PLOT 3,0,16 4090 PRINT C4$ 4100 PLOT 3,0,9 4110 PRINT C3$ 4120 PLOT 3,0,15 4130 PRINT C3$ 4140 PLOT 3,0,10 4150 PRINT C3$ 4160 PLOT 3,0,14 4170 PRINT C3$ 4180 PLOT 3,0,11 4190 PRINT C3$ 4200 PLOT 3,0,12 4210 PRINT C3$ 4220 PLOT 3,0,13 4230 PRINT C3$ 4240 PLOT 3,1,10 4250 PRINT " " 4260 PLOT 3,1,14 4270 PRINT " " 4280 PLOT 3,1,11 4290 G$= " " 4300 PRINT G$ 4310 PLOT 3,1,12 4320 PRINT G$ 4330 PLOT 3,1,13 4340 PRINT G$ 4350 PLOT 3,58,11 4360 G1$= " " 4370 PRINT G1$ 4380 PLOT 3,58,12 4390 PRINT G1$ 4400 PLOT 3,58,13 4410 PRINT G1$ 4420 IF F= 1THEN 4460 4430 IF (F+ 1)/ 3= INT ((F+ 1)/ 3)THEN 4460 4440 IF L(2)= 6OR L(3)= 6THEN 4460 4445 IF P= 3AND F/ 2= INT (F/ 2)THEN 4460 4450 GOTO 4610 4460 PLOT 27,10 4470 PLOT 3,55,7 4480 PRINT "^^^^^^^^^" 4490 PLOT 3,54,7 4500 PRINT "^^^^^^^^^" 4510 PLOT 3,53,11 4520 PRINT "^^^^^^^" 4530 PLOT 3,52,14 4540 PRINT "^^^^" 4550 PLOT 3,51,14 4560 PRINT "^^^^" 4570 PLOT 27,24 4580 PLOT 3,53,9 4590 PRINT " " 4591 IF P< > 3THEN 4600 4592 WP$= "^^^^^^^^^^^^^^^^^^" 4593 FOR AA= 9TO 14:PLOT 3,30,AA:PRINT WP$:NEXT AA 4594 PLOT 3,48,14:PRINT "^^^" 4596 PLOT 27,10,3,49,13:PRINT " ":PLOT 27,24 4600 IF F= 1THEN 4620 4610 IF INT (3* RND (1)+ 1)< > 3THEN 4680 4620 PLOT 3,6,9 4630 PRINT G2$ 4640 PLOT 3,9,10 4650 PRINT G2$ 4660 PLOT 3,9,9 4670 PRINT G2$:IF F= 1THEN 4690 4680 IF INT (3* RND (1)+ 1)< > 3THEN 4770 4690 PLOT 3,9,14 4700 PRINT G2$ 4710 PLOT 3,10,14 4720 PRINT G2$ 4730 PLOT 3,7,15 4740 PRINT G2$;G2$ 4750 PLOT 3,7,16 4760 PRINT G2$;G2$ 4770 IF INT (3* RND (1)+ 1)< > 3THEN 4800 4780 PLOT 3,21,9 4790 PRINT G2$;G2$ 4800 IF INT (3* RND (1)+ 1)< > 3THEN 4830 4810 PLOT 3,33,15 4820 PRINT G2$ 4830 PLOT 3,2,11 4840 PRINT "o`" 4850 PLOT 3,2,12 4860 PRINT "o" 4870 PLOT 3,58,9:PRINT G6$:PLOT 3,58,10:PRINT G7$ 4871 SP= INT (10* RND (1)+ 7) 4872 FOR AA= 1TO SP:WP= INT (15* RND (1)+ 1) 4873 ON WPGOSUB 4875,4876,4877,4878,4879,4880,4881,4882,4883,4884,4885,4886,4887,4888,4889 4874 GOTO 4901 4875 X3= 12:Y3= 8:RETURN 4876 X3= 45:Y3= 14:RETURN 4877 X3= 28:Y3= 14:RETURN 4878 X3= 58:Y3= 15:RETURN 4879 X3= 20:Y3= 9:RETURN 4880 X3= 61:Y3= 9:RETURN 4881 X3= 48:Y3= 8:RETURN 4882 X3= 59:Y3= 7:RETURN 4883 X3= 35:Y3= 8:RETURN 4884 X3= 56:Y3= 14:RETURN 4885 X3= 60:Y3= 14:RETURN 4886 X3= 26:Y3= 8:RETURN 4887 X3= 15:Y3= 13:RETURN 4888 X3= 43:Y3= 14:RETURN 4889 X3= 58:Y3= 9:RETURN 4890 IF P= 3AND D< 210THEN 4910 4900 GOTO 4940 4901 PLOT 3,X3,Y3:PRINT G3$ 4902 PLOT 3,X3,Y3+ 1:PRINT G4$ 4903 NEXT AA:GOTO 4890 4910 PLOT 3,0,9:PRINT G2$;G2$ 4920 PLOT 3,0,15:PRINT G2$;G2$;G2$ 4930 PLOT 27,10,3,0,9:PRINT G2$;G2$:PLOT 27,24 4940 RETURN 4950 REM FILL IN RIGHT SIDE OF FAIRWAY 4960 PLOT 3,0,7 4970 ON L(X)GOTO 4980,4990,5010,5030,5050,5060,5080 4980 RETURN 4990 PRINT C4$ 5000 RETURN 5010 PRINT C4$ 5020 RETURN 5030 PRINT C2$ 5040 RETURN 5050 RETURN 5060 PRINT C7$ 5070 RETURN 5080 PRINT C6$ 5090 RETURN 5100 REM FILL IN LEFT SIDE OF FAIRWAY 5110 PLOT 3,0,17 5120 GOTO 4970 5130 REM POSITION BALL ON FAIRWAY OR GREEN 5140 IF L(1)= 0THEN 5510 5150 IF S1= 0THEN 5510 5160 PLOT 3,X1,Y1 5170 IF X1> 50THEN PRINT "`" 5180 IF X1> 9THEN PRINT "`":GOTO 5200 5190 PRINT " " 5200 IF L(1)< > 9THEN 5240 5210 PLOT 3,3,11 5220 PRINT "`" 5230 GOTO 5410 5240 REM NOT ON TEE OR IN HOLE 5250 IF L(1)< > 8THEN 5310 5260 X1= 4+ INT ((D2- 1)/ 10) 5270 Y1= 13 5280 PLOT 3,X1,Y1 5290 PRINT "d" 5300 GOTO 5410 5310 X1= 10+ INT (D2/ 6) 5320 IF X1> 50THEN X1= 50 5330 IF X1< 10THEN X1= 10 5332 IF U1= 0THEN 5340 5334 IF U1= 1THEN Y1= 12- INT (O/ 10):U1= 0:GOTO 5360 5336 U1= 0:Y1= 12+ INT (O/ 10):GOTO 5360 5340 Y1= 12+ INT (O/ 10) 5350 IF INT (2* RND (1)+ 1)= 2THEN Y1= 12- INT (O/ 10) 5360 IF Y1> 16THEN Y1= 16 5370 IF Y1< 8THEN Y1= 8 5380 PLOT 3,X1,Y1 5390 PRINT "d" 5410 PLOT 3,59,12 5420 PRINT " " 5425 GOTO 5510 5430 IF INT (18* RND (1)+ 1)< > 12THEN 5505 5440 FOR AA= 15TO 9STEP - 1 5450 PLOT 6,16,3,13,AA 5460 PRINT "*" 5470 FOR AB= 0TO 15:NEXT AB 5480 PLOT 6,2,3,13,AA 5490 PRINT "`" 5500 NEXT AA 5505 RETURN 5510 RETURN 5520 GOSUB 5730 5530 QZ= 28672+ 128* QY+ QX+ QX:QP= QT+ 2:GOSUB 5720 5540 QZ= 128- QW- QW:QP= QT+ 25:GOSUB 5720 5550 POKE QT+ 5,QN- 1:POKE QT+ 7,QW* (QO+ 1):POKE QT+ 19,35* (1- QO) 5560 RETURN 5570 GOSUB 5730:RESTORE 5580 5580 DATA 33,-1,-1,6,-1,14,-1,17,128,0,25,126 5590 DATA 17,128,255,25,119,35,-1,13,194,-1,-1 5600 DATA 17,-1,-1,25,5,194,-1,-1,201 5610 IF QT> 65503THEN QT= QT- 32:GOTO 5650 5620 FOR U9= 1TO 32:READ QQ 5630 IF QQ> = 0AND QQ< > PEEK (QT+ 1)THEN U9= 32:QT= QT- 32 5640 NEXT U9 5650 RESTORE 5580 5660 FOR U8= 1TO 32:READ QQ:POKE QT+ U8,QQ- (QQ< 0):NEXT U8 5670 QZ= QT+ 1:QP= 33283:GOSUB 5720 5680 QZ= QT:QP= QR:GOSUB 5720 5690 QZ= QT+ 6:QP= QT+ 30:GOSUB 5720 5700 QZ= QT+ 8:QP= QT+ 22:GOSUB 5720 5710 CLEAR 25:GOTO 110 5720 QV= INT (QZ/ 256):POKE QP,QZ- 256* QV:POKE QP+ 1,QV:RETURN 5730 QR= 32940:QT= 256* PEEK (QR+ 1)+ PEEK (QR):RETURN 5740 QS= CALL (0) 5750 PLOT 3,QX,QY+ QN- 1:PRINT SPC( QW)"" 5760 PLOT 3,QX,QY+ QN- 1 5770 RETURN 5780 END