home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / misc / mapr86 / mapper.doc < prev    next >
Text File  |  1989-01-16  |  16KB  |  305 lines

  1.          MAPPER86/87 .. A DX MAP DRAWING and Propagation Program
  2.            for IBM PC Compatibles with graphics capability.
  3.                              Version 4.0
  4.  
  5.                                   by
  6.                            Dennis P. Murray
  7.                         11165 McDonald Street
  8.                         Culver City, Ca. 90230
  9.                          CompuServ 72770,2765
  10.                            16 January, 1989
  11.  
  12.      This program, written for BASIC compilers such as MICROSOFT QUICK
  13. BASIC or BORLAND TURBO BASIC, displays a map of the world centered on
  14. a user-selectable QTH, and does propagation predictions based upon a
  15. modified MINIMUF method. It shows the regions of sunlight and darkness
  16. around the world, and updates these regions automatically at user-
  17. specified time intervals. It can also accept arbitrary times and dates
  18. at the user option. The program accepts DXCC prefixes or
  19. latitude/longitude values for the DX location, draws the path from the
  20. home QTH to that location, and displays the range, azimuth and wave
  21. launch elevation angle from the home QTH. The user can select either
  22. short or long paths; the sunspot number; antenna height, gain, and
  23. polarization for both home QTH and DX station; transmit power; and the
  24. minimum wave launch angle to be used for propagation prediction. The
  25. propagation prediction gives the MUF (maximum usable frequency), LUF
  26. (lowest usable frequency) based upon E-layer screening, and the
  27. minimum number of F-layer hops for the  minimum launch angle.
  28. Predictions of signal strength are made for Ham Band frequencies which
  29. include D-layer absorption, reflection losses, and transmit and
  30. receive antenna losses due to ground plane reflection at low elevation
  31. angles.
  32.  
  33. This program is written for IBM PC compatible computers with a Graphics
  34. capability and color display. The program runs quite quickly on an AT clone
  35. with a hard disk and 640k of RAM, but it might be a 'dog' on a floppy-only
  36. machine because it must read some long files for the map data.
  37.  
  38. The program is being uploaded in two versions, named MAPPER86 and MAPPER87.
  39. MAPPER86 is compiled in QuickBasic 3.0 in order to use floating point
  40. computations under the Microsoft Binary Format which run much faster on
  41. machines without 80x87 math co-processors than do computations under the
  42. IEEE format supported by QBasic version 4.0 and later. This version
  43. supports graphics adapters supported under QB 3.0 ( CGA, EGA, and EGA with
  44. monochrome display). MAPPER87 is compiled under QBasic v 4.5 and supports
  45. all graphics adapters ( CGA, EGA, EGA/Monochrome,MCGA,VGA, and HERCULES).
  46. It will run on machines with or without a Math Coprocessor, but it is very
  47. slow without one because of the lousy software emulation of the 80x87
  48. routines which Microsoft has provided. It would be nice if Microsoft would
  49. provide an option on which kind of math routines it uses in future versions
  50. of Quick Basic ( or speeded up the IEEE format software a lot ), but I
  51. wouldn't hold my breath.
  52.  
  53. If you want to use the Hercules mode you must first load the Microsoft
  54. Hercules driver MSHERC.COM which I have included in the MAPPER87 package
  55. courtesy of Microsoft.
  56.  
  57. The author does not intend to support this software, but is simply
  58. releasing it into the public domain for non-commercial use by HAMS who know
  59. what they are doing with their computer. The BASIC source code is included
  60. for that reason.
  61.  
  62. The author encourages the distribution of this program to anyone who might
  63. find it useful, or onto bulletin boards which deal with HAM radio or
  64. shortwave listening. Please make sure to include ALL the required files in
  65. any uploading however. These files are:
  66.  
  67.  
  68.           1- MAPPER86/87.BAS  The Program Source Code
  69.  
  70.           2- MAPPER86/87.EXE  the Q-BASIC v3.0 or v4.5 executable code
  71.  
  72.           3- MAPPER.ATL       An Atlas of DXCC countries and their
  73.                               latitudes, longitudes, and DX prefix.
  74.                               This is an ASCII file ,sorted by prefix,
  75.                               which can be added onto by the user with
  76.                               a word processor or text editor.
  77.  
  78.           4- MAPPER.DEF       A short file used to store some default
  79.                               values used by the program.
  80.  
  81.           5- MAPPER1/2.SCR    Large files which are used to store and
  82.                               retrieve the screen data for a world map
  83.                               centered on the user's location. This
  84.                               file is rewritten whenever the user
  85.                               changes the 'Home' location. ( It is
  86.                               interesting to view the world as seen
  87.                               from DX locations.) This data is read
  88.                               into a large array in memory to permit
  89.                               rapid redrawing of the map as the sun
  90.                               moves. The file is written into the
  91.                               integer array NSTORE by BLOAD and BSAVE
  92.                               commands. Because the program uses a lot
  93.                               of memory to speed things up, this array
  94.                               is DYNAMIC and does not generally reside
  95.                               in the normal BASIC data segment.
  96.  
  97.           6- MAPPER.DOC       This instruction file.
  98.  
  99.           7- WORLDMAP.DAT     A large ASCII file containing the
  100.                               lat/lon of the world's borders. This is
  101.                               used to recompute the map whenever the
  102.                               map center point is redefined.
  103.  
  104.  
  105.  
  106. INSTRUCTIONS:
  107.  
  108.  
  109. To run this program simply enter 'MAPPER86' or 'MAPPER87'. After an initial
  110. message explaining the program is displayed, and you press any key to
  111. proceed, you will be presented with a 8-choice initial menu which allows
  112. you to change the default values of:
  113.  
  114.         1- Sunspot number
  115.         2- Home QTH latitude and longitude
  116.         3- The time interval at which the daylight/darkness areas are
  117.             redrawn.
  118.         4- Transmitter power output.
  119.         5- Minimum elevation angle for propagation predictions.
  120.         6- Graphics Mode
  121.         7- Home antenna height, gain, and polarization.
  122.         8- DX station antenna height, gain, and polarization.
  123.  
  124.   Pressing the appropriate number key will put up prompts to allow
  125. changes to these variables, and will return you to this menu after a
  126. change is entered. Pressing <ENTER> at the menu prompt will store
  127. these new values in the MAPPER.DEF file and proceed on to the map
  128. drawing.
  129.  
  130.      The map drawing will first put up a blank box, then calculate the
  131. position of the sun at the time and date currently held by the DOS,
  132. draw the solar terminator ( it looks like a satellite ground trace ),
  133. and color the sun-lit portions of the world in red. It will then go on
  134. to draw the country boundaries, color the oceans blue, and color the
  135. USA green. The land areas which are in darkness will show up in black.
  136. The program may miss coloring part of the oceans blue because of the
  137. position of the solar terminator blocking the PAINT commands used in
  138. the subroutine at line 8000 ... . I got tired of adding ocean points
  139. to this routine to cover all the contingencies.
  140.  
  141.      After the map is drawn a Menu bar will appear on the bottom line of
  142. the screen, with 9 choices selected by the function keys:
  143.  
  144.            f1-   Select DX Prefix.
  145.                 You will be prompted to enter a DX prefix ( eg. ZS for
  146.                 S. Africa ). The program will then search the DX atlas
  147.                 for an occurrence of this prefix. It will display all
  148.                 of the entries ( ie ZS1,ZS2,... ) that contain this
  149.                 string and ask you to select one. If the number of
  150.                 candidate entries is large you can simply <ENTER> to
  151.                 continue the search.
  152.  
  153.                 When a selection is made the program will fetch
  154.                 the location of the prefix, make a propagation
  155.                 prediction for the currently selected date and time,
  156.                 draw the path from your QTH to that location, and
  157.                 display sundry useful information at the top of the
  158.                 screen. On the left of the screen the signal strength
  159.                 predictions will be shown for all Ham bands for which
  160.                 the frequency is more than 80% of the lowest usable
  161.                 frequency (LUF), less than 120% of the maximum usable
  162.                 frequency (MUF), and whose predicted signal strength
  163.                 is higher than -20dB relative to 0.5 microvolts into a
  164.                 50 ohm receiver input.
  165.  
  166.                 For each band which meets these criteria I display the
  167.                 frequency, the absorption losses (Labs), the ground
  168.                 reflection losses (Lref), the transmit and receive
  169.                 antenna losses due to ground reflection ( Ltx, Lrx ),
  170.                 and signal strength ( Prcv ). The losses are given in
  171.                 dB. The signal strength is given in dB relative to 0.5
  172.                 microvolts into 50 ohms. This is about an S-1 signal
  173.                 level for most Ham receivers, and S-9 usually
  174.                 corresponds to 50 microvolts at the antenna terminals.
  175.                 Thus a signal strength of 40 dB would correspond to a
  176.                 S-9 prediction.
  177.  
  178.                 The user should be cautioned that the signal strength
  179.                 predictions are very uncertain. I only calculate paths
  180.                 via the F2 layer, and there a great number of other
  181.                 propagation modes possible which may be better or
  182.                 worse than the pure F2 mode. Don't blame the author if
  183.                 this program says that you can't possibly work
  184.                 Australia when you are hearing VK's with S-9 signals.
  185.                 These are only crude indications of the likelihood of
  186.                 a path being open.
  187.  
  188.            f2-Specify Country Name.
  189.                 Same as option 1 except that you are prompted for the
  190.                 name of a country ( or a subset of that name such as
  191.                 'AUS', which will find both Austria and Australia ).
  192.                 The search process is insensitive to the case of your
  193.                 entry.
  194.  
  195.            f3-Specify Lat/Lon.
  196.                 Same as the above option except you will be prompted
  197.                 to enter the latitude and longitude of the desired DX
  198.                 location.
  199.  
  200.  
  201.            f4-Select Date/Time.
  202.                 Prompts for a new date and time to be used to
  203.                 calculate solar terminator and make propagation
  204.                 predictions. <ENTER> responses to either of these
  205.                 prompts will fetch the current DOS value of date or
  206.                 time. This option will also turn off the automatic
  207.                 updating of the terminator and map redraw.
  208.  
  209.            f5-Use Real Time.
  210.                 This option will reset the above option to the real
  211.                 (DOS) date and time and enable the auto update
  212.                 feature.
  213.  
  214.            f6-Select Short Path.
  215.                 This toggles the path from the long path option back
  216.                 to short path.
  217.  
  218.            f7-Select Long Path.
  219.                 This option toggles long path calculations.
  220.  
  221.            f8-Change Parameters.
  222.                 This returns you to the 7 choice initial menu to
  223.                 change the various default parameters such as sunspot
  224.                 number, antenna heights, power, etc.
  225.  
  226.            f9-Quit.
  227.                 Exits the program and returns you to DOS.
  228.  
  229.  
  230.      The program is entirely menu-driven so you don't have to remember
  231. any special commands to use it.
  232.  
  233.      Good luck!!
  234.  
  235.  
  236. Some Technical Information:
  237.  
  238.      The propagation is based upon the MINIMUF method, but with some
  239. modifications of the author.
  240.  
  241.  
  242.     1-Rather than use the standard MINIMUF method of only looking at
  243.       the first and last ionospheric bounce points ( the two control
  244.       point method ), I calculate the propagation at every hop and
  245.       select the worst-case condition out of all of them. This results
  246.       in generally much more pessimistic MUF and LUF estimates than
  247.       MINIMUF.
  248.  
  249.    2- I have included the E-layer screening frequency and lowest-
  250.       usable frequency ( LUF ) estimation technique given in chapter 4
  251.       of 'Amateur Radio Software ', by John Morris GM4ANB , RSGB
  252.       Books, Lambda House, Cranborne Road, Potters Bar, Hertfordshire
  253.       EN6 3JW. The subroutine starting at line 45000 contains this
  254.       calculation.
  255.  
  256.     3-I have used what apparently is the HAM convention for longitudes
  257.       being positive-West for the input and output in this program, in
  258.       the MIMIMUF subroutine, and in the DX Atlas file MAPPER.ATL.
  259.       However, in the internals of the program I immediately reverse
  260.       the sign of the longitude. Being an engineer by training I think
  261.       in terms of right-handed coordinate systems! Therefore those who
  262.       want to modify the program should be wary of the sign of the
  263.       longitude being used.
  264.  
  265.     4-Note that I have changed the names of the variables in the
  266.       MINIMUF subroutine from the standard values to names which are
  267.       descriptive of what the variable actually is.
  268.  
  269.     5-I have augmented the propagation predictions with a signal
  270.       strength prediction. For each ionospheric control (bounce) point
  271.       an estimate of the D-layer absorption is made according to the
  272.       method in chapter 5 of Davies, "Ionospheric Radio Propagation",
  273.       NBS monograph 80, 1965. The total D-region absorption is summed
  274.       up for all control points. The subroutine at line 46000 contains
  275.       this calculation.
  276.  
  277.     6-In addition, a calculation of the loss due to ground reflection
  278.       is made for each ground reflection point along the path. At each
  279.       of these points the map on the screen is checked to see if that
  280.       point is colored blue. If so, it is assumed that the bounce
  281.       point is at sea, and the reflection coefficient for sea water is
  282.       calculated ( dielectric constant of 80, conductivity of 4 mho/m
  283.       ). If the reflection point is over land then a dielectric
  284.       constant of 4 and conductivity of 0.01 mho/m are used. The
  285.       Fresnel reflection coefficients for both horizontal an vertical
  286.       polarization are power-averaged to account for the random
  287.       polarization of the wave due to Faraday rotation at HF
  288.       frequencies. I have also modified the reflection coefficients to
  289.       account for surface roughness. A RMS surface roughness of 4m is
  290.       used on the sea, and 15m for land points. The subroutine at line
  291.       35000 makes the reflection calculations.
  292.  
  293.     7-To account for the fact that most Hams have fairly low antenna
  294.       heights, thus suffer large losses at low elevation angles, I
  295.       explicitly calculate the multipath cancellation losses for each
  296.       antenna in the subroutine at line 36000. This is the standard
  297.       Fresnel reflection calculation without surface roughness
  298.       included. Most urban locations will be worse than this
  299.       calculation suggests because buildings in the foreground will
  300.       actually shadow the low angle line-of-sight and modify the
  301.       reflection area. If you know you have poor line-of-sight you
  302.       should modify the minimum launch angle setting at the initial
  303.       menu appropriately.
  304.  
  305.