home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / misc / hammisc1 / satfind2.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-07-11  |  4.2 KB  |  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.14159
  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)-0.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.