This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page,
please contact me immediatelly so I can remove it!
|
|
|
-
Entry name:Pro Tour Golf rev. 2.3
-
Category:Games
-
Publisher/Developer:BELLCOM - Public Domain Library
-
Year:1980
Listing 1
0 REM GOLF REV 2.3 13K BY JERRY WHITE 1 REM 18 HICKORY LANE LEVITTOWN NEW YORK 11756 516-731-6873 WITH REVISIONS OF 10/29/80 5 Z=1:Z0=0:TN=10:GRAPHICS 18:SETCOLOR Z0,Z,8:SETCOLOR 2,15,4:SETCOLOR 4,6,Z0 6 POSITION 4,2:? #6;"":GOSUB 1400:FOR PK=Z TO 500:NEXT PK 7 POSITION 7,4:? #6;"TOUR":GOSUB 1410:FOR PK=Z TO 500:NEXT PK 8 POSITION 11,6:? #6;"":GOSUB 1420:FOR PK=Z TO 900:NEXT PK 10 DIM GR(40),W$(7),PN$(28),NM(4),P(9),SH(4,9),PT(4),H(4),E(4),RET$(Z),JW$(9),CL$(22) 20 CL$="":GOTO 3000 50 GRAPHICS Z0:SETCOLOR Z,4,TN:SETCOLOR 2,4,Z0:SETCOLOR 4,4,Z0 52 ?:? "ENTER UP TO SIX POSITIONS FOR EACH":?:? "PLAYERS NAME THEN HIT " 60 ?:?:FOR JZ=Z TO PLA:? " ";JZ;" ";:GOSUB 990:INPUT W$:? 70 NM(JZ)=LEN(W$)+NM(JZ-Z):PN$(NM(JZ-Z)+Z,NM(JZ))=W$:NEXT JZ 80 FOR JZ=Z TO 4:H(JZ)=JZ:E(JZ)=JZ:NEXT JZ 100 FOR HOL=Z TO 9:QQ=Z:GOSUB 830:POKE 752,Z 110 FOR JZ=Z TO 5:FOR J=Z TO PLA-Z:X=SH(E(J),HOL-Z):Y=SH(E(J+Z),HOL-Z) 120 X=SH(E(J),HOL-Z):Y=SH(E(J+Z),HOL-Z) 130 IF X>Y THEN ZE=E(J):E(J)=E(J+Z):E(J+Z)=ZE 135 NEXT J:NEXT JZ 140 FOR EX=Z TO PLA:SH=Z0:? "HOLE # ";HOL;" PAR ";P(HOL);" ";YA;" YARDS" 150 EU=E(EX):IF PLA=Z THEN EU=Z 160 GOSUB 600:SH(EU,HOL)=SH:?:?:FOR JZ=Z TO 3:? ,"IT'S ON THE GREEN" 170 FOR PK=70 TO Z0 STEP -2:SOUND Z0,PK,TN,2*JZ:NEXT PK:NEXT JZ:NEXT EX 175 IF PLA=Z THEN 200 180 FOR JZ=Z TO 4:H(JZ)=JZ:NEXT JZ:FOR JZ=Z TO 5:FOR J=Z TO PLA-Z 190 IF PT(H(J))<PT(H(J+Z)) THEN ZE=H(J):H(J)=H(J+Z):H(J+Z)=ZE 195 NEXT J:NEXT JZ 200 FOR EX=Z TO PLA:SH=Z0 210 IF PLA=Z THEN EU=Z:GOTO 220 215 EU=H(EX) 220 GOSUB 400:FOR JZ=Z TO 444:NEXT JZ 230 SH(EU,HOL)=SH(EU,HOL)+SH:NEXT EX:GOSUB 300:NEXT HOL 250 POSITION 8,21:? "HIT TO REPLAY":POSITION 8,22:? "HIT TO END" 260 IF PEEK(53279)=6 THEN RUN 265 GOSUB 990 270 IF PEEK(53279)=3 THEN 281 280 GOTO 260 281 FOR PK=Z TO 20:SOUND Z0,45,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0 282 FOR PK=Z TO TN:NEXT PK:FOR PK=Z TO TN:SOUND Z0,60,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0:FOR PK=Z TO TN:NEXT PK 283 FOR PK=Z TO TN:SOUND Z0,60,TN,8:NEXT PK:FOR PK=Z TO 20:SOUND Z0,53,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0 284 FOR PK=Z TO 20:SOUND Z0,60,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0:FOR PK=Z TO 40:NEXT PK 285 FOR PK=Z TO 15:SOUND Z0,121,TN,8:SOUND Z,96,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0:SOUND Z,Z0,Z0,Z0 286 FOR PK=Z TO 20:SOUND Z0,182,TN,8:SOUND Z,91,TN,8:NEXT PK:SOUND Z0,Z0,Z0,Z0:SOUND Z,Z0,Z0,Z0 287 GRAPHICS Z0:END 300 GRAPHICS Z0:SETCOLOR 2,2,2:SETCOLOR 4,2,2:POKE 752,Z:SETCOLOR Z,2,12:GOSUB 1000 310 ?:? " ":?:? 320 ? "":?:? "":POSITION 36,4:? "T" 330 FOR JZ=Z TO 9:POSITION JZ*3+6,4:? JZ;:NEXT JZ 335 TP=Z0:FOR JZ=Z TO HOL:POSITION JZ*3+6,6:? P(JZ);:TP=TP+P(JZ):NEXT JZ 340 POSITION 36,6:? TP;:FOR JZ=Z TO PLA:POSITION 2,JZ*2+7:? PN$(NM(JZ-Z)+Z,NM(JZ)); 350 E=Z0:FOR J=Z TO HOL:E=E+SH(JZ,J) 360 POSITION J*3+6,JZ*2+7:? SH(JZ,J);:NEXT J:POSITION 36,JZ*2+7:? E;:NEXT JZ 370 IF HOL=9 THEN RETURN 380 POSITION 6,23:? "HIT TO CONTINUE...";:GOSUB 990:GOSUB 990 390 INPUT RET$:RETURN 400 GRAPHICS 5:COLOR Z:SETCOLOR Z0,12,8:SETCOLOR 4,14,6:SETCOLOR 2,Z0,4:POKE 752,Z:SETCOLOR Z,12,12 410 COLOR Z:TC=INT(PT(EU)):GR=30:K=Z:IF 0.5>RND(0) THEN K=-1 420 DS=RND(0)*20+TN:R=0.7000000000000001:I=RND(0)*20+40:FL=INT(RND(0)*20)+45 430 FOR JZ=0 TO 78 STEP 2:PLOT JZ,GR:PLOT JZ+Z,GR:GR(JZ/2)=GR:PLOT JZ,GR+Z:PLOT JZ+Z,GR+Z 440 IF 5>ABS(FL-JZ) THEN 470 450 IF GR>38 THEN GR=38 455 IF JZ>DS THEN K=-K:DS=100 460 IF R<RND(0) THEN GR=GR+K 465 IF JZ>I THEN R=0.9500000000000001 470 NEXT JZ 475 B=INT(FL-TC):COLOR 4:PLOT FL,GR(FL/2):PLOT FL,GR(FL/2)+Z 477 COLOR 2:PLOT FL,8:DRAWTO FL,GR(FL/2)-3 480 PLOT FL,8:DRAWTO FL+12,4:DRAWTO FL,0:POSITION FL,7:POKE 765,2:XIO 18,#6,0,0,"S:" 482 IF PT(EU)>5 THEN 495 485 COLOR 2:PLOT FL,GR(FL/2)+Z:FOR PK=Z TO 3:? ,"IT'S IN THE CUP":FOR PJ=70 TO 0 STEP -2:SOUND 0,PJ,10,PK*2 490 NEXT PJ:NEXT PK:SOUND Z0,Z0,Z0,Z0 492 FOR PK=Z TO 3:FOR PJ=15 TO Z0 STEP -0.2:SOUND Z0,PJ,4,PJ:NEXT PJ:NEXT PK:RETURN 495 IF B<Z THEN B=FL 497 COLOR 2:PLOT B,GR(B/2)-Z 500 A=20:SH=SH+Z:SOUND Z0,Z0,Z0,Z0 502 ?:? PN$(NM(EU-Z)+Z,NM(EU));"'S PUTT ON HOLE # ";HOL;" LAYING ";SH(EU,HOL)+SH-Z 505 TRAP 505:? "TYPE PUTT LENGTH (1=TAP TO 50=LONG) ":? ,"HIT ";:INPUT JW$ 510 A=VAL(JW$):TRAP 40000 520 K=Z0:NM=Z:IF B>FL THEN NM=-Z 530 COLOR 4:PLOT B,GR(B/2)-Z:B=B+NM:COLOR 2:PLOT B,GR(B/2)-Z 535 IF B>77 THEN B=77:GOTO 500 540 IF B<Z THEN B=Z:GOTO 500 545 IF GR(B/2)<GR(B/2+Z) THEN A=A+INT(RND(0)*2) 550 IF GR(B/2)>GR(B/2+Z) THEN A=A-INT(RND(0)*2) 560 K=K+Z:IF K>=A THEN 580 570 SOUND Z0,B*2,TN,2:GOTO 530 580 IF B<>FL THEN 500 590 COLOR 4:PLOT B,GR(B/2)-Z:COLOR 2:PLOT B,GR(B/2)+Z 595 FOR JW=15 TO Z0 STEP -Z:SOUND Z0,20,10,JW:NEXT JW:RETURN 600 BB=EJ-2+INT(RND(0)*5):BA=3:COLOR 3:PLOT BA,BB:Q=Z0:K=Z:ZE=2 605 C=K:IF K>Z THEN C=K*8-8 610 ? PN$(NM(EU-Z)+Z,NM(EU));"'S TURN: SELECT YOUR CLUB":GOSUB 2000 615 IF QQ=Z0 THEN ? 620 ? "TYPE FOR WOOD FOR IRON FOR WEDGE";:? ,"";:TRAP 605:INPUT K:TRAP 40000 622 K=INT(K) 625 IF K>3 OR K<Z THEN ?:?:GOTO 620 630 QQ=Z0:IF K=3 THEN 695 635 IF K=Z THEN C=Z:GOTO 655 640 C=7 655 ?:?:?:?:GOSUB 2000 660 TRAP 655:? ,"SELECT ";CL$(C,C+6);"":? ,"";:GOSUB 990:INPUT JW$:?:? 665 IF K=Z AND VAL(JW$)>4 THEN 4000 670 IF K=2 AND VAL(JW$)>9 THEN 4000 675 JZ=VAL(JW$):IF JZ<Z OR JZ<>INT(JZ) THEN 660 680 TRAP 40000:IF K=2 THEN 690 685 JZ=JZ*2:LD=INT(RND(0)*20):DS=(8-INT(JZ))*12+170+LD:LD=20:GOTO 700 690 DS=(TN-JZ)*15+35+RND(0)*6:LD=TN:GOTO 700 695 DS=35+RND(0)*6:LD=TN 700 FJ=Z:GJ=Z 705 QQ=Z:?:?:?:? "0=NORTH 10=EAST 20=SOUTH 30=WEST":GOSUB 2000 710 TRAP 705:? "";:GOSUB 990:INPUT JW$:?:? 715 IF VAL(JW$)<Z0 OR VAL(JW$)<>INT(VAL(JW$)) OR VAL(JW$)>39 OR LEN(JW$)>2 THEN ?:?:GOTO 705 720 DA=VAL(JW$):TRAP 40000 725 IJ=DA:HJ=Z0:IF ZE=Z0 THEN HJ=INT(RND(0)*3)-Z:IJ=DA+HJ:IF IJ<Z0 OR IJ>39 THEN 725 730 DA=IJ:IF ZE=Z0 THEN KJ=DS/(RND(0)+2):DS=DS-KJ 735 IF DA<11 THEN X=DA/TN:Y=(TN-DA)/TN:GJ=-Z:GOTO 755 740 IF DA<21 THEN X=(20-DA)/TN:Y=(DA-TN)/TN:GOTO 755 745 IF DA<31 THEN X=(DA-20)/TN:Y=(30-DA)/TN:FJ=-Z:GOTO 755 750 X=(40-DA)/TN:Y=(DA-30)/TN:FJ=-Z:GJ=-Z 755 KJ=DS-RND(0)*DS-15:IF KJ<21 THEN KJ=20 760 IF ZE=3 THEN DS=KJ 762 ?:? " YOUR SHOT WILL TRAVEL FROM":? " ";INT(DS)-5;" TO ";INT(DS)+LD;" YARDS" 763 ? " DEPENDING ON THE BOUNCES AND":? " PROVIDING IT STAYS ON THE FAIRWAY"; 765 FOR PK=Z TO 400:NEXT PK:SH=SH+Z:Q=Q+Z:IF Y=Z0 THEN Y=0.00025 766 FOR PK=2 TO 12 STEP 2:SOUND Z0,20,Z0,PK:NEXT PK:SOUND Z0,Z0,Z0,Z0 770 IF X=Z0 THEN X=0.00025 775 COLOR ZE:PLOT BA,BB 780 IF X>RND(0) AND Y>RND(0) THEN BA=BA+FJ:DS=DS-8:BB=BB+GJ:GOTO 795 785 IF X>RND(0) THEN BA=BA+FJ:DS=DS-8 790 IF Y>RND(0) THEN BB=BB+GJ:DS=DS-8 795 IF (BA>=Z) AND (BA<=78) AND (BB>=Z) AND (BB<=38) THEN 805 796 LOCATE BA,BB,ZE:COLOR ZE:PLOT BA,BB:IF BA<=Z THEN BA=2 797 IF BB<=Z THEN BB=Z 798 IF BA>=78 THEN BA=78 799 IF BB>=38 THEN BB=38 800 COLOR 3:PLOT BA,BB:K=Z:SH=SH+Z 801 FOR PK=Z TO 4:? "BALL OFF COURSE - PENALTY=1 STROKE":NEXT PK 802 GOSUB 1100:GOTO 605 805 LOCATE BA,BB,ZE:COLOR 3:PLOT BA,BB:SOUND Z0,Z0,Z0,Z:?:? 810 IF DS>Z0 THEN 775 815 IF AR<ABS(BA-JH) THEN K=Z:GOTO 605 820 IF AR<ABS(BB-JG) THEN K=Z:GOTO 605 825 PT(EU)=ABS(BA-JH)*7+ABS(BB-JG)*7:RETURN 830 GRAPHICS 5:COLOR Z:SETCOLOR Z0,12,8:SETCOLOR 4,14,6:SETCOLOR 2,0,10:POKE 752,Z:SETCOLOR Z,12,4 835 EJ=INT(RND(0)*28)+6:JG=INT(RND(0)*28)+6:AR=3 836 IF OP=Z THEN JH=INT(RND(0)*20)+25:GOTO 840 837 JH=INT(RND(0)*40)+32 840 IF (JH<45) AND (ABS(EJ-JG)>TN) THEN 835 850 IF RND(0)<0.2 THEN 860 855 IF ABS(EJ-JG)<20 THEN 835 860 GOSUB 910 865 Y=3:FOR X=Z0 TO 3:COLOR 2 870 PLOT JH-X,Y+JG:DRAWTO JH-X,JG-Y:PLOT JH+X,JG+Y:DRAWTO JH+X,JG-Y 875 NEXT X:YA=JH*7+ABS(JG-EJ)*4 880 FOR X=EJ-3 TO EJ+3:PLOT Z0,X:DRAWTO 5,X:NEXT X 885 COLOR Z:PLOT JH,JG:P(HOL)=3:IF YA>279 THEN P(HOL)=4 890 IF YA>499 THEN P(HOL)=5 895 B=INT(JG-EJ)/1.5+EJ:M=JH-TN-RND(0)*7:IF JH>29 THEN M=JH-10 896 IF M<16 THEN RETURN 900 COLOR 3:PLOT M,B:DRAWTO M,B+2:PLOT M+Z,B-Z:DRAWTO M+Z,B+3:PLOT M+2,B-2:DRAWTO M+2,B+4 905 PLOT M+3,B-Z:DRAWTO M+3,B+3:PLOT M+4,B:DRAWTO M+4,B+2:RETURN 910 IF JH<35 THEN BA=RND(0)+2:GOTO 920 915 BA=RND(0)+3 920 JE=EJ-4:JF=EJ+4:BA=INT(JH/BA) 925 FOR JZ=Z0 TO BA:PLOT JZ,JE:DRAWTO JZ,JF 930 IF RND(0)<0.2 THEN JE=JE-Z:IF JE<2 THEN JE=2 935 IF RND(0)<0.2 THEN JF=JF+Z:IF JF>36 THEN JF=36 940 SOUND Z0,(JZ+TN)*2,TN,2:NEXT JZ 945 PLOT BA,JE:DRAWTO BA,JF:SOUND Z0,(JE+8)*3+BA,TN,2:BA=BA+Z:IF BA>=76 THEN RETURN 950 IF BA>JH+4+RND(0)*7 THEN RETURN 955 IF JE>JG-8 THEN JE=JE-Z 960 IF JE<JG-8 THEN JE=JE+0.5 965 IF JE<2 THEN JE=2 970 IF JF>JG+8 THEN JF=JF-0.5 975 IF JF<JG+8 THEN JF=JF+Z 980 IF JF>76 THEN JF=76 985 GOTO 945 990 FOR PK=Z TO 2:POKE 755,3:FOR PJ=Z TO 8:NEXT PJ:POKE 755,2:FOR PJ=Z TO 8:NEXT PJ:NEXT PK:RETURN 1000 FOR JW=TN TO Z0 STEP -Z:SOUND Z0,JW,TN,JW:NEXT JW:RETURN 1100 SOUND Z0,90,12,4:FOR PK=Z TO 100:NEXT PK:SOUND Z0,Z0,Z0,Z0:FOR PK=Z TO 25:NEXT PK 1110 SOUND Z0,85,12,4:FOR PK=Z TO 50:NEXT PK:SOUND Z0,Z0,Z0,Z0 1120 SOUND Z0,78,12,4:FOR PK=Z TO 50:NEXT PK:SOUND Z0,Z0,Z0,Z0:FOR PK=Z TO 50:NEXT PK 1130 SOUND Z0,90,12,4:?:FOR PK=Z TO 50:NEXT PK:SOUND Z0,Z0,Z0,Z0:FOR PK=Z TO 200:NEXT PK:RETURN 1400 FOR JW=8 TO Z0 STEP -0.5:SOUND Z0,90,TN,JW:NEXT JW:RETURN 1410 FOR JW=8 TO Z0 STEP -0.5:SOUND Z0,120,TN,JW:NEXT JW:RETURN 1420 FOR JW=8 TO Z0 STEP -0.5:SOUND Z0,180,TN,JW:NEXT JW:RETURN 2000 FOR JW=2 TO Z0 STEP -0.5:SOUND Z0,19,2,JW:NEXT JW:FOR PK=Z TO 10:NEXT PK 2020 FOR JW=2 TO Z0 STEP -0.5:SOUND Z0,4,2,JW:NEXT JW:RETURN 3000 GRAPHICS Z0:SETCOLOR 2,9,Z0:?:? " PRO TOUR GOLF SHOT DIRECTIONS:":? 3010 COLOR 124:POKE 766,Z:POKE 752,Z 3050 POSITION 20,3:? "0":POSITION 18,4:? "NORTH" 3060 POSITION 19,17:? "20":POSITION 18,16:? "SOUTH" 3070 POSITION 11,TN:? "30":POSITION 7,TN:? "WEST" 3080 POSITION 27,TN:? "10":POSITION 30,TN:? "EAST" 3100 POSITION 25,6:? "5":POSITION 24,14:? "15" 3120 POSITION 14,6:? "35":POSITION 14,14:? "25" 3220 POKE 766,Z:PLOT 20,5:DRAWTO 20,15 3240 COLOR 18:POKE 752,Z:PLOT 15,10:DRAWTO 26,10 3250 POSITION 20,10:? CHR$(20):POKE 752,Z:GOSUB 1000 3300 POSITION 8,20:? "";:GOSUB 990:INPUT RET$ 3400 POKE 766,0:? "":?:? " THE CLUBS IN YOUR BAG ARE:":? 3405 ? ," CLUB APPROX YARDAGE":? 3420 ? ,"1 WOOD 2 5 0":? ,"2 WOOD 2 3 0" 3440 ? ,"3 WOOD 2 1 0":? ,"4 WOOD 1 9 0" 3450 ? ,"1 IRON 1 7 5":? ,"2 IRON 1 6 0" 3460 ? ,"3 IRON 1 4 5":? ,"4 IRON 1 3 0" 3470 ? ,"5 IRON 1 1 5":? ,"6 IRON 1 0 0" 3480 ? ,"7 IRON 8 5":? ,"8 IRON 7 0" 3490 ? ,"9 IRON 5 5":? ," WEDGE 4 0":GOSUB 1000 3500 POSITION 8,21:? "";:GOSUB 990:INPUT RET$ 3600 GRAPHICS 18:? #6:? #6;" CHOOSE COURSE":? #6;" TYPE OR " 3610 ? #6;" ONG HORT" 3620 CLOSE #Z:OPEN #Z,4,0,"K:":GET #Z,GC 3640 IF GC=83 THEN OP=Z:GOTO 3700 3660 IF GC=76 THEN OP=Z0:GOTO 3700 3680 GOTO 3600 3700 ? #6:? #6;" HOW MANY PLAYERS":? #6;" " 3710 GET #Z,GC:IF GC>52 OR GC<49 THEN 3700 3720 PLA=GC-48:CLOSE #Z:GOTO 50 4000 ? "":GOSUB 990 4020 FOR PK=100 TO 250:SOUND Z0,PK,TN,2:NEXT PK:SOUND Z0,Z0,Z0,Z0:GOSUB 990:GOTO 610
References
Listing downloads
Copyright holder
