home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / misc / minimuf4 / mufbeam.bas < prev    next >
BASIC Source File  |  1987-04-30  |  26KB  |  510 lines

  1. 1 ' This is a merge of two separate programs, BEAMHEAD and MINIMUF.
  2. 2 ' BEAMHEAD calculates great circle beam headings and distances, and
  3. 3 ' appeared in the Feb 84 issue of 73 Magazine, originally 
  4. 4 ' written by WB7RLX.  Debugging and mods for the IBM PC were 
  5. 5 ' accomplished by Doug Wetzel, KC7CO (Magic City RBBS 406-256-8717)
  6. 6 '
  7. 7 ' To change variables for your location, edit line 170 to reflect
  8. 8 ' your latitude, longitude, and location.  North latitudes and West
  9. 9 ' longitudes are positive numbers, South and East are negative.
  10. 10 ' Minutes should be entered in decimal fractions of degrees.
  11. 11 ' Lines 2780 to the end come from a program named MINIMUFF which 
  12. 12 ' appeared in the December, 1982 issue of QST magazine. This portion of the 
  13. 13 ' program calculates the maximum useable frequency for 
  14. 14 ' communication between any two points on earth.  Solar flux values
  15. 15 ' may be obtained from the National Bureau of Standards radio 
  16. 16 'station WWV on 2.5, 5.0, 10.0, and 15.0 megaHertz at 18 minutes past
  17. 17 'the hour.
  18. 18 '
  19. 19 'Integration of the programs with further cosmetic improvement was
  20. 20 'carried out by Chip Stratton, Dallas, TX.  If anyone with a sense
  21. 21 'of programming aesthetics ever puts this into a structured language,
  22. 22 'I would love to have a copy of it.  I'm too lazy to try myself.
  23. 100 '                            BEAMHEAD
  24. 110 DIM M$(37), A$(4), M(12)
  25. 120 CLS
  26. 130 LOCATE 2,27:PRINT "**MAKE SURE CAPS LOCK IS ON!!!**"
  27. 140 LOCATE 6,35
  28. 150 PRINT "MAIN MENU":LOCATE 9,25:PRINT "How do you want me to locate data?"
  29. 160 LOCATE 11,30
  30. 170 PRINT "1.  Country or State":LOCATE 12,30:PRINT "2.  Prefix":LOCATE 13,30:PRINT "3.  Latitude and Longitude":LOCATE 14,30:PRINT "4.  Quit"
  31. 180 RESTORE:L1=32.5:W1=96.5:SP$="Dallas, TX"
  32. 190 LOCATE 16,30,1,1,7
  33. 200 INPUT E
  34. 210 ON E GOTO 240,300,360
  35. 220 IF E=4 THEN PRINT "":END
  36. 230 GOTO 200
  37. 240 CLS:LOCATE 6,30:INPUT  "Country or State: ";C$:IF C$="" THEN 120
  38. 250 CLS:LOCATE 6,25:PRINT "Searching Data for Location...."
  39. 260 GOSUB 450
  40. 270 IF L$=C$ THEN GOSUB 860:GOTO 460
  41. 280 IF Z$="end" THEN 840
  42. 290 GOTO 260
  43. 300 CLS:LOCATE 6,35:INPUT "Prefix: ";H$: IF H$="" THEN 120
  44. 310 CLS:LOCATE 6,25:PRINT "Searching Data for Location...."
  45. 320 GOSUB 450
  46. 330 IF Z$=H$ THEN GOSUB 860:GOTO 460
  47. 340 IF Z$="end" THEN 840
  48. 350 GOTO 320
  49. 360 CLS:LOCATE 6,30
  50. 370 INPUT "Latitude: ";L2:IF L2>90 OR L2<-90 THEN GOSUB 440:GOTO 360
  51. 380 LOCATE 8,30
  52. 390 INPUT "Longitude: ";W2:IF W2>180 OR W2<-180 THEN GOSUB 440:GOTO 380
  53. 400 LOCATE 10,20
  54. 410 INPUT "Is this information correct? <y/n>";W$
  55. 420 IF W$="Y" THEN 430 ELSE GOTO 360
  56. 430 CLS:GOSUB 860:GOTO 720
  57. 440 PRINT "***ERROR***":RETURN
  58. 450 READ Z$,L$,L2,W2:RETURN
  59. 460 CLS:LOCATE 6,30
  60. 470 PRINT "";L$
  61. 480 LOCATE 9,30:PRINT "Prefix: ";Z$
  62. 490 LOCATE 10,30:PRINT "From ";SP$
  63. 500 LOCATE 11,30:PRINT "Your Beam Heading: ";R2
  64. 510 R8=R2+180
  65. 520 IF R8>360 THEN R8=R8-360
  66. 530 LOCATE 13,30:PRINT "Long Path Beam Heading: ";R8
  67. 540 LOCATE 15,30:PRINT D1B;" Miles"
  68. 550 LOCATE 16,30:PRINT D2B;" Kilometers"
  69. 560 BR=SGN(L2)
  70. 570 IF BR=+1 THEN LOCATE 18,30:PRINT "Latitude:  ";L2;" N"
  71. 580 IF BR=-1 THEN LOCATE 18,30:PRINT "Latitude:  ";ABS(L2);" S"
  72. 590 LR=SGN(W2)
  73. 600 IF LR=+1 THEN LOCATE 19,30:PRINT "Longitude:  ";W2;" W"
  74. 610 IF LR=-1 THEN LOCATE 19,30:PRINT "Longitude:  ";ABS(W2);" E"
  75. 620 LOCATE 23,1
  76. 630 PRINT "Hit <RETURN> to continue search, <Q> to end, or <M> for MUF chart."
  77. 640 INPUT S$:IF S$="Q" THEN 2760
  78. 650 REM
  79. 660 IF S$="M" THEN GOTO 2780
  80. 670 IF S$="" AND E=3 THEN CLS:GOTO 720
  81. 680 IF S$="" AND E=2 THEN CLS:GOTO 310
  82. 690 IF S$="" AND E=1 THEN CLS:GOTO 250
  83. 700 IF S$="" AND E=0 THEN CLS:GOTO 770
  84. 710 GOTO 150
  85. 720 LOCATE 6,15
  86. 730 PRINT "I will search my file for a location near your coordinates."
  87. 740 LOCATE 8,25
  88. 750 INPUT "How wide a search? (Degrees): ";QS
  89. 760 ZB=L2:ZL=W2
  90. 770 GOSUB 450
  91. 780 IF Z$="end" THEN 840
  92. 790 IF L2>ZB+QS THEN 770
  93. 800 IF L2<ZB-QS THEN 770
  94. 810 IF W2>ZL+QS THEN 770
  95. 820 IF W2<ZL-QS THEN 770
  96. 830 E=0:GOSUB 860:GOTO 460
  97. 840 CLS:LOCATE 6,25:PRINT "****DATA NOT FOUND****":LOCATE 8,20:INPUT "<ENTER> TO RUN AGAIN, <Q> TO END";YN$
  98. 850 IF YN$="Q" THEN END ELSE GOTO 120
  99. 860 PI=3.1415927#:A1B=L1*PI/180:W=ABS(W2-W1):XB=0
  100. 870 IF W<-180 THEN 900
  101. 880 IF W>180 THEN 910
  102. 890 GOTO 920
  103. 900 W=W+360:GOTO 940
  104. 910 W=W-360
  105. 920 IF W<0 THEN 940
  106. 930 XB=1
  107. 940 B1B=L2*PI/180:W=W*PI/180:PB=COS(W)*COS(A1B)*COS(B1B)+SIN(A1B)*SIN(B1B)
  108. 950 P1B=ATN(SQR(1-PB*PB)/PB):P2=P1B*180/PI
  109. 960 IF P2<0 GOTO 980
  110. 970 GOTO 990
  111. 980 P2=P2+180
  112. 990 D1B=INT(P2*60*1.15152+.5):D2B=INT(D1B*1.6093+.5)
  113. 1000 R=COS(B1B)*SIN(W)/SIN(P1B):R1B=ATN(R/SQR(1-R*R)):R2=INT((R1B*180/PI)+.5)
  114. 1010 IF ABS(R)>.999998 THEN 1120
  115. 1020 IF ABS(R)<.00174 THEN 1150
  116. 1030 B2=(L2+.1)*PI/180:R3=COS(W)*COS(A1B)*COS(B2)+SIN(B2)*SIN(A1B)
  117. 1040 R4=ATN(SQR(1-R3*R3)/R3):R6=COS(B2)*SIN(W)/SIN(R4)
  118. 1050 IF XB=1 THEN 1090
  119. 1060 IF ABS(R6)>ABS(R) THEN 1080
  120. 1070 R2=360-ABS(R2):GOTO 1210
  121. 1080 R2=180+ABS(R2):GOTO 1210
  122. 1090 IF ABS(R6)<ABS(R) THEN 1110
  123. 1100 R2=180-ABS(R2):GOTO 1210
  124. 1110 R2=ABS(R2):GOTO 1210
  125. 1120 IF XB=1 THEN 1140
  126. 1130 R2=270:GOTO 1210
  127. 1140 R2=90:GOTO 1210
  128. 1150 IF ABS(W)>178 THEN 1190
  129. 1160 IF L2<L1 THEN 1180
  130. 1170 R2=0:GOTO 1210
  131. 1180 R2=180:GOTO 1210
  132. 1190 IF L2>L1 THEN 1180
  133. 1200 GOTO 1170
  134. 1210 RETURN
  135. 1220 END
  136. 1230 DATA AC4,SIKKIM,32,-83,AP,PAKISTAN,30,-70,A2,BOTSWANA,-22,-24,ZS9,BOTSWANA,-22,-24
  137. 1240 DATA A35,TONGA,-20,175,A4,OMAN,22,-58,A5,BHUTAN,27.5,-90.1,AC5,BHUTAN,27.5,-90.1
  138. 1250 DATA A6,UNITED ARAB EMIRATES,24,-56,A7,QATAR,25,-51.2,A9X,BAHRAIN,26,-50.5
  139. 1260 DATA BV,TAIWAN,23.5,-121,BY,CHINA,39.9,-116.4,CE,CHILE,-30,71
  140. 1270 DATA KC4,ANTARCTICA,-89,0,VP8,ANTARCTICA,-89,0,LA,ANTARCTICA,-89,0,LU,ANTARCTICA,-89,0
  141. 1280 DATA OR4,ANTARCTICA,-89,0,ZL5,ANTARCTICA,-89,0,ZS1,ANTARCTICA,-89,0,4K,ANTARCTICA,-89,0
  142. 1290 DATA 3Y,ANTARCTICA,-89,0,8J,ANTARCTICA,-89,0,K1,CONNECTICUT,41.7,72.5,K1,MAINE,45.5,69
  143. 1300 DATA W1,CONNECTICUT,41.7,72.5,W1,MAINE,45.5,69
  144. 1310 DATA K1,MASSACHUSETTS,42.4,72,K1,NEW HAMPSHIRE,44,71,K1,RHODE ISLAND,41.7,71.5
  145. 1320 DATA W1,MASSACHUSETTS,42.4,72,W1,NEW HAMPSHIRE,44,71,W1,RHODE ISLAND,41.7,71.5
  146. 1330 DATA K1,VERMONT,43.5,73,K2,NEW JERSEY,40.25,74.5,K2,NEW YORK,42.9,75.5
  147. 1340 DATA W1,VERMONT,43.5,73,W2,NEW JERSEY,40.25,74.5,W2,NEW YORK,42.9,75.5
  148. 1350 DATA K3,MARYLAND,39.18,76.38,K3,DISTRICT OF COLUMBIA,38.55,77
  149. 1360 DATA W3,MARYLAND,39.18,76.38,W3,DISTRICT OF COLUMBIA,38.55,77
  150. 1370 DATA K3,DELAWARE,39.2,75.5,K3,PENNSYLVANIA,41,78,K4,ALABAMA,33,86.5,K4,FLORIDA,28.5,82
  151. 1380 DATA W3,DELAWARE,39.2,75.5,W3,PENNSYLVANIA,41,78,W4,ALABAMA,33,86.5,W4,FLORIDA,28.5,82
  152. 1390 DATA K4,GEORGIA,33,83,K4,KENTUCKY,37.5,85,K4,NORTH CAROLINA,35.5,78,K4,SOUTH CAROLINA,33.5,80.5
  153. 1400 DATA W4,GEORGIA,33,83,W4,KENTUCKY,37.5,85,W4,NORTH CAROLINA,35.5,78,W4,SOUTH CAROLINA,33.5,80.5
  154. 1410 DATA K4,TENNESSEE,36,86,K4,VIRGINIA,33,78.5,K5,ARKANSAS,34.7,92.4,K5,LOUISIANA,31.5,92.5
  155. 1420 DATA W4,TENNESSEE,36,86,W4,VIRGINIA,33,78.5,W5,ARKANSAS,34.7,92.4,W5,LOUISIANA,31.5,92.5
  156. 1430 DATA K5,MISSISSIPPI,33,89.7,K5,NEW MEXICO,34,106,K5,OKLAHOMA,35.5,96.5,K5,TEXAS,32,98
  157. 1440 DATA W5,MISSISSIPPI,33,89.7,W5,NEW MEXICO,34,106,W5,OKLAHOMA,35.5,96.5,W5,TEXAS,32,98
  158. 1450 DATA K6,CALIFORNIA,37,120,K7,ARIZONA,34.3,111.6,K7,IDAHO,44,114,K7,MONTANA,47,110
  159. 1460 DATA W6,CALIFORNIA,37,120,W7,ARIZONA,34.3,111.6,W7,IDAHO,44,114,W7,MONTANA,47,110
  160. 1470 DATA K7,NEVADA,39,117,K7,OREGON,44,120,K7,UTAH,39,112,K7,WASHINGTON,47,120,K7,WYOMING,43,108
  161. 1480 DATA W7,NEVADA,39,117,W7,OREGON,44,120,W7,UTAH,39,112,W7,WASHINGTON,47,120,W7,WYOMING,43,108
  162. 1490 DATA K8,MICHIGAN,42.44,85.33,K8,OHIO,39.59,83.03,K8,WEST VIRGINIA,38.23,81.4
  163. 1500 DATA W8,MICHIGAN,42.44,85.33,W8,OHIO,39.59,83.03,W8,WEST VIRGINIA,38.23,81.4
  164. 1510 DATA K9,WISCONSIN,44.5,90,K0,COLORADO,39,105,K0,IOWA,42,94,K0,KANSAS,38.5,98
  165. 1520 DATA W9,WISCONSIN,44.5,90,W0,COLORADO,39,105,W0,IOWA,42,94,W0,KANSAS,38.5,98
  166. 1530 DATA K9,ILLINOIS,39.51,88.57,K9,INDIANA,39.45,86.1
  167. 1540 DATA W9,ILLINOIS,39.51,88.57,W9,INDIANA,39.45,86.1
  168. 1550 DATA K0,MINNESOTA,46.5,94.5,K0,MISSOURI,38.5,92.2,K0,NEBRASKA,41.5,100,K0,NORTH DAKOTA,47.5,100
  169. 1560 DATA W0,MINNESOTA,46.5,94.5,W0,MISSOURI,38.5,92.2,W0,NEBRASKA,41.5,100,W0,NORTH DAKOTA,47.5,100
  170. 1570 DATA K0,SOUTH DAKOTA,44.5,100,CE9A,ANTARCTICA,-89,0,FB8,ANTARCTICA,-89,0
  171. 1580 DATA W0,SOUTH DAKOTA,44.5,100,??,TAHITI,-18,148
  172. 1590 DATA KL7,ALASKA,64.5,147.5,KH6,HAWAII,21.19,157.5
  173. 1600 DATA CE0A,EASTER ISLAND,-27.1,109.3,CE0X,SAN FELIX ISLAND,-26.3,80.1
  174. 1610 DATA CE0Z,JUAN FERNANDEZ ISLAND,-33,80,CM,CUBA,21.5,80,CO,CUBA,21.5,80
  175. 1620 DATA CN,MOROCCO,32,5.8,CP,BOLIVIA,-17,65,CR3,GUINEA BISSAU,12,15,J5,GUINEA BISSAU,12,15
  176. 1630 DATA CR5,PRINCIPE ISLAND,1,7,S9,PRINCIPE ISLAND,1,7,CR5,SAO TOME ISLAND,12,6
  177. 1640 DATA S9,SAO TOME ISLAND,12,6,CR8,TIMORE ISLAND,-10,125,CR9,MACAO,22,-113,CT1,PORTUGAL,39,8
  178. 1650 DATA CT2,AZORES ISLANDS,38,28,CT3,MADEIRA ISLAND,32.7,17,CX,URUGUAY,-33,56,C2,NAURA ISLAND,-.5,-167.9
  179. 1660 DATA VK9,NAURA ISLAND,-.5,-167.9,C3,ANDORRA ISLAND,42.5,-1.5,PX1,ANDORRA ISLAND,42.5,-1.5
  180. 1670 DATA C5,GAMBIA,13.4,16,ZD3,GAMBIA,13.4,16,C6,BAHAMA ISLANDS,24.25,76,VP7,BAHAMA ISLANDS,24.25,76
  181. 1680 DATA C9,MOZAMBIQUE,-18,-36,CR7,MOZAMBIQUE,-18,-36,DA,WEST GERMANY,51,-9,DM,EAST GERMANY,52,-12
  182. 1690 DATA Y9,EAST GERMANY,52,-12,DU,PHILLIPPINES,12.5,-123,D2,ANGOLA,-12.5,-18.5
  183. 1700 DATA D3,ANGOLA,-12.5,-18.5,D4,CAPE VERDE,16,24,DX,PHILLIPPINES,12.5,-123,EA,SPAIN,40,4
  184. 1710 DATA EA9,MELILLA,35.3,2.98,EI,IRELAND,53,8,EL,LIBERIA,6,10,EP,IRAN,32,-53
  185. 1720 DATA ET,ETHIOPIA,9,-41,F,FRANCE,46,-2,FB8W,CROZET ISLAND,-46,-52
  186. 1730 DATA FB8X,KERGUELEN ISLAND,-49.3,-69.2,FB8Z,ST.PAUL AND AMSTERDAM ISLANDS,-37.8,-77.5
  187. 1740 DATA FG7,GUADELOUPE,16.2,61.6,FC,CORSICA,42,-9,D6,COMORO ISLAND,-12.2,-44.3
  188. 1750 DATA FH,MAYOTTE ISLAND,-12.2,-44.3,FK8,NEW CALEDONIA,-22.3,-166.5,FL8,DJIBOUTI,11.6,-43.2
  189. 1760 DATA J2,DJIBOUTI,11.6,-43.2,FM7,MARTINIQUE,14.7,61,FO8,FRENCH POLYNESIA,-18,149,FO8,TAHITI,-18,149
  190. 1770 DATA FO8,CLIPPERTON ISLAND,10,109,FP8,ST.PIERRE ISLAND,46.6,52.35,FP8,MIQUELON ISLAND,46.7,52.35
  191. 1780 DATA FR,REUNION ISLAND,-21,-55,FR,GLORIOSO ISLAND,-11,-48,FR,JUAN DE NOVA,-17,-42.8
  192. 1790 DATA FR,TROMELIN ISLAND,-15.9,-52,FS,ST.MARTIN ISLAND,18,63,FG,ST.MARTIN ISLAND,18,63,FW8,WALLIS AND FUTUNA ISLANDS,-14,177,FY7,FRENCH GUIANA,4,53,G,ENGLAND,52.5,1.5
  193. 1800 DATA GD,ISLE OF MAN,54.2,4.5,GI,NORTHERN IRELAND,55,6.8,GJ,JERSEY ISLAND,49,2.2
  194. 1810 DATA GC,JERSEY ISLAND,49,2.2,GM,SCOTLAND,57,4,GU,GUERNSEY ISLAND,49.5,2.6
  195. 1820 DATA GC,GUERNSEY ISLAND,49.5,2.6,GW,WALES,52.5,3.5,HA,HUNGARY,47,-20
  196. 1830 DATA HG,HUNGARY,47,-20,HB,SWITZERLAND,47,-8,HE,LIECHTENSTEIN,47,-9.4
  197. 1840 DATA HB0,LIECHTENSTEIN,47,-9.4,HC,ECUADOR,-2,77.5,HC8,GALAPAGOS ISLANDS,-.5,90.5
  198. 1850 DATA HH,HAITI,19,72.4,HI,DOMINICAN REPUBLIC,19,70.7,HK,COLUMBIA,4,72,HM,KOREA,37.5,-127
  199. 1860 DATA HK0,PROVIDENCIA ISLAND,-9,51,HK0,MALPELO ISLAND,14,81.6,HL,KOREA,37.5,127
  200. 1870 DATA HK0,SERRANE BANK,14,80.2,HK0,RONCADOR CAY,14,80.2,HK0,SAN ANDRES ISLAND,13.4,81.4
  201. 1880 DATA KP3,SERRANE BANK,14,80.2,KP3,RONCADOR CAY,14,80.2,KS4,SERRANE BANK,14,80.2
  202. 1890 DATA KS4,RONCADOR CAY,14,80.2,HP,PANAMA,9,80,HR,HONDURAS,15,86.5,HR,SWAN ISLAND,44,68.2
  203. 1900 DATA HS,THAILAND,15,-100,HV,VATICAN CITY,41.9,-12.45,HZ,SAUDI ARABIA,25,-45
  204. 1910 DATA 7Z,SAUDI ARABIA,25,-45,I,ITALY,42.8,-12.8,IT,SICILY,37,-14,IS,SARDINIA,40,-9
  205. 1920 DATA IM,SARDINIA,40,-9,JA,JAPAN,36,-138,JD,OGASAWARA ISLAND,27,-142.2
  206. 1930 DATA KA1,OGASAWARA ISLAND,27,-142.2,MI,MIASIWA,35,-141,JN,JAPAN,36,-138
  207. 1940 DATA JE,JAPAN,36,-138,JH,JAPAN,36,-138,JD,MINAMI-TORI-SHIMA ISLAND,24.3,-154
  208. 1950 DATA KA1,MINAMI-TORI-SHIMA ISLAND,24.3,-154,JR,JAPAN,36,-138,KA,JAPAN,36,-138
  209. 1960 DATA JT,MONGOLIA,47.9,-106.9,JW,SVALBARD ISLAND,78,-20,LA,SVALBARD ISLAND,78,-20
  210. 1970 DATA LP,SVALBARD ISLAND,78,-20,JX,JAN MAYEN ISLAND,71,83,LA,JAN MAYEN ISLAND,71,83
  211. 1980 DATA LP,JAN MAYEN ISLAND,71,83,JY,JORDAN,31,-36,KH1,BAKER ISLAND,.3,176.5
  212. 1990 DATA KB,BAKER ISLAND,.3,176.5,KB,HOWLAND ISLAND,1,178,KH1,HOWLAND ISLAND,1,178
  213. 2000 DATA KC4,NAVASSA ISLAND,18.4,75,KP1,NAVASSA ISLAND,18.4,75,KC6,CAROLINE ISLANDS,8,-145
  214. 2010 DATA KG4,GUANTANAMO BAY,20,75.15,KG6,MARIANA ISLANDS,12,-154,KH0,MARIANA ISLANDS,12,-154
  215. 2020 DATA KG6,GUAM,13.45,-144.8,AH,GUAM,13.45,-144.8,KH2,GUAM,13.45,-144.8,KH7,KURE ISLANDS,28.4,178.8
  216. 2030 DATA KJ6,JOHNSTON ISLAND,16.75,169.55,KH3,JOHNSTON ISLAND,16.75,169.55
  217. 2040 DATA KM6,MIDWAY ISLAND,28.2,177.25,KH4,MIDWAY ISLAND,28.2,177.25,KP4,PUERTO RICO,18.25,66.5
  218. 2050 DATA KP6,KINGMAN REEF,6.4,166.4,KP6,JARVIS ISLAND,-4,160,KP6,PALMYRA ISLAND,6,162.1
  219. 2060 DATA KS6,AMERICAN SAMOA,-14.3,170,KH8,AMERICAN SAMOA,-14.3,170,KV4,VIRGIN ISLANDS,18.3,64.7
  220. 2070 DATA KW6,WAKE ISLAND,19.3,-166.6,LA,NORWAY,62,-10,KH9,WAKE ISLAND,19.3,-166.6
  221. 2080 DATA KX6,MARSHALL ISLANDS,13,-165,LB,NORWAY,62,-10,LF,NORWAY,62,-10,LG,NORWAY,62,-10
  222. 2090 DATA LJ,NORWAY,62,-10,LU,ARGENTINA,-34,64,LX,LUXEMBOURG,49.5,-6,LZ,BULGARIA,43,-25
  223. 2100 DATA M1,SAN MARINO,43.6,-12.3,OH,FINLAND,64,-26,OF,FINLAND,64,-26,OH0,ALAND ISLAND,60,-20
  224. 2110 DATA OJ0,MARKET REEF,64,-20,OK,CZECHOSLOVOKIA,49.5,-17,ON,BELGIUM,50.8,-4,OX,GREENLAND,71,40
  225. 2120 DATA XP,GREENLAND,71,40,OY,FAEROES ISLANDS,62,7,OZ,DENMARK,56,-10,PA,NETHERLANDS,52.25,-5.5
  226. 2130 DATA PD,NETHERLANDS,52.25,-5.5,PE,NETHERLANDS,52.25,-5.5,PI,NETHERLANDS,52.25,-5.5
  227. 2140 DATA PJ,NETHERLANDS ANTILLES ISLANDS,12.25,69,PJ,ST.EUSTATIUS,18.1,63,PJ,SABA ISLAND,18,63
  228. 2150 DATA KP2,VIRGIN ISLANDS,18.3,64.7,PJ,ST.MAARTIN ISLAND,18.1,63.1,PY,BRAZIL,-9,53
  229. 2160 DATA PU,BRAZIL,-9,53,PV,BRAZIL,-9,53,PW,BRAZIL,-9,53,PX,BRAZIL,-9,53,PP,BRAZIL,-9,53
  230. 2170 DATA PQ,BRAZIL,-9,53,PR,BRAZIL,-9,53,PS,BRAZIL,-9,53,PT,BRAZIL,-9,53,PY0,TRINIDADE & MARTIM ISLANDS,-20.3,31
  231. 2180 DATA PY0,ST.PETER & ST.PAUL ROCK,1,30,PY0,FERNANDO DE NORANHA ISLAND,-3.85,32.45,PZ,SURINAM,5.5,55
  232. 2190 DATA P2,NEW GUINEA,-7,-147,SK,SWEDEN,62,-15,SM,SWEDEN,62,-15,SL,SWEDEN,62,-15
  233. 2200 DATA SP,POLAND,52,-19,3Z,POLAND,52,-19,ST,SUDAN,15,-30,SU,EGYPT,27,-30,SV,GREECE,39,-22
  234. 2210 DATA SV,CRETE,35.5,-24.7,SV,DODECANESE ISLANDS,36.2,-27,S2,BANGLADESH,24,-90
  235. 2220 DATA TA,TURKEY,39,-35,TF,ICELAND,65,18,TG,GUATAMALA,14.6,90,TI,COSTA RICA,10,84
  236. 2230 DATA TI9,COCOS ISLANDS,6,87.5,TJ,CAMEROON,6,-12,TL,CENTRAL AFRICAN REPUBLIC,7,-21
  237. 2240 DATA TR,GABON,-1,-11.75,TN,CONGO,-1,-15,TT,CHAD,15,-19,TU,IVORY COAST,8,5,TY,BENIN,9,-2
  238. 2250 DATA TZ,MALI,17,4,UA,USSR,55,-80,UT,USSR,55,-80,UB,USSR,55,-80,UY,USSR,55,-80
  239. 2260 DATA VE,CANADA,60,95,VY,CANADA,60,95,VK,AUSTRALIA,-25,-130,AX,AUSTRALIA,-25,-130
  240. 2270 DATA VK2,LORD HOWE ISLAND,-31.6,-159.1,VK9,NORFOLK ISLAND,-9,-167.6,VK9,CHRISTMAS ISLAND,-10,105,VK9,COCOS ISLANDS,-12.5,-97
  241. 2280 DATA VK9,MELLISH REEF,-17.2,-155,VK0,HEARD ISLAND,-53,-75,VK0,MACQUARIE ISLAND,-54.6,-158.9
  242. 2290 DATA VK0,MCDONALD ISLAND,-4.6,-74,VO1,NEWFOUNDLAND,52,56,VO2,LABRADOR,54,62
  243. 2300 DATA V3,BELISE,17,88,J3,GRANADA,12,61,V2,ANTIGUA & BARBUDA,17,61.8,VP2,ANTIGUA & BARBUDA,17,61.8
  244. 2310 DATA J7,DOMINICA ISLAND,15.5,61.35,VP2D,DOMINICA ISLAND,15.5,61.35,VP2E,ANGUILLA ISLAND,18,63.1
  245. 2320 DATA VP2K,ST.KITTS & NEVIS ISLANDS,17.3,62.75,VP2L,ST.LUCIA ISLAND,14,61
  246. 2330 DATA J6,ST.LUCIA ISLAND,14,61,VP2M,MONTSERRAT ISLAND,16.7,62.2,J8,ST.VINCENT ISLAND,13,61.15
  247. 2340 DATA VP2S,ST.VINCENT ISLAND,13,61.15,VP2V,BRITISH VIRGIN ISLANDS,18,64,VP5,TURK ISLAND,20.7,71.6
  248. 2350 DATA VP5,CAICOS ISLAND,21.7,71.6,VP8,FALKLAND ISLANDS,-51,75.6,LU,FALKLAND ISLANDS,-51,75.6
  249. 2360 DATA VP8,S.GEORGIA ISLANDS,-54.25,36.75,VP8,S.ORKNEY ISLANDS,-62,45,VP8,S.SANDWICH ISLANDS,-58,27
  250. 2370 DATA VP8,S.SHETLAND ISLANDS,-65,65,VP9,BERMUDA,32,64,VQ9,CHAGOS ISLAND,-8,73
  251. 2380 DATA VQ9,SEYCHELLES ISLANDS,-4,-55,S7,SEYCHELLES ISLANDS,-4,-55,VR1,GILBERT & OCEAN ISLANDS,-.5,-169
  252. 2390 DATA T30,GILBERT & OCEAN ISLANDS,-.5,-169,VR1,PHOENIX ISLANDS,-4,171,T31,PHOENIX ISLANDS,-4,171
  253. 2400 DATA T32, LINE ISLANDS,-5,-154,VR4,SOLOMON ISLANDS,-8,-159,H4,SOLOMON ISLANDS,-8,-159
  254. 2410 DATA VR6,PITCAIRN ISLAND,-25,130,VR8,TUVALA ISLAND,-8,178,VS5,BRUNEI,4,-114,VS6,HONG KONG,22.1,-114
  255. 2420 DATA VS9,KAMARAN ISLAND,15,-42,VU,INDIA,23,-80,VU7,ANDAMAN & NICOBAR ISLANDS,12,-92
  256. 2430 DATA VU7,LACCADIVE ISLANDS,10,-73,XE,MEXICO,23,102,XF,MEXICO,23,102,4A,MEXICO,23,102,6D,MEXICO,23,102
  257. 2440 DATA XE4,REVILLAGIGEDO ISLAND,19,111.3,6D4,REVILLAGIGEDO ISLAND,19,111.3,XT,VOLTAIC REPUBLIC,12,1
  258. 2450 DATA XU,CAMBODIA,13,-105,XV5,VIETNAM,16,-108,XW8,LAOS,18,-105,XZ,BURMA,22,-98
  259. 2460 DATA YA,AFGHANISTAN,33,-65,YB,INDONESIA,-5,-120,YS,EL SALVADOR,13.5,88.5,YU,YUGOSLAVIA,44,-19
  260. 2470 DATA YT,YUGOSLAVIA,44,-19,YV,VENEZUELA,8,66,YV0,AVES ISLAND,12,67.3,ZA,ALBANIA,41,-20
  261. 2480 DATA ZB2,GIBRALTER,36,5,ZD7,ST.HELENA ISLAND,-15.6,5.4,ZD8,ASCENSION ISLAND,-5.6,14
  262. 2490 DATA ZD9,TRISTAN DA CUNHA,-37,12,ZD9,GOUGH ISLAND,-40,9,ZE,ZIMBABWE,-20,-30,Z2,ZIMBABWE,-20,-30
  263. 2500 DATA ZF1,CAYMAN ISLANDS,19,80,ZK1,COOK ISLANDS,-20,158,ZK2,NIUE ISLAND,-19,169
  264. 2510 DATA ZL,NEW ZEALAND,-41,-174,ZL,CHATMAN ISLAND,-44,-176,ZL,AUKLAND ISLAND,-52,-176
  265. 2520 DATA ZL,CAMPBELL ISLAND,-53,-165,ZL,KERMADEC ISLAND,-31,-178,ZM7,TOKELAU ISLANDS,-8,-173
  266. 2530 DATA ZP,PARAGUAY,-23,58,ZS,SOUTH AFRICA,-30,-26,ZS2,PRINCE EDWARD ISLAND,-47,-38
  267. 2540 DATA ZS2,MARION ISLAND,-47,-38,ZS3,NAMIBIA,-22,-17,1A,MILITARY ORDER OF MALTA,35.5,-14.3
  268. 2550 DATA 1S,SPRATLEY ISLAND,8,-112,3A,MONACO,43.5,-7,3B6,AGALEGA ISLAND,-10,-56.4
  269. 2560 DATA 3B7,ST.BRANDON ISLAND,-17,-69,3B8,MAURITIUS ISLAND,-20,-57,3B9,RODRIGUEZ ISLAND,-9,-64
  270. 2570 DATA 3C,EQUATORIAL GUINEA,2,10,EA0,EQUATORIAL GUINEA,2,10,3D2,FIJI ISLANDS,-18,175
  271. 2580 DATA VR2,FIJI ISLANDS,-18,175,3D6,SWAZILAND,-26,-31,ZS7,SWAZILAND,-26,-31,ZD5,SWAZILAND,-26,-31
  272. 2590 DATA 3V8,TUNISIA,34,-9,3,REPUBLIC OF GUINEA,11,10,7G,REPUBLIC OF GUINEA,11,10
  273. 2600 DATA 3Y,BOUVET ISLAND,-54,5,LA/G,BOUVET ISLAND,-54,5,4S7,SRI LANKA,7,-81,3C0,ANNOGON ISLAND,-2,6
  274. 2610 DATA 4U,ITU NEW YORK,40.4,74,4U1,ITU GENEVA,46,-6,4W,N.YEMAN,15,-44,4,ISRAEL,31,-35,4Z,ISRAEL,31,-35
  275. 2620 DATA 5A,LIBYA,27,-17,5B4,CYPRUS,35,-33,ZC4,CYPRUS,35,-33,5H3,TANZANIA,-6,-35
  276. 2630 DATA VQ3,TANZANIA,-6,-35,5N2,NIGERIA,10,-8,ZD2,NIGERIA,10,-8,5R8,MADAGASCAR,-19,-46
  277. 2640 DATA FF8,MADAGASCAR,-19,-46,5T,MAURITANIA,20,12,5U7,NIGER,16,-8,5V,TOGO,8,-1
  278. 2650 DATA 5W1,W.SAMOA,-13.5,172,5X,UGANDA,1,-32,VQ5,UGANDA,1,-32,5Z4,KENYA,1,-38
  279. 2660 DATA VQ4,KENYA,1,-38,6O,SOMALI,10,-49,6W8,SENEGAL,14,14,6Y5,JAMAICA,18,77,VP5,JAMAICA,18,77
  280. 2670 DATA 7O,S.YEMAN,15,-48,VS9A,S.YEMAN,15,-48,7P8,LESOTHO,-29,-28,Z28,LESOTHO,-29,-28
  281. 2680 DATA 7Q,MALAWI,-13,-34,ZD6,MALAWI,-13,-34,7X,ALGERIA,28,-3,FA,ALGERIA,28,-3,8P,BARBADOS,13,59
  282. 2690 DATA VP6,BARBADOS,13,59,8Q,MALDIVE ISLANDS,3,-73,VS9M,MALDIVE ISLANDS,3,-73,8R,GUYANA,5,59
  283. 2700 DATA VP3,GUYANA,5,59,8Z4,SAUDI ARABIA & IRAQ NEUTRAL ZONE,30,-43,9G1,GHANA,8,2,ZD4,GHANA,8,2
  284. 2710 DATA IA0,MALTA,35.5,-14.4,VQ2,ZAMBIA,-15,-30,9J,ZAMBIA,-15,-30,9K2,KUWAIT,29,-47
  285. 2720 DATA 9L1,SIERRA LEONE,8,11,9M2,W.MALAYSIA,5,-102,9M4,W.MALAYSIA,5,-102,9M6,E.MALAYSIA,5,-117
  286. 2730 DATA 9M8,SARAWAK,4,-115,9N1,NEPAL,28,-84,9Q5,ZAIRE,-4,-25,OQ5,ZAIRE,-4,-25
  287. 2740 DATA 9U5,BURUNDI,-3,-30,9V,SINGAPORE,1,-100,9X,RWANDA,-2,-30,9Y4,TRINIDAD & TOBAGO,11,61
  288. 2750 DATA end,Q,0,0
  289. 2760 CLS:LOCATE 10,15:PRINT "RUN AGAIN?  <ENTER>= YES, <Q>=END PROGRAM"
  290. 2770 INPUT YN$:IF YN$= "" THEN GOTO 120 ELSE END
  291. 2780 REM                           MINIMUF
  292. 2790 CLS
  293. 2800 T5=0:K1=0:I=0
  294. 2810 TEST=0:TEST1=0
  295. 2820 KEY OFF
  296. 2830 FOR I= 1 TO 4
  297. 2840 PRINT
  298. 2850 NEXT I
  299. 2860 REM PROGRAM FROM DECEMBER, 1982 QST - PAGE 38
  300. 2870 M(1)=31:M(2)=28:M(3)=31:M(4)=30:M(5)=31:M(6)=30:M(7)=31:M(8)=31:M(9)=30:M(10)=31:M(11)=30:M(12)=31
  301. 2880 M$="JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
  302. 2890 DEF FNACS(X)=1.570796-ATN(X/SQR(1-X*X)) 'DEFINE ARC COSINE
  303. 2900 R0=PI/180
  304. 2910 P1=2*PI
  305. 2920 R1=180/PI
  306. 2930 P0=PI/2
  307. 2940 '-------- Change next two statements to your lat & lon -----------------
  308. 2950 PRINT
  309. 2960 REM L1 AND W1 ARE DALLAS TEXAS LAT AND LONG
  310. 2970 IF L1=>-90 AND L1<90 THEN 3000
  311. 2980 PRINT "INVALID LATITUDE. MUST BE IN RANGE -90 TO +90."
  312. 2990 GOTO 2960
  313. 3000 IF -360<=W1 AND W1<=360 THEN 3030
  314. 3010 PRINT "INVALID LONGITUDE. MUST BE IN RANGE -360 TO +360."
  315. 3020 GOTO 2960
  316. 3030 PRINT
  317. 3040 IF -90<=L2 AND L2<=90 THEN 3070
  318. 3050 PRINT "INVALID LATITUDE. MUST BE IN RANGE -90 TO +90."
  319. 3060 INPUT "New latitude ";L2
  320. 3070 IF -360<=W2 AND W2<=360 THEN 3100
  321. 3080 PRINT "INVALID LONGITUDE. MUST BE IN RANGE -360 TO +360"
  322. 3090 INPUT "New longitude ";W2
  323. 3100 IF D6<>0 THEN 3130
  324. 3110 PRINT "Date (Day,Month) ";
  325. 3120 INPUT D6,M0
  326. 3130 IF 1<=M0 AND M0<=12 THEN 3160
  327. 3140 PRINT "INVALID MONTH. MUST BE IN RANGE 1 TO 12."
  328. 3150 GOTO 3110
  329. 3160 IF 1<=D6 AND D6<=M(M0) THEN 3190
  330. 3170 PRINT "INVALID DAY. RE-INPUT. "
  331. 3180 GOTO 3110
  332. 3190 IF S9<>0 THEN 3220
  333. 3200 INPUT "Solar Flux per WWV ";S9:FLUX = S9
  334. 3210 S9 = -63.781 + (1.104 * S9) ' CONVERT SOLAR FLUX TO SUNSPOT NUMBER
  335. 3220 IF S9>0 THEN 3250
  336. 3230 PRINT "INVALID SOLAR FLUX NUMBER. MUST BE NON-NEGATIVE."
  337. 3240 GOTO 3200
  338. 3250 A$ = MID$(M$,3*M0-2,3)
  339. 3260 CLS
  340. 3270 PRINT SPC(28);"DATE ";D6;" ";A$
  341. 3280 PRINT "Transmitter Location:";SPC(23);"Receiver Location:"
  342. 3290 PRINT SP$;SPC(34);L$
  343. 3300 PRINT "Latitude ";INT(L1);" Longitude ";INT(W1);TAB(45);"Latitude ";INT((L2*100+.5)/100);" Longitude ";INT((W2*100+.5)/100)
  344. 3310 PRINT "Solar Flux Value: ";FLUX;TAB(45);
  345. 3320 PRINT "Sunspot Number: ";INT(S9+.5)
  346. 3330 PRINT"HOUR(GMT)      MUF(MHZ)";
  347. 3340 PRINT SPC(18);"   HOUR(GMT)     MUF(MHZ)"
  348. 3350 L1=L1*R0
  349. 3360 W1=W1*R0
  350. 3370 L2=L2*R0
  351. 3380 W2=W2*R0
  352. 3390 HOLDTLAT=L1:HOLDTLONG=W1 'HOLD VALUES FOR HEADING PROGRAM
  353. 3400 HOLDRLAT=L2:HOLDRLONG=W2 'HOLD VALUES FOR HEADING PROGRAM
  354. 3410 FOR T5= 0 TO 11
  355. 3420 GOSUB 3530
  356. 3430 PRINT "   ";:PRINT USING "##";T5;
  357. 3440 PRINT "            ";
  358. 3450 PRINT USING "##.#";J9;
  359. 3460 T5=T5+12
  360. 3470 GOSUB 3530
  361. 3480 PRINT SPC(27);:PRINT USING "##";T5;
  362. 3490 PRINT SPC(10);:PRINT USING "##.#";J9
  363. 3500 T5=T5-12
  364. 3510 NEXT T5
  365. 3520 GOTO 4470
  366. 3530 REM - MINIMUF 3.5
  367. 3540 K7=SIN(L1)*SIN(L2)+COS(L1)*COS(L2)*COS(W2-W1)
  368. 3550 IF K7=>-1 THEN 3580
  369. 3560 K7=-1
  370. 3570 GOTO 3600
  371. 3580 IF K7<=1 THEN 3600
  372. 3590 K7=1
  373. 3600 G1=FNACS(K7)
  374. 3610 K6=1.59*G1
  375. 3620 IF K6>=1 THEN 3640
  376. 3630 K6=1
  377. 3640 K5=1/K6
  378. 3650 J9=100
  379. 3660 FOR K1=1/(2*K6) TO 1-1/(2*K6) STEP .9999-1/K6
  380. 3670 IF K5=1 THEN 3690
  381. 3680 K5=.5
  382. 3690 P=SIN(L2)
  383. 3700 Q=COS(L2)
  384. 3710 AX=(SIN(L1)-P*COS(G1))/(Q*SIN(G1))
  385. 3720 B=G1*K1
  386. 3730 C=P*COS(B)+Q*SIN(B)*AX
  387. 3740 D=(COS(B)-C*P)/(Q*SQR(1-C^2))
  388. 3750 IF D=>-1 THEN 3780
  389. 3760 D=-1
  390. 3770 GOTO 3800
  391. 3780 IF D<=1 THEN 3800
  392. 3790 D=1
  393. 3800 D=FNACS(D)
  394. 3810 W0=W2+SGN(SIN(W1-W2))*D
  395. 3820 IF W0=>0 THEN 3840
  396. 3830 W0=W0+P1
  397. 3840 IF W0<P1 THEN 3860
  398. 3850 W0=W0-P1
  399. 3860 IF C=>-1 THEN 3890
  400. 3870 C=-1
  401. 3880 GOTO 3910
  402. 3890 IF C<=1 THEN 3910
  403. 3900 C=1
  404. 3910 L0=P0-FNACS(C)
  405. 3920 Y1=.0172*(10+(M0-1)*30.4+D6)
  406. 3930 Y2=.409*COS(Y1)
  407. 3940 K8=3.82*W0+12+.13*(SIN(Y1)+1.2*SIN(2*Y1))
  408. 3950 K8=K8-12*(1+SGN(K8-24))*SGN(ABS(K8-24))
  409. 3960 IF COS(L0+Y2)>-.26 THEN 4050
  410. 3970 K9=0
  411. 3980 G0=0
  412. 3990 M9=2.5*G1*K5
  413. 4000 IF M9<=P0 THEN 4020
  414. 4010 M9=P0
  415. 4020 M9=SIN(M9)
  416. 4030 M9=1+2.5*M9*SQR(M9)
  417. 4040 GOTO 4320
  418. 4050 K9=(-.26+SIN(Y2)*SIN(L0))/(COS(Y2)*COS(L0)+9.999999E-04)
  419. 4060 K9=12-ATN(K9/SQR(ABS(1-K9*K9)))*7.639437
  420. 4070 T=K8-K9/2+12*(1-SGN(K8-K9/2))*SGN(ABS(K8-K9/2))
  421. 4080 T4=K8+K9/2-12*(1+SGN(K8+K9/2-24))*SGN(ABS(K8+K9/2-24))
  422. 4090 C0=ABS(COS(L0+Y2))
  423. 4100 T9=9.7*C0^9.600001
  424. 4110 IF T9>.1 THEN 4130
  425. 4120 T9=.1
  426. 4130 M9=2.5*G1*K5
  427. 4140 IF M9<=P0 THEN 4160
  428. 4150 M9=P0
  429. 4160 M9=SIN(M9)
  430. 4170 M9=1+2.5*M9*SQR(M9)
  431. 4180 IF T4<T THEN 4210
  432. 4190 IF (T5-T)*(T4-T5)>0 THEN 4220
  433. 4200 GOTO 4370
  434. 4210 IF (T5-T4)*(T-T5)>0 THEN 4370
  435. 4220 T6=T5+12*(1+SGN(T-T5))*SGN(ABS(T-T5))
  436. 4230 G9=PI*(T6-T)/K9
  437. 4240 G8=PI*T9/K9
  438. 4250 U=(T-T6)/T9
  439. 4260 IF U < -88 THEN U = -88 'ADDED TO PREVENT OVERFLOW ON IBM PC
  440. 4270 IF U > 88 THEN U = 88 ' ADDED TO PREVENT OVERFLOW IN LINE 1730
  441. 4280 G0=C0*(SIN(G9)+G8*(EXP(U)-COS(G9)))/(1+G8*G8)
  442. 4290 G7=C0*(G8*(EXP(-K9/T9)+1))*EXP((K9-24)/2)/(1+G8*G8)
  443. 4300 IF G0=>G7 THEN 4320
  444. 4310 G0=G7
  445. 4320 G2=(1+S9/250)*M9*SQR(6+58*SQR(G0))
  446. 4330 G2=G2*(1-.1*EXP((K9-24)/3))
  447. 4340 G2=G2*(1+(1-SGN(L1)*SGN(L2))*.1)
  448. 4350 G2=G2*(1-.1*(1+SGN(ABS(SIN(L0))-COS(L0))))
  449. 4360 GOTO 4430
  450. 4370 T6=T5+12*(1+SGN(T4-T5))*SGN(ABS(T4-T5))
  451. 4380 G8=PI*T9/K9
  452. 4390 U=(T4-T6)/2
  453. 4400 U1=-K9/T9
  454. 4410 G0=C0*(G8*(EXP(U1)+1))*EXP(U)/(1+G8*G8)
  455. 4420 GOTO 4320
  456. 4430 IF G2>J9 THEN 4450
  457. 4440 J9=G2
  458. 4450 NEXT K1
  459. 4460 RETURN
  460. 4470 DEF FNM(X)=-ATN(X)+1.5708
  461. 4480 DEF FNZ(X)=X*57.29577951#
  462. 4490 DEF FNY(X)=1/X
  463. 4500 DEF FNW(X)=X/57.29577951#
  464. 4510 AX=HOLDTLAT
  465. 4520 A1=HOLDTLONG
  466. 4530 B=HOLDRLAT
  467. 4540 B1=HOLDRLONG
  468. 4550 L=A1-B1
  469. 4560 IF L>FNW(180) THEN 4580
  470. 4570 GOTO 4600
  471. 4580 L=L-FNW(360)
  472. 4590 GOTO 4630
  473. 4600 IF L <(-180) THEN 4620
  474. 4610 GOTO 4630
  475. 4620 L=L+FNW(360)
  476. 4630 REM ABOVE CONVERTS L TO WITHIN +-180 DEGREES
  477. 4640 T= COS(L)*1/(TAN(B)) 'TANGENT OF THETA IN RADIANS
  478. 4650 T1=1/TAN(L) 'COTANGENT OF L
  479. 4660 T2=1/T 'COTANGENT OF THETA
  480. 4670 T3= FNM(T2) 'CONVERT COTANGENT OF THETA TO RADIANS
  481. 4680 C1= (T1*COS(AX+T3))/SIN(T3) 'CALCULATE COTANGENT OF C
  482. 4690 C2= FNM(C1) 'C IN RADIANS
  483. 4700 C= FNZ(C2) 'C IN DEGREES
  484. 4710 C=INT(C+.5) 'ROUND TO NEAREST DEGREE
  485. 4720 IF TEST=O THEN PRINT "Transmitter Beam Heading In Degrees: ";ELSE 4750
  486. 4730 TEST=1
  487. 4740 GOTO 4760
  488. 4750 PRINT "Receiver Beam Heading In Degrees: ";:TEST1=1
  489. 4760 IF L>0 AND C>0 GOTO 4800
  490. 4770 IF L >0 AND C<0 GOTO 4820
  491. 4780 IF L <0 AND C>0 GOTO 4840
  492. 4790 IF L<0 AND C<0 GOTO 4860
  493. 4800 PRINT C
  494. 4810 GOTO 4870
  495. 4820 PRINT C+180
  496. 4830 GOTO 4870
  497. 4840 PRINT C+180
  498. 4850 GOTO 4870
  499. 4860 PRINT C+360
  500. 4870 IF TEST1=1 THEN 4910
  501. 4880 SWAP HOLDTLAT,HOLDRLAT
  502. 4890 SWAP HOLDTLONG,HOLDRLONG
  503. 4900 GOTO 4510
  504. 4910 PRINT "Statute Mile Distance: ";D1B
  505. 4920 PRINT "Kilometer Distance: ";D2B
  506. 4930 GOTO 4940
  507. 4940 INPUT "<CR> to continue - ";XYZ
  508. 4950 CLS:GOTO 670
  509. 4960 END
  510.