Home » Archimedes archive » Archimedes World » AW-1992-02 - Virus Removed.adf » February92 » !AWFeb92/Goodies/MicroDrive/!Micro_Drv/DEMO
!AWFeb92/Goodies/MicroDrive/!Micro_Drv/DEMO
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Archimedes World » AW-1992-02 - Virus Removed.adf » February92 |
Filename: | !AWFeb92/Goodies/MicroDrive/!Micro_Drv/DEMO |
Read OK: | ✔ |
File size: | B818 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
@ ��@��@ ��0�0� P�� �� �BASIC -quit @00009000,000147C0 ķ 8 �G 9�ș"OS_IntOn":�("SET Micro$Dir :0.!Micro_Drv"):�dR@ ( CRS%=1 2*FX112,0 <*FX113,0 F �init P ș46,303,SP%,"BAG2" Z �j%=0�17 d ș46,303,SP%,"GFR2"+�(j%) n' �j%<6�ș46,303,SP%,"XGFR2"+�(j%) x � � ș46,303,SP%,"GFR220" � ș46,303,SP%,"GFR221" � ș46,303,SP%,"GFR230" � ș46,303,SP%,"GFR231" � ș46,303,SP%,"GFR232" � ș46,303,SP%,"XGFR220" � ș46,303,SP%,"XGFR221" �*SET Micro$Dir <Obey$Dir> ��whichcourse �Z%=�("RAM:$.COURSE") ��inirnd ��RTN%��dR@ �DR%=�:hole%=SH% DR%=� �141 �drawplan "devang=0:drw%=0 ,(ș"OS_IntOff":�drawshot:ș"OS_IntOn" 6,X1=4:Y1=200+yds%*2:�XY10:HT2=�Ght(X0,Y0) @-X1=-4:Y1=200+yds%*2:�XY10:HT1=�Ght(X0,Y0) J*X1=4:Y1=200+yds%:�XY10:ht2=�Ght(X0,Y0) T+X1=-4:Y1=200+yds%:�XY10:ht1=�Ght(X0,Y0) ^)SLP%=(HT2*2+ht2-HT1*2-ht1)*(20+�(20)) h�inputshot r�animate |笤allinhole ��TbA ��scorecard �3�(goon%)�hole%<2��sorthonor:hole%=hole%+1:�TNA ��#0 ��("RAM:CLOSE") � �dR@ � � ���cmenu ��c%,x%,y%,g%,b%,k%,r% ��15 ��5 ��23;8202;0;0;0; � �0,42 Ȝ0 ȓȐ0,0,1280,1100 �c%=1�NC% * �("SLOAD <Micro$Dir>.CLOAD."+CF$(c%)) & *SCHOOSE MENU 0 �8,0 :0 �&ED,((c%-1)�3)*364+20,1016-((c%+2 )�3)*328 D� N-�0,52 Ȝ0:�410,300:�"M i c r o D r i v e" X,�0,3 Ȝ0:�410,220:�"(D e m o M o d e)" b�0,63 Ȝ192 lx%=1104:y%=944:g%=44 v�x%,y%:�"Use left" ��x%,y%-g%:�"mouse" ��x%,y%-g%*2:�"button" ��x%,y%-g%*3:�"to select" ��x%,y%-g%*4:�"course" ��x%,y%-g%*7:�"Use right" ��x%,y%-g%*8:�"mouse" ��x%,y%-g%*9:�"button" ��x%,y%-g%*10:�"for course" ��x%,y%-g%*11:�"overview" ��0,47 Ȝ192 ��x%,y%-g%*14:�"Or press" ��x%,y%-g%*15:�"SPACEBAR" ��x%,y%-g%*16:�"after" �x%,y%-g%*17:�"loading" �x%,y%-g%*18:�"new course" �x%,y%-g%*19:�"diskette" �x%,y%-g%*20:�"in Drive 0" *ȗȓ20,32,1068,964 4&OC%=CRS%-1:�(OC%=0)�OC%>NC%OC%=NC% >SX%=�CX(OC%):SY%=�CY(OC%) HEX%=�CX(CRS%):EY%=�CY(CRS%) Rȗ�SX%,SY%:ȗ�:�wt(2) \ �V%=1�100 f; ȗ�(SX%*(100-V%)+EX%*V%)�100,(SY%*(100-V%)+EY%*V%)�100 p �wt(.01) z� �$CC%=CRS%:CRS%+=1:�CRS%>NC%CRS%=1 �csprite$=CF$(CC%):ȗ� �� � � �!ݤCX(Ck%)=((Ck%-1)�3)*360+200 �!ݤCY(Ck%)=860-((Ck%-1)�3)*360 � ���playersin ��h%,s$,h$,i%,x%,y%,b%,p%,s$ �#�("SLOAD <Micro$Dir>.ISPRITES") ��15:�4,23;8202;0;0;0; � �0,56 Ȝ0 ȓȐ870,164,410,856 �184 Ȝ0 �63 Ȝ192 $%�56,1)"Hole Yards Par Stroke"; .�63 Ȝ0 8�h%=1�18 B# h$=" "+�(h%):h$=�h$,�(h$)-1,2) L s$=" "+�(stroke%(h%)) V s$=�s$,�(s$)-1,2) `E �57,-(h%>9)*2+2+h%)h$" "; len%(h%)" ";par%(h%)" "s$; j� t�63 Ȝ64 ~)�57,12)"Out ";outdist%" ";outpar% �'�57,23)"In ";indist%" ";inpar% � �63 Ȝ128 �9�56,25)"Total ";outdist%+indist%" ";outpar%+inpar% ��5 �SH%=1:RTN%=�:p%=� �!�0,25 Ȝ128:ȓȐ0,164,850,856 �O�0,25 Ȝ64:�850,1020:�834,1004:�85,850,164:�85,834,180:�85,0,164:�85,16,180 �O�0,25 Ȝ192:�850,1020:�834,1004:�85,0,1020:�85,16,1004:�85,0,164:�85,16,180 ��0,14 Ȝ128 �$�810-�(course$)*16,976:�course$; ��0,63 Ȝ192 �ȗ � �96,976:�"Select Course" *SCHOOSE LEFT �&ED,34,940 �678,236:�"Play"; (*SCHOOSE RIGHT 2�&ED,766,200 <�320,898:�"Players"; F*SCHOOSE UP P�&ED,448,860:�&ED,448,280 Z*SCHOOSE DOWN d�&ED,546,860:�&ED,562,280 n@�4:�63 Ȝ192:�153 Ȝ128:�16,7)"Name Style Skill"; x�17,22)"Start hole"; ��4:�52 Ȝ128 �*noP%=2:name$(1)="Rob":name$(2)="Peter" �LH%(2)=� �ȗȓ18,182,814,821 �ȗ�470,880 ��plprint � �wt(2) ��s=0�1�.001 �' ȗ�800*s+470*(1-s),220*s+880*(1-s) �� �*�("SLOAD <Micro$Dir>.CBACK."+csprite$) �ȗ� �� ��inputshot "Q�mx%,px%,x%,y%,b%,c%,og%,ox%,lx%,x,y,hx%,rs%,l%,f,tm%,n%,m%,s%,st%,hl%,h%,ob% ,�___SELECT CLUB 6og%=�ongreen @#�(istshot%)�((��ontee)��obds%)� J- �640-SC%*44,268:�640+SC%*44,268+ SC%*66 T ș46,270,SP%,"BHDGFR",0 ^A �(bhdbl%<24)�bhdbl%>25 � ș 46,290,SP%,"BALL1",640,276 h- �640-SC%*44,268:�640+SC%*44,268+ SC%*66 r ș46,270,SP%,"BHDGFB",0 |) ș46,290,SP%,"BHDGFR",640-SC%*44,268 �� �) ș46,290,SP%,"BHDGFR",640-SC%*44,268 �� �bhdbt2%=Ȝ(640,276):obds%=� �7�(bhdbl%<24)�bhdbl%>25 ș46,290,SP%,"BALL1",640,276 ��SC%=3x$="X"�x$="" ��og%�club%=14:�TtH ��5:�d`F ��aro12(0):�aro34(1) �>�0,42 Ȝ0:�596,200:�"Aim";:�0,13 Ȝ128:�548,152:�"Select"; ��LH%(pu%)� �5 ș46,290,SP%,x$+"BAG"+�(pu%),640- SC%*26,272,8 �9 ș46,290,SP%,x$+"GFR"+�(pu%)+"0", 640+SC%*10,272,8 � 5 ș46,290,SP%,x$+"BAG"+�(pu%),640+ SC%*10,272,8 9 ș46,290,SP%,x$+"GFR"+�(pu%)+"0", 640-SC%*26,272,8 &� 0ȗ �1,1 :G�(ballx=TEX%(0))�bally=TEY%(0)�ȗȓ0,0,1280,1399 �ȗȓ0,0,1280,1299 DEC2%=�club(yds%-WY%*.38+(�Ght(flagx%,flagy%)-�Ght(ballx,bally))/3) NA�(bhdbl2%=Bcol%)�(bhdbl%=24)�(bhdbl%=25)C2%=�max(C2%,�(3)+10) X)YY1%=1499-club%*100:YY2%=1499-C2%*100 b �wt(1) l�(5)=1��showplan vȗ�x%,y% ��s=0�1�.001 � y%=YY1%*(1-s)+YY2%*s � �b%=1��showplan:ȗ�x%,y% �" c%=�max(1,�min(13,14-y%�100)) � �c%<>club% � � �1,-9,120,0 �) �0,42Ȝ64:�548,112:�club$( club%); �: �club%<14��532,80:�; clubdist%(club%)" Yds"; � club%=c% � �0,50 Ȝ64 � �548,112:�club$(club%); �> �club%<14��0,42 Ȝ0:�532, 80:�;clubdist%(club%)" Yds"; � � � (ș46,290,SP%,"BHDGFR",640-SC%*44,268 �___aim >�0,13 Ȝ128:�596,200:�"Aim";:�0,42 Ȝ0:�548,152:�"Select"; *�aro12(1):�aro34(0) 42�club%=14�clubw%=12�clubw%=((13-club%)�3)*4+20 >D�LH%(pu%)�mx%=640-2*SC%+clubw%*SC%/2�mx%=640-18*SC%-clubw%*SC%/2 H.ș46,290,SP%,x$+"GFR"+�(pu%)+"1",mx%,272,8 R+�640,276:�640,276:ș46,270,SP%,"BHDB",0 \ș46,270,SP%,"BHDS",0 f7�(bhdbl%<24)�bhdbl%>25 ș46,290,SP%,"BALL1",640,276 p�0,21 Ȝ64 zy�LH%(pu%)hx%=640+2*SC%+clubw%*SC%/2:�644,276:�5,hx%,268+SC%*22 �hx%=640-2*SC%-clubw%*SC%/2:�636,276:�5,hx%,268+SC%*22 � rs%=� ��:�wt(.2):ȗx%,y%,b%:�b%=0 �ȗȓ0,0,1236,0 �0x%=620:ș46,290,SP%,"SIGHTS",x%,280+SC%*70,3 ��club%=14� � XX2%=x%+SLP% �� � �yds%>65� � XX2%=x%-WX%*3.25 � � � �yds%>30� � XX2%=x%-WX%*3.25*yds%/65 � � 4 XX2%=x%-WX%*3.25*yds%/65+SLP%*(.5+Gspeed%/10) � � $� .ȗ �x%,0 8�wt(.5) B�s=0�1�.001 L ox%=x% V x%=s*XX2%+(1-s)*x% ` �x%�4<>ox%�4� j Ȗ t, ș46,290,SP%,"SIGHTS",ox%,280+SC%*70,3 ~+ ș46,290,SP%,"SIGHTS",x%,280+SC%*70,3 � � � lx%=x% �� �E�:�wt(.2):ȗx%,y%,b%:�b%=0:ș46,290,SP%,"SIGHTS",lx%,280+SC%*70,3 � �Y21(440):�X21(lx%+22):�XY10 �x=X0-ballx:y=Y0-bally ��x=0�y>0sang=PI90:�dvI ��x=0�y<0sang=PI270:�dvI ��y=0�x<0sang=�:�dvI ��y=0�x>0sang=0:�dvI �=sang=�(y/x):�(y<0)�x<0�sang=sang+� ��(y>0)�x<0sang=sang-� �n%=0 �___back swing l%=LH%(pu%)*2+1 f=clubw%/12 �club%<14�m%=4�m%=10 (tm%=-1:SC=SC%/2 2��yds%>100YY2%=yds%-WY%*.38+(�Ght(flagx%,flagy%)-�Ght(ballx,bally))/2�YY2%=�max(1,yds%-WY%*.38*yds%/150+(�Ght(flagx%,flagy%)-�Ght(ballx,bally))/3) <8�(bhdbl%=24)�(bhdbl%=25)�bhdbl2%=Bcol%�YY2%=YY2%*1.3 F�club%<14� P= �(YY2%>100)�ST%=159+�(12)�ST%=(YY2%+3)^.7/24*(149+�(20)) Z� d@ Ffeet%=feet%*(1+(�Ght(flagx%,flagy%)-�Ght(ballx,bally))/16) n4 ST%=�min(200,1.4*(Ffeet%+1.8)^.6*(8-Gspeed%/5)) x� �� � n%=n%+1 � s%=(n%-1)�5+1 � �0,21 Ȝ64 �% x%=((CHX%(n%)+HNX%(n%))*l%*f)*SC � Ȗ �) ș46,290,SP%,"BHDGFB",640-SC%*44,268 �3 ș46,290,SP%,x$+"GFR"+�(pu%)+�( s%),mx%,272,8 �. �hx%-HNX%(n%)*l%*SC,268+(44+HNY%(n%) )*SC �6 �5,hx%-HNX%(n%)*l%*SC+x%,268+(44+ CHY%(n%))*SC � �tm%=-1tm%=� � st%=0 � � st%=�-tm% �(�-tm%)>n%*m% �(st%>=ST%)�((n%=25)�SC%=3) "�st%=0st%=�-tm% ,�club%=14 � 6 power=st%/201 @� J power=st%/165 T �power>1 � ^ power=1+(power-1)/2 h$ power=power-(�(1)*(power-1)*3) r � |� ��wt(.3) �ss%=(s%<6):hl%=n%:n%=n%+1 �h%=0 �.�club%=14�C%=2��R%�C%=6��club%<3�C%=1�C%=5 �S%=� ��__DOWNswing � ob%=0 �� � tm%=� � n%=n%-1 �( �ss%�s%=(n%-1)�5+1 �s%=17-(n%- 1)�5 � �0,21 Ȝ64 �# x%=(CHX%(n%)+HNX%(n%))*l%*f*SC 9 �S%�(n%<6)�C%<>2��C%,-6- �min(power*10,9),0,0:S%=� Ȗ ) ș46,290,SP%,"BHDGFB",640-SC%*44,268 &3 ș46,290,SP%,x$+"GFR"+�(pu%)+�( s%),mx%,272,8 0. �hx%-HNX%(n%)*l%*SC,268+(44+HNY%(n%) )*SC :6 �5,hx%-HNX%(n%)*l%*SC+x%,268+(44+ CHY%(n%))*SC D � N ob%=b% X �(�-tm%)>m%/4 b �n%=0 lhook=�(1)*.3-.15 v"�C%=2�2,-9-�min(power*7,6),0,0 � manx%=mx% �� � � ���continue ���0,42 Ȝ64:�468,44:�816,44:�85,468,208:�85,816,208:�0,48 Ȝ0:�468,188:�"Continuing?";:ș46,290,SP%,"MOUSE",608,60,8:�wt(1):holeout%=(�(2)=1) �� � � ���showplan ��x%,y%,b%,t%,c%,bx,by �*FX113,1 �*FX112,1 bx=ballx(pu%):by=bally(pu%) c%=�bx,by):t%=Ȝ(bx,by) �0,63Ȝ192:Ȓbx,by �wt(4) *�0,c%Ȝt%:Ȓbx,by 4*FX113,0 >*FX112,0 H� R \ f��scorecard p�i%,c$,s%,l%,p%,s$,h$ z �n$() � �n$(noP%) ��12:�23;8202;0;0;0; ��0,16*5, 16*7, 16*5 ��1,16*12,16*15,16*12 ��2,16*13,16*10,16*7 ��3,16*13,16*8, 16*4 ��4,16*14,16*11,16*1 ��5,16*15,16*15,16*2 ��6,16*15,16*15,16*15 ��7,16*11,16*11,16*15 ��8,16*6, 16*10,16*6 ��9,16*12,16*15,16*11 ��0,8 )�0,944:�5,1280,944:�0,720:�5,1280,720 )�0,400:�5,1280,400:�0,200:�5,1280,200 +�642,944:�5,642,200:�640,944:�5,640,200 $-�1014,944:�5,1014,200:�356,944:�5,356,200 .�640,270:�5,1280,270 8#parsofar%=parsofar%+par%(hole%) B/�i%=1��(course$):c$=c$+�course$,i%,1)+" ":� L�1:�'�40-�(c$)�2)c$ V�i%=1�noP% `< n$(i%)=" "+name$(i%):n$(i%)=�n$(i%),�(n$(i%))-5,6) j� t�4 ~�l%=1�6 � �p%=1�noP% �# �p%*4+21,l%+2)�n$(p%),l%,1); �# �p%*4+62,l%+2)�n$(p%),l%,1); � � �� ��(2) �#�1,8) "Hole Yards Par Str."; �#�42,8)"Hole Yards Par Str."; ��3 ��h%=1�18 �# h$=" "+�(h%):h$=�h$,�(h$)-1,2) �, s$=" "+�(stroke%(h%)):s$=�s$,�(s$)-1,2) �h%<10��31,2,h%+9��31,43,h% . �h$" ";len%(h%)" ";par%(h%)" "s$; � *�1,20)"Out ";outdist%" ";outpar%; ((�43,20)"In ";indist%" ";inpar%; 2+�42,22)"Out ";outdist%" ";outpar%; <;�41,24)"Total ";outdist%+indist%" ";outpar%+inpar%; F�i%=1�noP% P3 totscore%(i%)=totscore%(i%)+score%(i%, hole%) Z* �hole%=9�outscore%(i%)=totscore%(i% ) d� n�h%=1�hole% x �p%=1�noP% � s%=score%(p%,h%) �" �s%>0�s$=" "+�(s%)�s$=" " � s$=�s$,�(s$)-2,3) �- �h%<10 �31,p%*4+19,h%+9 ��31,p%*4+60,h% �& �s%>par%(h%)�5��s%=par%(h%)�6��7 � �s$; � � �� ��(hole%>8)�SH%=1� � �p%=1�noP% � s%=outscore%(p%) �% s$=" "+�(s%):s$=�s$,�(s$)-2,3) �$ �s%>outpar%�5��s%=outpar%�6��7 - �31,p%*4+20,20:�s$;:�31,p%*4+60,22:�s$; � � "�(hole%=18)�SH%=1� , �p%=1�noP% 6D s%=totscore%(p%)-outscore%(p%):s$=" "+�(s%):s$=�s$,�(s$)-2,3) @" �s%>inpar%�5��s%=inpar%�6��7 J �31,p%*4+60,20:�s$; T � ^� h�p%=1�noP% r s%=totscore%(p%) |( �s%>parsofar%�5��s%=parsofar% �6��7 � �(hole%=18)�SH%=1� � s$=" "+�(s%) � � � s%=s%-parsofar% �? �s%=0s$=" E"��s%<0s$=" -"+�(�(s%))�s$=" +"+�(�(s%) ) � � �* s$=�s$,�(s$)-2,3):�31,p%*4+60,24:�s$; �� ��9 �|�hole%<18��12,29)"Click ANY mouse key to continue, ALL mouse keys to quit" ��24,29)"Press ALL mouse keys to continue" �goon%=�:�hole%=18�goon%=� � �wt(5) �� ��inirnd & �i%,j%,s$ 0�#Z%,course$ :�#Z%,LINKS% D�#Z%,fc1%,ft1%,fc2%,ft2% N�#Z%,FC1%,FC2% X�#Z%,Bdepth,Bcol% b�#Z%,Gspeed% l�#Z%,rough% v�#Z%,avwind% �windang=�(1)*PI360 �wind%=�(1)*(18+avwind%) �(�#Z%,outpar%,inpar%,outdist%,indist% ���#Z%,s$:��s$,1)="@" ��i%=1�18 �' �#Z%,len%(i%),par%(i%),stroke%(i%) �� ��i%=1�4:OLH%(i%)=LH%(i%):� ��playersin ��i%=1�4 � teeorder%(i%)=i% �$ totscore%(i%)=0:outscore%(i%)=0 � �j%=1�18:score%(i%,j%)=0:� � parsofar%=0 � * 4�****** > H ��init R�i%,len% \�SP% &56900:!SP%=&56900 f6ș "OS_File",5,"<Micro$Dir>.Compress" � i%,,,,len% p*� i% <>1 � � 1,"Compress File Missing" zi%=SP%+&56900-len%-&40 �(�("LOAD <Micro$Dir>.Compress "+�~i%) �� pass=0 � 2 � 2 �P%=i%+len% � [OPT pass � .code � ADR R0,to �LDR R2,[R0],#4 �LDR R3,[R0],#4 �LDR R4,[R0],#0 �.unpack �LDRB R0,[R3],#1 �LDRB R1,[R3],#1 � .loop STRB R0,[R2],#1 SUBS R1,R1,#1 BNE loop $ CMP R3,R4 .BNE unpack 8MOV PC,R14 ;return B.to LEQUD SP% V .from `EQUD i% j.finish t EQUD code ~] �� � � code �(CC%=1:PI90=�/2:PI270=3*�/2:PI360=2*� �� SCALE% 16 �S%=�(-�*�(��$,23,2))) � �X%(21),Y%(21),C%(21),H%(21) �0�GH%(5),GX%(5),GY%(5),GRX%(5),GRY%(5),exp(5) �,�GNC%(40),GNO%(40),GNX%(40,7),GNY%(40,7) ��CF$(20) �#�T$(24),TW%(24),TH%(24),TL%(24) �$�TEX%(6),TEY%(6),TEX2(6),TEY2(6) ��OBX%(25),OBY%(25) �SBX1(3),SBY1(3),SBP%(3) 3�Bco%(12),Bx%(12,28),By%(12,28),Bx2(28),By2(28) #�Wco%(30),Wx%(30,12),Wy%(30,12) P�treex%(100),treey%(100),treetyp%(100),Otyp%(160),OX1(160),OY1(160),SO%(160) ((�HNX%(45),HNY%(45),CHX%(45),CHY%(45) 2T�len%(18),par%(18),stroke%(18),clubvelx(13),clubvelz(13),clubdist%(13),club$(14) <|�score%(4,18),totscore%(4),outscore%(4),name$(4),teeorder%(4),ballx(4),bally(4),bhdbl%(4),holed%(4),OLH%(4),LH%(4),SK(4) F�BRX%(20),BRY%(20) P�i%=1�13 Z7 �clubvelx(i%),clubvelz(i%),clubdist%(i%),club$(i%) d� nclub$(14)="Putter" x�i%=0�45:�HNX%(i%):� ��i%=0�45:�HNY%(i%):� ��i%=0�45:�CHX%(i%):� ��i%=0�45:�CHY%(i%):� �TSC=1.4 ��i%=1�24 �$ �T$(i%),TW%(i%),TH%(i%),TL%(i%) � TW%(i%)=TW%(i%)*TSC � TH%(i%)=TH%(i%)*TSC � TL%(i%)=TL%(i%)*TSC �� � noP%=1 �+�i%=1�4:OLH%(i%)=�:LH%(i%)=�:SK(i%)=1:� �� ��whichcourse "�a% ,(*ENUMDIR <Micro$Dir>.CDATA RAM:CLIST 6CF$()="" @Y%=�("RAM:CLIST") J NC%=0 T� ^ a%=�#Y% h NC%=NC%+1 r � | CF$(NC%)=CF$(NC%)+�(a%) � a%=�#Y% � �(a%=10)��#Y% � ��#Y% ��("RAM:CLOSE") � �cmenu � �I%��d~U �� �c�� �15:�"INVALID COURSE DISK - Load correct disk in DRIVE 0 and press SPACEBAR":���(-99):�dVU �"*SET Micro$Dir :0.$.!Micro_Drv �(*ENUMDIR <Micro$Dir>.CDATA RAM:CLIST �� � � �TvU �@�("COPY <Micro$Dir>.CDATA."+csprite$+" RAM:$.COURSE F ~C~V") � &��cscenario(c%) 0$�a$,w$,l%,i%,i,d%,p%,c$,x%,y%,b% :�ȗx%,y%,b%:�b%=0 D&Z%=�("<Micro$Dir>.CDATA."+CF$(c%)) N�#Z%,c$ X�i%=1�12:�#Z%,i:� b�#Z%,p%:�#Z%,i:p%=p%+i l�#Z%,d%:�#Z%,i:d%=d%+i v�0,40Ȝ64:ȗ � �ȓȐ0,0,1280,1100 �)�("SLOAD <Micro$Dir>.CLOAD."+CF$(c%)) �*SCHOOSE MENU ��8,0 ��&ED,460,620 ��0,18Ȝ0 �#�480,980:�;d%" Yards Par ";p% �x%=80:y%=580:�0,48Ȝ0 �� � �#Z%,s$:w$="" � �i%=1��(s$) � a$=�s$,i%,1):�a$="#"a$="," �! �(a$<>" ")�a$<>"@"�w$=w$+a$ �(i%=�(s$))�a$=" "� l%=�(w$)*16+16 ! �x%+l%>1200�x%=80:y%=y%-36 �x%,y%:�;w$;:x%=x%+l% * w$="" 4 � > � H��s$,1)="@" R�#Z% \�ȗx%,y%,b%:�b%<>0 f� p z � ��plprint � �s$,i% � �153Ȝ128 �$s$=" "+�(SH%):s$=�s$,�(s$)-1,2) ��32,22)s$; ��32,4)�(noP%); � �191Ȝ192 ��i%=1�noP% � s$=�name$(i%)+" ",6) � �15,7+i%*3)s$; �0 �LH%(i%)s$="Left-handed "�s$="Right-handed" � �23,7+i%*3)s$; �< �SK(i%)=1s$=" Hard "��SK(i%)=1.5s$="Medium"�s$=" Easy " �37,7+i%*3)s$; �0,0 �("SCHOOSE G"+�(i%)) $ �&ED,120,768-i%*96 . �0,63Ȝ192 8$ �240,800-i%*96:�5,334,800-i%*96 B$ �368,800-i%*96:�5,558,800-i%*96 L$ �592,800-i%*96:�5,686,800-i%*96 V �0,0Ȝ0 `5 �236,804-i%*96:�5,336,804-i%*96:�5,336,764-i%*96 j& �5,236,764-i%*96:�5,236,804-i%*96 t$ �238,804-i%*96:�5,238,764-i%*96 ~$ �338,804-i%*96:�5,338,764-i%*96 �$ �364,804-i%*96:�5,562,804-i%*96 �7 �5,562,764-i%*96:�5,364,764-i%*96:�5,364,804-i%*96 �$ �366,804-i%*96:�5,366,764-i%*96 �$ �564,804-i%*96:�5,564,764-i%*96 �$ �590,804-i%*96:�5,692,804-i%*96 �7 �5,692,764-i%*96:�5,590,764-i%*96:�5,590,804-i%*96 �$ �588,804-i%*96:�5,588,764-i%*96 �$ �690,804-i%*96:�5,690,764-i%*96 �� �� � � ��drawplan B�x%,y%,xs%,ys%,i%,j%,s%,ms,s,c%,lx%,ly%,ux%,uy%,s$,l%,w$,a$,p% *FX112,1 istshot%=�:pu%=0 (:�hole%<10fcol%=fc1%:ftint%=ft1%�fcol%=fc2%:ftint%=ft2% 2holeout%=�:obds%=� <9�DR%��:�0,24Ȝ0:�8,8:�5,8,376:�85,1268,8:�85,1268,376 FC�#Z%,x%,y%:�x%*2,y%*2:�#Z%,x%,y%:�x%*2,y%*2:�0,4Ȝ64:�#Z%,x%,y% P� Z �DR%��85,x%*2,y%*2 d �#Z%,x%,y% n �x%=-1 x?�#Z%,x%,y%:�x%*2,y%*2:�#Z%,x%,y%:�x%*2,y%*2:�0,8:�#Z%,x%,y% �� � �DR%��85,x%*2,y%*2 � �#Z%,x%,y% � �x%=-1 �$�i%=0�6:�#Z%,TEX%(i%),TEY%(i%):� ��0,28Ȝ0 �R�DR%��TEX%(1),TEY%(1):�TEX%(2),TEY%(2):�85,TEX%(3),TEY%(3):�85,TEX%(4),TEY%(4) ��#Z%,holeang,teeang � �0,12 � �#Z%,GNS% ��s%=1�GNS% � �#Z%,GNC%(s%),GNO%(s%) � �c%=1�GNC%(s%) " �#Z%,GNX%(s%,c%),GNY%(s%,c%) �DR%� A �c%<3��GNX%(s%,c%),GNY%(s%,c%)��85,GNX%(s%,c%),GNY%(s%,c%) " � , � 6� @�#Z%,lx%,ly%,ux%,uy% J�i%=1�5 T3 �#Z%,GH%(i%),GX%(i%),GY%(i%),GRX%(i%),GRY%(i%) ^� h�DR%��t^[ r� | flagx%=lx%+�(ux%-lx%) � flagy%=ly%+�(uy%-ly%) �� p%=((�flagx%,flagy%)=12)�(�flagx%+10,flagy%)=12)�(� flagx%,flagy%+10)=12)�(�flagx%-10,flagy%)=12)�(�flagx%, flagy%-10)=12)) � �p%��d~Z � ms=0 � �xs%=-2�2�2 � �ys%=-2�2�2 �" x%=flagx%+xs%:y%=flagy%+ys% �8 s=�Rht(x%,y%):s=�slopex(x%,y%)^2+�slopey(x%,y%)^2 � �s>ms ms=s � �ms>.0096 xs%=3:ys%=3 � � � � ��(ms<.0096)�p% ��0,0 �Ȓflagx%,flagy% � �3,1Ȝ128 �"trees%=0:i%=1:�#Z%,treetyp%(1) �ȕtreetyp%(i%)<>-1 � trees%=trees%+1 � �#Z%,treex%(i%),treey%(i%) �= �DR%��treex%(i%),treey%(i%):� &99,TW%(treetyp%(i%))/15,0 � i%+=1:�#Z%,treetyp%(i%) �� ��0,10Ȝ192 ��#Z%,Bnks% ��Bnks%=0��tX\ �i%=1�Bnks% �#Z%,Bco%(i%) �j%=0�Bco%(i%) �#Z%,Bx%(i%,j%),By%(i%,j%) * � 4 �DR%��Df\ >' �Bx%(i%,Bco%(i%)),By%(i%,Bco%(i%)) H �j%=1�Bco%(i%) R4 �Bx%(i%,0),By%(i%,0):�85,Bx%(i%,j%),By%(i%,j%) \ � f� p �#Z%,BRP% z�i%=1�BRP% � �#Z%,BRX%(i%),BRY%(i%) �� ��0,36Ȝ192 ��#Z%,Wa%:�Wa%=0��Td] � �i%=1�Wa% � �#Z%,Wco%(i%) � x%=0:y%=0 � �j%=1�Wco%(i%) � �#Z%,Wx%(i%,j%),Wy%(i%,j%) �' x%=x%+Wx%(i%,j%):y%=y%+Wy%(i%,j%) � �DR%� �= �j%<3��Wx%(i%,j%),Wy%(i%,j%)��85,Wx%(i%,j%),Wy%(i%,j%) � � � 0 Wx%(i%,0)=x%�Wco%(i%):Wy%(i%,0)=y%�Wco%(i%) � $�#Z%,OBC%:�OBC%=0��D~] . �3,15 8�#Z%,OBX%(0),OBY%(0) B%�OBX%(0),OBY%(0):�OBX%(0),OBY%(0) L�i%=1�OBC% V �#Z%,OBX%(i%),OBY%(i%) `3 �DR%��85,OBX%(i%),OBY%(i%):�85,OBX%(0),OBY%(0) j� t�DR%��tp] ~e�0,18:�0,0:�5,0,384:�5,1276,384:�5,1276,0:�5,0,0:�0,19:�4,4:�5,4,380:�5,1272,380:�5,1272,4:�5,4,4 �6�0,61Ȝ0:�0,388:�0,1024:�85,1280,388:�85,1280,1024 ��5:�0,3Ȝ0 �^�32,982:�"Hole ";hole%": ";len%(hole%)" yards par ";par%(hole%)", stroke ";stroke%(hole%) �x%=32:y%=916:�0,36Ȝ128 �� � �#Z%,s$:w$="" � �DR%��Tr^ � �i%=1��(s$) � a$=�s$,i%,1) �! �(a$<>" ")�a$<>"@"�w$=w$+a$ � �(i%=�(s$))�a$=" "� � l%=�(w$)*32+32 ! �x%+l%>1248�x%=32:y%=y%-44 �x%,y%:�;w$;:x%=x%+l% w$="" � ( � 2��s$,1)="@" <*FX112,0 F�i%=1�noP% P score%(i%,hole%)=0 Z( ballx(i%)=TEX%(0):bally(i%)=TEY%(0) d holed%(i%)=�:bhdbl%(i%)=28 n� x� � � ���drawshot ���da,YS%,XS%,YS2%,XS2%,s%,ps%,x,y,bz2a%,bz2b%,bz2c%,bz2d%,i%,x2,y2,p1x%,p1y%,p1c%,p1h%,p2x%,p2y%,p2c%,p2h%,p3x%,p3y%,p3c%,p3h%,p4x%,p4y%,p4c%,p4h%,pmc%,cury%,curobj%,OY1,CY1,OY11,y2YS%,y2YS2%,p12h%,p34h%,p13D2%,p24D2%,p12D2%,p34D2%,p1234D4% ��23;8202;0;0;0; �drw%+=1 �(YS%=12:XS%=256:YS2%=YS%�2:XS2%=XS%�2 �@windang=�ang(windang+�(1)*.2-.1):wang0=�ang(windang-holeang) �'wind%=�max(0,�min(35,wind%+�(3)-2)) ��holeout%�pu%=�next �0SL=SK(pu%):ballx=ballx(pu%):bally=bally(pu%) �5feet%=�dist:yds%=feet%/3:�drw%=1club%=�club(yds%) �I�(yds%>25)���ongreen SC%=2�SC%=3:YS%=32:XS%=320:YS2%=YS%�2:XS2%=XS%�2 SC7%=SC%*735391 1�ballx=TEX%(0)�bally=TEY%(0)�ang=teeang:�D|_ !x=flagx%-ballx:y=flagy%-bally "�(x)<.00001� , �y>0ang=PI90 �ang=PI270 6� @ �(y)<.00001� J �x<0ang=� �ang=0 T � ^: ang=�(y/x):�(y<0)�x<0�ang=ang+� ��(y>0)�x<0ang=ang-� h � r� |.ang=ang+devang:cosang=�(ang):sinang=�(ang) ��(ang-PI90)<.00001� �) �ang<PI90 tanang=10000�tanang=-10000 �� � �(ang-PI270)<.00001� �+ �ang<PI270 tanang=10000�tanang=-10000 � � � tanang=�(ang) � � �� �'AN=PI90-ang:sinAN=�(AN):cosAN=�(AN) �.wang2=�ang(wang0-ang):da=�ang(ang+holeang) ��da<0da=da+PI360 ��ontee �istshot%��tbf �obds%��tbf �XY01(flagx%,flagy%):fy1%=Y1 �i%=1�trees% & Otyp%(i%)=treetyp%(i%) 07 �XY01(treex%(i%),treey%(i%)):OX1(i%)=X1:OY1(i%)=Y1 :� D�i%=1�GNS% N Otyp%(i%+trees%)=100+i% XE �XY01(GNX%(i%,1),GNY%(i%,1)):OX1(i%+trees%)=X1:OY1(i%+trees%)=Y1 b� lobjs%=trees%+GNS% v�Bnks%=0��t|` ��i%=1�Bnks% � Otyp%(i%+objs%)=200+i% �A �XY01(Bx%(i%,0),By%(i%,0)):OX1(i%+objs%)=X1:OY1(i%+objs%)=Y1 �� �objs%=objs%+Bnks% ��Wa%=0��dn` � �i%=1�Wa% � Otyp%(i%+objs%)=400+i% �A �XY01(Wx%(i%,0),Wy%(i%,0)):OX1(i%+objs%)=X1:OY1(i%+objs%)=Y1 �� �objs%=objs%+Wa% ��OBC%=0��T`a ��i%=1�OBC% ! Otyp%(i%+objs%)=500+i% !? �XY01(OBX%(i%),OBY%(i%)):OX1(i%+objs%)=X1:OY1(i%+objs%)=Y1 !� ! objs%=objs%+OBC%+1 !*GOtyp%(objs%)=301:�XY01(TEX%(0),TEY%(0)):OX1(objs%)=X1:OY1(objs%)=Y1 !4curobj%=1:�sortobjs !>/�0,0Ȝ0:�0,0:�1280,0:�85,0,250:�85,1280,250 !H SB%=0 !R�(��ontee)�noP%>1� !\ �whose !f �i%=1�noP% !p �(i%<>pu%)��holed%(i%)� !z( �(bhdbl%(i%)<>24)�bhdbl%(i%)<>25� !�" �XY01(ballx(i%),bally(i%)) !� �Y1>160� !� SB%=SB%+1 !�" SBX1(SB%)=X1:SBY1(SB%)=Y1 !� SBP%(SB%)=� !� � !� � !� � !� � !�� !�ballz=�Ght(ballx,bally) !�H�0,56Ȝ192:�0,1024:�0,SC%*150+500:�85,1280,1024:�85,1280,SC%*150+500 !�K�0,8-LINKS%Ȝ64:�0,SC%*150+500:�0,260:�85,1280,SC%*150+500:�85,1280,260 "x%=da/PI360*12800 "�0,0 "�("SCHOOSE "+csprite$) "$ �x%<1280��&ED,x%,500+SC%*150 ".�&ED,x%-12800,500+150*SC% "8�Y12(OY1(SO%(1))+40) "B'y2=�min(Y2+40,260*SC%+278):�Y21(y2) "L OY1=Y1 "Vbz2c%=�ht2(ballz,Y1) "`�x2=0�1280�XS% "j i%=x2 �XS%+1 "t �X21(x2) "~ �XY10 "� X%(i%)=X0:Y%(i%)=Y0 "� C%(i%)=�planpt(X0,Y0) "� H%(i%)=�ht2(�Ght(X0,Y0),Y1) "�� "� y2=y2-YS% "�� "� YS2%=YS%�2 "�0 p3x%=X%(1):p3y%=Y%(1):p3c%=C%(1):p3h%=H%(1) "� �Y21(y2):CY1=Y1 "� �OY1<180��tPd "� �X21(0):�XY10 "�B p4x%=X0:p4y%=Y0:p4c%=�planpt(X0,Y0):p4h%=�ht2(�Ght(X0,Y0),Y1) # ; bz2a%=bz2c%:bz2c%=�ht2(ballz,Y1):bz2b%=(bz2a%+bz2c%)�2 # 0 X%(1)=p4x%:Y%(1)=p4y%:C%(1)=p4c%:H%(1)=p4h% # �x2=XS%�1280�XS% # i%=x2 �XS%+1 #(- p1x%=p3x%:p1y%=p3y%:p1c%=p3c%:p1h%=p3h% #2- p2x%=p4x%:p2y%=p4y%:p2c%=p4c%:p2h%=p4h% #<5 p3x%=X%(i%):p3y%=Y%(i%):p3c%=C%(i%):p3h%=H%(i%) #F �X21(x2):�XY10 #PC p4x%=X0:p4y%=Y0:p4c%=�planpt(X0,Y0):p4h%=�ht2(�Ght(X0,Y0),Y1) #Z5 X%(i%)=p4x%:Y%(i%)=p4y%:C%(i%)=p4c%:H%(i%)=p4h% #d- OY11=OY1-Y1:x2XS%=x2-XS%:x2XS2%=x2-XS2% #n! y2YS%=y2+YS%:y2YS2%=y2+YS2% #x% p12h%=p1h%+p2h%:p34h%=p3h%+p4h% #�/ p13D2%=(p1h%+p3h%)�2:p24D2%=(p2h%+p4h%)�2 #�# p12D2%=p12h%�2:p34D2%=p34h%�2 #� p1234D4%=(p12h%+p34h%)�4 #�( sm%=(p2h%+p4h%-p1h%-p3h%)*100/OY11 #�9 s12%=(p2h%-p1h%)*200/OY11:s34%=(p4h%-p3h%)*200/OY11 #�C pmc%=�planpt((p1x%+p2x%+p3x%+p4x%)�4,(p1y%+p2y%+p3y%+p4y%)�4) #� �gcolr(p1c%,s12%) #�& �x2XS%,�DH(y2YS%+p1h%-bz2a%,OY1) #�) �x2XS%,�DH(y2YS2%+p12D2%-bz2b%,OY1) #�, �85,x2XS2%,�DH(y2YS%+p13D2%-bz2a%,OY1) #� �gcolr(pmc%,sm%) #�/ �85,x2XS2%,�DH(y2YS2%+p1234D4%-bz2b%,OY1) #�) �85,x2,�DH(y2YS2%+p34D2%-bz2b%,OY1) $ �gcolr(p3c%,s34%) $) �x2XS2%,�DH(y2YS%+p13D2%-bz2a%,OY1) $& �85,x2,�DH(y2YS%+p3h%-bz2a%,OY1) $" �gcolr(p2c%,s12%) $," �x2XS%,�DH(y2+p2h%-bz2c%,Y1) $6) �x2XS%,�DH(y2YS2%+p12D2%-bz2b%,OY1) $@( �85,x2XS2%,�DH(y2+p24D2%-bz2c%,Y1) $J �gcolr(pmc%,sm%) $T/ �85,x2XS2%,�DH(y2YS2%+p1234D4%-bz2b%,OY1) $^) �85,x2,�DH(y2YS2%+p34D2%-bz2b%,OY1) $h �gcolr(p4c%,s34%) $r% �x2XS2%,�DH(y2+p24D2%-bz2c%,Y1) $|" �85,x2,�DH(y2+p4h%-bz2c%,Y1) $� � $� cury%=Y1 $�3 ȕ(OY1(SO%(curobj%))>cury%+40)�curobj%<objs%+1 $� �Otyp%(SO%(curobj%))<100� $�y �drawtree(treetyp%(SO%(curobj%)),OX1(SO%(curobj%)),OY1(SO%(curobj%)) ,treex%(SO%(curobj%)),treey%(SO%(curobj%))) $� � $� �Otyp%(SO%(curobj%))<200� $�2 �drawgrn(Otyp%(SO%(curobj%))-100):ps%=ps%+1 $� � $� �Otyp%(SO%(curobj%))<300� $�) �drawtrap(Otyp%(SO%(curobj%))-200) $� � $� �Otyp%(SO%(curobj%))<400� % �drawtee % � % �Otyp%(SO%(curobj%))<500� %&& �water(Otyp%(SO%(curobj%))-400) %0 � %: �Otyp%(SO%(curobj%))<600� %D% �post(Otyp%(SO%(curobj%))-500) %N � %X � %b � %l � %v � %� � %� curobj%+=1 %� � %� �ps%<900� %�9 �(ps%=GNS%)�(fy1%>CY1+60)�CY1<100��drawflag:ps%=999 %� � %� �SB%>0� %� �i%=1�SB% %� �SBP%(i%)� %�E �(SBY1(i%)>CY1+80)�CY1<100�opbl(SBX1(i%),SBY1(i%)):SBP%(i%)=� %� � %� � %� � &' �(SC%=3)�CY1<720YS%=�min(YS%+4,99) & y2=y2-YS%:OY1=CY1 &�CY1<100 & �640,276)=36� &* y%=0 &4 � &> y%=y%+4 &H' p%=�640,276-y%):t%=Ȝ(640,276-y%) &R �p%=36� &\( p%=�640,276+y%):t%=Ȝ(640,276+y%) &f � &p �(p%<>36)�y%>24 &z �610,280+y%:�670,280+y% &� �0,p%Ȝt% &�" �85,610,272-y%:�85,670,272-y% &�� &�6bhdbl%=bhdbl%(pu%):bhdbl2%=�640,276):ong%=�ongreen &��drawin &�� &� &� &���inborder &�]�0,42Ȝ0:�0,0:�5,1276,0:�5,1276,256:�4,4:�5,1272,4:�5,1272,252:�8,8:�5,1268,8:�5,1268,248 &�\�0,42Ȝ128:�0,0:�5,0,256:�5,1276,256:�4,4:�5,4,252:�5,1272,252:�8,8:�5,8,248:�5,1268,248 &�� &� ' '��drawin ' �w%,c%,i% '$ �inborder '. �0,42Ȝ64:ȓȐ12,12,1252,232 '8&�0,37Ȝ192:�1160,148:�&9D,1200,200 'BZ�0,42Ȝ128:�1160,148:�1120,96:�&A5,1200,200:�0,42Ȝ 0:�1160,148:�1200,200:�&A5,1120,96 'L"�5:�0,63Ȝ192:�1096,64:�"Wind" 'V*�0,37Ȝ128:ȏ1160,148,20:ȏ1160,148,40 '`H�0,37Ȝ0:w%=wind%*1.73:�1160,148:�5,1160-�(wang2)*w%,148+�(wang2)*w% 'j$WX%=-�(wang2)*w%:WY%=�(wang2)*w% 't'�0,15Ȝ128:�844,200:�"Hole ";hole%; '~!�844,160:�;len%(hole%)" yds"; '�!�844,120:�"Par ";par%(hole%); '�-�0,15Ȝ0:�844,72:�"Str. ";stroke%(hole%); '�*�0,42Ȝ0:�820,212:�5,464,212:�5,464,40 '��0,42Ȝ128 '��5,820,40:�5,820,212 '�笤ongreen � '� �0,42Ȝ0:�596,200:�"Aim"; '�7 �0,13Ȝ128:�548,152:�"Select";:�aro34(1):�aro12(0) '�� '� �0,13Ȝ128:�596,200:�"Aim"; '�! �548,152:�" Putt";:�aro12(1) '�� ( 笤ongreen � ( & �0,50Ȝ64:�548,112:�club$(club%); (0 �0,42Ȝ0:�532,80:�;clubdist%(club%)" Yds" ; (� ((-�pu%=1c%=3 ��pu%=2c%=16��pu%=3c%=20�c%=31 (2,�0,c%Ȝ128:�16,216:�name$(pu%)" to play" (<B�16,176:�;score%(pu%,hole%)+1;�TH(score%(pu%,hole%)+1)" shot"; (FR%=� (P笤ongreen � (Z �" from";:�16,136 (d �bhdbl2%=Bcol%� (n R%=�:�"bunker" (x � (� �(bhdbl%=24)�bhdbl%=25� (� R%=�:�"heavy rough" (� � (�& �(bhdbl%=4)�(bhdbl%=5)�bhdbl%=10� (� R%=�:�"light rough" (� � (� �(bhdbl%=28)� (� �"tee" (� � (� �"fairway" (� � (� � (� � ) � )� )�0,55Ȝ0:�16,96 )"笤ongreen � ), �;yds%" yds to pin" )6� )@ �feet%>1� )J �;feet%" feet away" )T � )^2 i%=�max(3,(�dist*12)�3*3):�;i%" inches away" )h � )r� )|�0,63Ȝ0:�16,56:�"Score:"; )��totscore%(pu%)=parsofar% � )� �"Even" )�� )�& �;�(totscore%(pu%)-parsofar%)" "; )�. �totscore%(pu%)>parsofar%�"over"��"under" )�� )�� )� )� )���aro34(b%) )��b%=1��0,13Ȝ128 ��0,42Ȝ64 )�|�508,156:�492,140:�85,524,140:�500,140:�516,140:�85,500,100:�85,516,100:�0,42Ȝ0:�508,156:�5,488,136:�500,136:�5,500,100 )�W�0,42Ȝ128:�508,156:�5,528,136:�5,516,136:�5,516,100:�5,500,100:�492,136:�5,500,136 *�b%=1��0,13Ȝ128 ��0,42Ȝ64 *��780,100:�760,120:�85,800,120:�772,120:�788,120:�85,772,156:�85,788,156:�0,42Ȝ0:�788,156:�5,772,156:�5,772,120:�5,760,120:�5,780,100:�788,120:�5,800,120 *A�0,42Ȝ128:�788,156:�5,788,120:�800,120:�5,780,100:�5,764,116 *&� *0 *: *D��aro12(b%) *N�b%=1 �0,13Ȝ128 ��0,42Ȝ64 *X|�512,184:�532,204:�85,532,164:�532,192:�532,176:�85,568,192:�85,568,176:�0,42Ȝ0:�512,184:�5,532,204:�532,192:�5,568,192 *bW�0,42Ȝ128:�516,180:�5,532,164:�5,532,176:�5,568,176:�5,568,192:�532,204:�5,532,192 *l�b%=1 �0,13Ȝ128 ��0,42Ȝ64 *v��768,184:�748,204:�85,748,164:�748,192:�748,176:�85,712,192:�85,712,176:�0,42Ȝ0:�748,204:�5,748,192:�5,712,192:�5,712,176:�748,176:�5,748,164 *�A�0,42Ȝ128:�748,204:�5,768,184:�5,748,164:�748,176:�5,712,176 *�� *� *� *� ��animate *��flight *�8ballx(pu%)=ballx:bally(pu%)=bally:bhdbl%(pu%)=bhdbl% *�)score%(pu%,hole%)=score%(pu%,hole%)+1 *�istshot%=�:holeout%=� *�8�(�holed%(pu%))�(ong%)�(noP%>1)��next<>pu%��continue *�� *� *� +��flight +��oy1,ox2,oby2,osy2,bx,by,bz,bsv,wx,wy,vx,vy,vz,ovel,ox2,oby2,osy2,bh%,bhy%,bs%,bb%,gh,we,he,vxo,bzh,es%,gs%,tt%,TS%,LS%,hf%,hk +$�ss%�gs%=20:es%=21�gs%=30:es%=32 + #ht%=-1:tt%=�:TS%=�:LS%=�:bp%=-1 +*$bx=ballx:by=bally:bz=ballz:hf%=� +4-iw%=�:wx=wind%*�(wang0):wy=wind%*�(wang0) +>�club%<14� +H1 power=power*(1.006-power*(�(hook-.1)^1.4)/9) +R bsv=power*.02 +\% vx=power*clubvelx(club%)*�(sang) +f% vy=power*clubvelx(club%)*�(sang) +p vz=power*clubvelz(club%) +z ovel=power*clubvelx(club%) +� 笤ontee � +� fa=�Rht(bx,by) +�2 fa=(4+vx*�slopex(bx,by)+vy*�slopey(bx,by))/4 +�? vz=vz*fa:vx=vx*2/(1+fa):vy=vy*2/(1+fa):ovel=ovel*2/(1+fa) +� � +�� +� bh%=� +�ox2=640:oby2=276:osy2=276 +�$�____bckspn/effect of rough etc. +�'bsx=-(power^2)*(ovel+2)*�(sang)*.08 +�'bsy=-(power^2)*(ovel+2)*�(sang)*.08 +�笤ongreen � +� �(bhdbl2%=Bcol%)� ,- f=1+�(1)*�(1-power):bsx=bsx*f:bsy=bsy*f , c%=Bdepth*2.5+4.7 , f=1-(16-club%)/16 ,$, �club%<c%�f=f*�(1)*�(1)�f=�(1)*(1-f)+f ,. vx=vx*f:vy=vy*f:vz=vz*f ,8 � ,B& �(bhdbl%=4)�(bhdbl%=5)�bhdbl%=10� ,L bsx=bsx*.62:bsy=bsy*.62 ,V- f=1-(13-club%+rough%)/60:f=�(1)*(1-f)+f ,` vx=vx*f:vy=vy*f:vz=vz*f ,j � ,t �(bhdbl%=24)�bhdbl%=25� ,~ bsx=bsx/3:bsy=bsy/3 ,�? f=�(1-(15-club%)/16):f=f*6/(6+rough%):f=�(1)*�(1)*(1-f)+f ,� vx=vx*f:vy=vy*f:vz=vz*f ,� � ,� � ,� � ,�� ,�A%=0 ,��club%=14� ,�" �bhdbl2%=Bcol%f=�(1)*�(1)�f=1 ,� s%=1 ,� vx=f*power^1.3*�(sang)*2.8 ,� vy=f*power^1.3*�(sang)*2.8 - �Tvs - � -hk=hook*(ovel^.8)/25500 -�f%=1�3 -( ivz=vz:TI%=� -2 � -< A%=A%+1 -F9 we=(bz-gh*.3-ballz*.7+2.5*vx*vx+2.5*vy*vy+5)/340000 -P he=�(bz-ballz+50)*hk -Z vxo=vx*.995+wx*we-he*vy -d vy=vy*.995+wy*we+he*vxo -n vx=vxo -x obx=bx:oby=by -�3 bx=bx+vx+wx*we:by=by+vy+wy*we:bz+=vz:*FX112,1 -� bhdbl%=�bx,by) -� *FX112,0 -�! vz=vz-.0193+bsv:bsv=bsv*.98 -�" gh=�Ght(bx,by):�bz<gh �bz=gh -� �(�hf%)�(bz-gh)<7� -�( �(flagx%-bx)^2+(flagy%-by)^2<.05� -� �___hit flag -�9 vx=vx*(.3-�(1)*.6):vy=vy*(.3-�(1)*.6):bsx=0:bsy=0 -�- vz=vz*�(1):�4,-15+yds%�40,170,1:hf%=� -� � -� � -�3 �(bhdbl%=9)�(bhdbl%=5)�(bhdbl%=22)�bhdbl%=25� . �__check for tree . �ht%=-1�ht%=�tree(bx,by) .$ �Tdist<TW%(treetyp%(ht%))/14� ."& �bz-gh<TH%(treetyp%(ht%))/4.8� .,' �XY01(treex%(ht%),treey%(ht%)) .6 �Y1>=200� .@ tt%=� .J �TL%(treetyp%(ht%))=0� .T �__hit bush .^' vx=vx/4:vy=vy/4:vz=vz-�(1)/7 .h0 �LS%LS%=�:�4,-�min(15,9+1300/Y1),0,0 .r � .|) �bz-gh>TL%(treetyp%(ht%))/2.7� .� �___hit tree .�+ vx=vx*(.988-�(1)^4)+(�(1)-.5)/8 .�+ vy=vy*(.988-�(1)^4)+(�(1)-.5)/8 .� vz=vz-�(5)/60 .�1 �LS%LS%=�:�4,-�min(15,9+1300/Y1),0,0 .� � .�$ �(bb%=1)�(bb%=6)�bb%=63� .�= tx%=treex%(ht%):ty%=treey%(ht%):v=�(vx*vx+vy*vy) .� �i%=1�8 .�$ x=(obx*(8-i%)+bx*i%)/8 .�$ y=(oby*(8-i%)+by*i%)/8 .�+ d=�(((x-tx%)^2+(y-ty%)^2))+.1 .� �(d<2)��TS%� / �__hit trunk / bx=x:by=y /% vx=(x-tx%)/d*v*.5*�(1) /&% vy=(y-ty%)/d*v*.5*�(1) /0 vz=vz-�(1)/5 /:4 i%=9:TS%=�:�3,-�min(15,9+1300/Y1),0,0 /D � /N � /X � /b � /l � /v � /� � /� � /� ht%=-1:LS%=�:TS%=� /� � /� � /� �XY01(bx,by):�XY12(X1,Y1) /�? bzh=�ht2(ballz,Y1):bz2=�ht2(bz,Y1)-bzh:sh=�ht2(gh,Y1)-bzh /� s%=�min(4,(Y1-200)�140+1) /� �(�bh%)�oy1+.16<Y1 � /�# �osy2>Y2+sh bh%=�:bhy%=Y2+sh /� � /� �bh%�Y2+sh>bhy% bh%=� /� � 0 oy1=Y1 0 �(A%�4=0) � 0 �(club%<14)�A%<17 � 0 , ș46,290,SP%,"BHDGFR",640-SC%*44,268 0*7 ș46,290,SP%,x$+"GFR"+�(pu%)+�(gs%),manx%,272,8 04 �gs%<es%gs%=gs%+1 0> � 0H � 0R? ș46,290,SP%,"BHDS",ox2,osy2:ș46,290,SP%,"BHDB",ox2,oby2 0\/ �X2,Y2+sh:�X2,Y2+sh:ș46,270,SP%,"BHDS",0 0f@ bs%=�X2,Y2+sh):�X2,Y2+bz2:�X2,Y2+bz2:ș46,270,SP%,"BHDB",0 0p bb%=�X2,Y2+bz2) 0z �(�bh%)�bz>gh � 0�> �bs%<>Bcol%�笤bhdobj(bs%)�ș46,290,SP%,"SHDO",X2,Y2+sh 0� � 0� �((�bh%)�Y2+bz2>bhy%)� 0�+ �((gh=bz)�((bhdbl%=24)�bhdbl%=25))� 0�- �(�bhdobj(bb%)�((vz<0)�(f%>1)�tt%))� 0�, ș46,290,SP%,"BALL"+�(s%),X2,Y2+bz2 0� � 0� � 0� � 0�# ox2=X2:oby2=Y2+bz2:osy2=Y2+sh 0� �-TI%<3�Ȗ 0� TI%=� 0� �gh=bz 1 �____bounce 1 h=�Rht(bx,by) 1' �(flagx%-bx)^2+(flagy%-by)^2<.076� 1$ �(5)=1� 1.$ ș46,290,SP%,"BHDS",X2,Y2+bz2 18 holed%(pu%)=�:�holed:f%=3 1B � 1L � 1V vx=vx-�slopex(bx,by)/4.5 1` vy=vy-�slopey(bx,by)/4.5 1j vz=vz*.04+ivz*(.4+�(1)/13) 1t- fa=1-.46*(power^.5)/f%:vx=vx*fa:vy=vy*fa 1~ �(bhdbl%=4)�(bhdbl%=5)� 1�# vx=vx*.71:vy=vy*.71:vz=vz*.71 1� � 1�0 �(bhdbl%=24)�(bhdbl%=25)��outofbnds(bx,by)� 1� vx=vx*.5:vy=vy*.5:vz=vz*.5 1� � 1� �(bhdbl%=12)�(bhdbl%=0)� 1� vx=vx+bsx:vy=vy+bsy 1� � 1� �(bhdbl%=10)� 1� vx=vx/8:vy=vy/8:vz=vz/8 1� m%=9999 1� �i%=1�BRP% 2 ? d%=�((bx-BRX%(i%))^2+(by-BRY%(i%))^2):�d%<m%m%=d%:bp%=i% 2 � 2/ vx=vx+(BRX%(bp%)-bx)*(m%+80)*Bdepth/11000 2/ vy=vy+(BRY%(bp%)-by)*(m%+80)*Bdepth/11000 2( � 22 �(bhdbl%=8)�bhdbl%=9� 2<# vx=vx*.79:vy=vy*.79:vz=vz*.79 2F � 2P �(bhdbl%=36)� 2Z+ score%(pu%,hole%)=score%(pu%,hole%)+1 2d2 ș46,290,SP%,"BHDS",X2,Y2+bz2:�inwater:iw%=� 2n Q%=0:R%=16:*FX112,1 2x �cwxy(bx,by) 2� � 2� bx=cwx+�(1)*R%-R%�2 2� by=cwy+�(1)*R%-R%�2 2� Q%=Q%+1:�(Q%�50)=1R%=R%+8 2�l �(�bx,by)<>36)�(�bx+4,by+4)<>36)�(�bx-4,by+4)<>36 )�(�bx-4,by-4)<>36)�(�bx+4,by-4)<>36)�(�bx,by)<>10) 2� *FX112,0 2� f%=4 2� � 2� � 2� � 2� � 2� � 2� � 3 bsx=bsx*.3:bsy=bsy*.3 3� 3�holed%(pu%)�� 3" �iw%��dVx 3,vx=vx*1.4:vy=vy*1.4 36 �____roll 3@eos%=�:st%=0:rt%=�:hf%=� 3JB%=0:TI%=� 3T� 3^ A%=A%+1:obx=bx:oby=by 3h vx=vx*(.951+Gspeed%/500) 3r vy=vy*(.951+Gspeed%/500) 3|8 bx=bx+vx:by=by+vy:gh=�Rht(bx,by):vxy=�(vx*vx+vy*vy) 3� vx=vx-�slopex(bx,by)/64 3� vy=vy-�slopey(bx,by)/64 3� *FX112,1 3� bhdbl%=�bx,by) 3� *FX112,0 3� �rt%� 3�' �(bhdbl%=9)�(bhdbl%=5)�bhdbl%=25� 3� �__check for tree 3� �ht%=-1�ht%=�tree(bx,by) 3�$ �Tdist<TW%(treetyp%(ht%))/14� 3� p%=�X2,Y2+sh+4) 3� �(p%=1)�(p%=6)�p%=63� 3�( tx%=treex%(ht%):ty%=treey%(ht%) 4 v=�(vx*vx+vy*vy) 4( d=�(((bx-tx%)^2+(by-ty%)^2))+.1 4 �(d<5)��TS%� 4& �__hit trunk 40! vx=(bx-tx%)/d*v*�(1)*.8 4:! vy=(by-ty%)/d*v*�(1)*.8 4D rt%=�:TS%=�:�3,-6,0,0 4N � 4X � 4b � 4l ht%=-1 4v � 4� � 4� � 4� �(bhdbl%=8)�(bhdbl%=9)� 4�+ f=.96+�(1)/40:vx=vx*f:vy=vy*f:vz=vz*f 4� � 4� �(bhdbl%=4)�(bhdbl%=5)� 4�+ f=.93+�(1)/50:vx=vx*f:vy=vy*f:vz=vz*f 4� � 4�0 �(bhdbl%=24)�(bhdbl%=25)��outofbnds(bx,by)� 4�+ f=.89+�(1)/50:vx=vx*f:vy=vy*f:vz=vz*f 4� � 4� �bhdbl%=10� 4� vx=vx*.7:vy=vy*.7 5 �bp%=-1� 5 m%=9999 5 �i%=1�BRP% 5 @ d%=�((bx-BRX%(i%))^2+(by-BRY%(i%))^2):�d%<m%m%=d%:bp%=i% 5* � 54 a%=80:b%=11000 5> � 5H a%=40:b%=80000 5R � 5\, vx=vx+(BRX%(bp%)-bx)*(m%+a%)*Bdepth/b% 5f, vy=vy+(BRY%(bp%)-by)*(m%+a%)*Bdepth/b% 5p � 5z � 5� � 5� � 5� �XY01(bx,by):�XY12(X1,Y1) 5�* bzh=�ht2(ballz,Y1):sh=�ht2(gh,Y1)-bzh 5� �(�bh%)�oy1+.16<Y1 � 5�" �osy2>Y2+sh bh%=�:bhy%=Y2+sh 5� � 5� �bh%�Y2+sh>bhy% bh%=� 5� � 5� oy1=Y1 5� �(A%�4=0)�A%<21 � 5� �gs%<es%+1 � 5�# ș46,290,SP%,"BHDS",ox2,osy2 6+ ș46,290,SP%,"BHDGFR",640-SC%*44,268 66 ș46,290,SP%,x$+"GFR"+�(pu%)+�(gs%),manx%,272,8 6 �ox2,osy2:�ox2,osy2 6$ ș46,270,SP%,"BHDS",0 6._ �bh%�:�((bhdbl%=24)�bhdbl%=25)��(�bhdobj(bb%))� ș46,290,SP%,"BALL"+�(s%),ox2,osy2 68 gs%=gs%+1 6B � 6L � 6V9 PX%=X2:PY%=Y2+sh:BOB%=�bhdobj(bb%):�PX%,PY%:�PX%,PY% 6`: Ȗ:ș46,290,SP%,"BHDS",ox2,osy2:ș46,270,SP%,"BHDS",0 6j bb%=�PX%,PY%) 6tO �bh%��((bhdbl%=24)�bhdbl%=25)��BOB%�ș46,290,SP%, "BALL"+�(s%),PX%,PY% 6~ ox2=X2:osy2=Y2+sh 6� �vxy<.05� 6� st%+=1 6� �st%>40eos%=� 6� � 6� st%=0 6� � 6�& hd=�((flagx%-bx)^2+(flagy%-by)^2) 6� �hd<.076*SL � 6� �vxy<.24*SL � 6�& Ȗ:ș46,290,SP%,"BHDS",X2,Y2+sh 6� �gs%>es%gs%=es% 6�+ ș46,290,SP%,"BHDGFR",640-44*SC%,268 7 6 ș46,290,SP%,x$+"GFR"+�(pu%)+�(gs%),manx%,272,8 7 " �holed:eos%=�:holed%(pu%)=� 7 � 7 vx=vx*.75:vy=vy*.75 7( � 72 �hd<.12*SL � 7< �___rim cup 7F vx=vx+.026*(flagx%-bx)/hd 7P vy=vy+.026*(flagy%-by)/hd 7Z vx=vx*.75:vy=vy*.75 7d � 7n �hd<1� 7x �(�ong%)��hf%� 7� �i%=1�10 7�" x=(obx*(10-i%)+bx*i%)/10 7�" y=(oby*(10-i%)+by*i%)/10 7�* d=�(((x-flagx%)^2+(y-flagy%)^2)) 7� �d<.06� 7� �__hit flag 7� bx=x:by=y:i%=11 7� vx=vxy*(�(1)-.5) 7� vy=vxy*(�(1)-.5) 7�% hf%=�:�4,-15+yds%�40,170,1 7� � 7� � 7� � 8 � 8 � 8 � 8" �(bhdbl%=36)� 8, 笤outofbnds(bx,by)� 86 score%(pu%,hole%)+=1 8@# ș46,290,SP%,"BHDS",X2,Y2+sh 8J# �inwater:Q%=0:R%=16:*FX112,1 8T �cwxy(bx,by) 8^ � 8h bx=cwx+�(1)*R%-R%�2 8r by=cwy+�(1)*R%-R%�2 8|! Q%=Q%+1:�(Q%�50)=1R%=R%+8 8�r �(�bx,by)<>36)�(�bx+4,by+4)<>36)�(�bx-4,by+4)<> 36)�(�bx-4,by-4)<>36)�(�bx+4,by-4)<>36)�(�bx,by)<> 10) 8� *FX112,0 8� eos%=� 8� � 8� � 8� �-TI%<5���-TI%=5 8� TI%=� 8� �eos% 8�D�outofbnds(bx,by) score%(pu%,hole%)+=1:�outb �ballx=bx:bally=by 8�*FX112,1 8�bhdbl%=�ballx,bally) 8�*FX112,0 8�� 9 9 9��whose 9&*�inborder:�0,42Ȝ64:ȓȐ12,12,1252,232 90.�0,63Ȝ128:�450,124:�name$(pu%)" to play"; 9:� 9D 9N 9X��cwxy(x,y) 9b �zx,zy 9lzx=6*(x-flagx%)/�(x-flagx%) 9vzy=6*(y-flagy%)/�(y-flagy%) 9�/cwx=x:cwy=y:�cwx+=zx:cwy+=zy:��cwx,cwy)<>36 9�� 9� 9� 9� ��inwater 9���8,-15+�max(0,(Y1-250)�80),0,0:�0,42Ȝ64:�468,44:�816,44:�85,468,208:�85,816,208:�0,3Ȝ0:�500,188:�"In water";:�500,140:�"1 stroke";:�500,92:�"Penalty";:�wt(4) 9�� 9� 9� 9� ��outb 9�obds%=�:�0,42Ȝ64:�468,44:�816,44:�85,468,208:�85,816,208:�0,3Ȝ0:�468,188:�"Out of bnds";:�468,140:�"Stroke &";:�468,92:�"Distance";:�wt(4) 9�� 9� : :��holed : �s%,p% : ��7,-15+yds%�40,0,0:s%=score%(pu%,hole%)+1:p%=par%(hole%):�0,42Ȝ64:�468,44:�816,44:�85,468,208:�85,816,208:�0,48Ȝ0:�468,188:�"Holed in ";s%:�468,140 :*��p%-s%=3�"for an":�468,92:�"albatross"��p%-s%=2�"for eagle"��p%-s%=1�"for birdie"��p%-s%=0�"for par"��p%-s%=-1�"for bogey"��p%-s%=-2�"for double":�468,92:�"bogey"��;s%-p%" over par" :4 �wt(4) :>� :H :R :\ݤtree(x,y) :f�d,m%,tw,i%,xd,yd :pd=9999:m%=1 :z�i%=1�trees% :� xd=�(x-treex%(i%)) :� �xd>12��d@z :� yd=�(y-treey%(i%)) :� �yd>12��d@z :� tw=xd*xd+yd*yd :� �tw<d �d=tw:m%=i% :�� :�Tdist=�(d) :�=m% :� :� :�Sݤbhdobj(c%)=�((c%=12)�(c%=56)�(c%=8)�(c%=9)�(c%=Bcol%)�(c%=0)�(c%=36)�(c%=57)) :� ; ;#��wt(s):�t%:t%=�:���-t%>s*100:� ; ;$ ;.��sorthonor ;8 �i%,j% ;B�i%=1�noP%-1 ;L �j%=1�noP%-1 ;VA �score%(teeorder%(j%),hole%)>score%(teeorder%(j%+1),hole%)� ;`' Ȕ teeorder%(j%),teeorder%(j%+1) ;j � ;t � ;~� ;�� ;� ;� ;� ݤnext ;� �i%,t%,n% ;��noP%=1�=1 ;�笤ontee �=�furthest ;��n%=1�noP% ;� �teeorder%(n%)=pu%�i%=n% ;�� ;�� ;� i%+=1:�i%>noP%i%=1 <