home *** CD-ROM | disk | FTP | other *** search
/ World of Ham Radio 1997 / WOHR97_AmSoft_(1997-02-01).iso / basic / satfind2.bas < prev    next >
BASIC Source File  |  1997-02-01  |  5KB  |  113 lines

  1. 10 REM   Program to locate television satellites for a given latitude
  2. 20 REM           and longitude.  This program is useful for TVRO owners.
  3. 30 REM   Additional satellites can be placed in the data table.
  4. 40 REM
  5. 50 REM        P.G. Wohlmut   Copyright 1983    July 8, 1983
  6. 55 REM                        Updated  1985    July 9, 1985
  7. 60 REM
  8. 70 KEY OFF:WIDTH 40
  9. 100 PI=3.141592654#
  10. 110 DIM SAT$(50),ANGLE(50),CITY$(500),LAT(500,3),LONG(500,3)
  11. 120 FOR I= 1 TO 50:READ SAT$(I):IF SAT$(I)="end" THEN 181
  12. 130 READ ANGLE(I):NEXT I
  13. 140 DATA Aurora,143,Satcom F1R,139,Galaxy 1,134,Satcom F3,131,Comstar D4,127
  14. 150 DATA Westar 5,122.5,Spacenet 1,120,Anik A3,114,Anik B,109,Anik D1,104.5
  15. 160 DATA Westar 4,99,Telstar 301,96,Galaxy 3,93.5,Westar 3,91
  16. 170 DATA Comstar D3,87,Satcom F4,83,Westar 1/2,79
  17. 180 DATA end
  18. 181 TOPS=I-1
  19. 185 FOR I= 1 TO 500:READ CITY$(I):IF CITY$(I)="end" THEN 187 ELSE FOR J=1 TO 3:READ LAT(I,J):NEXT J:FOR J=1 TO 3:READ LONG(I,J)
  20. 186 NEXT J:NEXT I
  21. 187 CIT=I-1
  22. 190 RESTORE
  23. 210 CLS:FOR I= 1 TO CIT STEP 20:FOR J= 1 TO 20:K=I+J-1:IF CITY$(K)="end" THEN 212 ELSE PRINT USING "###: \                               \";J,CITY$(K):NEXT J
  24. 212 LOCATE 24,10:INPUT "Which city # (#,m=more) ";Z$
  25. 213 IF Z$="m" OR Z$="M" THEN CLS:GOTO 218 ELSE Z=VAL(Z$):IF Z<1 OR Z>20 THEN 218
  26. 214 Z=Z+I-1:DT=LAT(Z,1):MT=LAT(Z,2):ST=LAT(Z,3):DG=LONG(Z,1):MG=LONG(Z,2):SG=LONG(Z,3):CIT$=CITY$(Z):GOTO 240
  27. 218 NEXT I:LOCATE 24,1:PRINT "No more cities :";
  28. 220 INPUT"Your Latitude (dd,mm,ss) ";DT,MT,ST
  29. 230 INPUT"Your Longitude (dd,mm,ss) ";DG,MG,SG
  30. 240 SITELONG=DG+MG/60+SG/3600:SITELAT=DT+MT/60+ST/3600
  31. 250 SITELONG = SITELONG*PI/180:SITELAT=SITELAT*PI/180
  32. 270 CLS:PRINT ":  SATELLITE  : ELEVATION :  AZIMUTH  :"
  33. 280     PRINT ":             :  DD'MM'SS :  DD'MM'SS :"
  34. 290     PRINT "======================================="
  35. 300 FOR NUM=1 TO TOPS
  36. 310 SATLONG=ANGLE(NUM)*PI/180:GOSUB 420
  37. 320 ELD=INT(EL):ELM1=EL-ELD:ELM=INT(ELM1*60):ELS=CINT(ELM1*3600-ELM*60)
  38. 330 AZD=INT(AZ):AZM1=AZ-AZD:AZM=INT(AZM1*60):AZS=CINT(AZM1*3600-AZM*60)
  39. 340 PRINT USING ":\           \: ###'##'## : ###'##'## :";SAT$(NUM),ELD,ELM,ELS,AZD,AZM,AZS
  40. 350 NEXT NUM
  41. 360     PRINT "======================================="
  42. 365 LOCATE 23,1:PRINT CIT$;
  43. 370 LOCATE 24,1:PRINT USING "Latitude  ##'##'##";DT,MT,ST;
  44. 380 LOCATE 24,21:PRINT USING "Longitude ###'##'##";DG,MG,SG;
  45. 390 LOCATE 25,10:PRINT "Another location? ";
  46. 400 Z$=INKEY$:IF Z$="" THEN 400 ELSE IF Z$="Y" OR Z$="y" THEN PRINT Z$;:GOTO 210
  47. 410 END
  48. 420 ' calculate azimuth & elevation of satellite at site.
  49. 430 EL = ATN((COS(SATLONG-SITELONG)*COS(SITELAT)-.15126)/SQR(1-(COS(SATLONG-SITELONG)*COS(SITELAT))^2))*180/PI
  50. 440 AZ=180+ATN(TAN(SATLONG-SITELONG)/SIN(SITELAT))*180/PI
  51. 450 RETURN
  52. 1000 DATA Albuquerque,35,0,0,106,40,0
  53. 1100 DATA Anchorage,61,10,0,150,0,0
  54. 1200 DATA Atlanta,33,30,0,84,20,0
  55. 1300 DATA Bakersfield,35,30,0,120,10,0
  56. 1400 DATA Baltimore,39,15,0,76,40,0
  57. 1500 DATA Bangor,44,45,0,68,45,0
  58. 1600 DATA Birmingham,33,30,0,86,45,0
  59. 1700 DATA Bismarck,46,45,0,100,45,0
  60. 1800 DATA Boston,42,20,0,71,5,0
  61. 1900 DATA Buffallo,43,0,0,78,50,0
  62. 2000 DATA Butte,46,0,0,112,30,0
  63. 2100 DATA Charleston,38,20,0,81,35,0
  64. 2200 DATA Chicago,41,10,0,87,40,0
  65. 2300 DATA Cleveland,41,20,0,81,40,0
  66. 2400 DATA Dallas,33,0,0,97,0,0
  67. 2500 DATA Denver,39,45,0,105,0,0
  68. 2600 DATA Des Moines,41,30,0,93,40,0
  69. 2700 DATA Detroit,42,30,0,83,0,0
  70. 2750 DATA Earth Station WD-72,39,53,57,86,12,04
  71. 2800 DATA Elko,40,50,0,115,40,0
  72. 2900 DATA Eureka,40,45,0,124,10,0
  73. 2950 DATA Fairbanks,64,38,50,148,0,0
  74. 3000 DATA Flagstaff,35,25,0,111,30,0
  75. 3100 DATA Fresno,36,55,0,119,45,0
  76. 3200 DATA Hartford,41,45,0,72,40,0
  77. 3300 DATA Honolulu,21,20,0,157,50,0
  78. 3400 DATA Houston,29,50,0,95,10,0
  79. 3500 DATA Indianapolis,39,45,0,86,10,0
  80. 3600 DATA Jackson,32,15,0,90,10,0
  81. 3700 DATA Jacksonville,30,15,0,81,40,0
  82. 3800 DATA Kansas City,39,0,0,94,30,0
  83. 3900 DATA Las Vegas,36,10,0,115,10,0
  84. 4000 DATA Little Rock,34,45,0,92,15,0
  85. 4100 DATA Los Angeles,34,0,0,118,15,0
  86. 4200 DATA Louisville,38,10,0,85,45,0
  87. 4300 DATA Miami,25,45,0,80,15,0
  88. 4400 DATA Milwaukee,43,0,0,88,0,0
  89. 4500 DATA Minneapolis,45,0,0,93,15,0
  90. 4600 DATA Nashville,36,15,0,86,45,0
  91. 4700 DATA New Orleans,30,0,0,90,0,0
  92. 4800 DATA New York,40,45,0,74,0,0
  93. 4900 DATA Omaha,41,15,0,96,0,0
  94. 5000 DATA Orlando,28,35,0,81,30,0
  95. 5100 DATA Philadelphia,40,0,0,75,0,0
  96. 5200 DATA Phoenix,33,30,0,112,5,0
  97. 5300 DATA Portland,45,30,0,122,35,0
  98. 5400 DATA Providence,41,45,0,71,15,0
  99. 5500 DATA Reno,39,30,0,119,45,0
  100. 5600 DATA Sacramento,38,40,0,121,30,0
  101. 5700 DATA Saint Louis,38,40,0,90,10,0
  102. 5800 DATA Salt Lake City,40,50,0,112,0,0
  103. 5900 DATA San Diego,33,0,0,117,10,0
  104. 6000 DATA Seattle,47,30,0,122,15,0
  105. 6100 DATA San Francisco,37,40,0,122,30,0
  106. 6200 DATA San Jose,37,15,0,121,50,0
  107. 6300 DATA Tampa,28,0,0,82,30,0
  108. 6400 DATA Tucson,32,10,0,111,35,0
  109. 6500 DATA Tulsa,36,10,0,96,0,0
  110. 6600 DATA Washington DC,38,55,0,77,5,0
  111. 6700 DATA Winston Salem,36,10,0,80,15,0
  112. 6800 DATA end
  113.