■GOLFER-PB-■

 著作制作…………よなぷー
 制作年月日………2017年4月14日
 対応機種…………PB-100/110/120用ゲームプログラム
 使用メモリ………1568ステップ
 ※「ク」はクラブ、「ス」はスペード、「ハ」はハートの記号です。
 ※「●」はスペース一個です。
 ※「○」はEXTモードの[SHIFT][A]です。
 ※「⊂」は[ANS]の下の[E]です。


P0

1 X=0:Y=1.5:E=INT(RAN#*4:T=0:K=0:W=0

2 PRINT "HOLE";Z;:$="●●・・・'・,O■":F=10*FRAC(LN Z*1⊂5:IF F≦3;F=F+3

3 FOR J=1 TO F:$=$+MID(1+10*FRAC(1⊂6*LN(Z+COS J,1):NEXT J

4 U=INT(F/3+2:$="□"+MID(11)+"P"

5 GOSUB #2:IF W≠3;PRINT CSR11;A$(E);CSRX;P$(Y);

6 IF KEY="+";GOSUB #1:GOTO 5

7 IF KEY="*";PRINT:PRINT "SC";L,"PAR";T;"/";U:GOTO 5

8 IF KEY≠"6" THEN 6

9 G=0:PRINT:FOR F=0 TO 11:PRINT CSR COSπ+F;"→";

11 IF KEY="-";IF G=0;G=F:PRINT CSRG;"*";:GOSUB #8:F=11

13 NEXT F:GOSUB #8:IF W=2;G=G*.5

15 IF W=1;IF K≠2;IF RAN#>.3;G=0

17 IF G=0;PRINT CSR3;"[MISS]";:GOTO 90

19 IF W=3 THEN 65

21 W=0:H=0:PRINT:FOR F=11 TO 0 STEP -1:PRINT CSRF+COSπ;"←";CSR5;"II";

23 IF KEY="-";IF H=0;H=F:PRINT CSRH;"*";:GOSUB #8:F=0

25 NEXT F:H=H-5.5:IF ABSH=.5;H=0

27 M=Y+2*(H/5.5:IF FRAC(E/2=0;M=M+E-1

29 N=X+.9+(3-K)↑2*.7*(G/11:IF FRAC(E/2≠0;N=N+(E-2)/2

31 IF N≦X;N=X+.1

33 S=Y:J=(M-Y)/(N-X):FOR F=X TO N

35 IF S≧0;IF 3>S;GOSUB #2:PRINT CSRF;P$(S);:G=COS TAN SIN π

37 S=S+J:NEXT F:T=T+1:IF N≧LEN($) THEN 41

39 IF S≧0;IF 3>S THEN 43

41 PRINT CSR4;"[OB]";:GOTO 90

43 G$=MID(N+1,1):IF G$≠"■" THEN 49

45 PRINT CSR1;"[WATER]";:IF N≧1;N=N-1:IF MID(N+1,1)="■" THEN 45

47 X=N:GOTO 90

49 IF G$≠"P" THEN 55

51 PRINT CSR2;"[GREEN]";:GOSUB #8:X=12*FRAC N:IF X≧5;IF 7>X THEN 75

53 $="■■■■■()■■■■■":W=3:GOTO 5

55 IF G$="O";PRINT CSR2;"[BUNKER]";:GOSUB #8:W=1

57 X=INT N:Y=INT S+.5:J$=MID(X+1,1):IF J$="'";IF 1>Y;GOSUB #3

59 IF J$="・";IF Y≧1;IF 2>Y;GOSUB #3

61 IF J$=",";IF Y≧2;GOSUB #3

63 GOTO 5

65 T=T+1:H=1:IF X≧7;H=-1

67 G=G-2:IF G≧0;X=X+H:GOSUB #2

69 IF ABS(INT X-5.5≦.5;IF G≦1 THEN 75

71 IF G≧2 THEN 67

73 GOTO 5

75 PRINT:PRINT "CUP●IN!";:GOSUB #8:Z=Z+1:L=L+T-U:PRINT

77 PRINT "HOLE●SC";T-U,"TOTAL";L:IF Z≠19 THEN 1

79 PRINT "ALL●CLEAR!","RESULT";L;:IF L≧V;END

81 STOP:PRINT "BEST●SC!":V=L:INPUT "NAME",O$:END

90 T=T+1:GOSUB #8:GOTO 5


P1

1 PRINT:PRINT "CLUB=";:IF W=3;PRINT "PUTTER":RETURN

3 IF K=0;PRINT "DRIVER";

5 IF K=1;PRINT "IRON";

7 IF K=2;PRINT "S.W";

9 IF KEY="Q";K=K-SGN K:GOTO 1

20 IF KEY="W";K=K+SGN(2-K:GOTO 1

30 IF KEY≠"-" THEN 9

40 PRINT "!";:GOTO #8


P2

10 PRINT CSR0;$;:IF W=3;PRINT CSRX;Q$;:RETURN

20 FOR I=LEN($)-1 TO 10:PRINT "ク";:NEXT I:RETURN


P3

10 PRINT CSR2;"[ROUGH]";:W=2:GOTO #8


P8

10 FOR I=0 TO 99:NEXT I:RETURN


P9

10 PRINT "●BY●YONAPUU","●GOLFER-PB-","TOP";V,"BY●";O$:A$="↑"

20 B$="←":C$="↓":D$="→":P$="゜":Q$="○":R$="o":Z=1:L=0:GOTO #0