home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Interactive Guide / c-cplusplus-interactive-guide.iso / c_ref / csource1 / ast40dos / history.txt < prev    next >
Encoding:
Text File  |  1994-01-17  |  257.6 KB  |  4,340 lines

  1.  This is a comprehensive History list of the fourteen versions of
  2.  Astrolog that have been released to the net over the past two years
  3.  and four months. This file is mainly for those who have the most
  4.  recent version (4.00) but yet aren't familiar with the earlier
  5.  versions in which many of the other features not just new to 4.00
  6.  were described and documented. Below is a listing of all versions of
  7.  Astrolog that have been posted, after which for each version, is
  8.  listed the description of the new features and changes added to that
  9.  version. Taken together, all the update descriptions add up to a
  10.  comprehensive list of Astrolog's features and command switches.
  11.  
  12.                                              YFeatures added to version:■
  13.  1) v1.00 posted Wed, 11 Sep 91 00:00:38 GMT (Initial planet calculations)
  14.  2) v1.10 posted Sat, 14 Sep 91 00:02:16 GMT (Aspects; different house systems)
  15.  3) v1.20 posted Fri, 20 Sep 91 23:56:55 GMT (File input; wheels; relationships)
  16.  4) v1.30 posted Wed,  9 Oct 91 03:17:04 GMT (Transits; searches; astro-graphy)
  17.  5) v1.40 posted Tue, 12 Nov 91 01:18:13 GMT (Restrictions; other conveniences)
  18.  6) v2.00 posted Wed, 11 Dec 91 07:11:25 GMT (X charts; split files)
  19.  7) v2.10 posted Tue, 18 Feb 92 07:59:03 GMT (Color; more X charts; local space;
  20.                                               more progression and file support)
  21.  8) v2.20 posted Wed,  3 Jun 92 00:25:40 GMT (Stars; space charts; influences,
  22.                                               astrolog.dat; more relationships)
  23.  9) v2.25 posted Thu, 18 Jun 92 18:54:43 GMT (Bug fixes over v2.20)
  24.  10)v2.30 posted Fri, 12 Sep 92 01:20:42 GMT (Interpretations; comments, etc.)
  25.  11)v2.40 posted Wed, 20 Jan 93 03:23:16 GMT (Ansi text color; midpoint lists)
  26.  12)v3.00 posted Sun, 21 Mar 93 12:22:27 GMT (PC Graphics, more interpretations)
  27.  13)v3.05 posted Thu, 20 May 93 23:40:00 GMT (Bug fixes over v3.00)
  28.  14)v3.10 posted Sun, 26 Sep 93 08:29:58 GMT (Transit influences, efficiency.)
  29.  
  30.  All of the above versions of Astrolog except v2.25 were posted in
  31.  direct source file form to the newsgroup alt.astrology. Versions 2.10,
  32.  2.25, and 3.05 were submitted in shell archive format to comp.sources.misc.
  33.  In addition, version 1.30 was also posted to talk.religion.newage.
  34.  
  35.  ************************************************
  36.  Astrolog 1.00 posted Wed, 11 Sep 91 00:00:38 GMT
  37.  ************************************************
  38.  
  39.  There seems to have been zillions of requests for unix system programs
  40.  which can calculate planetary positions, or a birthchart in general.
  41.  I had been looking all over the place for one for a long while without
  42.  success, until someone posted the fact that Matrix software produces a
  43.  book called 'Manual of Computer Programming for Astrologers' which
  44.  contains all kinds of useful formulas. Anyway, since there doesn't
  45.  seem to be an astrology program in existance anywhere, I decided to
  46.  make one myself and got the book and converted the routines to C and
  47.  made a chart casting program around them. At last here is a program
  48.  which can do your chart for you! Cut out the portion of this article
  49.  between the "cut here"'s, and compile the program with "cc -O
  50.  astrolog.c -lm". Execute it simply by entering "astrolog" (assuming
  51.  that's the name of the executable), and the program will ask you for
  52.  all the birth info and will give the planet/house positions. (e.g.
  53.  for here in Seattle right now for the seven prompts I would enter: 9;
  54.  10; 1991; 16.05 Yfor 5:05pm, with daylight time in effect■; 122.20;
  55.  47.36) The program calculates the positions of all planets, chiron,
  56.  the four main asteroids, as well as stuff like the part of fortune and
  57.  vertex. There are option switches (do astrolog -H to see them) which
  58.  allow siderial and heliocentric based charts to be done as well. Enjoy
  59.  the program, but remember the copyright message. Yes, I know the code
  60.  is currently very messy, but I wanted to get this posted as fast as
  61.  possible so we can start calculating stuff right away. I'm currently
  62.  adding other features, like aspects, other house systems besides
  63.  placidus, an option to generate the chart for this exact moment, etc,
  64.  to the program, so expect future enhancements. There's also another
  65.  program I have at home which generates nice graphic wheel charts (for
  66.  a different computer system) given the birth data (makes nice X11
  67.  bitmaps) which I hope to be able to convert soon also. Anyway:
  68.  
  69.  ************************************************
  70.  Astrolog 1.10 posted Sat, 14 Sep 91 00:02:16 GMT
  71.  ************************************************
  72.  
  73.  Several changes and fixes have been made to the astrolog.c birthchart
  74.  calculator since the first posting four days ago:
  75.  
  76.  Some problems that people had with compiling it have been corrected:
  77.    * The value PI is now explicitly defined, instead of depending on the math
  78.      library which may or may not have defined it already.
  79.    * All line lengths are less than 80 characters, to help prevent line
  80.      splitting or cutting from those whose news servers puke on too long lines.
  81.  
  82.  The minor bug in which the moon's north node was *not* displayed as being
  83.  retrograde has been fixed, as well as a rare display alignment glitch.
  84.  
  85.  New features have been added to the program (which may be combined):
  86.    * Aspects and midpoint display is now supported: Invoke as astrolog -g and
  87.      a 20x20 grid showing the midpoint locations for each planet, and showing
  88.      if any aspects are present and how accurate they are, is displayed.
  89.    * A couple of different house systems are now supported: Invoke as
  90.      astrolog -c <number> to change the system from the default Placidus.
  91.      (See astrolog -H for help on what each number refers to.)
  92.    * Additional information is displayed when the chart is cast:
  93.      (1) Whether or not each planet is in it's ruling sign, or fall, as well
  94.          as displaying the same information for ruling or debilitating houses.
  95.      (2) The sum of the signs in each element and mode and their totals is
  96.          displayed in a grid form.
  97.    * For those with unix systems who can handle the time calls (If your
  98.      system pukes on trying to compile this, simply comment out the
  99.      #define TIME line at the beginning), the program now supports displaying
  100.      the chart for the time at the current moment! In other words, invoke as
  101.      astrolog -n and see where the planets are right now. (This is fun - the
  102.      house cusps change 1' about every 4 seconds!) You will need to
  103.      change the #defines for the default longitude and latitude in the code
  104.      though, or else specify where you are explicitly by using the -l switch
  105.      to change the default location.
  106.    * Although minor, some more helpful info is displayed when entering the
  107.      chart data, as well as a header for the columns when the chart info is
  108.      displayed.
  109.  
  110.  Again future enhancements will include: supporting yet more house
  111.  systems, and allowing the chart to be displayed in a wheel format on
  112.  the text screen (not too difficult) or graphically in an X11 window or
  113.  bitmap (will take a lot longer to do, although I've done one already
  114.  for a different system), allowing saving charts to files and comparing
  115.  them with each other or the current status (transits), allowing
  116.  progressions to be specified, and maybe a few other things.
  117.  
  118.  I probably could have done this as a patch, but I don't know how to
  119.  pack or even unpack patch files, so I guess that's out of the
  120.  question. After a few more versions, I might get this in
  121.  comp.sources.whatever, but for now I'm just posting it here because
  122.  the program is still relatively new. Anyway, sorry if this is a long
  123.  article, but anyway, here is the updated version of astrolog.c (can be
  124.  compiled, extracted, as before):
  125.  
  126.  ************************************************
  127.  Astrolog 1.20 posted Fri, 20 Sep 91 23:56:55 GMT
  128.  ************************************************
  129.  
  130.  Ok, astrology lovers, here is the new and improved version 1.2 (Third
  131.  posting) of the Astrolog birthchart calculator, complete with all
  132.  kinds of new features, like allowing computation of transits,
  133.  progressions, relationships between charts, printing of house wheel
  134.  charts, etc:
  135.  
  136.  First a list of bug fixes over version 1.1:
  137.   1) The glaring bug in which, if you said you wanted the Campanus system of
  138.      houses, you would in fact always get Placidus, is fixed.
  139.   2) The program processed dates during the Gregorian calendar incorrectly, and
  140.      this has been fixed.
  141.   3) The default longitude and latitude were truncated to integers, causing
  142.      loss of a few minutes accuracy in the house cusps when using the -n
  143.      option, which has been fixed.
  144.   4) The program now no longer core dumps if you include too few parameters with
  145.      the command switches.
  146.   5) YI thought I corrected this for the previous version, but there was one
  147.      place where I forgot it■ The variable M_PI has been replaced with explicit
  148.      definitions of pi for those compilers that don't understand what M_PI is.
  149.   6) The type 'time_t' has been replaced with just an int, since that all it is
  150.      anyway, and since some compilers don't know the type 'time_t'.
  151.  
  152.  Several people have told me that the north node always seem to be off by about
  153.  half a degree. I've been looking into this but haven't found the problem yet.
  154.  (I've tried using the 'true' north node, the 'mean' north node, etc.) (Wait for
  155.  next version.)
  156.  
  157.  Now a list of all the new neat features Astrolog now provides:
  158.  (Remember, do 'astrolog -H' to see a brief list of the command switches.)
  159.  
  160.   * Seven new aspects have been included, for those who like obscure aspects!
  161.     (Thanks to Mark Martin for giving me the list of their angles and orbs.)
  162.   * The '-A' command switch gives a list of all the aspects, their abbreviations
  163.     as used in the aspect grids, their angles, and their orbs.
  164.   * For those who don't like all these aspects, specifying -A <number> will
  165.     limit the number of aspects (e.g. -A 5 will make charts with only the five
  166.     major aspects listed in them).
  167.   * The aspect orbs have been narrowed for certain bodies like the north node
  168.     for which they are expected to be more narrow.
  169.   * There's been a very minor change to the aspect grids, which will indicate
  170.     whether an aspect is slightly short of exact or slight long of exact.
  171.     If the difference is displayed as "3.5" it means the aspect is 3.5 degrees
  172.     long of exact; if it's displayed as "3,5", the aspect is 3.5 degrees short.
  173.     (i.e. with a comma instead of a period; Yeah, I know that's a hack, but it's
  174.     useful in determining whether the exact aspect just happened or is about to
  175.     happen. (Note that conjuncts are always '.', and oppositions always ','.)
  176.   * Five new house systems have been included which can be specified using the
  177.     -c switch. Astrolog now supports 9 different systems total.
  178.   * The program now supports directing output to, and reading output from,
  179.     data files. The '-o' option will dump all the birth data (the date and
  180.     stuff, not the planet positions) to the specified file. The '-i' option will
  181.     cast the chart based on the info in the file. (This allows you to put your
  182.     birth data into a specific file, and cast your chart whenever you want to
  183.     after that without having to reenter your birth data all the time.)
  184.   * Display of the chart in a nice wheel format is now supported using the '-w'
  185.     switch. (Special error case: If one of the houses gets too 'full' of
  186.     planets, the planet will be put at the beginning of the next house.)
  187.   * There are now three different formats of chart display available: The
  188.     standard listing of planet positions, which you get without any switches;
  189.     the aspect/midpoint grid you get with '-g', and the house wheel you get with
  190.     '-w'. The -e "everything" option will display the chart in all three of
  191.     these formats (Of course the screen will scroll because of all the output).
  192.   * Harmonic charts (i.e. where all the planet positions are multiplied by a
  193.     factor and the chart recast) are now supported via the '-x' option. (e.g.
  194.     -x 3 will make all trines conjunct in the chart displayed.)
  195.   * A secondary progression chart for a particular date can be cast using the
  196.     '-p <month> <date> <year>' command switch. (Note, I'm not sure if the house
  197.     cusps are progressed correctly, but they're reasonably close to what is
  198.     properly expected.)
  199.   * Computing the relationship between two charts is now supported. Invoke the
  200.     program as 'astrolog -r <file_of_person1> <file_of_person2>' and the program
  201.     will give you the relationship between the two charts. Normally, and with
  202.     the -w switch, the program will display person2's planets in person1's
  203.     houses (synastry). With the -g switch, a full grid listing the aspects
  204.     between all the planets of the two charts (with person1's planets on the
  205.     vertical axis and person2's on the horizontal) is displayed (minus the
  206.     vertex, because the screen is too narrow to include it unfortunately.)
  207.     Note that transits can be computed with this by comparing your chart with
  208.     the positions of the planets at the current moment (-n switch). To make
  209.     this easier, you may specify the filename "now" for any file and the
  210.     computer will use the current planet positions instead of looking for a like
  211.     named file. (e.g. 'astrolog -r me now' will compute transits for file 'me'.)
  212.   * The command switch '-t <file>' can be used as a shortcut way to compute
  213.     the current transits for the chart in <file>. (Saves you from having to
  214.     mention the 'now' in the '-r' option.)
  215.  
  216.  Anyway, some new features that we might find in the *next* version
  217.  are: Adding the calculation of aspects occurring within a day and at
  218.  what times they are exact (like in Jim Maynard's Celestial Guides),
  219.  and some Astro-graph routines (i.e. like Jim Lewis' astro*carto*graphy
  220.  charts which list where in the world the planets were angular at the
  221.  time of birth.), as well as finally cleaning up the messy code. I hope
  222.  to make some more clear documentation on how to use the program
  223.  (remember, most command switches can be combined!) I've got many of
  224.  the major features one might want in an astrology program down now,
  225.  but there's still room for expansion: There's still the X windows
  226.  chart bitmaps (Andy Gray has shown me a nice Postscript program to
  227.  print charts graphically that he's working on.) Anyway, enjoy the new
  228.  version of Astrolog (Compile as before)!
  229.  
  230.  ************************************************
  231.  Astrolog 1.30 posted Wed,  9 Oct 91 03:17:04 GMT
  232.  ************************************************
  233.  
  234.  Once again, we have a new version (1.30, i.e. the Fourth posting) of
  235.  the Astrolog birthchart calculator ready to be used. The main
  236.  highlights are some more minor (and not so minor) bug fixes, as well
  237.  as some great new features, like the ability to display the exact
  238.  times of aspects in a day or month, astro*carto*graphy, etc.
  239.  
  240.  (Note, I've sent this to talk.religion.newage in addition to just
  241.  alt.astrology this time, since not everyone gets the alt.* groups,
  242.  even though I'm increasing my chances of getting flamed for posting 2K
  243.  line articles... I'm really going to have to start posting this in
  244.  segments soon, or figure out how to post to comp.sources.whatever;
  245.  however, the file is still under the magic 64K bytes in length.)
  246.  
  247.  First, the bug fixes over version 1.2:
  248.   1) The north node is *finally* being computed correctly now. Before it would
  249.      always seem to be off by about 1/2 a degree or so.
  250.   2) The Part of fortune was calculated 180 degrees off about half the time
  251.      before, and this major bug has been fixed.
  252.   3) If Daylight Saving time is in affect, the user must subtract 1 from the
  253.      time value entered. If the person happened to be born from midnight - 1am,
  254.      a negative value would have to be entered. Before it wasn't clear what
  255.      value should be entered. In fact now, one should subtract 1 from the
  256.      integer of the value, and not the decimal value itself. In other words,
  257.      things are processed clearer now in that if the person was born at 12:15am
  258.      with DST in affect, they would enter -1.15 (one less than 0.15) instead of
  259.      having to subtract from the whole value and enter something like -0.45.
  260.   4) (This is more of a new feature than a bug) the program now supports
  261.      multiple display switches at once. In other words, the user can invoke with
  262.      '-g -w' and get the aspect grid and the wheel chart, while before the
  263.      program would only allow one of these to be printed at a time (or else the
  264.      user would have to print *everything* using the '-e' switch.)
  265.   5) Oh, and some of the code has been cleaned up, although not much. Slowly but
  266.      surely, this will become an elegant program :)
  267.  
  268.  A couple of people have emailed me saying that their computer (for
  269.  example, Mac's) won't accept command switches on the command line
  270.  (like they boot Astrolog from a menu for instance.) Therefore, they
  271.  weren't able to access all the features of the program. If this is the
  272.  case with your system (or if you just don't like command line
  273.  options), then comment out the '#define SWITCHES' line at the
  274.  beginning of the code. If you do this, then the program will ignore
  275.  any switches and prompt you to enter them manually at the very
  276.  beginning of program execution.
  277.  
  278.  Now a list of the new neat features Astrolog provides:
  279.  (Remember, it's still 'astrolog -H' to see a list of the command switches.)
  280.  
  281.   * The '-d' option will take the standard chart information, and for the day in
  282.     question, display the exact times of all aspects that occur. This is just
  283.     like the aspects-per-day as displayed in Jim Maynard's Celestial Guide
  284.     books. (Displayed in local time as defined by the specified zone, with
  285.     general accuracy of a few minutes.) This will tell the times all planets
  286.     make aspects with each other, or change their sign; retrogradation during
  287.     the day will be indicated, but the exact time of it won't be listed.
  288.   * The '-r' option can now be used to generate composite relationship charts.
  289.     Simply invoke it as '-rc <person1> <person2>' instead of just -r and a
  290.     composite chart (i.e. composed of the midpoints of the planets, etc of the
  291.     two charts in question) will be generated.
  292.   * The '-L' option will take the standard chart information and generate the
  293.     astrograph positions of the planets. In other words, this does the exact
  294.     same thing that Jim Lewis' Astro*Carto*Graphy maps do. It will display the
  295.     longitude of where on the Earth at the time in question each object was on
  296.     the midheaven and on the nadir, and the latitude of where the planets
  297.     actually appeared at zenith. Also, for latitude increments of 5 degrees, the
  298.     longitude of where the objects appeared on the ascendant and descendant is
  299.     displayed.
  300.   * The '-E <month> <year>' option will generate a quick ephemeris for the ten
  301.     main bodies for the month in question, useful if you just want to see what's
  302.     happening this month in the sky. It generally is used by itself and not with
  303.     any other options. (Displayed daily for midnight, GMT time.) Any dots after
  304.     a planet location in the list indicate the planet was retrograde at the
  305.     time.
  306.   * The '-T <file> <month> <year>' option will scan the entire month specified,
  307.     and print out any transits that happen, in that month, to the planets as
  308.     listed in the specified <file>. (There will be quite a few, even though
  309.     fast moving objects like the moon aren't looked at, so you might want to use
  310.     this option with the '-A 5' option to limit this to just the major aspects.)
  311.     Again, this option is generally is used by itself and not with many others.
  312.     (The times are in GMT time, and generally accurate to within a half hour or
  313.     so; Try doing it for your birth month and your own chart - All planets
  314.     should conjunct their natal positions at about the time of your birth.)
  315.   * There are a few other minor things that might affect the program, such as
  316.     the fact that by default now, only the major and the 6 main minor aspects
  317.     are taken into account, and that one must '-A 18' if they want to get them
  318.     all, as well as a few minor display changes, etc.
  319.  
  320.  Anyway, I've got many of the more advanced features in the program
  321.  now, so the next version (might) start to have X windows support in
  322.  it. (And of course I mentioned that I was working on a more
  323.  comprehensive help file, part of which I posted, but alas, I was more
  324.  attracted to adding new features!) I've obtained access to a nice
  325.  world map which could be included to enchance the astro*graph -L
  326.  option to make *real* astro-graph maps! And of course, I still want to
  327.  eventually have the option to have nicely drawn X birthcharts appear
  328.  on the screen. I've run Andy Gray's postscript version, and although
  329.  it's still not finished, it does make good printouts. Anyway, enjoy
  330.  this new version 1.30 of Astrolog, which you can compile as before
  331.  after removing before and after the "cut here's" with
  332.  'cc -O -o astrolog astrolog.c -lm'!
  333.  
  334.  ************************************************
  335.  Astrolog 1.40 posted Tue, 12 Nov 91 01:18:13 GMT
  336.  ************************************************
  337.  
  338.  This being the 11th day of the 11th month, I figured that this would
  339.  be a good time to post the new updated version (1.40) of our Astrolog
  340.  birthchart calculator plus a whole lot more program! There aren't
  341.  really any new fundamental features, but there are over a dozen
  342.  enhancements (many suggested by its users) which make it's operation
  343.  easier and more powerful. (Plus of course we have a chance to
  344.  eliminate a couple of pesky bugs.)
  345.  
  346.  The actual code is in a separate article, which should be right after
  347.  or nearby this one.
  348.  
  349.  A list of the new features and enhancements Astrolog version 1.40 provides:
  350.   1) The ability to restrict the transit (-T) and daily aspect (-d) scans
  351.      to just certain bodies has been implemented with the -R switch. Using
  352.      -R by itself will prevent the asteroids, Chiron, the Part of Fortune
  353.      and the Vertex from being in any of the lists. One may also give a
  354.      list of one or more numbers representing planets to be ignored (e.g. 1
  355.      = Sun, 2 = Moon, 3 = Mercury, etc) so that a complete custom setup can
  356.      be obtained (e.g. -R 1 2 3 4 5 will cause all of the inner planets to
  357.      be ignored). More than one -R switch can be combined (e.g. -R -R 16
  358.      will cause the asteroids, etc, and the North Node to be ignored; the
  359.      first -R gets rid of the asteroids, etc, and the second one deletes
  360.      the North Node.) Also, specifying the same particular body more than
  361.      once will cause it to be included again, or in other words, -R
  362.      <objectnum> complements the status of whether it is to be ignored or
  363.      not (e.g. -R -R 15 will cause all of the asteroids, etc, excluding
  364.      Vesta, to be ignored; the first -R makes causes the asteroids to be
  365.      ignored, and specifying Vesta in the second -R makes it reappear.)
  366.      The -R0 option will cause ALL of the bodies to be ignored, which is
  367.      useful if you are looking for just the transits/aspects of a few
  368.      planets (e.g. -R0 6 7 will cause everything but Juptier and Saturn to
  369.      be ignored.) Combining all these methods can cause whatever you are
  370.      looking for in transits and aspects to be quickly found without having
  371.      to wade through lots of stuff you aren't interested in. (Note: -R will
  372.      also affect what bodies appear in the -w wheel chart, too.)
  373.   2) The -T <file> <month> <year> transits option has been expanded. Putting
  374.      a zero in place of the month will cause the entire year to be scanned,
  375.      which prevents one from having to search each month in turn if they are
  376.      looking for something in particular. (Useful in combination with -R.)
  377.   3) The -T option now includes ALL of one's natal house cusps in the transit
  378.      scans instead of just the Asc and MC. The 11th, 12th, 2nd, and 3rd cusps
  379.      have been added (and oppositions to these and the Asc/MC can be used to
  380.      to determine aspects to the other six cusps.)
  381.   4) Normally the -T option always ignores the moon and does not include the
  382.      transiting moon in the lists because it moves so fast and would cause an
  383.      enormous amount of info. Still, if you are looking for lunar transits,
  384.      specifying the option as -T0 instead of just -T will include the moon.
  385.   5) The -d option can now search the entire month for aspects between planets
  386.      if one so desires. Specifying it as -d0 instead of just -d will go through
  387.      the entire month instead of just the current day. (Combining this one with
  388.      -R allows searching for important aspects, sign changes, etc.)
  389.   6) Both the -T and -d option will display the signs that any planets aspecting
  390.      each other are in, in addition to the aspect itself (e.g. instead of just
  391.      "Jupiter Tri Uranus", we have "Jupiter (Vir) Tri (Cap) Uranus". If a
  392.      particular object is going retrograde, then its sign will be displayed in
  393.      brackets instead of parentheses, and if a particular object is about to or
  394.      has just gone retrograde or direct, then its sign will be in <>'s.
  395.   7) The -E <month> <year> ephemeris option can now be used to display the
  396.      ephemeris for the entire year instead of just for one month. Like the -T
  397.      option, putting a '0' for the month will give the entire year's ephemeris.
  398.   8) The -E option can also display the Asteroids, Chiron, and the Node in the
  399.      ephemeris listing if one invokes it as -E0 instead of just -E. Note however
  400.      that this will make each line more than 80 columns, so this is mainly just
  401.      for printing purposes.
  402.   9) The aspects as listed with the -A option are in a more logical order, from
  403.      the most major to the least. This makes the -A <num> aspect restriction
  404.      switch more useful. (e.g. before -A 2 would restrict analysis to
  405.      conjunctions and sextiles, which isn't all that useful; now the same
  406.      command will restrict to conjunctions and oppositions.)
  407.   A) Note also now that by default only the 5 major aspects are used. If
  408.      one wants the minors, they have to do -A 9, and if one want's ALL the
  409.      aspects, they must do -A 18.
  410.   B) Some header info is printed for the standard chart listing, which includes
  411.      the date, time, and location of the chart being displayed, which of course
  412.      keeps one from getting a whole bunch of printouts confused with each other.
  413.   C) The -f option can be used to "flip" the signs and houses, i.e. display the
  414.      house as a sign position and vice versa. For example having the Sun at
  415.      26 degrees Scorpio, 2/3 way though the 10th house, will cause the resulting
  416.      Sun under the -f option to be at 20 degrees Capricorn, 26/30th the way
  417.      through the 8th house. This can be used to determine how far a planet is
  418.      through a particular house, as well as for Domal chart analysis that
  419.      Mark Kenski has informed me about. Domal analysis is based on the fact that
  420.      for synastry comparisons, for example, a planet in Gemini and one in the
  421.      3rd house can be considered related in a way similar to a conjunction.
  422.   D) The -1 <obj> option can be used to change the houses to force a particular
  423.      object to be on the ascendant. This is useful in casting Solar charts or
  424.      for when the time of birth is not exactly known. For example -1 2 will
  425.      case a normal chart, but the house cusps will be rotated so that the moon
  426.      is on the ascendant.
  427.   E) The -+ <#ofdays> option will cast a normal chart, but one for #ofdays in
  428.      the future (or past if a negative value is given). One use for this is in
  429.      combination with the -n and -d options. For instance, I often invoke the
  430.      program as "astrolog -n -d" to see the exact times of today's aspects.
  431.      However, just before midnight I might want to see what's going to happen
  432.      in the following day, so I would do "astrolog -n -d -+ 1" to see the exact
  433.      times for tomorrow's aspects.
  434.   F) Finally the -q <month> <day> <year> option can be used to cast a quick
  435.      chart for 12 noon on a particular date, using the default longitude and
  436.      latitude. if TIME is defined the current time zone will be determined and
  437.      used, otherwise GMT will be used. Again, one example where this is useful
  438.      is with the -d option, e.g. to see the times of exact aspects on a
  439.      particular date, like your next birthday, your finals, etc.
  440.  
  441.  Now, a list of bug fixes over version 1.30:
  442.   * The midpoint grid displayed in the -g option would cause a coredump if any
  443.     of the midpoints lie between 29.5 deg Pisces and 0 deg Aries, and this has
  444.     been fixed.
  445.   * The -d print aspects in day routine would incorrectly sometimes label a
  446.     planet just going direct as just going retrograde, and vice versa. This
  447.     has been corrected.
  448.   * Attempting to enter a non numeric string when prompted for a numeric value
  449.     in the program will cause a bunch of trash to be displayed on the screen.
  450.     The program now properly tells you that that's an improper input. (Also,
  451.     hitting Ctrl-d at an input will gracefully terminate the program.)
  452.   * Although very minor, before there was one place where a function did not
  453.     return a value. Although it didn't cause any bugs, some compilers would
  454.     complain about this.
  455.   * There were a couple of non-computational related typos in the code and the
  456.     comments that have been corrected (e.g. before at the beginning, the comment
  457.     would tell you to enter the "Longitude N" of your current location before
  458.     compiling. This should of course read "Longitude W".)
  459.   * Finally, those trying to compile Astrolog on PC's and other smaller
  460.     computers said that many of the expressions were too long for their
  461.     compiler to handle. Therefore I have cut down some of the longer expressions
  462.     into multiple lines and have replaced a few of the macros with actual
  463.     function calls.
  464.  
  465.  Expect the X routines to be included in the next version, which will
  466.  be split into several program parts, as well as some decent
  467.  documentation soon, or at least comprehensive list of all the features.
  468.  
  469.  ************************************************
  470.  Astrolog 2.00 posted Wed, 11 Dec 91 07:11:25 GMT
  471.  ************************************************
  472.  
  473.  Tomorrow Uranus transits my Ascendant at 12 degrees 29' Capricorn.
  474.  Combine this with my Saturn trining its natal position yesterday, a
  475.  nice Aquarius Moon and a Moon Mercury Sextile this evening, and what
  476.  would it be a great time to do?
  477.  
  478.  Behold: here is our next version of our Astrolog astrology program!
  479.  The main new things this version 2.00 contains are our long awaited
  480.  X11 graphics features and the source code now in multiple files.
  481.  
  482.  The program is divided up into 6 source files: astrolog.h, data.c,
  483.  formulas.c, options.c, graphics.c, and driver.c. Each of these files
  484.  lies in a separate posting of straight source code which should be
  485.  after or nearby this one in the list of articles. There is also a
  486.  small unix Makefile for the code at the end of this update article. I
  487.  chose to post each file separately in this manner, rather than tar
  488.  them, uuencode them, zip them, or make a shell archive from them,
  489.  because we always have the issue of non-unix people not having access
  490.  to or not knowing how how to extract the program.
  491.  
  492.  The main (but not only) thing added to version 2.00 are the X windows
  493.  features, which are generally accessed via the new -X switch and
  494.  derivatives of it on the command line. There are two different types
  495.  of displays: A standard graphic display of a wheel chart in a window
  496.  (with glyphs, aspects in the center, etc) and graphic displays of the
  497.  Astro-graph charts (which look almost identical to the
  498.  astro*carto*graphy maps from Jim Lewis), complete with all the
  499.  labeled lines drawn on a map of the world. There are also other
  500.  commands that can be given to the window once it is up and running,
  501.  which can do other things, such as continually update the window every
  502.  few seconds to the current status (i.e. an extended version of the -n
  503.  option) as well as other forms of animation. Note that the program is
  504.  still text based, and one can easily turn off all the X features by
  505.  commenting out the #define X11 in astrolog.h if they don't have X
  506.  windows.
  507.  
  508.  A listing and brief description of the command switches for X windows follow:
  509.   -X:  This is the general switch, which means display a chart in an X
  510.        window instead of on the screen in some form. For example, the command
  511.        'astrolog -i mychart -X' will open a new window and display the chart
  512.        in question in it. (Of course, all the other switches, e.g. -R, -c,
  513.        -1, etc, can be used to change what info is actually displayed.)
  514.        If you use the -L astro-graph switch in addition to this, the
  515.        appropriate astro*carto*graphy map will come up in a window instead
  516.        of the earlier boring list of longitudes. (e.g. astrolog -i me -X -L)
  517.   -Xb: This switch will cause a standard X11 bitmap file to be produced
  518.        instead of putting the graphics in an actual window. This is useful if
  519.        you want to convert the graphics to different formats, e.g. so they
  520.        can be displayed on PC's, etc. Note that -Xb (or any other -X<letter>
  521.        switch) automatically assumes the -X switch above, so 'astrolog -i
  522.        file -Xb' is sufficient (and you don't also have to include the -X).
  523.   -Xo <file>: Normally, for -Xb above, the program will prompt you for the
  524.        name to write the bitmap info to; however, you can explicitly specify
  525.        this filename in with the -Xo switch if you don't want to be prompted.
  526.   -XB: This switch will cause the chart graphics to be displayed directly on
  527.        the root window. This action occurs very quickly since the program
  528.        does not have to write a separate bitmap file and call xsetroot -bitmap
  529.        on it (although one could easily do this if they want to). For example,
  530.        one could put the line 'astrolog -n -XB' in their .xsession file
  531.        and whenever they log in, their background will be set to a chart of
  532.        the current state of the planets!
  533.   -Xr: Normally the charts comes up white on a black background (except on
  534.        some workstations in which this seems to be reversed.) Either way, to
  535.        get the chart or bitmap displayed in reverse video (black on white),
  536.        use the -Xr switch.
  537.   -Xw <size> Y<size>■: The default window size is 600x600. This can be changed
  538.        with the -Xw switch. -Xw with one argument n will make an n by n
  539.        window; -Xw with two arguments x and y will make an x by y window with
  540.        the chart centered in the middle. Note that this switch will not affect
  541.        astro-graph windows; to change the size of these use -Xs below.
  542.   -Xs <percentage>: Note that the size of the planet and sign glyphs don't
  543.        change when you change the size of the window. This can cause problems
  544.        for very small windows where the glyphs overlap the rest of the chart
  545.        and for very large windows where there is lots of excess space. The
  546.        -Xs switch can be used to change the size of all glyphs. The valid
  547.        values that can be passed to it are 100, 200, and 300, where 200 is
  548.        the default. Note that this switch is used to change the size of the
  549.        astro-graph windows (because the world map is considered to be one
  550.        giant glyph by the program.)
  551.   -XW: Believe it or not, I painstakingly entered the data for the world map
  552.        used by the program by hand using an Atlas during a long week. If you
  553.        just want to see the map of the world by itself without any
  554.        astro-graph lines on it, use the -XW switch.
  555.   -XG Ydegree■: Once we have the data for the map of the world, there are
  556.        several neat things we can do with it; for instance, with a little
  557.        trigonometry and clipping, we can bring up a view of a globe, which
  558.        is what the -XG switch does. An optional argument will specify a
  559.        rotation value in degrees to display different parts of the globe.
  560.        (The globe seems to look best for a -Xw window size of around 350.)
  561.  
  562.  The X wheel charts have their graphic information organized as
  563.  follows: There's an outer circle showing the signs and sign glyphs,
  564.  inside of which is a smaller circle divided up into 5 degree
  565.  increments to make determining exact degrees easier. Inside of this is
  566.  a circle divided up into the 12 houses labeled with numbers. The
  567.  entire chart is divided by two dashed lines through the Ascendant/
  568.  Descendant (which is always horizontal of course) and the
  569.  Midheaven/Nadir. Inside the house circle are the planet glyphs in
  570.  their appropriate positions. Small pointer lines run from each glyph
  571.  to just before single dots. These dots indicate the precise locations
  572.  in the zodiac of each object. The pointer lines (which are dashed if
  573.  the object is retrograde and solid otherwise) are necessary so as not
  574.  to have to draw planet glyphs on top of one another when planets are
  575.  conjunct. Inside the ring of the single dots, are the aspect lines
  576.  connecting these positions. Since the default number of aspects to use
  577.  is just the 5 majors, one can determine which aspect is in place just
  578.  by looking at the aspect line. The accuracy of the aspect is
  579.  determined by the dashedness of the line: A solid line means the orb
  580.  is < 2 degrees; a dashed line means the orb is < 4 degrees; a really
  581.  dashed line mean the orb is < 6 degrees, etc.
  582.  
  583.  The X astro-graph charts are organized as follows: A map of the world
  584.  is shown. The edges of the map are labeled with ruler lines that are 5
  585.  degrees apart (with longer ruler lines for more important longitudes
  586.  and latitudes, like those that are multiples of 10, 30, etc.) The
  587.  equator is labeled with a dashed line. The polar regions of the world
  588.  aren't shown; the map shown ranges from 60 degrees S latitude to 75
  589.  degrees N latitude. Note that each pixel on the screen represents
  590.  exactly one half a degree on the world. (For -Xs 100 the ratio is one
  591.  pixel to one degree, and for -Xs 300 the ratio is one pixel to 1/3
  592.  degree.) On this map are drawn the lines indicating where on the world
  593.  the various planets are angular at the time in question. (Note: you
  594.  might want to -R restrict some objects because otherwise the map tends
  595.  to get pretty cluttered with lines.) As expected, Midheaven and Nadir
  596.  lines are vertical, and the Ascendant and Descendant lines are curved.
  597.  Little square boxes on the Midheaven lines indicate the exact zenith
  598.  latitude location. Each line is labeled at the top or the bottom of
  599.  the screen, showing what planet is in question and (sometimes) what
  600.  angle is in question. All Ascendant and Midheaven lines are labeled
  601.  at the bottom of the screen, and all Descendant and Nadir lines are
  602.  labeled at the top. Each line goes a bit beyond to the top or bottom
  603.  of the world map, and then another pointer segment (which is again
  604.  dashed of the object in question is retrograde) goes and points to the
  605.  planet glyph. There is a capital "A" or "M" under each of the glyphs
  606.  at the bottom of the screen, explicitly indicating whether the line is
  607.  an Ascendant or Midheaven line. At the top of the screen, however,
  608.  there are only the glyphs, but one can still determine whether these
  609.  lines are Descendant or Nadir lines based on whether they are curved
  610.  or not. Note that not all the Descendant lines are labeled; this is
  611.  because some of the Ascendant/Descendant lines actually connect near
  612.  the top of the screen and don't actually cross it.
  613.  
  614.  Once the X window in question actually comes up, one can press certain
  615.  keys within the window to do certain actions. A list of these follows:
  616.   'H': The most important key. Pressing this will display a help list of
  617.        all the key presses available in the text screen from which
  618.        the window was invoked from.
  619.   'q': Pressing this key will terminate the window (and the Astrolog
  620.        program itself.)
  621.   'p': Press this to pause all updates to the window. This is mainly used
  622.        to freeze any animation (see below) but also has an effect even
  623.        on 'still' windows. In pause mode, the window won't be updated at
  624.        all, e.g. moving another window on top of the Astrolog window and
  625.        then off again or iconifying will leave the Astrolog one blank. Key
  626.        presses will still be accepted in pause mode but their effects won't
  627.        be apparent until one presses 'p' again to continue. The fewer X
  628.        windows calls in pause mode will make Astrolog use less CPU time.
  629.   'x': Pressing this will invert the colors in the window, or in other
  630.        words will do the same thing as the -Xr switch on the command line.
  631.   'T': Normally, there is no actual text printed in the windows. However,
  632.        one can bring up header information listing the date, time, and
  633.        location of the chart in question. Pressing the 'T' key will toggle
  634.        the display of the header text at the bottom of the chart on and off.
  635.   'S': One can manually resize the Astrolog windows using a window
  636.        manager (except when a world map is displayed, in which case resizing
  637.        will have no effect). Pressing the 'S' key will resize any (non-world
  638.        map) window to be a square. This is useful, after resizing charts
  639.        to approximately the size you want, to make them precise squares.
  640.   '<' and '>': This two keys will respectively decrease and increase the
  641.        size of the sign and planet glyphs (as well as resize the astro-graph
  642.        charts) through the three scale factors available. After resizing
  643.        the window you will probably want to use these keys if the glyphs are
  644.        now too big or small for the new chart.
  645.   'C', 'L', 'W', 'G': There are basically four main modes in which a window
  646.        can be in: There are the main charts (wheel and astro-graph) as well
  647.        as the two world displays (the simple map by itself and the globe
  648.        view). These four keys can be used to switch between these four
  649.        modes in the middle of program execution. For example, you can bring
  650.        up your own chart in a window, then press 'L' to see the astro-graph
  651.        chart for the same birth data. Then you can press 'W' to just see the
  652.        world map by itself, and 'G' to see the globe view, after which you
  653.        can press 'C' to return to your original wheel chart.
  654.  
  655.   'N': Animation! This key will toggle in and out of a mode where the chart
  656.        is continually updated in the window. Entering the animation mode
  657.        will cause the chart being currently displayed to be replaced by the
  658.        chart for the exact moment at the time you are running the program.
  659.        Every second or two, the chart will be updated to reflect the new
  660.        current state of the planets and houses. For large window sizes, one
  661.        can actually see very minor changes in the chart every few seconds.
  662.        With the text 'T' mode in effect, the chart is basically an advanced
  663.        version of xclock, and makes a good window to be left running on
  664.        your display. If you are in the -XG globe display mode, pressing
  665.        the 'N' key will cause the globe to rotate for an impressive display!
  666.   '!', '@', '#', '$', '%', '¬', '&', '*', and '(': These nine keys (i.e.
  667.        shift plus the number keys from 1..9) enter into a different form
  668.        of chart animation. Pressing them will cause the current chart
  669.        being displayed (i.e. it will not revert to the current planet
  670.        positions) to continually have a delta time added to it and be
  671.        recast and shown. Pressing '!' will have one second added to
  672.        the chart for every update (slow action unless you have a very
  673.        fast system - the animation will be even slower than for the 'N'
  674.        key). Pressing '@' will have one minute added to the chart each
  675.        time, which makes for a nice display (note that you will definitely
  676.        want to be in the text 'T' mode for these animations so you can see
  677.        what times in the future these charts are being cast for. Pressing
  678.        '#" will have one hour added each time (note that now the house
  679.        cusps are starting to move quickly, so you may want to switch to
  680.        a different system of houses (such as the Equal to keep the
  681.        Midheaven from flopping back and forth) and/or use -1 to put an
  682.        object like the sun on the Ascendant.) Pressing '$' will have one
  683.        day added each time (now you will probably want to start using
  684.        -R to remove fast moving objects like the moon), and pressing
  685.        '%' will have one month added for each update of the window.
  686.        The final keys, shift 6..9 cause years, decades, centuries, and
  687.        millenia to be added each time, and tend to only be used to
  688.        look for long range actions (when will Neptune next enter Pisces,
  689.        etc.) To exit this animation mode, press the 'N' key.
  690.   'r': Press this to reverse the direction of any animation taking
  691.        place. For the '!'..'(' animation keys above, this will cause
  692.        negative times to be added to the chart, e.g. pressing '#'
  693.        then 'r' on a chart cast for noon will cause the next chart to
  694.        be displayed for 11am, then 10am, etc. For the Globe animation,
  695.        this will cause the rotation to reverse direction.
  696.   '1'..'9': The nine number keys are used to set the relative "rate" of
  697.        animation to "n" whatevers. For example, normally the "@" key means
  698.        add one minute to the chart for each update, but press "5" and now
  699.        we are adding 5 minutes each time. For the Globe animation,
  700.        by default the Earth rotates one degree each time; however, the
  701.        number keys can speed this up to nine degrees for each update.
  702.  
  703.  There have been a couple of changes made to the program, i.e. not just
  704.  new features but some things in version 1.40 are no longer valid:
  705.   * Before, the program tried to actually use internal system calls in the
  706.     time library to determine whether DST was in effect or not. Since this
  707.     didn't seem to be accurate at all times, and also many people's systems
  708.     didn't have the needed gm_tmoff field, I have done away with it and
  709.     have replaced it with a DEFAULT_ZONE constant set at compile time.
  710.   * Now that we have a particular default time zone assumed, the transit (-T)
  711.     times are displayed in the local zone instead of in GMT, the ephemeris
  712.     (-E) list is displayed daily at midnight local time instead of GMT, and
  713.     the quick (-q) chart is always displayed for noon default time, too.
  714.   * The -T transits and -d aspects in day are now displayed in am/pm
  715.     time instead of the 24 hour cloak. There have also been a few
  716.     spacing and alignment changes to make these times easier to read.
  717.  
  718.  In addition to the X enhancements, there have been a few more features added:
  719.   1) I often use Astrolog to look at and compare files containing charts of
  720.      various people. I have many chart files, so I keep them in a separate
  721.      directory. Since it was always a pain to have to cd into this special
  722.      directory all the time, I have added a DEFAULT_DIR string to be set at
  723.      compile time. Now, whenever the program reads in a chart file with the
  724.      -i option, it will first look in the current directory for it. If it's
  725.      not found there, Astrolog will then look for a file of the same name in
  726.      the special default directory.
  727.   2) Additional information has been added to the standard list of the planet
  728.      positions displayed. Planets in their exalted and debilitated signs
  729.      are noted. In addition to the (R) indicating a planet in it's ruling sign,
  730.      and an (F) for a planet in it's fall, we have (e) if a planet is in its
  731.      exalting sign, and a (d) for a planet in its debilitating sign (which is
  732.      always opposite the exaltation, as how the fall is opposite the ruler).
  733.   3) In addition, the total number of planets in each of the hemispheres
  734.      of the wheel, as well the number of objects in positive/masculine and
  735.      negative/feminine quality signs, are counted. To the right of the element
  736.      table, we have a column of six numbers labeled as follows: "+" is the
  737.      number of "positive" objects (i.e. in Fire or Air signs); "-" is the number
  738.      of "negative" objects (i.e. in Water or Earth signs); "M" is the number
  739.      of objects above the horizon (i.e. in the hemisphere of the Midheaven);
  740.      "N" is the number of objects below the horizon (in the hemisphere of the
  741.      Nadir); "A" is the number of objects in the Eastern half of the sky
  742.      (in the hemisphere of the Ascendant); and "D" is the number of objects in
  743.      the Western half of the sky (in the hemisphere of the Descendant).
  744.   4) The -A option when used by itself will now list the number of each aspect
  745.      in addition to all the other info already there (e.g. conjunct = 1,
  746.      opposite = 2, etc.) This is so one can easily figure out what exact
  747.      number to pass to the -A option when changing the number of aspects used.
  748.   5) Similar to the -A option, the new -O option will list all the planets
  749.      and other celestial objects used by the program, and their numbers as
  750.      recognized by the -R restrictions. This list will also show the zodiac
  751.      signs that planets rule, fall in, are exalted in, and debilitated in.
  752.   6) The -z <value> option can be used to change the default time zone to
  753.      the value in question. For example, you can force the -E ephemeris and
  754.      -T transits to be displayed at midnight GMT time instead of the local
  755.      time with -z 0; or, for the East coast where by default the time zone
  756.      is "5", you can do -z 4 during DST to properly display transits,
  757.      aspects in day, and other lists in the local DST zone.
  758.   7) A "new" system of houses has been added: No houses at all, or in other
  759.      words the Ascendant will always be 0 degrees Aries, the Nadir 0 degrees
  760.      Cancer, etc. Access this by passing the value 9 to the -c option.
  761.      This system is useful for the extended chart animations as described
  762.      above where having houses at all can tend to get in the way, and one can
  763.      even observe the precession of the equinoxes with this system if used
  764.      in conjunction with the -s siderial chart option.
  765.  
  766.  Now, a list of bug fixes over version 1.40:
  767.   * A major bug would cause the input from any eastern longitude (or time
  768.     zone) or southern latitude to produce results slightly off the
  769.     expected values. Fixes on how to correct this were posted soon after
  770.     the release of version 1.40, and they are now included in the code, so
  771.     there should be no more problems. The reason why such a large bug got
  772.     in there in the first place (which *wasn't* in versions 1.00-1.20) was
  773.     that I inadvertently introduced it when I was correcting the earlier
  774.     (now fixed) bug which would produce incorrect results whenever the user
  775.     had to enter negative values for the time, e.g. DST was in effect and
  776.     they were born between midnight and 1am (meaning they enter 0.xx -
  777.     1.00 for DST = -1.xx). Both bugs are fixed now and my apologies for
  778.     the hasty debugging which got it in there in the first place.
  779.   * The moon and north node would always produce zodiac positions for the
  780.     standard zodiac, even if the user specified the -s option. The -s
  781.     option will now yield the proper siderial positions for these two
  782.     objects.
  783.   * Some have commented that there are time zones 13 hours before or after
  784.     GMT, and that the old version would only accept values from -12 to +12.
  785.     The legal time zone offsets accepted by the program have been expanded
  786.     to include these areas.
  787.   * Too much round off in the chart headers displayed for a chart would
  788.     force all time zones offsets to be integers, and this has been fixed to
  789.     properly display non-integer zones. Also, another display glitch would
  790.     occasionally display the person as being born one hour after their true
  791.     birth time. Both of these were only display errors and didn't affect
  792.     the actual results computed.
  793.   * A couple of array sizes in the code have been increased to account for
  794.     the fact that some compilers will only reserve n elements for the array
  795.     type nameYn■, i.e. space is *not* reserved for the index nameYn■, which
  796.     would introduce glitches in results for some systems before.
  797.   * The -q "quick" chart option wasn't mentioned in the -H help list of all
  798.     the options before, and it is now.
  799.   * Not really a bug, but I neglected to mention in the list of new features
  800.     for version 1.40 that the -1 "put on Ascendant option", if not given any
  801.     object number after it, will by default assume you mean the sun, and will
  802.     cast a normal chart except that the house cusps will be rotated in order
  803.     to put the sun on the Ascendant.
  804.  
  805.  Anyway, that about sums up Astrolog version 2.00. I confess that this
  806.  is my first major X window programming job, and that combined with
  807.  splitting the code could produce problems on other systems, so there
  808.  might be some needed changes to be made in the code soon. Still,
  809.  hopefully each code segment is small enough to be compilable on small
  810.  systems. Anyway, there probably will be a version 2.10 in the future:
  811.  I would like to include some new features like list the latitude
  812.  crossings for the astro-graph maps, and I've only really begun to
  813.  explore the graphics possibilities with the charts (like I could print
  814.  out the aspects grid and locations with the charts, etc). There are
  815.  also a couple of other programmers who have expressed interest in
  816.  merging their own creations with Astrolog: for example, Postscript
  817.  routines (BTW, you can use the xdpr(1) command on certain systems to
  818.  print out the contents of an X window), interpretation databases, etc.
  819.  As far as Astrolog and computers go, the future in our own minds has
  820.  as many possibilities as the future in the stars! :)
  821.  
  822.  To compile version 2.00, first edit the top of the file astrolog.h,
  823.  putting in your own appropriate values for the default longitude,
  824.  latitude, time zone, and default directory. Also comment out any of
  825.  the #defines which set various features that aren't valid on your
  826.  system, such as the X11, TIME, and SWITCHES variables. Then, for unix
  827.  systems, run the command 'make' on the Makefile (or you can always
  828.  compile by hand: "cc -O -c *.c; cc -o astrolog *.o -lm -lX11" will do
  829.  it; just make sure to compile each source file and link them together
  830.  at the end with the math and X11 libraries.)
  831.  
  832.  ************************************************
  833.  Astrolog 2.10 posted Tue, 18 Feb 92 07:59:03 GMT
  834.  ************************************************
  835.  
  836.  As I post this, we are having the Full Moon in Leo/Aquarius. Identity,
  837.  represented by the Sun, is in the sign of computers, unconventional
  838.  science, and contribution to humanity; opposite the Moon in the sign
  839.  of self-expression. The opposition is occurring in the last degree of
  840.  these two signs, building up to the entry into the signs of analysis
  841.  and self-transcendence. Therefore, guess what it's a good time for?
  842.  
  843.  Behold: the next version (2.10) of our Astrolog astrology program! It
  844.  has been over two months since the last version, however some of the
  845.  many new features should make it worth the wait. Some of these
  846.  included are: X windows in Color, several new X window chart displays,
  847.  lots more progression and aspect support, ability to do transits to
  848.  composite and other charts, latitude crossings for astro-carto-
  849.  graphy, and other things, along with our standard batch of bug fixes.
  850.  
  851.  As before, there are 6 source files: astrolog.h, data.c, formulas.c,
  852.  options.c, graphics.c, and driver.c. Each of these files should be in
  853.  a separate posting of straight C source code after or nearby this one
  854.  in the list of articles. There a small unix Makefile for the program
  855.  at the end of this update article. Again, I am posting each file
  856.  separately in this manner, rather than using shar, tar, zip, etc,
  857.  because we always have the issue of non-unix people not having access
  858.  to or not knowing how how to extract the program. Note however, that
  859.  very soon I am going to finally post Astrolog to a formal source group
  860.  (comp.sources.misc) as a standard shell archive for us unix junkies,
  861.  so it should be available at a 24 hour ftp site soon.
  862.  
  863.  --
  864.  
  865.  Here is a complete list of new features now in Astrolog over version 2.00,
  866.  listed in rough order from the most significant to least significant:
  867.  
  868.  A) Color X windows is probably the main new feature added to Astrolog
  869.     2.10. The charts displayed in color are *much* more eye catching than
  870.     the old B/W ones, IMHO. Here is how the colors have been assigned for
  871.     the normal wheel and astro-graph charts: Four colors have been
  872.     allocated for the four elements - Fire = Red, Earth = Brown, Air =
  873.     Green, Water = Blue. The various sign glyphs (and the corresponding
  874.     house labels) are in the color of their element. Planets are in the
  875.     color of the sign of their main ruler. Chiron and the four asteroids
  876.     are Gold, while the north node, and other non-physical objects like
  877.     the fortune and vertex are Violet. Representations of the Ascendant/
  878.     Descendant/ Midheaven/ Nadir (in the astro-graph map lines and
  879.     elsewhere) are in the element color of the corresponding sign/house
  880.     that the angular lines refer to, i.e. Ascendant = Red, Midheaven =
  881.     Brown, Descendant = Green, Nadir = Blue. A few extra things have been
  882.     added for color wheel charts only: dark gray lines marking off each
  883.     house (in addition to the main lines on the horizon and meridian), and
  884.     each degree instead of every 5th degree being marked in dark gray on
  885.     the outer circle (every 5th degree being white). Aspects lines are
  886.     colored too, as follows: Conjunctions = Yellow, Sextiles = Light Blue,
  887.     Squares = Red, Trines = Green, Oppositions = Dark Blue. For the minor
  888.     aspects we have: Inconjuncts/Semisextiles = Brown, Semisquares/
  889.     Sesquiquadratures = Orange, (Bi/Semi)Quintiles = Violet,
  890.     (Bi/Tri)Septiles = Gold, (Bi/Quatro)Noviles = Pink.
  891.  
  892.  B) For color X systems, the new -Xm switch will create all windows in
  893.     monochrome B/W mode, as they were in 2.00. In addition, pressing the
  894.     'm' key within a window will toggle in and out of monochrone mode on
  895.     color systems.
  896.  
  897.  C) Aspect grid windows with the appropriate aspect glyphs can be
  898.     displayed by combining the -g option with the -X option (astrolog -g
  899.     -X). Both the split aspect/midpoint grids labeled down the diagonal,
  900.     as well as the relationship aspect grids between two charts (astrolog
  901.     -r <file1> <file2> -g) are supported. The aspects glyphs, objects, and
  902.     the signs in the grids are in their colors as defined earlier. Like
  903.     the astro-graph windows, these charts can't be resized in the normal
  904.     way unless one uses the '>' and '<' keys. For anything less than the
  905.     largest scale size (achieved with the switch -Xs 300, or by pressing
  906.     '>' within a window) all that will be displayed in each aspect grid
  907.     cell is the glyphs of the aspect in effect, the planet being aspected,
  908.     or the sign of the midpoint. However, once the largest scale size is
  909.     reached, there is room in each cell to display the aspect orb to the
  910.     nearest minute off of exact (with a plus or minus sign indicating
  911.     whether the actual angle is slightly greater than or less than exact);
  912.     the degree and minute in addition to the sign for midpoints; and the
  913.     degree and sign location for each planet that's in the grid.
  914.     Remember, the ASCII aspect grids in earlier versions were rather
  915.     limited, only displaying orbs to the nearest 0.1 degree, midpoints to
  916.     the nearest degree, as well as the confusing '.' vs. ',' for angles
  917.     slightly greater or less than exact (not to mention leaving the vertex
  918.     out for the relationship grids between two charts). Well no longer: we
  919.     can now see *real* aspect grids with Astrolog!
  920.  
  921.  D) The -A display aspects option has been extended to display a brief
  922.     verbal description of what each aspect glyph look like. This is in
  923.     case one doesn't know what aspects the weird symbols in the -g -X
  924.     displays are referring to.
  925.  
  926.  E) A new text display switch has been included, -Z, which prints out
  927.     where each object is on the local horizon in terms of altitude and
  928.     azimuth. For each object, the following is displayed: Its altitude on
  929.     the local horizon from +90 degrees (straight up) to -90 degrees
  930.     (straight down), and its azimuth from 0..360 degrees, where 0 = due
  931.     east, 90 = north, 180 = west, 270 = south. To make visualizing the
  932.     azimuth easier, an "azimuth vector" with a N/S component and a W/E
  933.     component is displayed, e.g. (1.00s 0.33w) means that the object is
  934.     mainly south, with its true angle being formed by an vector component
  935.     west that's 1/3 the strength of the south component, i.e. the object
  936.     is about 18 degrees west of south. This along with the altitude should
  937.     make it easy to physically point to where any planet is at any moment,
  938.     making it easy to locate planets in the night sky. This feature can
  939.     also be used to determine the times that a planet rises and sets.
  940.     Also displayed are altitude and azimuth differences between each
  941.     object and the Sun and Moon, first showing the number of degrees that
  942.     the Sun/Moon is "ahead" (or farther east in the zodiac) of the object
  943.     in question, and then the number of degrees that the Sun/Moon is above
  944.     the object in question. This feature can be used to roughly predict
  945.     eclipses! Both the Sun and Moon span about 0.5 degrees in the sky,
  946.     therefore if both the azimuth and altitude differences are < 0.5 (or
  947.     1.0 if the difference is between the Sun and Moon themselves) then the
  948.     object in question is probably being occulted somewhat by the
  949.     Sun/Moon. Note that there are three types of planetary position
  950.     displays: Right ascension and declination showing the object's
  951.     position with respect to the stars, longitude and latitude showing
  952.     where on the Earth the object is straight up (as in the astro-graph
  953.     zenith locations), and finally azimuth and altitude showing the
  954.     positions of the object relative to the local horizon.
  955.  
  956.  F) This new -Z local horizon feature can be displayed in an X window
  957.     as well (e.g. astrolog -Z -X), in which all the planets will be
  958.     displayed in a window depicting the sky. The small dot above or below
  959.     each glyph indicates exactly where each planet is. (Some of the glyphs
  960.     may be overlapping, although the program tries to cut down on this.)
  961.     There is a horizontal line dividing the window representing the local
  962.     horizon; planets above this line are visible, while planets below it
  963.     are set. There are three vertical lines dividing the window as well:
  964.     The middle line represents the due south direction, the one to the
  965.     left is due east, the one to the right is due west, and the edges of
  966.     the window are due north. Like the standard chart display, this window
  967.     may be resized to any proportion. One can press the 'Z' key in any
  968.     window to enter this display type in that window at any time.
  969.  
  970.  G) Ability to write the actual sign and house positions of a chart to
  971.     a file (instead of just the time and place) has been implemented via
  972.     the -o0 <file> option. This option can be used interchangeably with
  973.     the old -o output to file switch. The information written includes the
  974.     zodiac position of the 20 main objects, their retrograde status and
  975.     declination, as well as the positions of the (first six) house cusps.
  976.     This file information can easily be passed into another program, and
  977.     can be read back into Astrolog with the -i option. The -i option will
  978.     automatically determine which type the file is, and will either use
  979.     the given positions, or else calculate them as needed (note that some
  980.     switches, such as the -c house system selection, will have no effect
  981.     for this new file type.) Check an example of one of these files to see
  982.     the precise format (a zodiac position is recorded as three numbers:
  983.     degree in sign, sign as 1..12, and floating point minute within
  984.     degree.) When the files are read back in, they will be flagged as
  985.     "having no space or time" like the composite charts in the chart
  986.     header displays.
  987.  
  988.  H) The new file format can allow one to do things such as transits to
  989.     composite charts (send the composite chart to file with -o0 option and
  990.     then use that file as the first parameter to the -T option) composites
  991.     between two composite charts (use -rc between two composite charts
  992.     sent to a file) and even, if one is willing to do a small amount of
  993.     editing, to do transits to midpoints or the 0 degrees Aries point.
  994.     Note that one can easily edit the positions in the -o0 position file
  995.     to be whatever they like, so one could replace some unimportant object
  996.     (like the vertex) with 0 degrees Aries or an important midpoint value.
  997.     Note that trying to still use the -o time and space output with an
  998.     output chart that doesn't have space/time will confuse the program; it
  999.     will either say it can't make the file or else will output the
  1000.     time/space of the most recent parameter file it read in.
  1001.  
  1002.  I) Another file output feature, the ability to concatenate "comment
  1003.     lines" at the end of a data file, been been added to both the -o and
  1004.     -o0 options. (Some people have complained that the info in the
  1005.     Astrolog chart files are too cryptic.) After scanning the filename,
  1006.     the -oY0■ option will then write any parameter that follows it at the
  1007.     end of the file, until a parameter beginning with a '-' (the next
  1008.     switch) is reached. For example: -o 'file' "Walter D. Pullen" Seattle
  1009.     will add my name and my birth city in two separate lines at the end of
  1010.     'file'. (In unix, quotes can be used to allow spaces within one
  1011.     parameter.)
  1012.  
  1013.  J) Determining dates of transits of progressed planets to natal
  1014.     planets can be done with the new -Tp <file> <month> <year> option.
  1015.     This is just like the -T option, except that the exact aspects of
  1016.     progressed planets (rather than transiting planets) to the planets in
  1017.     'file' are displayed. Again, one can substitute '0' for the month to
  1018.     scan the entire year.
  1019.  
  1020.  K) Another added progression feature allows determining aspect times
  1021.     of progressed planets among themselves. The -i <file> -dp <month>
  1022.     <year> switch will, like the -d option, display times of aspects and
  1023.     sign changes, except that they will be for the chart in file,
  1024.     progressed throughout the month specified. Progressed planets move
  1025.     very slowly ("year for a day") so therefore there will usually be, if
  1026.     any, only a couple of aspects in a given month; again, one might want
  1027.     to substitute '0' for the month to scan the whole year. Also, since
  1028.     they move so slow, the accuracy is cut down, do the dates given are
  1029.     probably only accurate to the nearest day, in spite of the times given
  1030.     to the minute. Note that Astrolog can now scan for aspects of:
  1031.     transiting planets among themselves (-d switch), transiting planets to
  1032.     natal planets (-T switch), progressed planets to natal planets (-Tp),
  1033.     and progressed planets among themselves (-dp). Only thing Astrolog
  1034.     can't do is do progressed planets to transiting planets, although that
  1035.     may change in the next version :)
  1036.  
  1037.  L) The new -pn switch is like the -p <month> <date> <year> switch
  1038.     except that (like the -n switch) it assumes the current moment now to
  1039.     cast the progressed chart to. This is just another shorthand
  1040.     convenience to see what ones progressed chart is like presently; just
  1041.     do: astrolog -i file -pn.
  1042.  
  1043.  M) Determination of latitude crossing points has been added to the
  1044.     astro-graph routines! The new -L0 option will do the same thing as the
  1045.     -L option, except that after displaying the longitude and latitude
  1046.     locations of the Asc/Desc/MC/IC lines, it will then search among the
  1047.     lines and display (in order from farthest North to farthest South) the
  1048.     latitude of any points where lines cross each other. This includes the
  1049.     curvy Asc/Desc lines crossing the straight MC/IC lines as well as
  1050.     cases where different Asc/Desc lines cross themselves. And unlike Jim
  1051.     Lewis' astro*carto*graphy, Astrolog will also display the longitude of
  1052.     the crossing (useful for Asc/Desc crossings) in addition to the
  1053.     latitude (as well allowing more planetary bodies to be included in the
  1054.     scan, and going farther North and South than Jim Lewis' printouts go.)
  1055.     Note however, that there is presently a small (very rare) minor
  1056.     omission glitch in the code, where if a crossing is within a couple of
  1057.     degrees of 180 deg W/E, it may not be displayed.
  1058.  
  1059.  N) Change the default orbs of the various aspects with the -Ao <orb1>
  1060.     <orb2>... <orbn> switch. Do you not like the 7 degree orbs for
  1061.     conjunctions that are in there by default? One can change the first n
  1062.     aspect orbs (i.e. as many orb values that one puts after the -Ao)
  1063.     anywhere from just the conjunction to all 18 aspects. Non-integer
  1064.     values are allowed of course. Use negative orb values to completely
  1065.     eliminate an aspect from ever appearing. For example: astrolog -A 6
  1066.     -Ao 5 5 -1 10 narrows the orbs for Conjunction and Opposition,
  1067.     completely eliminates the Square, widens the orb for Trines, and
  1068.     leaves the Sextiles and Inconjuncts in the default values. Note that
  1069.     for very wide orbs more than one aspect may apply for a particular
  1070.     angle, in which case the more fundamental aspect is chosen. Also for
  1071.     wide aspects the decimal value of the orb may be lost in the -g text
  1072.     grid (due to too many characters) and their might be some slight
  1073.     overlap in the X window -g cells.
  1074.  
  1075.  O) Note that Astrolog imposes restrictions on the max orb that any
  1076.     particular aspect can have to certain particular objects, namely the
  1077.     node, fortune, and vertex, which can't have aspects to them in excess
  1078.     of 2 degrees. One can suspend these restrictions by replacing the -Ao
  1079.     <orbs> option above, invoking it as -AO <orbs> instead. For a fun (and
  1080.     perhaps useful) display, try: astrolog -A 1 -AO 180 -g Y-X■, and see
  1081.     everything conjunct everything else.
  1082.  
  1083.  P) Search through the aspect grid for major aspect configurations,
  1084.     including Grand Trines, T-Squares, Grand Crosses, Yod's, and Cradles
  1085.     with the -g0 option. This option will produce the same aspect grid
  1086.     that -g displays, but afterwards will go through the grid and list any
  1087.     of these aspect configurations and what objects are forming them. Of
  1088.     course, to see any Yod's, one has to -A 6 or more so that Inconjuncts
  1089.     will be included in the aspect grid.
  1090.  
  1091.  Q) Display the locations of the "Uranian" planets with the -u switch.
  1092.     Transneptunian or Uranian planets are an interesting subset of
  1093.     astrology which includes various objects alleged to be beyond Pluto
  1094.     (or something like that, I'm just the programmer). Anyway, Astrolog
  1095.     can display the zodiac positions of these bodies as well, and will do
  1096.     this by taking the eight Uranian bodies and literally replacing
  1097.     Mercury..Pluto with them. (Do: astrolog -u -O to list them.) This
  1098.     replacement will allow the Uranians to be included in Astrolog's
  1099.     various options, although of course this means that they can't
  1100.     interact with Mercury..Pluto in any way. (Note, I didn't bother to
  1101.     change the X glyphs or sign rulerships since I don't know what they
  1102.     are for the Uranians.)
  1103.  
  1104.  R) Decan displays are now supported in Astrolog, and one can display a
  1105.     decan influenced chart with the -3 switch. The decan theory is that
  1106.     each sign in the zodiac can be divided into three parts: The first 10
  1107.     degrees (i.e. the first decan) is mainly influenced by the sign in
  1108.     question, the second 10 degrees (second decan) although still
  1109.     influenced by the sign in question is also somewhat influenced by the
  1110.     next sign of the same element, while the last decan is influenced by
  1111.     the third sign of the same element. The -3 switch applied to a chart
  1112.     will move each object into the sign of its decan. For example, if the
  1113.     Sun is at 29 degrees Aquarius and the Moon at 5 degrees Virgo, in the
  1114.     resulting chart, the Sun will go to Libra (26 degrees) and the Moon
  1115.     will remain in Virgo (although be at 15 degrees now since it was
  1116.     previously in the middle of the first decan of Virgo.)
  1117.  
  1118.  S) In the -w text wheel option, the objects in each house are printed
  1119.     from top to bottom in order from earliest in the house to latest. This
  1120.     looks good except for in houses 5..8 where this appears backwards
  1121.     (i.e. a planet having just entered the 6th house from the 5th is
  1122.     displayed right under the Descendant.) Replace -w with the -w0 switch
  1123.     and the objects from houses 4 through 9 will be reversed and printed
  1124.     in order from bottom to top, making a more flowing looking chart.
  1125.  
  1126.  T) The new -q0 <month> <date> <year> <time> option takes the four
  1127.     parameters and casts a chart for the time in question. The time zone
  1128.     and location are taken from the default compiled values. This is just
  1129.     yet another useful shorthand way to quickly make a chart. Note that
  1130.     this is just like the -q <month> <date> <year> option except that -q
  1131.     always casts it for noon in the default zone. Also note that the -a
  1132.     option which takes all seven chart parameters can be duplicated with
  1133.     -q0 along with the -z <zone> and -l <long> <lat> options.
  1134.  
  1135.  U) A couple of new compile time option variables have been added to
  1136.     the include file astrolog.h. For those people who don't like Placidus,
  1137.     a new default house system can be set to the value from 0..9
  1138.     indicating what system to use if the user doesn't explicitly specify
  1139.     it with -c, Another thing: It must be mentioned that although the
  1140.     accuracy of Sun..Pluto and Chiron are to the nearest minute for years
  1141.     1900-2000, the four asteroids are relatively inaccurate and can even
  1142.     be a couple of degrees off in the worse case. Also, some people just
  1143.     don't like or care about the minor bodies. If you don't want these
  1144.     values to appear by default, there is a new #define that can be
  1145.     commented out so that it will be as if -R is always included when the
  1146.     program is run. (Simply do -R to get them back if you compile it this
  1147.     way.) There is a new feature added to all the X window displays which
  1148.     can toggle the restriction status of the asteroids and other minors.
  1149.     Press the 'R' (restrict) key in the window and the screen will be
  1150.     redrawn with the restriction status of these toggled.
  1151.  
  1152.  V) The -Xn Y<value>■ option can be used to start up an X window in
  1153.     animation mode. Before, one would have to explicitly press 'N' or a
  1154.     shift+number key to start the window animation. Without a parameter
  1155.     after -Xn, the option will start it up in continuous update to "now"
  1156.     mode (which is like pressing 'N' in that any chart will be erased with
  1157.     the current chart now.) The switch can accept parameters from 1..9,
  1158.     corresponding to the animation rates obtained by pressing shift 1..9
  1159.     in the window, i.e. update whatever chart is passed to it seconds,
  1160.     minutes, hours, days, months, years, etc. later each time.
  1161.  
  1162.  W) Familiar with ley lines? They are energy lines crossing the Earth.
  1163.     I was experimenting earlier with the master ley line grids on the
  1164.     Earth (in the pattern of an overlapped 20 sided Icosahedron and 12
  1165.     sided Dodecahedron) and I figured Astrolog with it's world map would
  1166.     be an interesting program to explore this with. The -XW world map
  1167.     display option is always still, and can never be animated. If however
  1168.     one tries to animate it, either by the -Xn switch or pressing 'N' in
  1169.     the window, a new display showing the ley lines will be shown.
  1170.     Actually this is mainly a hack, but I figured I would leave it in
  1171.     there for amusement and inspiration. Hackers note: there is an
  1172.     interesting "bug" that can arise with the -XW as well as the -XG (and
  1173.     -XP, described below) switches: These displays can be brought up
  1174.     without having to specify an actual chart. Now suppose one presses
  1175.     'C', 'W', etc. to bring up a chart - what will be displayed? The
  1176.     answer will be whatever default values were already there, and if
  1177.     you're curious, I set to be the time of the New Moon on 1-4-1992 at
  1178.     11:11pm GMT at Greenwich England. (i.e. one week before the 11:11)
  1179.  
  1180.  X) The -XP option will generate a polar view of the Earth as a globe.
  1181.     This is like the -XG globe option except that the view is from the top
  1182.     (or bottom) and therefore doesn't rotate. By default, the view is
  1183.     looking down on the north pole with 0 deg W/E toward the bottom of the
  1184.     screen. To see a (fixed) view of the south pole hemisphere, go into
  1185.     animation mode. Again, like with all the other X window display
  1186.     options, one can enter this display with a keystroke: press 'P' in any
  1187.     Astrolog window and it will revert to this display.
  1188.  
  1189.  Y) A couple of conveniences for the X window features have been added.
  1190.     Note that the -Xo <bitmapfilename> option is only used in conjunction
  1191.     with the -Xb write output to bitmap switch. Therefore, I have -Xo
  1192.     automatically assume -Xb is set. (Invoking -Xb itself without -Xo will
  1193.     have the program prompt the user for the bitmap filename.) In other
  1194.     words, astrolog -Xb -Xo 'file' is the same as just astrolog -Xo
  1195.     'file'. (This may change if I add other file types, but for now none
  1196.     are planned.) Also, I should mention that Astrolog includes it's own
  1197.     appropriate bitmap if one iconifies the window, instead of reverting
  1198.     to the braindead UnknownIcon as it did before.
  1199.  
  1200.  Z) A few other minor things have been done to the program, such as the
  1201.     -H help switch displays more information (e.g. what the difference
  1202.     between -T and -T0 is) as well as mentioning for X that you can press
  1203.     the 'H' key while within the X window to get a list of all the neat
  1204.     things you can do in window once it's already been created.
  1205.  
  1206.  
  1207.  I could have added a bunch of other features to this version, but as
  1208.  you can see, I ran out of letters :) Oh well, wait for version 2.20!
  1209.  Remember now that the -e everything switch includes a lot more chart
  1210.  information in it since there are more features now.
  1211.  
  1212.  
  1213.  Here is the list of bug fixes over version 2.00,
  1214.  listed in rough order from the most major to the least major:
  1215.  
  1216.  1) I inadvertently disabled the -p progression option while updating
  1217.     the program from version 1.40 to 2.00, so that it would produce
  1218.     progressed charts way off. This has been fixed and the program
  1219.     produces those charts as well as it did in version 1.40 and before.
  1220.  2) There was a bug in the midpoint routine which would yield results
  1221.     180 degrees off occasionally when the two points being passed to the
  1222.     routine were themselves almost 180 degrees apart. This would mainly
  1223.     affect composite charts and the midpoint grid. This has been fixed for
  1224.     all cases now.
  1225.  3) Some composite charts where the house cusps in the two charts are
  1226.     almost 180 degrees apart would have the composite cusps in
  1227.     non-sequential order, 180 degrees apart from where they should be,
  1228.     e.g. two opposing cusps could be interchanged. The program now makes
  1229.     sure this won't happen, and takes corrective measures if necessary.
  1230.     Also, composite charts are no longer displayed in the chart headers
  1231.     with a bunch of 0's for the date, time, etc. Composite charts are
  1232.     properly labeled as being such, while only charts that exists in
  1233.     space/time will have their coordinates printed.
  1234.  4) Some of the values in the header displays, such as time, long/lat,
  1235.     etc, would occasionally be displayed one number higher than they
  1236.     should be, due to improperly rounding up. This has been fixed. A few
  1237.     other minor display areas have been fixed, e.g. in the heliocentric
  1238.     planet list -h -O, Earth was abbreviated as "Eart" before.
  1239.  5) In the -w text wheel option, the objects in each house are supposed
  1240.     to be printed from top to bottom in order from earliest in the house
  1241.     to latest. The program did this correctly except for cases in which a
  1242.     house spanned 0 degrees Aries, in which case the Aries planets would
  1243.     be printed before the Pisces planets. This should be the other way
  1244.     around, as it is now.
  1245.  6) I probably should have made the -g text aspect grid and the -E
  1246.     ephemeris display be able to be affected by the -R restrictions. They
  1247.     weren't before and they are now.
  1248.  7) Some of my very bad X windows programming in version 2.00 has been
  1249.     cleaned up, as least slightly. The program no longer core dumps if the
  1250.     DISPLAY environment variable isn't set properly. Before, the windows
  1251.     would come up white on black on some machines, and yet black on white
  1252.     on others; now as expected everything will come up white on black
  1253.     unless one specifies otherwise with the -Xr switch. Finally, a couple
  1254.     of people have mentioned that version 2.00 would eat up *lots* of cpu
  1255.     even while doing nothing (unless in 'p'ause mode). Also while in pause
  1256.     mode, uncovering part of the Astrolog window would leave that part
  1257.     blank until pause mode was left. Now, Astrolog doesn't eat cpu unless
  1258.     it's doing something useful, and it will always redraw its windows if
  1259.     unmapped.
  1260.  8) Some things that caused problems for PC users have been corrected;
  1261.     Astrolog now is explicitly declaring 32 bit longs in places where the
  1262.     PC assuming 16 bit ints would cause problems, as well as eliminating a
  1263.     couple of unnecessary declarations and adding some more declarations
  1264.     which aren't necessary for unix but would confuse a PC.
  1265.  
  1266.  Note for PC users: I have tried to make this program as much
  1267.  executable on personal computers and other non-unix systems as
  1268.  possible. Although this version should be easier to compile than
  1269.  previous ones were, still there are probably some things I've
  1270.  forgotten/left out. For instance, for as least one person the
  1271.  options.c and formulas.c files were too long in version 2.00 and had
  1272.  to be split again, so one should be aware of these possible factors.
  1273.  
  1274.  Unfortunately, I am graduating in a little over a month from now, and
  1275.  therefore probably won't be able to work on or support Astrolog much
  1276.  unless I can get another account somewhere. Still, I hope to release
  1277.  an Astrolog 2.20 in another month, perhaps including features like
  1278.  fixed star tracking. (Have you Sun conjunct the Pleiades? Find out!)
  1279.  
  1280.  I wish to express thanks to the many people who have pointed out the
  1281.  bugs (and have made suggestions for new features) in this (as well as
  1282.  previous) versions so that they could be corrected. You know who you
  1283.  are! :) As the Sun leaves Aquarius after the Full Moon let's remember
  1284.  the power of unified effort; and of course the Sun will soon be back
  1285.  in Aquarius, perhaps next time in the Age of Aquarius!
  1286.  
  1287.  
  1288.  ************************************************
  1289.  Astrolog 2.20 posted Wed,  3 Jun 92 00:25:40 GMT
  1290.  ************************************************
  1291.  
  1292.  This file describes the new features, changes, and bug fixes in
  1293.  version 2.20 of Astrolog (over the previous version, 2.10, posted 3.5
  1294.  months ago). Although this new version is a stand alone program, this
  1295.  Update file requires knowledge of the features of version 2.10 in
  1296.  order to make sense. If you aren't familiar with version 2.10, get and
  1297.  read the version 2.10 Helpfile which describes all its features from
  1298.  the alt.astrology ftp site at hilbert.maths.utas.edu.au, or from any
  1299.  comp.sources.misc archive.
  1300.  
  1301.  Just some of the new things contained in Astrolog 2.20 are: Fixed star
  1302.  positions, spatial astronomical charts of the solar system, and a
  1303.  couple of other things non-astrologer astronomers would like. Also
  1304.  added are new kinds of and more support for relationship charts, and
  1305.  the nascent beginnings of an interpretation feature, along with other
  1306.  things non-astronomer astrologers would like. Ability to scan a data
  1307.  file for program defaults has been added, allowing changes to be made
  1308.  to the program without recompiling, along with a bunch of funky
  1309.  additions to the X graphics features.
  1310.  
  1311.  ----
  1312.  
  1313.  Important: A few changes have been made to the program, i.e. not just
  1314.  new features but some things that were true for version 2.10 are no
  1315.  longer valid. A list of these changes follows:
  1316.  
  1317.  1) First of all, every object (planets, minor house cusps, uranians,
  1318.     and stars) has its own "number", displayable in the -O list. No more
  1319.     ugly hacks of overwriting some planets with the uranian positions in
  1320.     the -u option. There is virtually no difference between a planet and a
  1321.     house cusp. The default is still the first 20 objects to keep the
  1322.     charts looking the same as before, although one can have a chart with
  1323.     all 78 objects (one for each tarot card ;) if they like. For example,
  1324.     the -u uranian switch will now display the uranian locations after
  1325.     everything else in the standard chart display. You get what you ask
  1326.     for, and what you don't want must be explicitly -R restricted.
  1327.  
  1328.  2) As a result of the above, the minor house cusps (11th, 12th, 2nd,
  1329.     3rd) are no longer included in the -T transit list by default. If you
  1330.     want them, you must explicitly specify you want them (with the -C cusp
  1331.     option described later). Also, the relationship chart aspect grid now
  1332.     includes the vertex (before it only included the first 19 objects) and
  1333.     as a result the display will unfortunately exceed 80 columns, unless
  1334.     you explicitly restrict one of them with the -R option.
  1335.  
  1336.  3) The program now makes a distinction between synastry charts, and
  1337.     the actual comparison between two charts. Before the -r option would
  1338.     combine the two charts in synastry, unless it was the -g option, in
  1339.     which case the contents of both charts would be compared in an aspect
  1340.     grid. Now -r is only for synastry, and combinations such as "-r chart1
  1341.     chart2 -g" or "-r chart1 chart2 -g -X" will display the aspects within
  1342.     the synastry chart itself. To actually have two charts side by side,
  1343.     use the -r0 option described later, instead of -r.
  1344.  
  1345.  4) To display the ley lines in the -XW world map window, or to see the
  1346.     southern hemisphere in the -XP polar chart, one had to enter animation
  1347.     mode before, a hack which of course had nothing to do with animation.
  1348.     This "bonus information" is now in a separate feature, accessed with
  1349.     the -Xi switch described later.
  1350.  
  1351.  5) In an X window, pressing the 'S' key would resize the window to be
  1352.     a square, and the 'C' key would revert the mode back to the standard
  1353.     wheel chart. These two keys presently do other operations described
  1354.     later, and the above functions are now accessed by the 'Q' and 'V'
  1355.     keys respectively.
  1356.  
  1357.  6) The chart information at the bottom of the window is now included
  1358.     by default, while before it wasn't. To remove it, press the 'T' key in
  1359.     the window or use the -XT switch described later.
  1360.  
  1361.  7) The -w and -w0 switches both display the same text wheel chart, but
  1362.     in slightly different ways. They have been reversed in function, since
  1363.     the -w0 chart looked better.
  1364.  
  1365.  8) The "default" chart, i.e. the initial values in the chart
  1366.     parameters that are used if one forces a chart to be used when one is
  1367.     not expected, e.g. combining the -XW and -o switches, has been
  1368.     changed. Before, I had put in the data for the 11:11pm GMT New Moon on
  1369.     1-4-1992, but now I have changed it to the chart for this version of
  1370.     Astrolog itself: 5-31-1992 9pm PDT Seattle, WA.
  1371.  
  1372.  9) Finally, concerning the source code itself, there are two new
  1373.     files: options.c has been split into the new file charts.c, and
  1374.     graphics.c has been split into the new file xcharts.c.
  1375.  
  1376.  ----
  1377.  
  1378.  Now, a comprehensive list of the features and extensions added to this
  1379.  version of Astrolog follows:
  1380.  
  1381.  A) -S switch: A new chart type is available - solar system space
  1382.     charts, which give the astronomical positions of each planet in terms
  1383.     of x, y, and z coordinates. Although not directly useful
  1384.     astrologically, it does give one a good view of how the planets
  1385.     actually were positioned at the time in question. For example, normal
  1386.     astrology doesn't make the distinction between the four different
  1387.     "forms" of say, a Mercury Venus Conjunction, i.e. they can either be
  1388.     Conjunct on the near side of the Sun, Conjunct on the far side of the
  1389.     Sun, or one can be on one side and the other on the other side. When
  1390.     the chart is actually displayed, for each body the following
  1391.     information is printed: The relative angle of the planet with respect
  1392.     to the central body, i.e. its zodiac position converted to the
  1393.     appropriate number from 0..360. This is followed by the x, y, and z
  1394.     coordinate positions of the object, in astronomical units from the
  1395.     central body. The x-axis increases in the direction of 0 degrees Aries
  1396.     (tropical zodiac), the y-axis increases in the direction of 0 degrees
  1397.     Cancer, and the z-axis is with respect to the Earth's orbit (meaning
  1398.     that the Sun and Earth always have a z-axis value of 0.0). Finally the
  1399.     overall length from the central body in AU is printed, which is just
  1400.     the diagonal as indicated by the x, y, z vectors. (The Earth and Sun
  1401.     are of course always about 1.0 AU from each other.) The Moon circles
  1402.     the Earth and isn't a part of the solar system proper; therefore, it
  1403.     is never in these charts. The -e everything option will include this
  1404.     chart in it's listing of all the chart displays.
  1405.  
  1406.     The -S switch can be combined with -X to give an X window chart of the
  1407.     solar system. This will be displayed as an aerial view of the entire
  1408.     solar system, with 0 degrees Aries to the left of the screen, and 0
  1409.     degrees Cancer to the bottom. Note that this chart includes all
  1410.     possible planets, including the Earth (whose glyph is a cross inside a
  1411.     circle). Whatever object is chosen to be the central body is at the
  1412.     center of the screen, with all the others around it. This is a fun
  1413.     chart to animate - watch the planets go around the Sun, and *see* how
  1414.     they turn retrograde with respect to the Earth. In addition to the
  1415.     bodies themselves, twelve spokes are drawn from the center body to the
  1416.     edge of the screen, which delineate the zodiac with respect to it.
  1417.     Note that the scale of the solar system is large; attempting to fit
  1418.     all the planets out to Pluto on the screen at once will cause all the
  1419.     inner planets to be crammed together near the middle of the screen. To
  1420.     deal with this, the scale size as indicated with the -Xs switch and
  1421.     the '<' and '>' keys will affect how much of the solar system is
  1422.     viewed at once (in addition to the glyph sizes). For a scale size of
  1423.     300, the viewport will have a radius of 6 AU (about out to the orbit
  1424.     of Jupiter; useful for viewing the inner planets). For a scale size of
  1425.     200 (default), it will have a radius of 30 AU (enough to include
  1426.     Neptune, and Pluto most of the time). Finally, a scale size of 100
  1427.     will result in a radius of 90 AU, enough to easily include the entire
  1428.     solar system, as well as the orbits of the alleged Uranian bodies
  1429.     beyond Pluto.
  1430.  
  1431.  B) -I switch: Another new chart type is available - interpretation of
  1432.     influences. This is the beginning of a general interpretation ability
  1433.     for the program, although all it does now is calculate the relative
  1434.     "power" of each planet's placement, giving a general idea of the
  1435.     prominent areas of a chart. When such a chart is printed, each planet
  1436.     is given a point value, larger numbers indicating more strength. Each
  1437.     planet's strength is divided between two fields: the positioning in
  1438.     and of itself, and the power of the aspects it makes with the other
  1439.     planets. In addition to each field, the total of these two areas is
  1440.     printed, as well as the relative percentage of the planet in question
  1441.     with respect to all the planets combined. Each planet gets a ranking
  1442.     for its positioning, aspects, and total power as well, with the
  1443.     strongest getting #1, the next strongest #2, etc. The -e option will
  1444.     include this chart as well in it's listing of all the chart displays.
  1445.  
  1446.     To determine the strength of the positioning of a planet, various
  1447.     things are taken into account: 1) The power of a planet in and of
  1448.     itself, e.g. the Sun and Moon are more powerful then the other
  1449.     planets. 2) The house placement of a planet, e.g. a planet in the 1st
  1450.     house is more powerful than one in the 2nd. 3) Whether a planet is in
  1451.     the sign it rules or is exalted in, e.g. Jupiter in Sag results in
  1452.     more power to Jupiter. 4) Whether a planet is in the house
  1453.     corresponding to the sign it rules or is exalted in, e.g. Jupiter in
  1454.     the 9th house. 5) Planets get more power if the signs they rule are
  1455.     occupied, e.g. a bunch of stuff in Aquarius gives more power to
  1456.     Uranus. 6) Planets get more power if the houses they rule are
  1457.     occupied, e.g. a bunch of stuff in the 11th house gives power to
  1458.     Uranus. 7) Finally, planets get power according to what houses the
  1459.     cusps of which fall in the signs they rule, i.e. the ruler of the
  1460.     Ascendant (and to less extent the Midheaven, and so on) gets lots of
  1461.     influence. Determining the strength of a planet's aspects is much
  1462.     easier, and is basically composed of the sum of the strength of each
  1463.     aspect the planet makes. Taken into account are: 1) The inherent
  1464.     influence of the planet being aspected to, e.g. Sun conjunct Jupiter
  1465.     gives more influence to Jupiter than Mercury conjunct Jupiter would.
  1466.     2) The influence of the aspect itself, e.g. Oppositions are more
  1467.     powerful then Sextiles. 3) Finally the orb of the aspect, i.e. exact
  1468.     aspects are more powerful than wide ones. (The influence of the orb
  1469.     varies linearly from max power at exact to zero power at the limit of
  1470.     the orb - sorry Maggie M. and Mark K. - no complex aspect wave
  1471.     functions, at least for this version :)
  1472.  
  1473.     Special thanks goes to Mark K. who initially presented this idea of
  1474.     interpreting overall influences to me. I basically just took his
  1475.     ideas, polished them a bit, and put it into the code. Interestingly,
  1476.     while programming this feature, I had a dream about him, in which he
  1477.     elaborated upon some of the ideas and even gave me suggestions for
  1478.     some of the planets' default power values (astral visitation?) And,
  1479.     while on the subject, I've had a couple of other Astrolog dreams; I
  1480.     had one neat one while working on the -h extension (described later)
  1481.     about a far distant future version of Astrolog that could actually
  1482.     teleport one to the places which they cast charts for :)
  1483.  
  1484.  C) -v switch: This isn't really a new feature, but rather a formal
  1485.     specification for the standard chart listing of the planetary
  1486.     positions. Before, one would get this chart by default if they didn't
  1487.     specify any other chart types, and they would get it along with
  1488.     everything else in the -e option, but there was never any formal
  1489.     switch for it. In other words, before there was no way to, for
  1490.     example, display the standard chart, followed by an aspect grid, since
  1491.     there was no switch to choose the standard chart. Now, one can specify
  1492.     "-v -g" and get the above mentioned combination.
  1493.  
  1494.  D) -v addition: The standard chart listing of the planetary positions
  1495.     has been expanded to include an extra field for the "velocity" of each
  1496.     planet. This velocity value approximates how fast the planet is moving
  1497.     through the zodiac with respect to the Earth (or whatever the central
  1498.     body is set to) in degrees per day. This value of course, goes
  1499.     negative when a planet goes retrograde. This is useful not only to get
  1500.     a feel for how fast each planet moves through the zodiac, but to
  1501.     determine when a planet is about to go retrograde or direct - the
  1502.     value approaches zero when the planet changes direction.
  1503.  
  1504.  E) -v0 switch: This switch is just like -v except that it modifies the
  1505.     planet velocities slightly. Normally, it isn't a trivial task to
  1506.     determine precisely when a planet is going to change direction. This
  1507.     is because, for example, although a velocity of 0.010 degrees/day for
  1508.     fast moving Mercury means it's about to turn retrograde, the same
  1509.     velocity value is normal for slow moving Pluto. The -v0 switch divides
  1510.     the normal velocity values by how fast each planet moves with respect
  1511.     to the Sun, meaning that all planets will now have an average
  1512.     *relative* velocity value of 1.000, and in all cases, a velocity of
  1513.     2.000 means the planet is moving twice as fast as normal, and one of
  1514.     0.010 means the planet is about to turn retrograde.
  1515.  
  1516.  F) -d addition: The -d aspect search routine has been expanded to
  1517.     calculate and display the times when a planet changes direction.
  1518.     Before, in such a listing, it would be shown whenever a planet changed
  1519.     direction during a day, but the exact time of the station wouldn't be
  1520.     printed for it.
  1521.  
  1522.  G) -U switch: Astrolog 2.20 has the ability to display the positions
  1523.     of 46 of the brightest and most important stars in the sky. To include
  1524.     these stars in a chart, use the -U "universe" option. The 43 brightest
  1525.     stars, i.e. all those with apparent magnitude values < 2.0 are
  1526.     included, in addition to three dimmer stars which are considered
  1527.     significant, i.e.: Polaris the North star, the Pleiades star cluster
  1528.     (home of our extraterrestrial cousins), and Zeta Reticuli (home of the
  1529.     Grey aliens.) One bright star is called "Orion", which is formally
  1530.     Alnilam, the middle star of Orion's belt. Since stars are fixed in
  1531.     the sky, they will never change position in the -s siderial zodiac,
  1532.     although they will slowly precess forward in the normal tropical
  1533.     zodiac. The -R restriction option can be used to determine which stars
  1534.     are actually included, although the -U option needs to be included to
  1535.     get any stars at all. In X windows, the stars are denoted by three
  1536.     letter abbreviations (as are the uranians and minor house cusps), and
  1537.     are colored according to their brightness: yellow for stars brighter
  1538.     than (less than) magnitude 0.0, gold for dimmer ones from 0.0 to 1.0,
  1539.     orange for those from 1.0 to 2.0, and finally the dimmest special
  1540.     stars with a magnitude greater than 2.0 are red.
  1541.  
  1542.     In the -v standard chart, -Z horizon chart, and in the -O object list,
  1543.     where all the stars are printed sequentially, it can sometimes be
  1544.     confusing to locate the star you want among 42 others. The -U option
  1545.     can be modified to sort the stars in various ways. If one uses -Ub
  1546.     instead of just -U, the stars will be listed in order from brightest
  1547.     to dimmest. Doing -Un instead of -U will alphabetize the stars by
  1548.     name. -Ul will sort them by their altitude from highest in the sky to
  1549.     lowest, while -Uz will sort them by their zodiac position. Note that
  1550.     any star ordering will have no visible effect in X windows, and one
  1551.     must still use the default ordering when passing numbers to the -R
  1552.     option to restrict various stars.
  1553.  
  1554.  H) -C switch: This new option must be indicated to include the four
  1555.     minor house cusps (i.e. 11th, 12th, 2nd, 3rd) in the various chart
  1556.     options, such as the -g aspect grids, -T transit searches, the X wheel
  1557.     chart, etc. This option of course won't have any effect on certain
  1558.     charts where only physical bodies are shown (e.g. -Z, -S, -L) or where
  1559.     all house cusps are already indicated in the chart (e.g. -v, -w).
  1560.  
  1561.  I) -O0 switch: The old -O switch simply displays a list of all the
  1562.     objects, cusps, uranians, and stars, along with their index numbers.
  1563.     This list can be affected by the -R restrictions, and the -C, -u, and
  1564.     -U switches must be included in order for all of Astrolog's objects to
  1565.     get listed. In order to make it easier to simply display a list of all
  1566.     78 objects Astrolog recognizes, the new -O0 option is just like -O
  1567.     (and is equivalent to "-C -u -U -O") except that it will ignore all
  1568.     restrictions and always list every object. Stars are printed in the
  1569.     list along with their azimuth, altitude, and brightness values.
  1570.     (Remember that when -O is encountered, it immediately executes and
  1571.     terminates the program, so any modifying switches must be before it.)
  1572.  
  1573.  J) -RC, -Ru, -RU switches: These three switches are similar to the -R0
  1574.     option in that they initially restrict objects, i.e. all the minor
  1575.     cusps, Uranians, and stars, respectively from appearing. For example,
  1576.     if you want to include only the star Sirius in an X window chart
  1577.     without having to also include all the other stars (or having to enter
  1578.     a very long restriction list), do: "astrolog -U -RU 48 -X", which will
  1579.     include the stars, and then restrict them all except Sirius, before
  1580.     making the chart.
  1581.  
  1582.  K) -h <arg> expansion: The -h switch which allowed heliocentric charts
  1583.     to be computed has been expanded to allow charts to be cast with any
  1584.     planet as the center. The option takes a parameter to indicate which
  1585.     object to center the chart on, e.g. do -h 5 to cast a Mars centered
  1586.     chart. (Moon centered charts are not allowed.) As before, -h by itself
  1587.     means to do a heliocentric chart.
  1588.  
  1589.  L) -rm <file1> <file2> switch: Time-space midpoint relationship charts
  1590.     are now supported. Doing "-rm chart1 chart2" will calculate the time
  1591.     and location exactly half way between the times and locations as
  1592.     indicated in the two files. Unlike all other types of relationship
  1593.     charts, this one actually exists in space and time, and therefore can
  1594.     be treated like a single chart and can be output with the -o option.
  1595.  
  1596.  M) -r0 <file1> <file2> switch: A distinction has now been made between
  1597.     synastry relationship charts and the actual comparison between two
  1598.     separate charts. The -r0 option must be used to generate these
  1599.     comparison charts, e.g. the aspect grid between the planets of two
  1600.     charts (and the new X chart described later). The -r0 option will act
  1601.     like the -r synastry option in certain displays that can't compare two
  1602.     charts; for example, "-r chart1 chart2 -g" and "-r0 chart1 chart2 -g"
  1603.     are different, because one generates the aspect grid within a synastry
  1604.     chart, and the other an aspect grid between all the planets in the two
  1605.     charts, but "-r chart1 chart2 -v" and "-r0 chart1 chart2 -v" will do
  1606.     the same thing. (Note: the "-t file" current transit option is
  1607.     basically a shorthand way of doing "-r0 file now".)
  1608.  
  1609.  N) -G switch: This switch generates a special type of locational
  1610.     analysis chart, called a geodetic chart, in which the house cusps are
  1611.     computed from a different source, i.e. as a function of only the
  1612.     longitude and latitude. This basically gives every spot on the planet
  1613.     a different unique set of house cusps, and can be used to analyze the
  1614.     characteristics of different areas, and their influence on you if you
  1615.     insert your own planets in the houses. This type of chart was
  1616.     described in the January 1992 issue of Dell Horoscope magazine, from
  1617.     which I learned how to generate these charts. Basically, the Midheaven
  1618.     is approximately the longitude value converted from degrees into the
  1619.     appropriate zodiac sign; for example 0 degrees E goes to 0 degrees
  1620.     Aries, 30 degrees E goes to 0 degrees Taurus, etc.
  1621.  
  1622.  O) -L <arg> addition: For text screens, one can pass an optional
  1623.     parameter to the -L or -L0 astro-graph option to give the latitude
  1624.     step rate at which the Ascendant and Descendant lines are computed.
  1625.     This value is by default 5 degrees, although one can may increase or
  1626.     decrease it to any integer (subject to the restriction that the number
  1627.     160 is divisible by it.)
  1628.  
  1629.  P) -g0 addition: A new planetary configuration has been added to this
  1630.     option. In addition to flagging the Grand Trines, T-Squares, and so
  1631.     on, any chart Stellium's are located. In a Stellium, three objects
  1632.     must all be conjunct with each other.
  1633.  
  1634.  Q) -ga switch: Ability to determine whether an aspect is applying or
  1635.     separating (is about to happen or just happened) has been added to the
  1636.     -g option. Normally the aspect orbs are flagged as being + or - based
  1637.     on whether they are greater or less than the proper amount (e.g. a 91
  1638.     degree Square has a +1 degree orb while a 89 degree one a -1 orb.) If
  1639.     one, however, invokes the -g option as -ga instead, a negative orb
  1640.     will indicate an applying aspect while a positive orb a separating
  1641.     one. (To estimate applying vs. separating, the program examines the
  1642.     planetary positions and their velocities at the time in question.)
  1643.  
  1644.  R) -g0 expansion: For relationship aspect grids, the -g0 option will
  1645.     display a midpoint grid instead of an aspect grid between the planets
  1646.     in the two charts e.g. "-r0 chart1 chart2 -g0". Before, the -g0 switch
  1647.     with comparison charts wouldn't behave any different from just -g.
  1648.  
  1649.  S) -s0 switch: For astronomers out there, the new -s0 option will
  1650.     print all planetary positions in the right ascension hours/minutes
  1651.     format instead of the sign/degrees/minutes astrologers are accustomed
  1652.     to. This will affect how the objects are listed in the -v display, and
  1653.     how the star azimuths are displayed in the -O list. For example, 0
  1654.     degrees Aries is represented as 0 hr, 0 min; 0 Cancer goes to 6 hr, 0
  1655.     min, and so on through the 24 hour clock.
  1656.  
  1657.  T) -p0 <arg> switch: User definable progression rates can be specified
  1658.     with this new option. When using the -p progression option, Astrolog
  1659.     assumes you want the standard "year for a day" rate of secondary
  1660.     progressions. By passing different values to the -p0 switch, one can
  1661.     change the default "365.25 days for a day" to any value they want for
  1662.     some less often used method of progression. For example, one can do
  1663.     "-p0 7 -pn" to do a week for a day, "-p0 -365.25 -pn" to get negative
  1664.     year for day progressions, and so on. (Note that "-p0 1" would be the
  1665.     same as if no progression were done at all.)
  1666.  
  1667.  U) -z expansion: Normally the -z option takes an argument which will
  1668.     then become the default time zone. If one, however, invokes it by
  1669.     itself, it will subtract one hour from whatever the default time zone
  1670.     presently is. This is useful since it is equivalent to adjusting any
  1671.     times printed to Daylight time, i.e. it will add one hour to any times
  1672.     displayed. (When entering the birth time for charts, one is supposed
  1673.     to subtract one hour if Daylight time was in effect; note that
  1674.     subtracting one hour from the time zone will do the same thing.) For
  1675.     example, over here on the West Coast, I have my default time zone
  1676.     compiled to be "8"; now that Daylight time is in effect here, I can do
  1677.     -z 7 or just -z to decrease the default time zone when I make a -T
  1678.     transit list, which will in effect add one hour to the local times
  1679.     displayed, or in effect "Spring ahead" the clock for me. (For a better
  1680.     way of adjusting Astrolog for Daylight time without having to specify
  1681.     -z all the time, recompile the program, or add one hour to the times
  1682.     in your head, use the "defaults" file described later to change the
  1683.     time zone.) Remember that the -z (and -l) switches must be before any
  1684.     other switches they modify (such as -n) in order for the new default
  1685.     to take effect.
  1686.  
  1687.  V) -- <arg> switch: This new "dash minus" option is just like the old
  1688.     "dash plus" (-+) option that's already in place, except it subtracts
  1689.     instead of adds the specified number of days from any chart cast. This
  1690.     is only for convenience, in that "-- 1" is the same as "-+ -1".
  1691.  
  1692.  W) -w expansion: Chart header information has been added to the -w
  1693.     text wheel chart option. Before, the space in the middle of the chart
  1694.     was left blank, but now displayed in it is the same header info as is
  1695.     at the top of the standard -v chart.
  1696.  
  1697.  X) There are now wider orbs allowed for the Sun and Moon in the aspect
  1698.     grids. Normally, only the aspect in question determines the allowed
  1699.     orb, but the Sun and Moon will now each add 1 degree to whatever the
  1700.     orb would have been. (This excludes minor objects such as the North
  1701.     Node, Part of Fortune, Vertex, and all the stars, for which the orbs
  1702.     are not allowed to ever exceed two degrees.)
  1703.  
  1704.  Y) When specifying command switches, the leading dashes are optional,
  1705.     and aren't necessary any more. For example, the command "astrolog -i
  1706.     chartfile -R -u -U -Z -Xs 300 -Xi -XB" can be abbreviated as "astrolog
  1707.     i chartfile R u U Z Xs 300 Xi XB". (This is subject to a couple of
  1708.     minor limitations, in that one can't have the -1 or -3 option follow a
  1709.     -R restriction list of numbers, for obvious reasons.)
  1710.  
  1711.  ----
  1712.  
  1713.  Astrolog 2.20 includes the ability to search an input file for various
  1714.  default parameters to use in the program. This allows one to easily
  1715.  change major defaults without having to recompile the program, which
  1716.  is useful if, say, one receives a compiled executable from a friend
  1717.  who had a different configuration. The program looks for the file
  1718.  "astrolog.dat" in the current directory, and if not there, looks for
  1719.  it in the default directory. Parameters in this file will override any
  1720.  defaults compiled into the program, although the highest priority is
  1721.  still given to the command line options. Note one doesn't *have* to
  1722.  have this file in order to run the program - if not found Astrolog
  1723.  will still run as before. Presently, the parameters one can change in
  1724.  this file are: default time zone (as indicated with -z option),
  1725.  default longitude and latitude (as in -l option), number of aspects
  1726.  (-A option), default house system to use (values as in -c option).
  1727.  Then come default restriction values (as with -R option) for the first
  1728.  20 objects (0 = active, 1 = restricted). Next are the orbs (as with
  1729.  -Ao option) for the 18 aspects. Finally, comes a long list of the
  1730.  influence values used by the -I option, i.e. the power values of each
  1731.  of the first 20 planet objects, of the 12 houses, and of the 18
  1732.  aspects. The only major thing that one *can't* change in the file is
  1733.  the default directory path in which the program looks in for input
  1734.  files if not in the current directory, since Astrolog needs the
  1735.  default directory in order to be able to locate the file in the first
  1736.  place! The "astrolog.dat" file included with this version of the
  1737.  program has some "comment lines" describing what is contained in each
  1738.  line. One can chance or delete comments as long as they make sure that
  1739.  an equals sign ('=') immediately proceeds any value or list of values,
  1740.  since the program uses this character to determine where comments end.
  1741.  
  1742.  ----
  1743.  
  1744.  Additional new features and extensions follow below; however, these
  1745.  only affect the graphics portions of the program, and therefore only
  1746.  come into play if the X11 compile time option is set.
  1747.  
  1748.  A) True relationship wheel charts can now be displayed in a window,
  1749.     i.e. where the planets of both charts are displayed in separate rings
  1750.     of the same wheel. Use the -r0 option to display this comparison type.
  1751.     For example, for the command "astrolog -r0 person1 person2 -X", the
  1752.     following is displayed: The signs and houses as in person1's chart are
  1753.     drawn in the outermost part of the wheel. Inside this is a ring of
  1754.     person2's planets as displayed in person1's houses, and inside of this
  1755.     are person1's own planets. Finally at the very middle is an aspect
  1756.     grid, which shows those aspects that are occurring between the objects
  1757.     in the two charts. Basically this is just the standard wheel chart for
  1758.     person1, except that person2's planets are in an outer ring of objects
  1759.     and the aspect grid shows the aspects of the relationship. Putting
  1760.     such a chart in animation mode only affects person2's planets, so this
  1761.     is a great way to analyze transits: Doing "astrolog -t yourchartfile
  1762.     -X" will show all your current transits, and allow you to easily
  1763.     animate the transiting planets through your natal signs and houses.
  1764.  
  1765.  B) More color: For color X terminals, the -XG globe display and -XW
  1766.     world map display are now done with the continents in different
  1767.     colors! This makes them look much better than before. Each of the
  1768.     seven continents is in a different color of the rainbow, and the
  1769.     colors are chosen to correspond to the appropriate chakra (etheric
  1770.     energy vortex along the human spine) that goes with each land mass.
  1771.     They are: Africa - red - Root chakra, Australia - orange - Navel
  1772.     chakra, South America - yellow - Solar plexus chakra, North America -
  1773.     green - Heart chakra, Europe - blue - Throat chakra, Asia - indigo -
  1774.     Third Eye chakra, Antarctica - violet - Crown chakra. Major lakes are,
  1775.     of course, colored navy blue.
  1776.  
  1777.  C) Mouse buttons: Pressing the mouse buttons in the X windows will now
  1778.     do various functions. The left mouse button acts as a pen that allows
  1779.     one to actually draw on the chart: press it and drag the pointer to
  1780.     draw a line on the window - good for aiding in analysis or in
  1781.     presentations. (Any scribbles one makes will disappear the next time
  1782.     the chart window is updated, therefore drawing will have little effect
  1783.     when in animation mode.) The middle mouse button will only work when
  1784.     the world map is shown, i.e. in the -L astrograph or -XW world map
  1785.     displays: press it and get the approximate longitude and latitude of
  1786.     the place on the map where the pointer is. For the three scale sizes
  1787.     of 100, 200, and 300 percent, the accuracy is to the nearest degree,
  1788.     30', and 20', respectively. So, if you want to cast a chart for
  1789.     southern Madagascar, Africa, but don't know the coordinates, click the
  1790.     middle button on the map for a good approximation! Finally, the right
  1791.     button acts just like the 'q' key, and will terminate the window.
  1792.  
  1793.  D) 'Y', '■' keys: Not only can the globe display be rotated, but the
  1794.     poles can be now tilted down at various angles! (This basically makes
  1795.     the -XP polar globe view option obsolete; it's still in there only for
  1796.     backwards compatibility.) Press the 'Y' and '■' keys when the globe is
  1797.     being displayed to respectively "pull down" and "push back up" the
  1798.     angle of the polar axis from which the globe is viewed.  Combining
  1799.     this with the globe rotation allows one to move any point of the globe
  1800.     to the center of the screen.
  1801.  
  1802.  E) 'l' key: Press the 'l' key in a window to inhibit the labeling of
  1803.     all planets in the various charts. Instead of drawing the little point
  1804.     and then the glyph near it, just the point is displayed. This mode is
  1805.     mainly useful for the -Z horizon and -S space charts (and has little
  1806.     use for anything else) when in cramped quarters or to get a more
  1807.     realistic view of how the sky actually looks.
  1808.  
  1809.  F) -XT switch: In addition to the 'T' key which will toggle off or on
  1810.     whether the chart parameters are displayed at the bottom of the
  1811.     window, the new -XT option will do the same thing, giving control of
  1812.     the feature when a formal window isn't actually opened, e.g. when
  1813.     displaying to the root.
  1814.  
  1815.  G) 'O', 'o' keys: Have you ever animated your natal or some other
  1816.     chart to some far distant future or past time, only then to wish you
  1817.     could somehow easily get back to the original chart? You can now, by
  1818.     pressing the 'O' key in a window, which will recall to the screen
  1819.     previously "saved" chart parameters (which are by default set to
  1820.     whatever you started the window with.) Press the 'o' key to change
  1821.     this default stored chart to be the chart that is presently in the
  1822.     window.
  1823.  
  1824.  H) 'B' key: Press the 'B' key in an X window to dump whatever is
  1825.     currently being displayed to the background root window. This is
  1826.     basically the corresponding keypress to the old -XB option.
  1827.  
  1828.  I) 'C', 'u', 'U' keys: Pressing the 'C', 'u', and 'U' keys in the
  1829.     window will toggle the restriction status of the four minor house
  1830.     cusps, the uranian planets, and the fixed stars, respectively. These
  1831.     keys compliment the old 'R' key option already in place, and are the
  1832.     counterparts to the -C, -u, -U, and -RC, -Ru, -RU options.
  1833.  
  1834.  J) 's', 'h' keys: Press the 's' key in the window to toggle whether or
  1835.     not the siderial vs. tropical zodiac is used. Press the 'h' key to
  1836.     toggle to a heliocentric based chart or back again to a geocentric
  1837.     one. These of course correspond the the -s and -h options.
  1838.  
  1839.  K) 'v' key: Press this key to dump back to the text screen the list of
  1840.     where all the planets currently being displayed in the window are.
  1841.     This display is the same as produced with the -v switch, and is useful
  1842.     if one wants text to indicate where everything in the chart is.
  1843.  
  1844.  L) -Xi switch, 'i' key: Certain people have asked that some of the X
  1845.     charts be modified in various minor ways, i.e. in either adding or
  1846.     removing certain information. Rather than add a new hard to remember
  1847.     minor option for each change, I have added one major new switch which
  1848.     covers all the charts. The new -Xi switch will invoke this
  1849.     "induce/inhibit information" option, and pressing the 'i' key in a
  1850.     window will accomplish the same thing by toggling the mode's status.
  1851.     By default, all the charts are as before, but when this bonus option
  1852.     is set, it affects each X window chart in a different way, as follows:
  1853.  
  1854.   o For the standard -v and relationship -r0 -v wheel charts, it will
  1855.     inhibit the display of the aspect grid in the center - useful for
  1856.     speed or when doing large time lapse animations when it would get in
  1857.     the way.
  1858.  
  1859.   o For the -g aspect grid, it will flip the aspects and midpoints across
  1860.     the center diagonal, i.e. the midpoints will be below it and the
  1861.     aspects above it, instead of the other way around. For the -r0 -g
  1862.     relationship aspect grid, the entire grid will be replaced with one
  1863.     showing all midpoints between all the objects in the two charts.
  1864.  
  1865.   o For the -Z horizon chart and -S space chart, it will, for the major
  1866.     planets, increase the size of the "points" showing where each object
  1867.     actually is, making a brighter "spot", for easier viewing; combine
  1868.     this in the horizon chart with the 'l' key label inhibitor and get a
  1869.     very realistic view of the night sky, with planets brighter and all.
  1870.  
  1871.   o For the -L astro-graph chart, this will eliminate the display of the
  1872.     Ascendant, Descendant, and Nadir lines, leaving just the vertical
  1873.     Midheaven lines and zenith points, for a remarkable increase in speed
  1874.     and much less clutter when including many objects.
  1875.  
  1876.   o For the -XW world map display, this will show the Earth's ley line
  1877.     locations; and for the -XP polar globe view, it will show the southern
  1878.     hemisphere instead of the northern.
  1879.  
  1880.   o For the -XG globe display, it will display the zenith locations of all
  1881.     planets (and stars if -U in effect) on the globe, i.e. where on the
  1882.     Earth each object could be viewed by looking straight up. This on the
  1883.     globe display is almost identical to the astro-graph chart without its
  1884.     various lines, except of course that the projection of the world map
  1885.     is different. It's also similar to the -Z horizon display, except that
  1886.     it's free from the distortion of projecting the celestial sphere upon
  1887.     a plane, so it has use to star gazers. However, animation mode here
  1888.     will still only affect what part of the Earth is viewable, and won't
  1889.     update the chart from which the zenith locations were obtained.
  1890.  
  1891.  ----
  1892.  
  1893.  Here is a list of bug fixes over version 2.10:
  1894.  
  1895.  1) There was a major glitch in the uranian overwrite routine which
  1896.     would not only display the uranian positions a degree or two off from
  1897.     where they should be, but would also garble the positions of all the
  1898.     other objects, too! Since the uranians are now displayed separately,
  1899.     this is no longer a problem.
  1900.  
  1901.  2) The display of midpoints was always 0.5 degree ahead of where they
  1902.     should be. For example, the midpoint of planets at 0Gem and 0Can would
  1903.     have been 15Gem30 instead of 15Gem0. Believe it or not, this bug has
  1904.     been in Astrolog since version 1.1, and I'm glad to say that it's
  1905.     *not* in version 2.2!
  1906.  
  1907.  3) If one switched X window modes from a wheel chart to the
  1908.     relationship aspect grid, extra junk would be displayed in some cells.
  1909.     The aspect grid routine has been fixed now to make sure that those
  1910.     cells that don't have aspects in them stay blank.
  1911.  
  1912.  4) Attempting to display a chart with no time or space (i.e. a chart
  1913.     generated with the -o0 option) in an X window would dump core if the
  1914.     chart information was also to be printed at the bottom of the window.
  1915.     Now, these charts are no longer a problem, and as with the standard
  1916.     listing, these charts are flagged as existing outside the space time
  1917.     continuum.
  1918.  
  1919.  5) The -Z local horizon chart when displayed in an X window would fail
  1920.     to recognize the -R restrictions before, and they properly do now.
  1921.  
  1922.  6) Certain VMS X window systems didn't like the procedure I named
  1923.     "box" in the graphics portion (was already defined). This has been
  1924.     renamed to eliminate the problem.
  1925.  
  1926.  7) When downloading the Astrolog source code, certain systems didn't
  1927.     correctly transfer lines that began with a decimal point (e.g. the
  1928.     numbers in the planetary data area). These have been prefixed with 0's
  1929.     to fix the problem.
  1930.  
  1931.  8) Even when compiling for non X window systems, the previous version
  1932.     would still compile in the graphics draw tables and world map data.
  1933.     Although this wouldn't affect the running any, it would needlessly
  1934.     make the executable larger. Now, trust that the only data compiled
  1935.     into the program will be what the user wants as expressed in the
  1936.     compile time options.
  1937.  
  1938.  9) The X window response time was very slow if the world map was ever
  1939.     displayed in the lowest scale size, due to continuous error processing
  1940.     since the vertical axis of these maps were smaller than the
  1941.     established minimum window size. The minimum window size allowed has
  1942.     been adjusted to accomodate all scale sizes. Also, on a related note,
  1943.     Astrolog windows behave better when one resizes them: instead of
  1944.     immediately resizing the window to within bounds if one makes the
  1945.     window too big or small, it now won't allow windows to be stretched
  1946.     beyond the established limits.
  1947.  
  1948.  0) Finally a warning for PC users: You will probably want to change
  1949.     the value of DIVISIONS in astrolog.h from its current value of 24 to a
  1950.     lower value like 6 or so. Leaving it as is invoked complaints of
  1951.     extreme slowness and occasional multiple hits in the -d aspect search
  1952.     routine, where the same aspect would get listed more than once. Also
  1953.     for PC users, I eliminated the problem of the 16 bit PC ints not
  1954.     having enough precision to compare with the 32 bit Unix ints, in that
  1955.     everything is done using longs now.
  1956.  
  1957.  ************************************************
  1958.  Astrolog 2.25 posted Thu, 18 Jun 92 18:54:43 GMT
  1959.  ************************************************
  1960.  
  1961.  After posting version 2.20 to alt.astrology, I found one small bug and
  1962.  a few omissions, so I simply made those changes before posting
  1963.  Astrolog 2.25 to comp.sources.misc. To be honest, I did add one small
  1964.  feature or two, but nothing major.
  1965.  
  1966.  Anyway, here is a list of the changes I made in version 2.25:
  1967.  
  1968.  1) Bug fix: Version 2.20 has a bug which I accidentally introduced, in
  1969.  which the planet declination values in the standard -v chart listing
  1970.  would always be positive. Version 2.25 fixes this. (This is basically
  1971.  the only change that will affect non X windows users.)
  1972.  
  1973.  2) Omission: When pressing the 'H' key in an X window to get a list of
  1974.  valid keypresses, version 2.20 wouldn't display all the keys
  1975.  available, since I forgot to include some of them in that help list.
  1976.  The key press features that I forgot to include, which are now
  1977.  properly listed in 2.25, were: The 'h' heliocentric toggle, the 's'
  1978.  siderial zodiac toggle, the 'B' dump window to root background key,
  1979.  and the 'v' dump chart positions to text screen key.
  1980.  
  1981.  3) Omission: Related to the above, I forgot to include the new -ga
  1982.  applying vs. separating aspect grid switch in the -H help list. (It
  1983.  would still work correctly, it just wasn't listed.)
  1984.  
  1985.  4) New features: In X windows, press the 'f' key to toggle the status
  1986.  of whether or not the chart should be modified to correspond to the
  1987.  appropriate domal chart (where the house positions are represented as
  1988.  zodiac positions and vice versa). Press the 'F' key to toggle the
  1989.  status of whether or not the chart should be modified to correspond to
  1990.  a decan chart (where each sign is divided in thirds representing the
  1991.  two other signs in its element). These keys of course correspond the
  1992.  -f, and -3 options, respectively.
  1993.  
  1994.  5) Enhancement: The -XP polar globe view feature can now be animated.
  1995.  Before, entering animation mode with such a view in place would yield
  1996.  no visible effect. Now, such a chart will rotate about pole in the
  1997.  center of the screen.
  1998.  
  1999.  6) I probably should have made this more clear in the version 2.20
  2000.  "Update" file before, but when compiling, be sure to change the values
  2001.  in the "astrolog.dat" file, in addition to the "astrolog.h" file, to
  2002.  correspond to your present location. The documentation now makes this
  2003.  more clear, and includes one large "Helpfile" listing all of the
  2004.  features and documentation in this version of Astrolog. (Remember when
  2005.  posting version 2.20 here, I just included a list of changes added to
  2006.  version 2.10; the new Helpfile is a large stand alone documentation.)
  2007.  
  2008.  7) Finally, I should mention that my e-mail address has changed. It is
  2009.  no longer pullen@lynx.cs.washington.edu, and this change has been made
  2010.  to the code and documentation of version 2.25.
  2011.  
  2012.  ************************************************
  2013.  Astrolog 2.30 posted Fri, 12 Sep 92 01:20:42 GMT
  2014.  ************************************************
  2015.  
  2016.  Precisely one year ago today I posted the very first version of our
  2017.  Astrolog astrology program to this newsgroup! Today, being the first
  2018.  anniversary of that version 1.00, is an appropriate time to release
  2019.  the newest version of Astrolog: 2.30. Today is also a nice day
  2020.  astrologically for such an activity: We have an energetic Moon Uranus
  2021.  Sextile, a Mercury Neptune Trine enhancing mystical thinking, Mars is
  2022.  in the last degree of mental Gemini, and of course, we have the
  2023.  technical yet spiritual Virgo/Pisces Full Moon!
  2024.  
  2025.  This file describes the new features, changes, and bug fixes in
  2026.  version 2.30 of Astrolog (over the most recent previous version, 2.25,
  2027.  posted ~3 months ago). Although this new version is a stand alone
  2028.  program, this Update file requires knowledge of the features of
  2029.  version 2.20 or 2.25 in order to make sense. If you aren't familiar
  2030.  with version 2.20 or 2.25, get and read the version 2.25 Helpfile that
  2031.  was posted earlier, or get it from any comp.sources.misc archive. (I
  2032.  ask the maintainer of the hilbert.maths.utas.edu.au alt.astrology ftp
  2033.  site to please add the code for this version to the /pub/astrology
  2034.  directory along with previous versions. I'm not presently planning on
  2035.  posting this version to comp.sources.misc right away, since I just
  2036.  posted version 2.25, but a future version 2.40 will certainly be.)
  2037.  
  2038.  Some of the things added to version 2.30 are general interpretations
  2039.  of planet positions and aspects, more support for aspects and making
  2040.  the charts look better, and several new functions not directly related
  2041.  to astrology but still very useful, and of course a few important bug
  2042.  fixes. Although most of the changes were for the text displays,
  2043.  nevertheless X window users should like the new local space star chart
  2044.  display. Ability to have some graphics even on a non-X window system
  2045.  is supported, and I finally got around to commenting all the code!
  2046.  
  2047.  This post of Astrolog consists of 12 articles. They are: this Update
  2048.  file, the 8 source files, the standard astrolog.dat defaults file, the
  2049.  Unix Makefile, and a version History file, all the rest of which
  2050.  should be near this one in the article list. (I'm working on updating
  2051.  the comprehensive feature list to reflect version 2.30, and hopefully
  2052.  even a user friendly Astrolog FAQ file, but for now we'll have to do
  2053.  with the version 2.25 one and this Update list.) To make extracting
  2054.  the files easy for all users, I've posted the files straight in ascii
  2055.  form to the net with no .sig files or "cut-here" prompts; in rn, one
  2056.  can extract the article with the "w" command and not have to use an
  2057.  editor on the file afterward.
  2058.  
  2059.  --
  2060.  
  2061.  As with previous versions, a few changes have been made to this
  2062.  version, i.e. not just new features, but some things valid before are
  2063.  no longer so. A list of these follows:
  2064.  
  2065.  1) The -AO switch allowing one to specify maximum orbs for aspects,
  2066.  but which as a side effect suspended maximum orbs that particular
  2067.  planets imposed, was a limited and unintuitive way to deal with
  2068.  aspects. This switch has been completely eliminated. Now, one uses
  2069.  just the -Ao switch to give orbs for aspects. To deal with orbs that
  2070.  planets themselves impose, use the new -Am switch described later. In
  2071.  addition, one no longer uses -Ao by passing in a list of orbs for the
  2072.  aspects. Now, the -Ao switch works clearer: it takes two parameters,
  2073.  the index of the aspect, and then what that aspect's orb should be.
  2074.  
  2075.  2) Astrolog.dat files for versions 2.25 and before won't work with
  2076.  version 2.30, because now there are additional definable parameters
  2077.  inserted in this file. For the -I influence interpretation chart, the
  2078.  power given to planets in ruling sign, planets exalted in sign,
  2079.  planets in ruling house, and planets exalted in house, may now be
  2080.  specified. In addition, there are some additional lists in the file
  2081.  dealing with aspects that will be described later.
  2082.  
  2083.  3) This is minor, but the calculation of the powers of aspects in the
  2084.  -I influence chart has been changed. Now, the power of an aspect is
  2085.  more accurately based on the total power of the planet in its
  2086.  placement, as opposed to just based on the inherent planet itself. In
  2087.  other words, for example, a Conjunction between, say Venus and the
  2088.  Sun, now gives more power to Venus if the Sun is in its ruling sign
  2089.  Leo than if it is in Aquarius. This will of course tend to make all
  2090.  the aspect power quantities in the -I list a bit higher.
  2091.  
  2092.  4) As with other versions, the true default chart in the program, i.e.
  2093.  the chart the program displays if one forces it to output chart
  2094.  information even when a chart isn't being dealt with, e.g. displaying
  2095.  a non-chart related X window -XG globe display, and then reverting to
  2096.  a wheel chart, has been changed. Now it is set to the chart for the
  2097.  posting of this program itself, i.e. the time of the Full Moon here in
  2098.  Seattle: Sep 11, 1992 7:18pm (-7:00 GMT) 122W20 47W36.
  2099.  
  2100.  5) Finally, unrelated to the program itself, I was just thinking about
  2101.  how we deal with Daylight Saving Time. Now, I've always said that one
  2102.  should subtract one hour from the time in question if Daylight time
  2103.  was in effect. This will generate the chart properly. However, I was
  2104.  thinking that what really happens when Daylight Time arrives is that
  2105.  the whole time zone shifts forward one hour, in that the local time is
  2106.  still correct, it's just that the relation to GMT has changed an hour.
  2107.  In other words, when casting charts for Daylight Time, one should
  2108.  subtract one hour from the time zone entered, and not the local time
  2109.  itself. Now, the chart will be displayed properly either way, but it
  2110.  seems that the one with the shifted time zone is clearer. I wanted to
  2111.  bring up the subject so each can choose what they prefer.
  2112.  
  2113.  --
  2114.  
  2115.  Now, a comprehensive list of the features and extensions added to this
  2116.  version of Astrolog follows:
  2117.  
  2118.  A) A brief interpretation of the meaning of the positioning of each
  2119.  planet in its sign and house is supported with the -vI switch. If one
  2120.  includes the -vI switch, then instead of the standard -v listing of
  2121.  planet positions, the planet positions will be listed with a brief
  2122.  interpretation of what they mean. Again, I have to say that this is a
  2123.  pretty limited version of interpretation, being nothing more than a
  2124.  combining of phrases representing the planet, sign, and house in
  2125.  question; nevertheless, people who don't know how to interpret charts
  2126.  might find this to be of use (or at least amusing. :)
  2127.  
  2128.  B) Similar to the above, ability to give a brief interpretation of
  2129.  each aspect in the aspect grid is supported with the -gI switch. When
  2130.  the -gI switch is included, the standard -g aspect grid will be
  2131.  replaced with a list of each aspect occurring and a brief listing of
  2132.  what it means. Again, this is mainly just a lookup of the general
  2133.  meanings of each planet and the aspect in question, but still might be
  2134.  found of interest by some. (Note: only the first 11 aspects, out to
  2135.  the Bi-Quintile, can be considered.)
  2136.  
  2137.  C) Related to the above, the -I0 switch, invoked by itself, will
  2138.  display the general meanings of each sign, each house, each planet,
  2139.  and each aspect, on the screen. This is more or less the database the
  2140.  program uses to base the above interpretations on.
  2141.  
  2142.  D) The -g text aspect grid now displays orbs to the nearest minute
  2143.  instead of only to the tenth of degree as before. Also, midpoints are
  2144.  displayed to the nearest minute instead of just to the degree. And,
  2145.  on the main diagonal (or edges if a relationship aspect grid) is
  2146.  displayed the sign of the planet in question in addition to the planet
  2147.  name itself. This extra accuracy comes from my making each cell in the
  2148.  grid 3x3 characters instead of just 3x2 as before, which gives more
  2149.  room to print information. This change should make the aspect part of
  2150.  the program much more useful and easy to read for text users. There's
  2151.  been one more nice change: the unintuitive '.' for positive orbs and
  2152.  ',' for negative orbs has been replaced with a logical '+' for
  2153.  positive and '-' for negative; for the -ga aspect grids we have a 'a'
  2154.  for applying aspects and 's' for separating. (Satisfied yet Maggie? ;)
  2155.  
  2156.  E) Ability to explicitly specify maximum orbs that any aspect can make
  2157.  to a particular planet is supported with the -Am switch. This is used
  2158.  for objects like the North Node which require narrower orbs than what
  2159.  the aspects themselves normally allow. The -Am switch takes two
  2160.  parameters: the first to indicate the index of the object, and the
  2161.  second to indicate what the maximum orb allowed to it will be. By
  2162.  default, the only objects with restriction are the Node, Part of
  2163.  Fortune, Vertex, and stars, which allow a 2 degree max orb to them.
  2164.  With this option, one can change these limits or impose restrictions
  2165.  for other planets too. (Before, these particular values were forced.)
  2166.  The astrolog.dat file has been expanded to read in the default planet
  2167.  orbs for the first 20 objects.
  2168.  
  2169.  F) Ability to widen an aspect orb for any planet is supported with the
  2170.  -Ad switch. This is used for objects like the Sun and Moon which allow
  2171.  wider orbs to them then what the aspects themselves allow. Like the
  2172.  -Am switch, this -Ad switch takes two parameters: the first to
  2173.  indicate the object, and the second to indicate how much wider orbs
  2174.  allowed to it will be. By default, the only objects which have orbs
  2175.  widened for them are the Sun and Moon, each of which adds one degree
  2176.  to the orb of any aspect to it, and these particular values were
  2177.  forced. With this option, one can change these additions or allow
  2178.  other objects to have them, too. The astrolog.dat file has been
  2179.  expanded to read in these orb additions for the first 20 planets.
  2180.  
  2181.  G) Biorythm charts are now supported by Astrolog with the -rb switch!
  2182.  Although not directly related to Astrology, the concepts are similar,
  2183.  and adding this didn't require much extra code, and since some are
  2184.  interested in this, I felt I'd add it in. The biorythm theory says
  2185.  that we have have three main types of energy: Physical, Emotional, and
  2186.  Intellectual. These three run in continuous wave cycles from high to
  2187.  low, each of which repeats about every 30 days or so. Therefore, a
  2188.  biorythm chart for a particular day should describe how much energy
  2189.  one has or how they are feeling in this area. Now, Astrolog considers
  2190.  biorythm charts as a type of relationship chart, because in order to
  2191.  generate one, two dates or charts are needed: the birth date of the
  2192.  person, and the date to cast their chart for. Technically the program
  2193.  will replace the standard -v listing of planet positions with the
  2194.  biorythm chart when -rb is in effect. As an example, "-rb file1 file2"
  2195.  will cast the chart for the birthday signified by chart1 or chart2
  2196.  (whichever is older) for the date in the other file. Remember that one
  2197.  can substitude the pseudo filename 'tty' to mean get the chart info
  2198.  from the terminal instead.
  2199.  
  2200.  The actual biorythm chart itself will display, for the day in
  2201.  question, what the percentages of the physical, emotional, and
  2202.  intellectual cycles are, as numbers from -100% (low ebb) to +100%
  2203.  (happy and full of energy). In addition, the biorythm percentages for
  2204.  the seven days before (T-7 days) and the seven days after (T+7 days)
  2205.  the date in question will be listed, too, so one can see if the cycles
  2206.  are rising or falling. Finally, as a cute way to help in
  2207.  interpretation, the program prints the appropriate smiley, medium, or
  2208.  sad face after each percentage. (BTW, it takes over 58 years for all
  2209.  three cycles together to synchronize and repeat themselves.)
  2210.  
  2211.  H) Another useful non-astrological function added is the ability to
  2212.  determine how many days have passed between two dates, with the -rd
  2213.  switch. As with the -rb option, this is considered a relationship
  2214.  "chart" because it requires the input of two different dates, and when
  2215.  -rd is in effect, again the standard -v planet position listing will
  2216.  be replaced by a line telling how many days are in the interval. For
  2217.  example, "-rd person1 person2", will display how many days person1 is
  2218.  older than person2 (or the other day around). Want to find out how
  2219.  many days old you will be on Jan. 1, 2000? Do "-rd yourchart tty", and
  2220.  type in the first date of the next millenium, and see what you get!
  2221.  
  2222.  I) The -t option has been enhanced based on the above two new
  2223.  features. Remember, the -t option is a shorthand for specifying a
  2224.  relationship comparision chart where one of the charts is that for the
  2225.  current moment now (assuming you have TIME compiled in.) The -tb
  2226.  <file> switch will display the person indicated in file's biorythm for
  2227.  today. The -td <file> switch will display how many days old the person
  2228.  in the file is today.
  2229.  
  2230.  J) Just as the -1 option is use to cast a chart with an object on the
  2231.  Ascendant, the new -2 <object> switch will cast a chart with the
  2232.  specified object on the Midheaven. The house cusps will be rotated so
  2233.  that the object in question is conjunct the 10th house cusp. If
  2234.  <object> is not specified, the Sun will be assumed by default.
  2235.  
  2236.  K) The new -F option is used to force a particular object's position
  2237.  to always be a particular location in the zodiac. This feature can be
  2238.  used as an easy way to manually include things Astrolog normally
  2239.  doesn't in various charts. For example, this can be used to force the
  2240.  position of some minor thing, like the Vertex, to always be the
  2241.  location of whatever you prefer, like the 0 degrees Aries point, or an
  2242.  important midpoint. Then you can do an aspect grid, transit search, or
  2243.  whatever, and calculate aspects to midpoints or transits over
  2244.  midpoints. The -F switch takes three arguments: first is the index of
  2245.  the object to replace, next is the sign from 1..12 to force it to be,
  2246.  and third is the degree within the sign. For example, if I want to see
  2247.  if anything is making an exact aspect today with my Sun Moon midpoint
  2248.  at 6Sag28, I could do "astrolog -n -d -F 16 9 6.28", which would
  2249.  replace the North Node with my Sun Moon midpoint in the aspect search.
  2250.  
  2251.  L) The -+ add number of days to chart before casting it option has
  2252.  been changed to make the chart header show the date of the actual new
  2253.  chart, instead of the original one. For example, today (9-11), if I do
  2254.  "astrolog -n -+ 2" I will get the chart for two days from now, and the
  2255.  chart header will display 9-13. (Before, the proper chart for 9-13
  2256.  would get displayed, but the chart header would still say the date of
  2257.  the original 9-11 chart.) This change is more intuitive, and even has
  2258.  some special uses. For example, if you want to know what the date
  2259.  was/will be when you are 10000 days old, do "astrolog -i yourchart -+
  2260.  10000" and see what the date in the resulting chart header is.
  2261.  
  2262.  M) The -w text chart wheel display has a small addition to the chart
  2263.  header information displayed in the middle of the wheel: the day of
  2264.  the week that the date falls on. This may seem minor, but this is a
  2265.  way to calculate the day of the week for any date. If you forgot what
  2266.  day of the week you were born on, display your chart with the -w
  2267.  switch, and ignore the chart and just check the day of the week in the
  2268.  header information. Similarly, one could use this to make a calendar
  2269.  for any particular month by casting a -w chart for the 1st of the
  2270.  month in question, and building the calendar from that starting point.
  2271.  
  2272.  N) The -H0 switch will display a list of the 12 signs of the zodiac,
  2273.  and the 12 houses, listing their standard and traditional names. This
  2274.  is similar to switches like -O or -A, in that it displays lists of
  2275.  things (objects, aspects, or in this case the signs) that Astrolog
  2276.  uses in its charts.
  2277.  
  2278.  O) One more summation field has been added in the -v planet position
  2279.  list chart to the right of the element table. (Presently we have the
  2280.  number of objects in positive and negative polarity signs, in the
  2281.  upper and lower halves in the chart, and in the Eastern and Western
  2282.  halves of the chart.) The new field is a division of objects into the
  2283.  first six and second six signs of the zodiac. The number of objects in
  2284.  the first six signs of the zodiac will be printed, labeled by the
  2285.  character '<'. (The number in the second half isn't printed; just
  2286.  subtract from the total if you want to know.) According to a book on
  2287.  the Kaballah, the emphasis of the first six signs on the zodiac is on
  2288.  "what's to learn", and the emphasis on the second six signs is on
  2289.  "what's to share". Use or interpret this as you wish.
  2290.  
  2291.  P) I have taken the liberty to define ruling and exalting signs for
  2292.  the asteroids (and the rest of the first twenty objects that don't
  2293.  already have them.) This won't affect much other than whether a 'R',
  2294.  'F', 'e', or 'd' is displayed in the -v charts, but it will slightly
  2295.  affect the powers given to these objects in the -I influence chart
  2296.  since they now can be in their ruling sign. The -O object list will
  2297.  display the list of ruling and exalting signs (and the fall and
  2298.  debilitating signs which are just opposite the above) for all these
  2299.  objects in addition to the planets; however, I have listed them below:
  2300.  
  2301.  Chiron, the compassionate, experienced healer, is most similar in
  2302.  function to Pisces, hence Chiron rules here. Chrion expresses well in
  2303.  caring, feeling, Cancer, hence Chiron exalts here. Ceres, goddess of
  2304.  agriculture and representing the mothering, reproductive instinct, is
  2305.  similar in function to Taurus, hence Ceres rules here. Ceres expresses
  2306.  well in the nurturing, caring, sign of Cancer, hence Ceres exalts
  2307.  here. Pallas Athena, mentally acute and unemotional, is most similar
  2308.  in function to Virgo, hence Pallas rules here. Pallas expresses well
  2309.  in practical, disciplined, introverted Capricorn, hence Pallas exalts
  2310.  here. Juno, ability to sacrifice self-interests to maintain a
  2311.  relationship, is most similar in function to relationship oriented
  2312.  Libra, hence Juno rules here. Juno expresses well in sociable, crowd
  2313.  pleasing Leo, hence Juno exalts here. Vesta, with its orientation to
  2314.  directing hidden creative or sexual energy without fear, is most
  2315.  similar in function to Scorpio, hence Vesta rules here. Vesta
  2316.  expresses well in individualistic, quirky Aquarius, hence Vesta exalts
  2317.  here. The North Node, with its emphasis on being able to break from
  2318.  the past routine and pursue the unfamiliar and personal growth, is
  2319.  most similar in function to soceity questioning independent Aquarius,
  2320.  hence it rules here. The Node expresses well in growth and sacrifice
  2321.  oriented Virgo, hence the Node exalts here. The Part of Fortune is
  2322.  calculated based on the positions of the Sun, Moon, and Ascendant; if
  2323.  these three objects are in their ruling signs, then the Fortune will
  2324.  fall in Pisces, hence the Fortune should rule here. Similarly, if the
  2325.  Sun, Moon, and Ascendant are all in their exalting signs, then the
  2326.  Fortune will fall in Aquarius, hence the Fortune should exalt here.
  2327.  The Midheaven, being the 10th house cusp, corresponds to Capricorn,
  2328.  ruled by Saturn. Hence the Midheaven's ruling and exalting signs are
  2329.  the same as Saturn's: Capricorn and Libra. The Ascendant corresponds
  2330.  similarly to Mars, hence its ruling and exalting signs are the same:
  2331.  Aries and Capricorn. The Vertex, being always near the Descendant,
  2332.  corresponds to Libra, and hence has the same rulership and exaltation
  2333.  as Venus: Libra and Pisces.
  2334.  
  2335.  Q) The user interface where one manually inputs the chart information
  2336.  has been enhanced in a few ways. First, the true names of months or
  2337.  their abbreviations may be entered (in upper or lower case) instead of
  2338.  the corresponding number if you prefer. At most the first three
  2339.  letters of the month are needed; some months (like February which is
  2340.  the only month starting with "F") may be abbreviated all the way up to
  2341.  their first letter. The second enhancement is that the time value may
  2342.  be entered with a "pm" or "am" (or just "p" and "a") suffix in
  2343.  addition to the standard 24 hour clock always used up to now. For
  2344.  example, instead of entering "18.30" for "6:30pm", you can enter
  2345.  "6.30pm" or even "6.3p" and the program will process it the same.
  2346.  Similarly, "12.30am" can be used instead of "0.30", and so on. The
  2347.  final enhancement is that colons may be used instead of decimal points
  2348.  for the time and location values. For example "6.30" may be entered as
  2349.  "6:30" intead, and longitude values like "122.20" may be entered
  2350.  "122:20", which is more intuitive than those earlier decimal points.
  2351.  
  2352.  R) One more object, another star, has been added to the program.
  2353.  Actually, this isn't really a star, but the Andromeda (M31) Galaxy.
  2354.  This is the closest galaxy to our own Milky Way, and various
  2355.  extraterrestrial hierarchies are said to be based there, so its
  2356.  position should be of significance. Its object index is that of the
  2357.  very last object in the program, which is presently #79.
  2358.  
  2359.  S) Finally, all the C source files for the program have been
  2360.  completely commented! Although it may not be commented heavily, at
  2361.  least every routine has a comment describing what it does, and
  2362.  Astrolog is now a more respectable program as opposed to being a huge
  2363.  HACK! (Actually, I probably could have doubled the number of features
  2364.  added to this version of the program if I didn't spend all that time
  2365.  putting in those comments! :)
  2366.  
  2367.  Now, for a list of the new features added in the graphics area:
  2368.  
  2369.  T) There is a new compile time variable dealing with graphics (in
  2370.  addition to the X11 one) called GRAPH. One comments out the #define
  2371.  GRAPH line if they don't want graphics, and not just if they don't
  2372.  have X windows. In other words, one can now generate most of
  2373.  Astrolog's graphics charts even if they don't have X windows. (The X11
  2374.  #define is still there for we X windows users who will find the
  2375.  graphics features just as before.) Now, when GRAPH is defined but X11
  2376.  isn't, the program will generate the charts, but just never try to
  2377.  bring up a window; it will simply always assume that you are writing a
  2378.  bitmap file. The bitmap file will contain a (unfortunately always
  2379.  black and white) image of what would normally be in the window, just
  2380.  as the -Xb switch does. One can then use any of various graphics
  2381.  utilities to convert the image into something they can display on
  2382.  their system. (Any system that can compile Astrolog should be able to
  2383.  compile in the non X window graphics features as well.)
  2384.  
  2385.  U) A new graphics chart is available through the -Z0 switch: local
  2386.  horizon charts suitable for stargazing. Now, as in previous versions,
  2387.  the normal -Z switch generates a listing of the planets with repect to
  2388.  the local horizon, and the -Z combined with the -X switch generates a
  2389.  graphic image of the planets and stars on the local horizon. This
  2390.  chart assumes one is facing due south, and is divided left to right by
  2391.  the horizon line, with straight up being toward the top of the screen
  2392.  and straight down toward the bottom. This is a good chart, especially
  2393.  for noticing the rising and setting of planets and other objects, but
  2394.  the fact that the meridian is split up causes distortion when trying
  2395.  to view objects high up in the sky. Therefore, if one combines the new
  2396.  -Z0 switch with the -X switch, a new differently oriented local
  2397.  horizon chart will be displayed. Here, the zenith point straight up is
  2398.  in the center of the screen, and the horizon line is a surrounding
  2399.  circle. Due north is along the line from the center to the top of the
  2400.  screen, due south is on the line from the center to the bottom, east
  2401.  is to the left, and west is to the right. In other words, this is just
  2402.  like what one would see if they were lying on their back looking
  2403.  straight up with their feet to the south, so this should be better for
  2404.  stargazing. Outside the circle marks what's below the horizon, and the
  2405.  extreme corners of the screen mark the nadir - what's straight down.
  2406.  As with the normal -Z graphic chart, this one has the various axes
  2407.  marked at five degree increments.
  2408.  
  2409.  V) The new -XW0 switch is just like the normal -XW switch in that it
  2410.  just displays the world map and nothing else, except that this new
  2411.  -XW0 map generated will be in what's called the Mollewide projection,
  2412.  a good looking form often used for maps of the world, as opposed to
  2413.  the standard rectangular map projection used up until now which
  2414.  distorts the polar regions of the globe across the top and bottom of
  2415.  the screen. (The Mollewide projection pinches the polar regions
  2416.  together, generating a elliptical map, which is similar to the -XG
  2417.  globe displays, but which shows the whole world instead of just half.)
  2418.  
  2419.  W) The -XW and -XW0 maps can be animated like as the -XG globe display
  2420.  can. Animation of these maps (which before would just sit there) are
  2421.  done by shifting the whole map to one side or the other. In fact, such
  2422.  a feature can be used indirectly to shift one of the X window
  2423.  astro-graph charts (which are drawn on the world map) from the normal
  2424.  case of having the date line on the edges of the screen: Go into the
  2425.  world map or globe display, animate it a bit, and then change graphic
  2426.  modes to display the astro-graph chart, and it will be shifted by the
  2427.  corresponding amount. (Note that animating the astro-graph screen
  2428.  itself will change the chart info, not how the screen itself is done.)
  2429.  
  2430.  X) Because the -XW world map, and -XP polar globe display, can be
  2431.  animated just as the -XG general globe display can, the -XW and -XP
  2432.  switches now accept optional parameters on the command line that will
  2433.  specify what degree (from 0 to 359) to start the map at, just like the
  2434.  -XG switch does. In addition, the -XG option itself accepts a second
  2435.  optional parameter, which is the starting angle for the globe's tilt,
  2436.  from -90 to +90 degrees.
  2437.  
  2438.  Y) A new bitmap output mode has been added to the graphics routines.
  2439.  If one changes BITMAPMODE in astrolog.h to the character 'A' when
  2440.  compiling, then all bitmaps output will be in a straight ascii form,
  2441.  with one character corresponding to each pixel. This format is
  2442.  identical to the result produced by the unix command bmtoa, and it can
  2443.  be converted back into a bitmap with the unix command atobm. Although
  2444.  not as efficient spacewise, this is a simpler format, and is
  2445.  recommended for those without X windows who are still using Astrolog's
  2446.  graphics, if they want to write their own conversion program.
  2447.  
  2448.  Z) This is probably more of a glitch fix than a new feature, but
  2449.  anyway one may have noticed that text would never get printed in a
  2450.  bitmap. This could be problem, because it meant that the chart
  2451.  information couldn't be shown, and the actual object labels of stars
  2452.  and other things without glyphs wouldn't appear in bitmaps. This was
  2453.  caused by the fact that the program always used the X library text
  2454.  printing routine to show any text. Well, now Astrolog includes its own
  2455.  internal 6x10 text font, which works just as well as the X library's
  2456.  does, and which can be written in the -Xb bitmaps as well.
  2457.  
  2458.  Well, I've reached the end of the alphabet, so this concludes the 26
  2459.  new features in Astrolog 2.30 :)
  2460.  
  2461.  --
  2462.  
  2463.  And now for a list of bugs in version 2.25 that have now been fixed:
  2464.  
  2465.  1) A very major bug caused all the positions of the stars to always be
  2466.  about 25 degrees farther in the zodiac than they should have been. In
  2467.  other words, all the stars were in the wrong positions and this
  2468.  feature was basically useless in version 2.25. All the stars are now
  2469.  in their proper positions at all times.
  2470.  
  2471.  2) The entire X astro-graph chart would be shifted a large amount if
  2472.  the longitude of the chart in question was different from the present
  2473.  default longitude. This was because the program improperly used the
  2474.  default longitude instead of the longitude of the chart in question in
  2475.  the astro-graph routine. This was only in the X version; the text
  2476.  astro-graph routine would always work fine. Now they both work
  2477.  properly.
  2478.  
  2479.  3) The locations of the lines in both the text and X astro-graph
  2480.  routines would slightly change if one changed the location of the
  2481.  chart in question. This was minor and almost unnoticeable, since the
  2482.  abberation would never be more than a degree in any direction.
  2483.  Nevertheless, astro-graph charts should be based only on birth time
  2484.  and never on location, so this was a slight problem. This has been
  2485.  fixed so the astro-graph charts are always identical no matter what
  2486.  the location data may be.
  2487.  
  2488.  4) A glitch in command switch processing would allow any time zone
  2489.  except zero to be passed to the -z switch. Now, "-z 0" is accepted and
  2490.  properly processed.
  2491.  
  2492.  5) The -rm time space midpoint chart would occasionally have the
  2493.  longitude of the resulting chart 180 degrees off from where it should
  2494.  be, if both charts were close to different sides of the date line.
  2495.  This will no longer happen.
  2496.  
  2497.  6) Those objects which imposed maximum limits upon the aspect orbs
  2498.  that any other object could make with it, e.g. 2.0 degrees for the
  2499.  North Node and others, would force this value to be the orb with it
  2500.  even if the orb for the aspect in question was less. For example, if
  2501.  one set septiles to have a max orb of 1 degree, then the program would
  2502.  still allow a 2 degree septile between the planet in question and the
  2503.  north node to appear in the grid. This has been fixed, and now the
  2504.  lesser between the aspect's defined orb and the object's defined orb
  2505.  is used to determine if an aspect is in effect.
  2506.  
  2507.  7) The -Ao and -AO switches would work properly, but would cause
  2508.  additional command line switches after their aspect orb lists to not
  2509.  get processed. This has been fixed.
  2510.  
  2511.  8) Finally, the fiasco caused for PC users by my inserting #define int
  2512.  long in the code to fix the fact that PC's ints are only 16 bits has
  2513.  been remedied. Now, ints remain ints, and those variables in the code
  2514.  which require 32 bits are specifically defined long, which is what I
  2515.  should have done in the first place. In fact, to save space, some
  2516.  large arrays were able to be declared in 8 bit chars, so the problem
  2517.  of PC's running out of global variable space should no longer be a
  2518.  problem.
  2519.  
  2520.  ************************************************
  2521.  Astrolog 2.40 posted Wed, 20 Jan 93 03:23:16 GMT
  2522.  ************************************************
  2523.  
  2524.       Surprise! The Sun enters Aquarius today, sign of the unexpected.
  2525.  (Aquarius quote: I'm not weird, everyone else is :) To appropriately
  2526.  honor one of my favorite signs of the zodiac, I am releasing the
  2527.  newest version of Astrolog: 2.40!
  2528.  
  2529.       This particular file describes the new features and bug fixes in
  2530.  version 2.40 of Astrolog (over the formerly most recent version, 2.30,
  2531.  posted four months ago). This new version is a stand alone program;
  2532.  however, this Update file requires knowledge of the features in
  2533.  version 2.30 in order to be of much use. If you aren't already
  2534.  familiar with version 2.30, get and read the version 2.30 Helpfile
  2535.  that was posted here last month, which should be available at our
  2536.  alt.astrology anonymous ftp site at hilbert.maths.utas.edu.au.
  2537.  
  2538.       The main new things added to version 2.40 are ansi mode graphics
  2539.  and color for text charts, and midpoint charts, in addition to much
  2540.  improved PC support. This is the first version that I've ever
  2541.  personally tested and run on a PC, so it should run just as smoothly
  2542.  on a PC as on a Unix system with X windows. X window graphics support,
  2543.  although I haven't added very much to this release, at least is as
  2544.  easy to work with as before, and is less buggy too.
  2545.  
  2546.       The long awaited PC windows graphics that I've promised are not
  2547.  here yet. It is however very easy now to compile with the GRAPH option
  2548.  set, so PC users can generate bitmaps. Under Microsoft Windows at
  2549.  least one can generate a Windows .bmp file and then go set their
  2550.  background to it, indirectly simulating the -XB switch used by X
  2551.  users. Since (1) all the former versions of Astrolog have been
  2552.  difficult to compile for PC's, (2) I have a nice easily compilable
  2553.  version right now with some decent new features, (3) The real version
  2554.  I was planning on posting will still take a couple of months, (4)
  2555.  There were unfortunately a few bugs in version 2.30 that would cause
  2556.  problems on Unix and X platforms that I was getting all this email
  2557.  over, I have chosen to post this version now instead of waiting.
  2558.  There may be less new features than normal, but that will mean less
  2559.  bugs, and besides it isn't that difficult to release a new version.
  2560.  
  2561.       This post of Astrolog consists of 7 articles. First is this
  2562.  Update file. Second is instructions on how to compile along with the
  2563.  Unix Makefile and makefiles for a few other platforms. Third is the
  2564.  astrolog.dat defaults file (remember astrolog.dat files from version
  2565.  2.30 and before are not compatible with 2.40!) Fourth is the 8 source
  2566.  files all together in one big shar file (no more one source file per
  2567.  article releases!) Fifth are the same 8 source files again, but in a
  2568.  uuencoded .zip file (unix users can easily extract through the shell
  2569.  archive, while PC users will like this zip file.) Sixth is a uuencoded
  2570.  ready to run executable for PCs (of course the code should be easy to
  2571.  compile now too.) Seventh is a History file describing the things
  2572.  added to the 10 previous versions of astrolog that have been posted in
  2573.  the past. I have also put all these files in /pub/incoming/astrolog at
  2574.  the hilbert ftp site, so they should be readily accessible via ftp in
  2575.  /pub/astrology soon. As for a formal comprehensive Helpfile describing
  2576.  all the features in 2.40 together, I haven't made that up yet, but I
  2577.  will soon (and I promise it won't take me three months as it did with
  2578.  version 2.30! I don't like writing documentation! :)
  2579.  
  2580.  --
  2581.  
  2582.  Here are the new features for version 2.40 that aren't in previous releases!
  2583.  
  2584.  A. -k switch: Ansi graphics! The text charts may now be displayed in
  2585.     color, as well as with real graphics characters instead of with stuff
  2586.     like dashes and pluses. This makes the text charts look almost as
  2587.     cool as their color X11 graphic counterparts. All that's needed is a
  2588.     terminal that accepts ansi escape sequences.  You will get garbage if
  2589.     you include -k on a non-ansi terminal. Most PC's are in ansi mode, so
  2590.     if you have a PC this should work. Include the -k switch on the
  2591.     command line, and the program will display all charts as before, but
  2592.     change the color appropriately for every part of any chart printed!
  2593.     Just try a -w chart, a -g grid, or a -T list and see the difference
  2594.     of how much easier it is to find a planet or aspect among a large chart.
  2595.  
  2596.     Color isn't used randomly but is based on logic. Most colors are very
  2597.     similar to the ones chosen in the color X charts. In general,
  2598.     everything is based on the following rules for elements: Fire is Red,
  2599.     Earth is Yellow, Air is Green, and Water is Blue. Zodiac signs and
  2600.     positions are printed in the color of their element. Houses are
  2601.     printed in the color of their corresponding sign. Planets are printed
  2602.     in the color of the sign they rule. As for the other objects, we have
  2603.     the following colors: Asteroids are in bright purple (magenta),
  2604.     Uranians are in dim purple, and non-physical points like the Node,
  2605.     Fortune, and Vertex are in a bluish gray (dark cyan). Stars are
  2606.     either orange if they are bright (magnitude < 1.0) or a dark red if
  2607.     dimmer. For aspects we have the following: Conjunctions are Yellow,
  2608.     Oppositions are Blue, Squares are Red, Trines are Green, Sextiles are
  2609.     Light Blue (Cyan). For the minor aspects we have magenta for
  2610.     inconjunct/semisextile, orange for semisquare/sesquiquadrature, dark
  2611.     cyan for all the quintiles, dark purple for all the septiles, and
  2612.     dark red for all the noviles.
  2613.  
  2614.  B. -m switch: A new chart type is available: true midpoint charts.
  2615.     Before midpoints were only available in the aspect grid. Use the -m
  2616.     switch and get a list of all midpoints printed out sorted in zodiac
  2617.     order. So if you want to see if any important midpoint is close to
  2618.     your Sun, this is a much easier chart to use than to scrutinize the
  2619.     midpoint/aspect grid.
  2620.  
  2621.  C. -m0 switch: Aspects too may now be displayed in a nice ordered
  2622.     list, instead of only in the -g aspect grid. Invoke the above switch
  2623.     as -m0 instead of just -m and get a list of every aspect from the
  2624.     aspect grid printed out one per line. The order in which they are
  2625.     printed is based on the total "power" in the aspect, i.e. the
  2626.     influence of the two planets in question, the aspect in question, and
  2627.     the orb. The same info and data from the -I influence charts are used
  2628.     here, so changing those default influences will affect the ordering.
  2629.     The two planets are printed, the aspect they make, their orb, and
  2630.     then the power of the aspect used in ordering. Any power number more
  2631.     than 10 is a very major aspect. An exact Sun Moon conjunction can
  2632.     exceed 25. So, if you want to know if that exact Mars Jupiter
  2633.     conjunction is more powerful than that wide Sun Moon sextile, try a
  2634.     -m0 chart and find out at least what Astrolog's opinion is.
  2635.  
  2636.  D. -Xb switch extension: If GRAPH is defined, there is a new format
  2637.     one can output bitmap files in. The .bmp extension bitmap files
  2638.     commonly used on PC's running under Microsoft Windows are supported.
  2639.     One can change this default file mode in astrolog.h before compiling,
  2640.     or it may be specified directly as described below. If you have a PC
  2641.     running Windows, you can set your root background to be one of these
  2642.     monochrome Astrolog bitmaps by: use the -Xb option to create a bitmap
  2643.     file, then rename it to have the extension .bmp and put it in your
  2644.     Windows subdirectory, then go into Program Manager -> Control Panels
  2645.     -> Desktop and select this file to be your "wallpaper".
  2646.  
  2647.  E. -Xb switch extension: Another bitmap file extension, this one
  2648.     allows the the bitmap file mode to be changed without having to
  2649.     recompile the program, as had to be done before. Now, one can change
  2650.     the mode by putting an extra character on the command line after the
  2651.     -Xb switch. Specifically, to override the compile time mode, use -Xbn
  2652.     for a standard X11 bitmap, -Xbc for an X11 bitmap with some white
  2653.     space removed, -Xbv for a very compact X11 bitmap, -Xba for the one
  2654.     character per pixel ascii dump, and finally -Xbb for the new .bmp
  2655.     mode described above.
  2656.  
  2657.  F. -X1 <object> switch: Yet another graphics feature, this allows one
  2658.     to effectively rotate one of the graphic wheel charts so that a
  2659.     particular object is hinged to the left hand (east) edge of the
  2660.     chart. Given the -X1 switch with the index value of an object, the
  2661.     wheel is drawn but always rotated so that the object in question is
  2662.     at the left side of the chart. By default we have the ascendant at
  2663.     the left edge, of course. This is useful for tracking important
  2664.     planets so one knows where they are, but yet doesn't distort the
  2665.     house cusps as the -1 switch does. This is basically my official
  2666.     version of the "-D" switch in Andrew's 2.30 PC port posted earlier.
  2667.  
  2668.  G. -X2 <object> switch: This is identical to the -X1 switch above
  2669.     except here we rotate the entire graphic wheel so the object in
  2670.     question is always at the top of the chart. Note that during a day,
  2671.     the degree difference between the Ascendant and Midheaven varies in
  2672.     most house systems, so that with the Ascendant hinged at the left
  2673.     edge, the Midheaven will wobble back and forth near the top of the
  2674.     wheel. If you prefer, "-X2 18" will fix the Midheaven at the top of
  2675.     the screen, and the chart will be like before except the Ascendant
  2676.     will be the one to wobble near the left edge of the chart.
  2677.  
  2678.  H. The -w text wheel switch takes an optional parameter now to
  2679.     specify the size in text rows of each house printed. Before, this
  2680.     always has to be four, but now one may increase (realize this will
  2681.     make the chart require more than 24 lines to print) or decrease
  2682.     (don't know why you would want to, but you can) this value to their
  2683.     preference. The parameter may range from 1 to 10, being 4 by
  2684.     default, and with this you can nicely generate a text wheel chart
  2685.     with all 79 objects in it, which before would overflow the houses.
  2686.  
  2687.  I. The -+ and -- add/subtract number of days to current chart before
  2688.     casting options before always required a parameter. Now, this
  2689.     parameter is optional, defaulting to 1. For example, to see what
  2690.     aspects are occurring among the planets tomorrow, before you would
  2691.     have to include "-n -+ 1 -d", and now we can just do "-n -+ -d".
  2692.  
  2693.  J. The astrolog.dat file has been extended to accept three additional
  2694.     variables. First is whether the -k ansi graphics should always be in
  2695.     effect. If set, then it is assumed -k is always in affect, and one
  2696.     needs then to use the -k switch to return to normal. This is
  2697.     recommended for PC users who display charts on the screen more often
  2698.     than they print one out. Second is the default number of rows to pass
  2699.     to the -w switch. To change this before one has to recompile the
  2700.     program; now we can just change the value in the astrolog.dat file (or
  2701.     just put the value after -w). Finally, the value of DIVISIONS may be
  2702.     changed in the file. This value tells how many segments we should
  2703.     divide each day, etc, when doing aspect or transit searches (-d or
  2704.     -T). More segments is slower but can be more accurate by a minute or
  2705.     two. I suggest a value of 24 here for Unix systems and 8 for PC's, but
  2706.     now it is easy to experiment to see what would be best for you.
  2707.  
  2708.  K. Many PC users are accustomed to specifying command line parameters
  2709.     with a "/" instead of the "-" familiar in the Unix environment. Now,
  2710.     either of these formats are allowed. One may invoke a command switch
  2711.     with a dash, with a slash, or with no lead character at all, and
  2712.     Astrolog will process it properly.
  2713.  
  2714.  L. This is hardly a new feature, but the old NOASTEROIDS compile time
  2715.     option that would automatically assume -R to be in effect is gone.
  2716.     This was reduntant, and can easily be done by restricting the
  2717.     appropriate planets with the astrolog.dat file now that that's here.
  2718.  
  2719.  M. Very minor, but the -g aspect/midpoint grids now include the
  2720.     degree of each planet that is labelled down the main axis in addition
  2721.     to its zodiac sign location.
  2722.  
  2723.  --
  2724.  
  2725.  Here are the bugs in version 2.30 that have been fixed in this release.
  2726.  
  2727.  1. The default restrictions weren't read correctly from the
  2728.     astrolog.dat file. This was a major problem that was often more than
  2729.     just the program ignoring what was put in that file. Some systems
  2730.     would always crash with a bus error upon startup, while some would
  2731.     print over a dozen lines telling of "bad memory access" every time
  2732.     the program was invoked. Everything works find now (as it did in all
  2733.     versions before 2.30).
  2734.  
  2735.  2. A major bug that primarily affected some Unix users, was one which
  2736.     on some systems would prevent one from being able to open an X
  2737.     window, always giving a "Can't Open Display" message. Everything
  2738.     works fine now (again as it did in all versions before 2.30). This
  2739.     was due to an unfortunate conflict between an Astrolog and a system
  2740.     function.
  2741.  
  2742.  3. On PC systems, the transit lists would display garbage for the
  2743.     dates about 2/3 of the way down the list. This was due to an overflow
  2744.     of small ints on the PC. These lists are displayed without error now.
  2745.  
  2746.  4. Another PC glitch, this bug caused the day of the week displayed
  2747.     in the middle of the -w text wheel chart to always be off by a few
  2748.     days. This was another overflow of a 16 bit PC int that has been
  2749.     fixed.
  2750.  
  2751.  5. PC users would have all kinds of trouble if they tried to compile
  2752.     with GRAPH #define'd. The compiler would puke on the large (over one
  2753.     megabyte) bitmap array, and even if one got around this, there would
  2754.     be many flaws in the display due to still more int overflows. Well,
  2755.     now the overflows are all fixed, and the bitmap array is much more
  2756.     efficient and is down to under 64K in size! So all PC users should be
  2757.     able to run with the GRAPH option now, and finally get to see some
  2758.     graphics. (X window users will still find everything as before.)
  2759.  
  2760.  6. Astrolog.dat files from before version 2.30 were not compatible
  2761.     with 2.30 itself. This wasn't a bug, in that version 2.40 is no
  2762.     exception (version 2.30 astrolog.dat files won't work with it and
  2763.     must be replaced.) What was a problem is that version 2.30 wouldn't
  2764.     complain about these old files, and would happily read all sorts of
  2765.     erroneous data in. The program would either hang trying to read the
  2766.     old file, or would read in all kinds of crazy defaults. Now
  2767.     everything is fine, and the program will print a nice error message
  2768.     if one tries to run this version on any pre 2.40 astrolog.dat file.
  2769.  
  2770.  7. The automatic convert string month to number feature in the main
  2771.     manual data entry area would generate the wrong number for certain
  2772.     months. Simply entering numbers would always work, but typing in some
  2773.     strings such as "Jan", "Mar", "Apr", etc, would not result in the
  2774.     logical month number implied. No longer a problem.
  2775.  
  2776.  8. The -F switch was flawed in that although it would correctly
  2777.     change the location of the object in question, the original house the
  2778.     object would have been in was not updated. As a result, one could
  2779.     move a seventh house Venus in Libra over to Aries, and the program
  2780.     would display Venus in Aries, but still in the 7th house! Everything
  2781.     is updated properly now.
  2782.  
  2783.  9. In the -ga aspect grid lists, the orbs of aspects between two
  2784.     stars would always be displayed to be zero, even if this wasn't the
  2785.     case. The proper orbs between stars in the grid are printed now.
  2786.  
  2787.  10. The -1 and -2 put object on house cusp options would not allow
  2788.     one to include any of the objects beyond the first 20. This has been
  2789.     remedied, and now one may include uranians, stars, etc here.
  2790.  
  2791.  11. The -I0 general interpretations list would ignore the current -A
  2792.     number of aspects setting when it displayed the meanings of the
  2793.     aspects. Minor, but still something to be fixed.
  2794.  
  2795.  --
  2796.  
  2797.       That's it for this pre-new Moon release. Expect a version 2.50 or
  2798.  even a 3.00 with real Windows for PC's, and more interpretation stuff,
  2799.  etc, next time. Instructions to compile are in the next article with
  2800.  the Makefiles. The astrological "chart" (and hence the default chart
  2801.  in memory you get if you force an X window chart without giving any
  2802.  time) for version 2.40 is at 5:29pm PST (8 hr before GMT) on Jan 19,
  2803.  1993 here in Seattle, WA 122W20, 47N36 (cusp of Aquarius.)
  2804.  
  2805.  ************************************************
  2806.  Astrolog 3.00 posted Sun, 21 Mar 93 12:22:27 GMT
  2807.  ************************************************
  2808.  
  2809.       Behold the Vernal Equinox! Today the Sun enters Aries, and
  2810.  Spring and a new astrological year begin :) Less than 12 hours before
  2811.  the Equinox, the Saturn Pluto square became exact for the first time!
  2812.  Saturn square Pluto, utter change and transformation of structure, a
  2813.  breaking away and death of old ways. Coming up on Monday we have
  2814.  Mercury going direct, where mental activities move forward once
  2815.  again, and finally the New Moon, beginning the next monthly cycle.
  2816.  All these events coming together augur changes and endings, within
  2817.  and without, and are an excellent and appropriate opportunity for a
  2818.  new beginning in many ways... Like the next generation of Astrolog!
  2819.  
  2820.       This file describes version 3.00 of the Astrolog computer
  2821.  program for astrology. Described are new features added on to the
  2822.  previous release, version 2.40, posted two months ago, and bug fixes
  2823.  and other changes made. Versions 1.00 through 1.40 were the first
  2824.  ones, and established Astrolog as a calculation and text chart
  2825.  generator. Versions 2.00 through 2.40 saw graphics for X windows and
  2826.  more advanced capabilities. Now, with version 3.00, we take another
  2827.  step, including our long awaited graphics for PC systems as well.
  2828.  
  2829.       This post consists of five articles and parts: (1) This Update
  2830.  informational file. (2) A Unix shell archive of the source code. (3)
  2831.  A uuencoded zip file of the source code. (4) A uuencoded ready to run
  2832.  program executable for PC's. (5) A program version History file.
  2833.  Both the shell and zip archives contain 14 files in them: The 11
  2834.  source code files, the default parameter file astrolog.dat, this
  2835.  Update file you're reading now, and a makefile. These archives are
  2836.  complete in themselves and the only article one really needs to
  2837.  extract and save are either one of these two archives. The shell
  2838.  archive is easier to extract on a Unix system, while the zip file can
  2839.  be easily extracted on PC's. The makefile for Unix is included in the
  2840.  shell archive while a PC nmakefile is in the zip file. The version
  2841.  History file consists of documentation of the features added to each
  2842.  version of the program since the beginning; it isn't needed but might
  2843.  be found useful. There is a comprehensive documentation Helpfile for
  2844.  the previous version, 2.40, describing all features together in
  2845.  order. I hope to create and post one for version 3.00 in a few weeks.
  2846.  
  2847.       The files described above I have uploaded to Michael Bulmer's
  2848.  alt.astrology ftp site at hilbert.maths.utas.edu.au in the directory
  2849.  incoming/astrolog. They should be moved to the standard
  2850.  pub/astrology/astrolog directory there soon. I intend to post this
  2851.  version, or possibly a slightly improved version 3.05, to
  2852.  comp.sources.misc soon after completing the documentation. Fellow
  2853.  users at Microsoft connected to our network can get a copy of this
  2854.  version out of my public share in the directory public\astrolog.
  2855.  
  2856.       If you have used or are familiar with previous versions of
  2857.  Astrolog, to avoid confusion you may want to read the section on
  2858.  changes to old features made in this release, probably before looking
  2859.  at the new features section. In addition, if you aren't familiar with
  2860.  previous versions of the program, you will want to read the
  2861.  comprehensive Helpfile for version 2.40, so you know what the 3.00
  2862.  feature enhancements are referring to.
  2863.  
  2864.  
  2865.  ####################  PC GRAPHICS  ####################
  2866.  
  2867.       The main things added to version 3.00 are our long awaited
  2868.  graphics for PC's! PC graphics now look and feel and are displayed
  2869.  just like the X window graphics already in place. When compiling, one
  2870.  has a choice between four options: (1) choose no graphics abilities
  2871.  at all, (2) compile so that graphic chart bitmaps can be generated
  2872.  and output to a file, (3) compile allowing file graphics in addition
  2873.  to direct screen graphics in X windows, and now (4) compile with file
  2874.  graphics and direct graphics on the screen of a PC. The addition of
  2875.  PC graphics in no way inhibit or affect the X window graphics already
  2876.  in place; it's merely a matter of which compile time options are set.
  2877.  Unix users don't need to look at this section.
  2878.  
  2879.       Astrolog uses the Microsoft PC graphics library as defined in
  2880.  the file graph.h included with their C7 "C" language compiler. This
  2881.  file and the graphics.lib library is needed in order to be able to
  2882.  compile with these graphics options set, just as the X window
  2883.  libraries are needed to compile with those graphics included. If
  2884.  unavailable, one can still access these PC graphics with the library
  2885.  linked in, in the already compiled executable posted.
  2886.  
  2887.       PC Astrolog is a DOS program and should be run from a DOS
  2888.  prompt, outside of any Windows system. To generate a graphics chart
  2889.  instead of a text one, include the -X switch just as one would do to
  2890.  bring up an X window. The expected graphic chart will be displayed on
  2891.  the screen unless the -Xb write bitmap to file switch is in effect.
  2892.  The colors chosen for the graphics are basically identical to those
  2893.  chosen in X window charts, and both of these in turn are now based on
  2894.  the Ansi colors used in the Ansi text charts.
  2895.  
  2896.       Now, there are many various types of PC monitors and
  2897.  resolutions. Astrolog will automatically try to determine and pick
  2898.  the highest resolution mode available on your system, so this need
  2899.  not be worried about.
  2900.  
  2901.       The PC Astrolog charts may be animated in all the various ways,
  2902.  and the animation will usually be flicker free! Now, PC's do have
  2903.  limited memory, therefore there might not be room for more than one
  2904.  page of graphics at the highest resolution. Hence, animation at the
  2905.  highest (default) mode, may flicker; however, graphics at a slightly
  2906.  lower resolution may take enough less memory to allow enough to do
  2907.  flicker free animation. A special PC only feature for this has been
  2908.  added: Pressing the 'tab' key while the PC graphics are up will try
  2909.  to pick a lower resolution, where flicker free animation can be done.
  2910.  Specifically, we'll toggle to a 640x350 EGA mode. On my own system,
  2911.  the highest resolution I get is a 640x480 16 color VGA mode, however
  2912.  the charts can't be animated without flicker. When I hit 'tab', I
  2913.  drop from 480 lines of graphics to 350, but now the animation will be
  2914.  perfectly smooth. The results with whatever graphics system you have
  2915.  may be different.
  2916.  
  2917.       The chart that comes up will use as many pixels as is defined by
  2918.  the chart's size as specified with the -Xw and -Xs switches. The 'Q'
  2919.  change chart size to square key works just as before. However, on PC
  2920.  screens we will try to take in account the pixel size ratio. On EGA
  2921.  screens where the pixels are long and narrow, meaning a true "square"
  2922.  chart looks tall and thin, we compensate by increasing the horizontal
  2923.  size of the chart. The 'B' key, which on X window graphics will blast
  2924.  the current window contents to the root background, is a meaningless
  2925.  feature for a PC. This key, for PC graphics systems, will instead
  2926.  resize the chart to be the full size of the screen. When the graphics
  2927.  mode is changed through 'tab', the chart size will be modified to be
  2928.  the largest "square" that will fit on the screen (as if the computer
  2929.  presses 'B' followed by 'Q' for you.)
  2930.  
  2931.       If the size of the chart is less than the size of the screen, it
  2932.  will be displayed centered in the middle of the screen. If however
  2933.  the chart size is greater than the screen size, then the chart will
  2934.  take up the whole screen, and part of it will be clipped. By default
  2935.  we show the upper left corner of the chart if this is the case. Now,
  2936.  one can define and change which part of the chart gets shown. On PC's
  2937.  the meaning of pressing the number keys have been enhanced. Normally,
  2938.  number keys set the animation speed; they still do, but now only when
  2939.  animation is actually being done. If not in animation, the number
  2940.  keys from 1..9 will define which "quadrant" or area of the chart gets
  2941.  shown. It's best to think of and use the number pad for this feature
  2942.  (make sure num lock is on!) Pressing the '7' key, i.e. the upper left
  2943.  number on the number pad, will set it so the default upper left part
  2944.  of the chart is seen. Pressing the '3' key, on the lower right corner
  2945.  of the pad, will show the lower right corner of charts larger than
  2946.  the screen size. Pressing '5' will show the middle area of the chart,
  2947.  with equal amounts of the chart clipped from left and right, and top
  2948.  and bottom. Pressing '6' will show the right end of the chart,
  2949.  vertically centered on the screen, and so on. Basically, we have a
  2950.  simple implementation of something like scroll bars, allowing viewing
  2951.  of all parts of the "window"! One can generate and display on the
  2952.  screen even the largest charts producible with Astrolog. (Bitmap
  2953.  files are still limited to, i.e. will be clipped to, a maximum size
  2954.  of 728x720 pixels, however). Even on an 640x350 EGA, one can use this
  2955.  to generate and view all parts of a 300% scaled relationship aspect
  2956.  grid (883x883), or even a 300% scaled world map display (1082x545)!
  2957.  
  2958.  
  2959.  ####################  NEW FEATURES  ####################
  2960.  
  2961.  Here are a list of other features added to this version of the
  2962.  program:
  2963.  
  2964.  1. -I expansion: The -I display an interpretation option has been
  2965.     expanded to allow interpretations of many more kinds of charts to be
  2966.     done. Simply include the -I switch to get an interpretation of any
  2967.     particular type of chart. If Astrolog doesn't support interpretations
  2968.     for it, the normal chart will be shown instead. Before, the only
  2969.     interpretations that could be done were for the standard position
  2970.     listing ("-v -I", formerly -vI) and the standard aspect grid ("-g
  2971.     -I", formerly -gI). Five more interpretations can now be done:
  2972.  
  2973.     "-r0 person1 person2 -g -I" is a legal combination, and will display
  2974.     meanings of aspects between planets in two charts in a relationship
  2975.     aspect grid. "-i person -m0 -I" is legal, and will display the
  2976.     meanings of aspects in a chart; this is like -g -I, but the aspect
  2977.     meanings are printed in sorted order based on how powerful Astrolog
  2978.     thinks each aspect is, so this is probably preferred. "-r0 person1
  2979.     person2 -m0 -I" is legal, and will display the meanings of aspects in
  2980.     a relationship aspect list, like -r0 -g -I, but in the improved
  2981.     sorted order. "-d -I" is legal, and will display the meanings of
  2982.     aspects among transiting planets occurring during a day, as well as
  2983.     of sign and direction changes. "-T -I" is legal, and will display the
  2984.     meanings of aspects from transiting planets to natal ones.
  2985.  
  2986.  2. -Xb expansion: Color bitmap files can now be generated. Before,
  2987.     only black and white charts could be output to a file. By default,
  2988.     all graphic charts will be in color, unless specified otherwise.
  2989.     Color is most useful for the PC bitmaps (-Xbb), although a color
  2990.     bitmap will take up more disk space. X11 bitmap files will be output
  2991.     in monochrome format, since color .xbm files don't exist. A color
  2992.     ascii file (-Xba) will have the color value of each pixel converted
  2993.     to a hexadecimal number, instead of being in the format generated by
  2994.     the Unix bmtoa utility in the case of monochrome charts.
  2995.  
  2996.  3. -j0 option: The -j planet influences in a chart feature has been
  2997.     expanded to include signs as well. Invoke it as -j0 instead of just
  2998.     -j, and in addition to getting the influence of each planet in a
  2999.     chart, one will get the influence of each sign in the chart as well.
  3000.     To determine sign influence, we use the planet powers already
  3001.     determined; a sign gets influence if: (1) There is a planet in it,
  3002.     (2) there is a planet in the house it corresponds to, and (3) if any
  3003.     planet that rules or co-rules it is in the chart. For example, with
  3004.     my 11th house Venus in Sagittarius, for me: (1) Sagittarius gets more
  3005.     power because Venus is in it, (2) Aquarius gets more power because
  3006.     Venus is in the 11th, and (3) Libra and Taurus get power because
  3007.     Venus itself rules these signs. The exact power given is based on the
  3008.     total influence of Venus already determined. Any sign that has over
  3009.     about 175 points or 20% of the total is a really powerful and
  3010.     fundamental part of the psyche. We also sum up the influences of all
  3011.     the signs, displaying the influence of each element as well.
  3012.  
  3013.  4. -RT option: Transiting planets may now be restricted from charts
  3014.     independently of those planets being transited to. In -T charts, the
  3015.     -R option now only affects the natal planets. To restrict transiting
  3016.     planets, one must use the -RT option. The -RT option is exactly like
  3017.     -R, and any subswitches of -R can be used with -RT as long as the 'T'
  3018.     immediately follows the 'R'. For example, -RT by itself restricts
  3019.     transiting asteroids from appearing in -T charts, -RT0 restricts all
  3020.     transiting bodies, -RTu restricts the Uranians, and so on. This is a
  3021.     really useful feature, and allows one to pretty much be able to
  3022.     generate exactly and only those transits one is interested in. For
  3023.     example, if you want to see if anything is transiting your natal
  3024.     Jupiter or natal Saturn this month, do: "astrolog -i yourchart -T 3
  3025.     1993 -R0 6 7". If you want to see if Chiron is transiting anything
  3026.     this year (excluding asteroids), do: "astrolog -i yourchart -Ty 1993
  3027.     -RT0 11 -R". If you are only interested in transits of outer planets
  3028.     to your Sun or Moon, do: "astrolog -i yourchart -T 3 1993 -RT0 6 7 8
  3029.     9 10 -R0 1 2", and so on. No more awk scripts or grepping anymore! :)
  3030.     By default, as before, only the transiting Moon is restricted. The
  3031.     default transit restrictions have been added to the astrolog.dat
  3032.     file, and are right after the standard restriction table, both of
  3033.     which may be modified however you please.
  3034.  
  3035.  5. -Tn option: This feature is a quick shorthand way to generate
  3036.     transits for the current month. For example, instead of "astrolog -i
  3037.     chartfile -T 3 1993", one can do "astrolog -i chartfile -Tn". To do
  3038.     transits for the entire current year, invoke it as "-Tny".
  3039.  
  3040.  6. -p0 option: Solar arc progressions are now supported. Before, the
  3041.     only progressions available were secondary progressed charts. Invoke
  3042.     the -p <month> <day> <year> switch as -p0 instead, and a chart will
  3043.     be generated with all planets and house cusps progressed forward an
  3044.     amount equal in degrees to the number of years that have passed
  3045.     between the specified date and the chart in question. The -pd option
  3046.     here specifies the number of days that have to pass per zodiac degree
  3047.     to progress forward; by default this is 365.25. To generate a solar
  3048.     arc chart for the current moment now, invoke the -pn switch as -p0n.
  3049.  
  3050.  7. -r0 -mY0■ option: Comparison relationship charts may now be
  3051.     generated for the -m midpoint and -m0 aspect list options. Combining
  3052.     -m with -r0 will yield an ordered list of all midpoints between all
  3053.     combinations of one planet from chart1 and another planet from
  3054.     chart2. Combining -m0 with -r0 will yield a list of all aspects
  3055.     between planets in the two charts, in order based on what Astrolog
  3056.     think their influences are. So, if you really want to know if your
  3057.     Sun widely trining your SO's Moon, will override the effect of your
  3058.     Saturn closely squaring their Mars, do "astrolog -r0 yourchart
  3059.     sochart -m0" and see the influence given to each aspect.
  3060.  
  3061.  8. -qm, -qy options: A quick chart cast for midnight on the first of
  3062.     a month can be generated with the two parameter -qm <month> <year>
  3063.     switch. A chart cast for midnight on the first of January of a year
  3064.     can be generated with the one parameter -qy <year> switch. Both of
  3065.     these use the default time zone and location. These switches are most
  3066.     useful for charts that don't require all the standard information.
  3067.     For example, to get an ephemeris for December, 2000, do "astrolog -qm
  3068.     12 2000" and avoid having to enter in a day, hour, or location that
  3069.     wouldn't have any effect. These options are in similar to the old -qd
  3070.     <month> <day> <year> switch that will do a chart for noon on the
  3071.     given date, and the -q <month> <day> <year> <time> switch that takes
  3072.     a time as well.
  3073.  
  3074.  9. "Smart cusps" feature: This is a simple yes/no option that will
  3075.     only affect the way -T transit lists are displayed. It can only be
  3076.     set in the astrolog.dat file. If the value there is non-zero, then
  3077.     transits to minor house cusps will be processed in a more intuitive
  3078.     manner. First of all, aspects other than conjunctions or oppositions
  3079.     to minor cusps will be ignored, e.g. a trine to the 11th house is
  3080.     redundant and isn't really useful; we are more interested in the
  3081.     conjunction to the 3rd house cusp. Minor aspects to the Ascendant and
  3082.     Midheaven, and all other objects, are left alone. In addition, with
  3083.     smart cusps active, oppositions to minor house cusps will be printed
  3084.     as conjunctions to the opposing cusp, e.g. instead of "Jupiter Opp
  3085.     3rd Cusp", we have the more logical "Jupiter Con 9th Cusp". This is
  3086.     just another way to make transits charts clearer and less confusing.
  3087.  
  3088.  10. "80 column clip" feature: This is another yes/no option that can
  3089.     only be set in the astrolog.dat file. If set to non-zero, then we
  3090.     guarantee that no text chart when displayed will overflow 80 columns.
  3091.     By default, with all objects unrestricted, certain charts will have
  3092.     rows more than 80 columns long, breaking up the chart making it very
  3093.     difficult to read. The -r0 -g relationship aspect grid, and the -E
  3094.     ephemeris listing, will normally go beyond the 80th column. With this
  3095.     feature however, these and other charts that can go beyond column 80,
  3096.     such as -L when uranians are unrestricted, will always be displayed
  3097.     on one line, with columns that would go beyond the 80th not getting
  3098.     printed.
  3099.  
  3100.  11. -Xd, -di options: For X windows only, the -Xd <display> switch
  3101.     can be used to change the display to bring the window up on. Before,
  3102.     the X window would always come up on the current display, but now we
  3103.     can do things like "astrolog -Xd machine:0.0" and have the window
  3104.     appear there. In addition, the program will accept this string
  3105.     through the standard "-display" (which can be abbreviated as "-disp"
  3106.     or anything starting with "-di") switch common to most X11
  3107.     applications.
  3108.  
  3109.  12. '0' key: When graphics are up on the screen, pressing this key
  3110.     acts similar to the mode changing keys that switch between the
  3111.     different graphic chart types. When pressed, the state of the program
  3112.     being invoked with -Z vs. -Z0, as well as the state of -XW vs. -XW0,
  3113.     will be reversed. In other words, if I am viewing the -Z -X horizon
  3114.     chart, and I want to see the -Z0 -X sky graphic, then I press '0' to
  3115.     go to it. Similarly, this key will flip me back and forth between the
  3116.     -XW simple rectangular world map display and the -XW0 Mollewide
  3117.     projection graphic. A bit of a hack, but very useful, and the only
  3118.     way to change these suboptions while the program is running.
  3119.  
  3120.  13. -nd, -nm, -ny options: These switches are like the -n generate
  3121.     chart for current moment now feature, except that they will
  3122.     respectively generate charts for the midnight on the current day,
  3123.     midnight on the first of the current month, and midnight on the first
  3124.     day of the current year.
  3125.  
  3126.  14. command line improvement: The way command line parameters are
  3127.     processed has been slightly changed. Many switches are now
  3128.     technically a "toggle" instead of a "set" for the particular feature
  3129.     in question. For example, "astrolog -v -g -g" will now only result in
  3130.     the -v chart being printed; an aspect grid won't because the first -g
  3131.     turned it on while the second -g turned it off again. This can be
  3132.     useful, in say the -e everything switch. If you want all of
  3133.     Astrolog's charts except the astro-graph, you can now do "astrolog -e
  3134.     -L", where the -e turns everything on and the -L turns the
  3135.     astro-graph chart, already on because of -e, off. In another example,
  3136.     to get a chart with only the stars in it, one can do "astrolog -R0
  3137.     -RU", where the -R0 restricts everything, and the -RU unrestricts all
  3138.     the stars. Before, -RU would restrict all of the stars again,
  3139.     resulting in everything remaining restricted.
  3140.  
  3141.  15. -H improvement: PC users are accustomed to seeing command
  3142.     switches with a leading slash "/" instead of a dash "-". To
  3143.     accommodate this, the -H list of options available switch has been
  3144.     modified to, if the program has been compiled for a PC, display all
  3145.     the switches with a leading "/" instead of a "-". (On Unix and other
  3146.     systems they will still be displayed with the standard leading "-".)
  3147.  
  3148.  16. -L -X improvement: The graphic astro-graph chart will now display
  3149.     a small purple dot at the precise point on the world map for which
  3150.     the chart in question is being generated. This is useful to help see
  3151.     how close the various planetary lines are to you, if you live in the
  3152.     middle of the continent or someplace not easily determinable on the
  3153.     compact map of the world.
  3154.  
  3155.  
  3156.  ####################  PROGRAM CHANGES  ####################
  3157.  
  3158.  Quite a few changes have been made to version 3.00. Some command
  3159.  switches have been renamed, and other assumptions valid in version
  3160.  2.40 are no longer so. This section isn't useful unless you are
  3161.  already familiar with earlier versions of the program. A list of
  3162.  changes follows:
  3163.  
  3164.  1. -T changes: The -T transit switch has been edited. It no longer
  3165.     takes a file as a parameter - only the month and year. Now, the chart
  3166.     to do transits to is taken from the standard interface. For example,
  3167.     instead of "astrolog -T chartfile 3 1993" we now do "astrolog -i
  3168.     chartfile -T 3 1993". This new interface is more flexible, and can be
  3169.     combined with other chart type options (-v, -g, etc.)
  3170.  
  3171.     In addition, to display transits for an entire year, one no longer
  3172.     does the hack of specifying zero for the month. This has been
  3173.     replaced with the new -Ty switch (-Tpy for progressions), which only
  3174.     takes one parameter, the year. For example, instead of "-T chartfile
  3175.     0 1993" we now do "-i chartfile -Ty 1993".
  3176.  
  3177.  2. -T0 removed: The -T0 switch, used to include the transiting Moon
  3178.     in charts, is gone. It is replaced with the general ability to
  3179.     restrict transiting planets separately. Include "-RT 2" on the
  3180.     command line to obtain the same result as -T0 (see new -RT option).
  3181.  
  3182.  3. -E changes: The -E ephemeris switch has been edited in a similar
  3183.     way as -T, in that it also takes its date to do the ephemeris for
  3184.     from the standard interface. It no longer takes a month and year for
  3185.     parameters. Now, instead of "astrolog -E 3 1993" we do "astrolog -qm
  3186.     3 1993 -E". To see the ephemeris for someone's birth month, one can
  3187.     do the convenient "-i chartfile -E", or to see the ephemeris for this
  3188.     month, do "-n -E". The -E switch can now be combined with the other
  3189.     chart type options, and is included with the -e everything switch.
  3190.  
  3191.     In addition, to display an ephemeris for an entire year, one no
  3192.     longer specifies zero for the month, as with -T. We use the -Ey
  3193.     switch now. For example, instead of "-E 0 1993" we now do "-qy 1993
  3194.     -Ey" (see new -qy and -qm options).
  3195.  
  3196.  4. -E0 removed: The -E0 switch, used to allow an ephemeris for
  3197.     objects other than Sun..Pluto, is gone. The standard -E switch has
  3198.     this functionality now, which before would only allow Sun..Pluto.
  3199.     Removal of the switch makes things less complicated, but will result
  3200.     in lines longer than 80 columns whenever more than 10 bodies are
  3201.     unrestricted. (If this is annoying, see the new 80 column clip
  3202.     feature).
  3203.  
  3204.  5. -q renamed: The -q switch, used to quickly cast a chart at noon
  3205.     given a date (using default location and time zone) has been renamed
  3206.     to be "-qd". (See new features section for newly added related
  3207.     switches "-qm" and "-qy".)
  3208.  
  3209.  6. -q0 renamed: The -q0 switch, used to quickly cast a chart given a
  3210.     date as well as time has been renamed to be just "-q". (Don't confuse
  3211.     this with the -q in version 2.40 and before, which did not take a
  3212.     time parameter.)
  3213.  
  3214.  7. -I renamed: The -I display influences chart switch has been
  3215.     renamed to "-j". (-I now refers to a general interpretation switch;
  3216.     don't get them confused.) Mnemonically, one might want to think of -j
  3217.     as referring to "j"oining the influences in the chart together and
  3218.     displaying stats on them. (Hey, so I'm running out of letters for
  3219.     switches! ;)
  3220.  
  3221.  8. -vI, -gI removed: The -vI and -gI switches to display
  3222.     interpretations for position (-v), and aspect grid (-g) charts, are
  3223.     gone. Use the -I general interpretation switch now. For example,
  3224.     instead of "astrolog -i chartfile -gI", do "astrolog -i chartfile -g -I".
  3225.  
  3226.  9. -v changed: The -v and -v0 switches have been swapped as to their
  3227.     meanings of the "velocity" column in the standard chart listing.
  3228.     Before, -v (the default) would display current planetary velocity in
  3229.     degrees per day through the zodiac. The -v0 switch would display
  3230.     this velocity as a percentage, where 1.00 means it is moving at its
  3231.     average speed, 2.00 means moving twice as fast as normal, -0.01 means
  3232.     is retrograde and about to turn direct, and so on. Now, these
  3233.     meanings have been exchanged, as the old -v0 display tends to be more
  3234.     useful, so it is the default now.
  3235.  
  3236.  10. -d0 renamed: The -d0 switch, used to print all aspects among
  3237.     transiting planets in an entire month (as opposed to just a day with
  3238.     -d) has been renamed to be "-dm".
  3239.  
  3240.  11. -p0 renamed: The -p0 switch, used to specify the number of days
  3241.     to progress per day in a -p progressed chart, has been renamed to be
  3242.     "-pd". (-p0 now means do a solar arc chart.)
  3243.  
  3244.  12. Astrolog.dat changed: As usual, astrolog.dat files from version
  3245.     2.40 and before are incompatible with version 3.00. A transit
  3246.     restriction array and two extra new options (see later) have been
  3247.     added.
  3248.  
  3249.  13. Finally, concerning the source code itself, three new files have
  3250.     been added to version 3.00! The old file graphics.c is gone and has
  3251.     been split into "xgeneral.c" and "xdriver.c". Also, some of the
  3252.     contents in data.c have been moved into new files "general.c" and
  3253.     "xdata.c". This of course means that old Astrolog makefiles won't
  3254.     work to compile version 3.00.
  3255.  
  3256.  
  3257.  ####################  BUG FIXES  ####################
  3258.  
  3259.  Here is a list of bugs in version 2.40 that have been fixed in this
  3260.  release:
  3261.  
  3262.  1. All object restriction values in the astrolog.dat file were
  3263.     ignored. In the last release I may have fixed the crashing problems
  3264.     people were having, but I inadvertently introduced this bug in the
  3265.     process. Now, trust me, that once and for all astrolog.dat
  3266.     restrictions work perfectly!
  3267.  
  3268.  2. The -gI switch would often crash on many systems. This was due to
  3269.     some long interpretation strings extending past array bounds. No
  3270.     crashes now. (I got quite a few e-mail reports on this one.)
  3271.  
  3272.  3. The meanings of the Midheaven and Ascendant were reversed in the
  3273.     interpretation database, giving bogus interpretations when these
  3274.     objects were involved. They are in the right order now. (Surprised
  3275.     nobody ever emailed me about this!)
  3276.  
  3277.  4. Doing -Xs 300 -g would crash PC's. The bitmap screen was cleared
  3278.     before a check was made as to whether the requested scale size would
  3279.     overflow the bitmap. Now, very large scale sizes are allowed for
  3280.     bitmaps. If the size of the graphic exceeds the array limits, then
  3281.     the bitmap size will be clipped to it (e.g. "-Xs 300 -g -Xb" is
  3282.     allowed, but bottom and right rows of the aspect grid will be clipped
  3283.     off the bitmap file.)
  3284.  
  3285.  5. Trying to include stars in a -S graphic chart (-S -X -U) could
  3286.     cause a crash. The stars are properly ignored in all -S charts
  3287.     without problem now. In addition, yet another PC 16 bit int overflow
  3288.     could cause the zodiac boundaries in a -S -X chart to be displayed
  3289.     erroneously, which has been corrected, too.
  3290.  
  3291.  6. The Placidus house cusp routine would generate garbage results
  3292.     for all non-angular cusps when for any chart cast at latitude 0. We
  3293.     have correct results now.
  3294.  
  3295.  7. When animating graphics charts backward in time, passing to a
  3296.     previous month didn't set the day of the new month correctly.
  3297.     Instead of setting the day to the last day of the new month, it would
  3298.     go to the last day of the month just left, e.g. from March 1st to
  3299.     February 31st, yielding a bogus chart. These values are updated
  3300.     properly now.
  3301.  
  3302.  8. The Midheaven and Ascendant, being cusp objects, should logically
  3303.     always be mapped to being in the 10th and 1st houses, respectively.
  3304.     Round off error would occasionally put them in the previous house,
  3305.     resulting in output like Midheaven in 9th house in a -v chart, for
  3306.     example. This will no longer occur.
  3307.  
  3308.  9. More checking for out of range command line parameters is done
  3309.     now, specifically for the -a, -q, and -l switches. Although checking
  3310.     was always done when prompting the user for info, not as much was
  3311.     done when accepting data from the command line, resulting in one
  3312.     being able to get away with things like "Feb 50th" or "200 degrees
  3313.     north latitude".
  3314.  
  3315.  10. The -H list had some non-existent command switches in it!
  3316.     Specifically there were switches called "-gl" and "-gm". When I was
  3317.     creating the -m and -m0 switches for version 2.40, they were
  3318.     originally going to be extra letters tacked onto -g. However,
  3319.     although I did finally add -m to the -H list, I foolishly forgot to
  3320.     remove -gl and -gm (which don't do anything more than -g). Anyway,
  3321.     these are removed from the list (as well as some spelling errors).
  3322.  
  3323.  11. The -v chart was never able to respond to -R restrictions on the
  3324.     first 20 objects in any place other than the element table. This was
  3325.     because the display of the 12 house cusps and the element table here
  3326.     require 20 lines of text, so we can't just leave lines out. Now, we
  3327.     do leave lines out, but will print enough blank lines at the end of
  3328.     the first 20 objects so that the element table can be printed, so -v
  3329.     now responds to -R completely.
  3330.  
  3331.  12. The -g0 switch when combined with -r0 will generate a
  3332.     relationship midpoint (as opposed to aspect with just -g) grid.
  3333.     However, -g0 would be the same as -g when doing a graphic -r0 chart.
  3334.     Now, -r0 -g0 -X will generate the expected graphic relationship
  3335.     midpoint grid. (Note that -r0 -g -Xi, i.e. the slightly modified
  3336.     chart mode, was what one had to do to generate a graphic relationship
  3337.     midpoint chart before. This still works, but will now revert back to
  3338.     an aspect grid if both -Xi and -g0 are in effect with -r0.)
  3339.  
  3340.  13. It seems some compilers, specifically some on VMS systems, would
  3341.     compile the complicated planet calculation routine incorrectly,
  3342.     specifically in the planet index loop, resulting in bad data.
  3343.     Although it doesn't affect the program any, I simplified the loop, so
  3344.     this shouldn't be a problem anymore.
  3345.  
  3346.  14. Version 2.40 was rather memory inefficient on PC platforms. The
  3347.     executable was a large 320K, and lots of data was allocated even when
  3348.     not used. The PC executable for version 3.00, in spite of all 3.00's
  3349.     new features, and in spite of the 98K Microsoft C graphics library
  3350.     module being linked in, is under 270K and runs faster! :)
  3351.  
  3352.  
  3353.  ####################  COMPILING INSTRUCTIONS  ####################
  3354.  
  3355.       Compiling Astrolog version 3.00 is virtually identical to
  3356.  compiling previous versions: first edit the top of the file
  3357.  astrolog.h, putting in your own appropriate values for the default
  3358.  longitude, latitude, time zone, and default file search directory.
  3359.  (In the same manner, also edit these default parameter values in the
  3360.  file astrolog.dat to your liking, at least the location and time zone
  3361.  values.) Also, comment out any of the #defines which set various
  3362.  features that aren't valid on your system, such as the GRAPH, X11,
  3363.  MSC, NOPC, TIME, and SWITCHES variables. Then, for Unix systems, just
  3364.  run the command 'make' on the Makefile.
  3365.  
  3366.       Compiling Astrolog on a PC is pretty easy too. One can usually
  3367.  do it by simply compiling each file in turn and then linking them all
  3368.  together. You don't have to worry about explicitly mentioning stuff
  3369.  like the math library if your paths are set up properly. I used the
  3370.  Microsoft C7 compiler to generate the ready to run PC executable. If
  3371.  you have the nmake utility, the makefile included in the zip archive
  3372.  will compile and link astrolog 2.40 on a PC, with flags set properly
  3373.  and all. I compiled under the Large memory model, with hex 4000 bytes
  3374.  of stack space. The default directory in the ready to run PC
  3375.  executable is set to C:\ASTROLOG. The other compile time defaults are
  3376.  set to my own location, but you can easily override them with your
  3377.  own values using the astrolog.dat file.
  3378.  
  3379.       It is possible to easily compile Astrolog on a VMS system, even
  3380.  with X windows. Max Calvani was kind enough to give me the following
  3381.  com file to automatically compile and link Astrolog for VMS. This
  3382.  should work with version 3.00, but since I don't have access to a VMS
  3383.  system I can't try it out myself. Here it is anyway:
  3384.  
  3385.  ---- BEGIN INCLUDED FILE COMPILE.COM CUT HERE ----
  3386.  $ set ver
  3387.  $ define X11 decw$include
  3388.  $ CC CHARTS
  3389.  $ CC DATA
  3390.  $ CC DRIVER
  3391.  $ CC FORMULAS
  3392.  $ CC GENERAL
  3393.  $ CC OPTIONS
  3394.  $ CC XCHARTS
  3395.  $ CC XDATA
  3396.  $ CC XDRIVER
  3397.  $ CC XGENERAL
  3398.  $ link/exe=astrolog.exe -
  3399.  │CHARTS.obj, -
  3400.  │DATA.obj, -
  3401.  │DRIVER.obj, -
  3402.  │FORMULAS.obj, -
  3403.  │GENERAL.obj, -
  3404.  │OPTIONS.obj, -
  3405.  │XCHARTS.obj, -
  3406.  │XDATA.obj, -
  3407.  │XDRIVER.obj, -
  3408.  │XGENERAL.obj, -
  3409.  │sys$input/opt
  3410.  sys$share:decw$xlibshr/share
  3411.  $ set nover
  3412.  $ exit
  3413.  ---- END INCLUDED FILE COMPILE.COM CUT HERE ----
  3414.  
  3415.  --
  3416.  
  3417.       The astrological "chart" for this version 3.00 of the program
  3418.  itself (and hence the "default" chart in memory one gets if they
  3419.  start up with a non informational chart and then revert to one
  3420.  requiring information, e.g. -XW followed by pressing 'V') is set for
  3421.  the Vernal Equinox at 6:43am PST (8 hr before GMT) on March 20, 1993
  3422.  in Seattle, WA (122W20 47N36).
  3423.  
  3424.       That concludes this release! If there are bugs or problems that
  3425.  can't be resolved elsewhere, I can be reached at my address below.
  3426.  After I finish up the stuff related to this version, there is a good
  3427.  chance that there will be a version 3.10 made. There are more feature
  3428.  ideas I have in mind including maybe a major surprise or two. But
  3429.  that wouldn't come about until at least summer. In the meantime, we
  3430.  have version 3.00 to use and play with and hopefully make life
  3431.  easier. May it provide you with many enjoyable hours and revelations.
  3432.  Have fun! :)
  3433.  
  3434.  ************************************************
  3435.  Astrolog 3.05 posted Thu, 20 May 93 23:40:00 GMT
  3436.  ************************************************
  3437.  
  3438.  The Sun enters Gemini today! In appropriate honor of passing through
  3439.  this mental air sign, Astrolog version 3.00 has been posted to the
  3440.  comp.sources.misc newsgroup. The articles have already been submitted
  3441.  and have arrived back at my own news site, so if not already at yours
  3442.  they should get there soon. (The posting date of the first of the
  3443.  twelve parts in it was dated Wed, 19 May 1993 06:13:09 GMT.) This
  3444.  means that the most recent version of the program is now available at
  3445.  the many ftp sites which archive comp.sources.*; the last version of
  3446.  Astrolog to get such a wide distribution was version 2.25!
  3447.  
  3448.  Anyway, again, after releasing version 3.00 here, I found one bug and
  3449.  made a few other minor improvements to the program before reposting it
  3450.  now, hence the updated version is 3.05. You don't need to rush out and
  3451.  grab this version unless desired because it's virtually the same.
  3452.  
  3453.  Since half of the editions affect the PC graphics, I have uploaded a
  3454.  version 3.05 PC executable to the ftp site at hilbert.maths.utas.edu.au.
  3455.  Some more compiler tricks allowed me to shave another 14K off the size
  3456.  of the executable! Here is a list of the changes made to version 3.05:
  3457.  
  3458.  1) Bug fix: A reasonably major problem would not allow any of the
  3459.  special transit restriction switches beyond -RT to work. In other
  3460.  words, -RT0, -RTU, -RTC, would all be seen by the program as just -RT,
  3461.  making doing transits including just a few transiting planets
  3462.  difficult, because "-RT0 1" would have to be done "-RT 2 3 4 ...".
  3463.  Anyway, everything works according to the Helpfile spec now.
  3464.  
  3465.  2) Compiler error: A significant number of people complained about the
  3466.  #error preprocessor command in astrolog.h not being defined for their
  3467.  compiler. The purpose of this was to force an error early on and catch
  3468.  potential problems if the user tried to compile with bogus
  3469.  combinations of compile time parameters, e.g. compile with X11 and PC
  3470.  on at the same time. Unfortunately, the compilers would encounter the
  3471.  #error lines regardless even though they are technically #ifdefed out
  3472.  in all but illegal cases. Anyway, I took them out and replaced them
  3473.  with ordinary text to do the same result, but not always cause errors
  3474.  on the compilers in question.
  3475.  
  3476.  3) Small bug fix: The little "purple" dot in the graphic astro-graph
  3477.  charts indicating the long. and lat. of the chart in question would
  3478.  not be visible in reverse video monochrome graphics, because "purple"
  3479.  maps to white and hence is the same as the background. Also, the dot
  3480.  would always be purple on a color display, even when the program tried
  3481.  to be in monochrome mode! Anyway, the dot is appropriately colored
  3482.  purple, white, or black now as the program settings change.
  3483.  
  3484.  4) Enhancement: Those with 25 line monitors running the PC screen
  3485.  graphics may not have liked the fact that the key help list generated
  3486.  by pressing "H" would scroll the screen. To improve this, we go to a
  3487.  43 line text mode (if one is available) allowing everything to be
  3488.  printed without scrolling when the help list is shown. (If your system
  3489.  doesn't have a 43 line text mode, it is probably slow enough that you
  3490.  can easily pause/restart the display by typing control-s/control-q ;)
  3491.  
  3492.  5) Enhancement: Another PC graphics improvement, one might notice that
  3493.  whenever they do animation, they will always want to then hit 'tab' to
  3494.  go to the flicker free mode. This is done automatically now. On a PC,
  3495.  entering animation mode, will, if not already there, go to the flicker
  3496.  free graphics display mode. (You can always then manually switch back
  3497.  if you'd rather be in the first mode.)
  3498.  
  3499.  6) Omission: The fact that the 'tab' key switches between graphics
  3500.  modes on a PC wasn't mentioned in the "H" key help list, but is now.
  3501.  
  3502.  7) Typos: In the "H" key help list, the key to start animating the
  3503.  current chart in minute increments is "@", not "/" or "-" as the
  3504.  listing would indicate. A couple of spelling errors have been
  3505.  corrected here and in the -H list as well.
  3506.  
  3507.  8) Glitch: Visible on PC screen charts in reverse video mode, the
  3508.  background would extend one pixel to the right farther beyond the
  3509.  rectangular outer border chart limit from where it should.
  3510.  
  3511.  9) Finally, don't worry, your old astrolog.dat file is fully
  3512.  compatible with version 3.05, and doesn't need to be changed a bit, in
  3513.  that the file format hasn't been changed any.
  3514.  
  3515.  * Saturn enters Pisces tomorrow at 5:15am PDT (12:15pm GMT), less than
  3516.  two hours before the New Moon !!!!!!!!!!!
  3517.  
  3518.  ************************************************
  3519.  Astrolog 3.10 posted Sun, 26 Sep 93 08:29:58 GMT
  3520.  ************************************************
  3521.  
  3522.       Behold the Fall Equinox! The Sun enters Libra today (9-22-93),
  3523.  and Autumn begins and the astrological year is at its half way point.
  3524.  Precisely six months and zodiac signs ago at the Vernal Equinox,
  3525.  version 3.00 of the program Astrolog was posted here to this
  3526.  newsgroup. Now for the other Equinox this year comes the newest
  3527.  release of the program: version 3.10!
  3528.  
  3529.       This file describes version 3.10 of Astrolog, the world's best
  3530.  and most extensive freeware astrology computer program for Unix, X
  3531.  Windows, or DOS (at least in my humble opinion. ;) Described are
  3532.  enhancements and additions made to the previous release, version 3.00
  3533.  posted six months ago (and the bug fix release 3.05 posted two months
  3534.  later), and bugs fixed and other changes made. Astrolog 3.10 is an
  3535.  excellent upgrade. It's faster, more memory efficient, can take less
  3536.  disk space than 3.00, and it easier to run from Windows. Glitches
  3537.  have been removed, some old features have been enhanced, and some new
  3538.  ones added. A list of all the changes and features is listed later.
  3539.  
  3540.       This post consists of five articles or parts: (1) This Update
  3541.  informational file. (2) A Unix shell archive of the source code. (3)
  3542.  A uuencoded zip file of the source code. (4) A uuencoded ready to run
  3543.  program executable for PC's. (5) A program version History file.
  3544.  (Each of these files may be posted in several segments to get the
  3545.  newsfeeder to accept it; if so, extract each segment, and use some
  3546.  text editor to remove the headers and concatenate the parts
  3547.  together.) The shell archive file contains 15 files within it: The 12
  3548.  source code files, the default parameter file astrolog.dat, this
  3549.  Update file you're reading now, and a Unix Makefile. The zip archive
  3550.  contains these 15 files, except there's a DOS nmakefile instead of
  3551.  one for Unix, and it has one additional 16th file, an icon for
  3552.  Windows, described later. These archives are complete in themselves
  3553.  and the only article one really needs to extract and save are one of
  3554.  these two archives. The shell archive is meant to be extracted on a
  3555.  Unix system for users on this platform, while the zip file is best
  3556.  for PC users. The version History file consists of documentation of
  3557.  the features added to each version of the program since its
  3558.  beginning, which isn't needed but might be found useful, especially
  3559.  if one is new to Astrolog, or hasn't upgraded in a while, or isn't
  3560.  already familiar with features in recent existing versions.
  3561.  
  3562.       The files described above have been uploaded to Michael Bulmer's
  3563.  alt.astrology ftp site at hilbert.maths.utas.edu.au in the directory
  3564.  /incoming/astrolog. They should be moved to the standard
  3565.  /pub/astrology/astrolog directory there soon. Fellow employees at
  3566.  Microsoft connected to our network can get a copy of this version out
  3567.  of my public share in the directory \\mydir\public\astrolog.
  3568.  
  3569.       If you have used or are familiar with previous versions of
  3570.  Astrolog, to avoid confusion you may want to first read the section
  3571.  on changes to old features made in this release. In addition, if you
  3572.  aren't familiar with previous versions of the program, you will want
  3573.  to read the comprehensive Helpfile for version 3.00, so you know what
  3574.  the 3.10 feature enhancements are referring to. This documentation
  3575.  Helpfile for the previous version describes all its features together
  3576.  in order. I intend to create and post one for version 3.10 soon when
  3577.  I get around to it.
  3578.  
  3579.  
  3580.  #####################  3.10 PROGRAM CHANGES  #####################
  3581.  
  3582.       As with every version, a few changes were made to the program,
  3583.  in that old assumptions may no longer be valid, or things were done
  3584.  that aren't directly a bug fix or a new feature like adding a new
  3585.  switch would be. Most of the following changes made in 3.10 are
  3586.  useful and beneficial to the user:
  3587.  
  3588.  1. Astrolog 3.10 allocates its bitmap arrays much more efficiently
  3589.     now. When creating an x by y graphics image, that is exactly how much
  3590.     memory is allocated. Before, Astrolog would always allocate a certain
  3591.     large fixed amount of memory. This was inefficient because (1) users
  3592.     with lots of memory wouldn't be able to make bitmaps larger than this
  3593.     limit size, and (2) people would often not have enough memory to
  3594.     allocate this sized bitmap, especially in DOS. With DOS, I was
  3595.     pushing up against the 640K memory limit so much that I had to
  3596.     compile with optimization just to have enough memory to allocate this
  3597.     bitmap, and with other compilers the problem could be more severe.
  3598.     But now, you can run all the TSR's you want, and if you don't have
  3599.     enough memory for the bitmap, just try again with a slightly smaller
  3600.     size until it works. For the other extreme, if you have the memory
  3601.     and disk space, Astrolog can technically generate a 10000 x 10000
  3602.     bitmap over a gigabyte in size!
  3603.  
  3604.  2. Astrolog 3.10 runs a bit faster in virtually all categories! For
  3605.     example, in running the official DOS executable on a 386, doing a -E
  3606.     monthly ephemeris on 3.10 will take about 90% of the time the same
  3607.     one did in 3.05. A -XG graphics globe will draw about twice as fast
  3608.     as before! Most of the improvements were in using fewer slow floating
  3609.     point variables and operations when integers would do just as well.
  3610.     For example, month index variables were stored as reals before when
  3611.     they would never be fractional, and certain expressions used multiple
  3612.     times could be cached so they don't have to be recomputed.
  3613.  
  3614.  3. I ran the Pklite executable compressor utility on the official
  3615.     3.10 DOS executable. As a result, it doesn't run any slower but is
  3616.     only half the size. The version 3.10 executable is under 135K,
  3617.     compared to over 240K for 3.05. (Uncompressed, the executable gained
  3618.     just under 50K in size over version 3.05)
  3619.  
  3620.  4. The combination hack "-dp 0 1993", using 0 as a month parameter to
  3621.     scan an entire year for aspects among progressed planets in a chart,
  3622.     is now replaced with the new -dpy switch, which takes only one
  3623.     parameter for the year. This switch is now consistent in format to
  3624.     how with the -T and -E switches one specifies an entire year.
  3625.  
  3626.  5. The -E ephemeris listings now obtain the time (and time zone) to
  3627.     cast each chart for (e.g. noon, midnight) from the chart information
  3628.     given it, instead of always defaulting to midnight in the default
  3629.     time zone all the time as before. This is a bit more flexible since
  3630.     one may have a noon or 6:00am or whatever ephemeris which wasn't
  3631.     possible before. The -qm <month> <year> switch always uses midnight
  3632.     for the time and the default for the time zone, so when using this
  3633.     switch with -E the results will be the same as with the previous
  3634.     version. However, something like -i yourchart -E to do an ephemeris
  3635.     for your birth month will now display the positions each day at your
  3636.     birthtime instead of at midnight.
  3637.  
  3638.  6. The various -X switches which used to just always set a mode are
  3639.     now toggles, like many of the normal non -X switch modes. This won't
  3640.     affect things much, except that a combination like -Xr -Xr which used
  3641.     to just go to reverse video mode, will now remain out of it because
  3642.     the first -Xr put you in and the second toggled you back out.
  3643.  
  3644.  7. There's a new source code file to 3.10, called "intrpret.c"
  3645.     containing all Astrolog's various interpretation routines together
  3646.     (mainly taken from charts.c and options.c). This of course means that
  3647.     old makefiles aren't compatible and can't compile version 3.10.
  3648.  
  3649.  8. As always, new fields added to the astrolog.dat defaults file make
  3650.     old astrolog.dat's from before version 3.10 incompatible with the
  3651.     current version. One should delete their old file and modify the one
  3652.     given, or else manually merge in the new fields in the new file with
  3653.     their old one.
  3654.  
  3655.  9. The astrological "chart" for this version 3.10 of the program
  3656.     itself (and hence the "default" chart in memory one gets if they
  3657.     start up with a non informational chart and then revert to one
  3658.     requiring information, e.g. -XW followed by pressing 'V') is set for
  3659.     the Autumn Equinox at 5:33pm PDT (7 hours before GMT) on Tuesday,
  3660.     September 22, 1993 in Seattle, WA (122W20 47N36).
  3661.  
  3662.  
  3663.  #####################  3.10 NEW FEATURES  #####################
  3664.  
  3665.       Here are all the new features that aren't in version 3.05:
  3666.  
  3667.  1. -y switch: The new -y <month> <date> <year> switch is a transit
  3668.     influence chart. Given a date, it will take the transiting planets on
  3669.     that date, and determine how they interact with the generic natal
  3670.     chart specified with -i or however. The information will be printed
  3671.     as a list of transits, sorted in order from most significant to least
  3672.     significant. For each transit in effect, the transiting and natal
  3673.     planets (and the signs they are in) are displayed, along with the
  3674.     aspect and the orb, and whether the transit is applying and going to
  3675.     happen in the future, or just passed exactness and the orb is
  3676.     separating. The computer computed power value of each transit will
  3677.     be printed too - anything over 100 is a very major transit.
  3678.  
  3679.     The things which affect how Astrolog computes the influence of a
  3680.     transit are: The power of the object that's doing the transit, e.g.
  3681.     transiting Pluto conjunct your natal Ascendant is much more powerful
  3682.     than the transiting Moon conjunct your Ascendant. The power of the
  3683.     object being transited affects the power too (but not as much as the
  3684.     transiter) e.g. Jupiter transiting your Sun is more powerful than
  3685.     Jupiter transiting an asteroid. Finally, the orb plays a role too, in
  3686.     that a transit that will be exact in a couple of days from the given
  3687.     date passed to -y is more powerful than one won't be exact for
  3688.     another month. Note that the power of a planet when transiting is
  3689.     different than its influence in the natal chart: Although Sun
  3690.     conjunct Moon is more powerful in a natal chart than Saturn conjunct
  3691.     Moon, when transiting, Saturn transiting Moon is much more
  3692.     influential than Sun transiting Moon. Hence there are now two lists
  3693.     of object influence values in the astrolog.dat file that can be
  3694.     customized. There's the old list of standard influences (which have
  3695.     items like Sun, Moon, and Ascendant most powerful), and a parallel
  3696.     list of transit influences (which have the slower moving bodies the
  3697.     most powerful).
  3698.  
  3699.     This switch is in compliment to the -T transit search list, and you
  3700.     may find this new one more useful. The -T chart prints the times when
  3701.     a transit is exact, which is useful to know, but doesn't really help
  3702.     when you want to know when a transit enters orb enough to be
  3703.     significant, and it won't flag a major year long transit that will be
  3704.     exact next month, listing it among a bunch of less significant
  3705.     aspects for the following month. With -y, you can see a major transit
  3706.     first enter orb at the bottom of the list, and then slowly rise to
  3707.     the top as it becomes more exact through the days. And you can answer
  3708.     the question as to which is more influential now: say an exact
  3709.     transit of Mars to a minor house cusp, or a major transit of Saturn
  3710.     to an angle that's still a month away from exactness.
  3711.  
  3712.     Also notice the resemblance between -y and the -r0 -m0 combination.
  3713.     Both display aspects ordered by influence. In fact, "-i chart -yn"
  3714.     will look almost identical to "-t chart -m0", except that -y is
  3715.     designed and formatted for doing transits to a particular chart.
  3716.     (Doing -y will always use applying vs. separating orbs, generate
  3717.     powers using the new transit influences, and allow the transiting and
  3718.     natal planets to be restricted separately with -RT and -R.)
  3719.  
  3720.  2. -yn switch: The -yn switch is a shorthand way to pass the current
  3721.     date today to the -y switch. If you want to see what transits are
  3722.     most affecting your natal chart right now, just do "-i yourchart
  3723.     -yn".
  3724.  
  3725.  3. -E -X graphics chart: A new graphical planetary tracking chart is
  3726.     available by combining the -E switch with -X. This "graphical
  3727.     ephemeris" will display the sign degrees of the zodiac along the
  3728.     horizontal axis, and the days in the given month along the vertical.
  3729.     The positions of the planets at each day are then graphed. The result
  3730.     is a bunch of wavy lines that make it easy to see all the planetary
  3731.     movements during the month. Wherever lines cross there's a
  3732.     conjunction on the day indicated on the axis at the same level as the
  3733.     crossing. Although this only looks at the month in the given chart
  3734.     information, the actual day will be highlighted on the vertical axis.
  3735.  
  3736.     Combining the -Ey yearly ephemeris with -X will generate a graphical
  3737.     ephemeris showing the movements for the entire year, with the months
  3738.     labeled along the vertical axis. Once any graphics chart is up, one
  3739.     may switch to the ephemeris chart mode by pressing the 'E' key.
  3740.     Pressing the '0' chart mode toggling key will now toggle between the
  3741.     -E and -Ey graphics charts (in addition to between -Z and -Z0, and
  3742.     -XW and -XW0 like it did before). In the -Xi alternate display mode,
  3743.     the Moon will automatically be restricted, which is commonly desired
  3744.     because its line moves across the ephemeris chart so much faster than
  3745.     any of the other planets.
  3746.  
  3747.  4. PC Mouse support: Astrolog 3.10 has support for the mouse and the
  3748.     mouse buttons when running graphics under DOS. (X windows have had
  3749.     mouse operations since version 2.20.) Now, upon entering a graphics
  3750.     chart, a mouse pointer will appear. Holding down the left mouse
  3751.     button will allow you to scribble on the screen with the mouse as a
  3752.     pen, in the highlight color, just like how for Unix the left button
  3753.     is used to scribble in an X window. For PC's, the middle mouse button
  3754.     (if you have one - most mice such as Microsoft mice don't) will exit
  3755.     graphics mode and terminate the program, like pressing the 'q' key or
  3756.     like how the right mouse button does for X windows. The right mouse
  3757.     button is described below.
  3758.  
  3759.     Not all PC systems have mice. There is a new #define in astrolog.h
  3760.     called "MOUSE". If commented out, then all mouse functionality will
  3761.     be compiled out, even if compiling for Unix. The mouse pointer and
  3762.     all PC mouse functions are temporarily disabled when running in an
  3763.     animation mode.
  3764.  
  3765.     When implementing this, I found no readily available library that
  3766.     would activate and query the mouse from DOS. The Microsoft graphics
  3767.     library I used doesn't have any mouse functions in it; however, in
  3768.     the C7 sample programs directory, there is an uncompiled library file
  3769.     called "mouse.c" with its "mouse.h" interface. I compiled this file
  3770.     as if it were one of the Astrolog program files and linked it in to
  3771.     gain access to the functionality. If you are compiling Astrolog for
  3772.     DOS yourself, you will probably either need to have a copy of the
  3773.     Microsoft compiler or else compile out the mouse features, unless you
  3774.     can find an alternate library with the same functionality. This is
  3775.     further complicated by the fact that there is a bug in the mouse.c
  3776.     file which causes the locations of the mouse pointer to overflow and
  3777.     hence wrap before the end of the screen is reached! I manually fixed
  3778.     this before compiling in mouse.c to the official DOS executable. I can
  3779.     tell how to fix this to anyone who wants to compile PC Astrolog
  3780.     themself with this file.
  3781.  
  3782.  5. Mouse button enhancement: For X windows, pressing the middle mouse
  3783.     button when a world map is up, in addition to displaying the
  3784.     longitude and latitude of the point clicked on in the parent window,
  3785.     will also set the current chart location to this point. This makes an
  3786.     easy interface for doing chart relocation! Say you want to relocate
  3787.     your natal chart to Tokyo, Japan. Just bring up your chart in
  3788.     graphics mode, press 'W' to switch to the world map display, click
  3789.     middle button on Japan, then return to the wheel chart and there your
  3790.     chart is, as if you had been born at the same time but in Tokyo. For
  3791.     PC's the right mouse button does the same thing as the middle button
  3792.     for X: it will reset the current chart location to that clicked on.
  3793.     It won't actually display the new longitude and latitude, but you can
  3794.     easily see what it is by observing the chart information at the
  3795.     bottom of a graphics chart, or by pressing the 'v' key to see the
  3796.     whole chart and its location in text mode.
  3797.  
  3798.  6. -K switch: The -K switch generates a simple calendar for the month
  3799.     specified in the current chart. This is a standard type of chart
  3800.     generatable from a date so the -e everything switch has been changed
  3801.     to include this -K chart along with all the others. Note that this is
  3802.     technically a non-astrological chart, but generic calendars are
  3803.     useful and easy to generate with all of Astrolog's date determination
  3804.     features, so the option to create them using Astrolog is included.
  3805.     The calendars are compact, with one text row per week. The day
  3806.     specified in the current chart will be highlighted in green assuming
  3807.     Ansi color is active, e.g. "-n -K" will generate a chart for this
  3808.     month, with the number of today's date highlighted.
  3809.  
  3810.  7. -Ky switch: The -Ky switch is just like -K except that it will
  3811.     generate a calendar for the whole year. All twelve months will be
  3812.     displayed on the screen, each just like the individual monthly
  3813.     calendars above but printed in four rows of three months each.
  3814.  
  3815.  8. -I -m combination: Interpretations of midpoint charts are now
  3816.     supported by combining the -m switch with -I, which will print the
  3817.     midpoints in the same order as with just -m, but with each midpoint
  3818.     as an interpretation sentence instead. Relationship midpoint charts
  3819.     may be interpreted in the same manner in the -r0 -m -I combination.
  3820.  
  3821.  9. -I -r combination: Synastry relationship charts may now be
  3822.     interpreted, too. Actually, they could be interpreted before version
  3823.     3.10, in that one could combine the -r <chartfile1> <chartfile2>
  3824.     switch with -I and get an interpretation, but it would be an
  3825.     interpretation of Person2's planets in Person1's houses as if that
  3826.     were a natal chart, because the result of -r is basically a "chart"
  3827.     with one set of sign and house positions. Now, the interpretation
  3828.     feature recognizes charts generated with -r as synastry charts and
  3829.     interprets them appropriately. For each of Person2's planets, the
  3830.     interpretation of how and where it affects Person1 is displayed.
  3831.  
  3832.  10. -XB -Xn combination: For X windows, one may now animate a
  3833.     graphics chart on the root background by combining -XB with the -Xn
  3834.     switch. This will be just like the animations done in windows except
  3835.     the root is being used instead. Astrolog can be run in the background
  3836.     this way to continually update your root to the current chart
  3837.     representing the present moment. Limitations with this are that since
  3838.     there's no window, no keypresses can be processed so the program must
  3839.     be manually terminated, and that the continual updates will be as CPU
  3840.     intensive as the window animations are.
  3841.  
  3842.  11. -V switch: For PC's compiled with screen graphics, the -V <rows>
  3843.     switch will change the text screen to have the specified number of
  3844.     rows, assuming the hardware available supports it. Legal values are
  3845.     25, 43, and 50. This most useful as an initial parameter when running
  3846.     the program from Microsoft Windows (see later) to give more text rows
  3847.     to work in, or in the new -Q loop mode (see later), as well as being
  3848.     another way of getting to the functionality of the DOS "mode" command.
  3849.  
  3850.  12. -rd enhancement: The -rd <file1> <file2> switch, a non-
  3851.     astrological "relationship" function which would print the number of
  3852.     days between the dates in the two charts, has been enhanced. Instead
  3853.     of just printing the time difference rounded to the nearest day, it
  3854.     now also expresses the difference to the nearest year, month, week,
  3855.     hour, minute, and second. Want to say know how many years older your
  3856.     mother is than you? Just do "-rd momchart yourchart". Want to know
  3857.     how many minutes old you are? Just do "-i yourchart -td". Do the same
  3858.     command again right away and see that you are now a couple seconds
  3859.     older than the first time!
  3860.  
  3861.  13. -R1 switch: This will unrestrict all planets and other objects
  3862.     used by the program, a compliment to the old -R0 switch which
  3863.     restricts everything. Note that this won't set modes, in that you
  3864.     won't get uranians, stars, or minor cusps in your chart by default
  3865.     unless you get in those modes with -u, -U, and -C, but this will
  3866.     automatically clear out all existing default restrictions.
  3867.  
  3868.  14. Flow control enhancement: The various static help listings that
  3869.     can be generated, such as the lists from -H, -O, -A, -I0, and -H0,
  3870.     may now be combined with each other and even actual charts. Before,
  3871.     whenever the program would encounter one of these options, it would
  3872.     print the table and exit right away, ignoring the rest of the command
  3873.     line. (This meant that command switch order was important: "-U -O"
  3874.     would list the stars in the object list, but "-O -U" wouldn't.)
  3875.     Anyway, these tables are now treated as normal charts. For
  3876.     convenience and compatibility the program will still terminate right
  3877.     away if the only thing specified is one of the tables, e.g. just
  3878.     "-H" will print the help list and exit, but "-H -i file -g" will
  3879.     print the help list followed by an aspect grid chart.
  3880.  
  3881.  15. -ma switch: This is a shorthand way to bring up the -m0 sorted
  3882.     aspect chart, with the aspect orbs shown as applying vs. separating
  3883.     instead of positive or negative offsets to the exact aspect size.
  3884.     This is like how -ga does the same thing with the -g aspect grid
  3885.     switch. In fact, to get the functionality of -ma before 3.10, one
  3886.     would have to use -ga itself along with -m0, and then include -g by
  3887.     itself again ("-m0 -ga -g") to toggle the aspect grid off but leave
  3888.     the applying vs. separating mode on!
  3889.  
  3890.  16. Noswitches enhancement: The SWITCHES compile time variable, which
  3891.     when commented out makes Astrolog prompt the user for the command
  3892.     switches when the program starts, instead of taking them from the
  3893.     command line (which isn't always available on certain systems), has
  3894.     been enhanced in interface. Before one would have to monotonously
  3895.     enter each switch and each switch parameter on a separate line. Now,
  3896.     you just enter one line containing all the parameters together,
  3897.     separated by one or more spaces, just like is done when typing in the
  3898.     command line. Astrolog will automatically parse the string and
  3899.     extract the parameters, just like the operating system shell does.
  3900.  
  3901.  17. -Q switch: Usually when Astrolog finishes printing the specified
  3902.     chart or charts, or when we leave the graphics screen mode, the
  3903.     program will terminate. However, sometimes one wants to display or
  3904.     work with lots of charts or options, which causes them to invoke the
  3905.     program over and over again from their shell, which uses many
  3906.     processes and can be slow loading over and over from a slow disk.
  3907.     Auto-termination is also bad when automatically starting up the
  3908.     program in an X window or DOS box - once the program finishes, the
  3909.     container will exit right away too, not allowing reading of the text
  3910.     charts. The -Q switch causes the program to enter a looping mode
  3911.     environment where (after the first chart is displayed) the user will
  3912.     automatically be prompted to enter a new set of command switches
  3913.     (using the NoSwitches interface above) which will be processed. This
  3914.     will go on and the program will run until you enter "." on a line for
  3915.     the switches to really terminate it.
  3916.  
  3917.     Program errors which before would always cause Astrolog to exit right
  3918.     away, will now (unless fatal errors) return the user back to this
  3919.     outer loop. What's more is that being in the loop doesn't cause all
  3920.     the minor program variables to be reset every time. The main things
  3921.     like what info to use and what charts to display must be specified
  3922.     each time, but minor modes (such as the present -x harmonic factor)
  3923.     won't, so say specify -x 5 once, and you will be casting fifth
  3924.     harmonic charts until you specify otherwise or exit the loop, not
  3925.     having to include -x each time.
  3926.  
  3927.  18. -Q0 switch: This is just like -Q above except that the user will
  3928.     first be prompted for command switches right upon entering the
  3929.     program. Note that these will be in addition to whatever else was on
  3930.     the command line where the -Q0 itself was specified. This is mostly
  3931.     useful when running on a Windows system (see later) where one can
  3932.     have -Q0 as a default switch to pass to the program. Upon activation,
  3933.     the user will be in a loop with Astrolog asking for switches right
  3934.     away before proceeding to generate or prompt for anything.
  3935.  
  3936.  19. -. switch: The "-." switch, when encountered on a command line,
  3937.     will immediately terminate the program, ignoring any modes or other
  3938.     command switches. This is the formal way how to really exit the
  3939.     program when in the -Q loop (and really only useful in this case).
  3940.     Remember, above it was said to enter "." for the command line to exit
  3941.     the -Q mode. Well, Astrolog internally interprets the "." as a switch
  3942.     without a leading dash, i.e. "-.", which is a new switch that will
  3943.     force program termination.
  3944.  
  3945.  20. Graphics additions to astrolog.dat: Three new fields have been
  3946.     added to the astrolog.dat default parameter file. (Note that based on
  3947.     what options are compiled into the program, anywhere from zero to all
  3948.     three of the fields may be relevant and hence even be read in.)
  3949.  
  3950.     The mode in which graphics files are written to disk, like as
  3951.     specified with -Xb, is set here, and like everything else in
  3952.     astrolog.dat can be used to override the compile time value.
  3953.  
  3954.     The default pixel size that a chart comes up on the PC screen or in
  3955.     an X window, like as specified with -Xw, may be set here too.
  3956.  
  3957.     Finally, for PC's with graphics, the actual modes the program enters
  3958.     when in the "normal" and the "flicker free animation" modes can now
  3959.     be customized and set in astrolog.dat. The values are the various
  3960.     mode numbers defined in graph.h for the Microsoft library. (I should
  3961.     probably post a list of the valid numbers and which modes they
  3962.     correspond to.) By default, the normal high-res mode is set to the
  3963.     value "-3", which means a mode with the highest resolution, which is
  3964.     usually 640x480 16 color VGA. The default low-res animation mode is
  3965.     set to "16", which corresponds to 640x350 16 color EGA (which on most
  3966.     systems is the highest resolution allowing multiple pages meaning
  3967.     animation can be done without flicker).
  3968.  
  3969.  21. -d enhancement in astrolog.dat: The -d aspects in day search
  3970.     list, in addition to aspects, prints the times for sign and direction
  3971.     changes of objects too. Sign changes and direction changes may now
  3972.     each be restricted from appearing in this chart by setting a new flag
  3973.     in astrolog.dat. This works like the -R restrictions but for all
  3974.     types of these special events, instead of all aspects or events
  3975.     containing a particular object.
  3976.  
  3977.  22. -I enhancement in astrolog.dat: There's a new field in the
  3978.     astrolog.dat file specifying the width of the screen, which is
  3979.     usually set to 80. This value is used to determine what column to
  3980.     break lines at when formatting and printing the interpretation
  3981.     paragraphs. So now one may change this to accommodate narrower or
  3982.     wider screens or printers. (Note that this will not affect and has no
  3983.     relation to the existing astrolog.dat 80 column clip flag.)
  3984.  
  3985.  23. -Xl switch: For graphics, this switch will inhibit labeling with
  3986.     glyphs or text abbreviations, spots indicating the positions of
  3987.     planets. This is just the command line counterpart to the existing
  3988.     functionality accessed by the 'l' key.
  3989.  
  3990.  24. Spacebar key: When a graphics chart is up, pressing ' ' will
  3991.     force a redraw of the screen. This is useful for say to cleanup after
  3992.     one has scribbled on it a little with the left mouse button.
  3993.  
  3994.     YThere's a minor known bug with the PC mouse features, which is that
  3995.     when in a flicker free graphics mode, the mouse pointer will only
  3996.     appear half the time. (You can still scribble and set location, just
  3997.     that the pointer won't be visible.) This is due to the fact that a
  3998.     flicker free mode is actually two pages switched back and forth
  3999.     between for smooth updates. If you don't see and want your mouse
  4000.     here, the update generated by pressing spacebar will revert you to
  4001.     the other page where the mouse pointer is.■
  4002.  
  4003.  --
  4004.  
  4005.       As a quick summary reference, here's a list of the new feature
  4006.  entries in the -H help list that weren't there in version 3.05.
  4007.  
  4008.  -Q: Prompt for more command switches after display finished.
  4009.  -Q0: Like -Q but prompt for additional switches on startup.
  4010.  -mY0■a: Like -m0 but indicate applying and separating orbs.
  4011.  -K: Display a calendar for given month.
  4012.  -Ky: Like -K but display a calendar for the entire year.
  4013.  -dpy <year>: Like -dp but search for aspects within entire year.
  4014.  -y <month> <day> <year>: Display transits ordered by influence.
  4015.  -yn: Display transits ordered by influence on current date now.
  4016.  -R1 Y<obj1> ..■: Like -R but unrestrict and show all objects.
  4017.  -V: <25,43,50>: Start up with text mode set to number of rows.
  4018.  -Xl: Inhibit labeling of object points in chart graphic.
  4019.  
  4020.  
  4021.  #####################  NEW URANIAN SUPPORT  #####################
  4022.  
  4023.       Astrolog 3.10 has much more support for the eight uranian
  4024.  bodies. Here are seven additions which make it so virtually
  4025.  everything that can be done with the main planets can be done with
  4026.  the uranians too:
  4027.  
  4028.  1. -u -I valid: The uranians finally have their own interpretations,
  4029.     and will appear in the -I lists for aspects, transits, and so on. So
  4030.     if you've been wondering what those eight extra points in your chart
  4031.     actually mean, now you can find out.
  4032.  
  4033.  2. -u -X improvement: The uranians also have their own glyphs in the
  4034.     graphics charts instead of being displayed as a three letter
  4035.     abbreviation. These are official glyphs that I obtained from the same
  4036.     source I based the interpretation strings on.
  4037.  
  4038.  3. -u rulerships: Each uranian has its own ruling and exalting sign,
  4039.     meaning uranians in their rulership, etc, will be flagged as such and
  4040.     have more or less influence and so on. I came up with these myself
  4041.     and used the interpretation strings to decide what the most
  4042.     appropriate signs are. If you disagree, feel free to change them, or
  4043.     I'll be willing to describe in detail why I chose what I did here.
  4044.  
  4045.  4. -u -Am & -Ad valid: Uranian object indexes may now be passed to
  4046.     the -Am max orb to object switch, and the -Ad object orb addition
  4047.     switch. (Before, one could only modify the major bodies.) The
  4048.     astrolog.dat file for 3.10 has been expanded to include values for
  4049.     the uranians in these two respective categories, too.
  4050.  
  4051.  5. -u in astrolog.dat: The influence and new transit influence values
  4052.     for the uranians may also be set in the astrolog.dat file.
  4053.  
  4054.  6. -u -j valid: Uranians may now be displayed in charts where they
  4055.     were implicitly ignored before, such as the -j influence chart. One
  4056.     may now use this to see how big a role the different uranians play in
  4057.     their chart. For example, although minor, in my own chart I have one
  4058.     uranian more influential than Chiron and most of the other asteroids.
  4059.  
  4060.  7. -u -o0 valid: The positions of the uranians will now be output to
  4061.     the -o0 direct planet position files. This of course will only be if
  4062.     the uranians were actually calculated. Hence these files can now be
  4063.     of two different lengths, but the program (except the older versions
  4064.     3.05 and before) will be able to read in both formats.
  4065.  
  4066.  
  4067.  #####################  MAJOR 3.05 BUGS FIXED  #####################
  4068.  
  4069.       Here are 10 significant bugs in version 3.05 that have been
  4070.  fixed in 3.10, "significant" meaning things like crashes,
  4071.  inaccuracies, or loss of stated functionality. Special thanks to all
  4072.  who pointed out many of these problems.
  4073.  
  4074.  1. -Xb crash: In version 3.05 but not 3.00, in a compile with X
  4075.     window features, attempting to create a bitmap file with -Xb would
  4076.     crash. How did such a basic problem get into the program? Ok, when I
  4077.     posted version 3.00, I made a .zip file for DOS users and a .shar
  4078.     file for Unix and X users. Version 3.00 was developed almost entirely
  4079.     on a PC, and when it was done I tested the X window features just
  4080.     before posting. This bug was present, but because I had already
  4081.     created and downloaded the PC .zip file, I simply changed the source
  4082.     for the Unix code. This patched the problem but meant a source file
  4083.     was actually slightly different between the .shar and .zip archive
  4084.     versions of them. The bug was introduced when I made the 3.05 "bug
  4085.     fix" release, and neglectfully based it on the PC sources which
  4086.     didn't have the fix. Trust that this is not only fixed in 3.10, but
  4087.     that the sources are identical (except for default #define's in
  4088.     astrolog.h) in the various formats the sources are posted in.
  4089.  
  4090.  2. -L stack overflow: Compiling Astrolog for DOS using certain
  4091.     compilers, could result in occasional stack overflow errors when
  4092.     creating certain charts, especially the -L astro-graph chart. Such an
  4093.     overflow could be generated even with the "official" DOS 3.00
  4094.     executable by doing -L or -e and redirecting output with ">" (which
  4095.     takes up extra stack) to a file. Astrolog 3.10 is much more efficient
  4096.     with stack and has no such problems, and nor should builds with any
  4097.     other compiler.
  4098.  
  4099.  3. -Xn problem: In version 3.05 but not 3.00, with DOS graphics,
  4100.     attempting to enter or change to a different animation mode while in
  4101.     the lower-res flicker-free animation graphics mode, would result in
  4102.     nothing happening. You'd have to hit 'tab' to change graphics modes
  4103.     which would then start the animation. This was introduced with the
  4104.     small convenience added to 3.05 which would automatically go to the
  4105.     flicker free graphics mode when entering animation. (Sigh, this was
  4106.     the second bug *introduced* in 3.05, which was supposed to be a
  4107.     release to *fix* bugs.)
  4108.  
  4109.  4. -j0 inaccuracy: In the -j0 influence chart with sign influences as
  4110.     well as planet influences, the displayed percentage values that each
  4111.     zodiac sign plays in the chart were invalid in that they didn't add
  4112.     up to 100% (usually they'd be a little over). The percentages were
  4113.     still proportionately correct, but that didn't make them any more
  4114.     useful than the actual power numbers given.
  4115.  
  4116.  5. -r0 -ga inaccuracy: Doing applying vs. separating orbs in a
  4117.     relationship aspect grid would give bogus results. (The degree orb
  4118.     was still valid, but whether the aspect was really applying or
  4119.     separating was just as often wrong as it was right in this particular
  4120.     case.)
  4121.  
  4122.  6. -display problem: For X windows, the -display switch would work,
  4123.     but would screw up the command line parameter pointer so that the
  4124.     actual machine parameter given to -display would then be processed as
  4125.     a command switch. (It's Astrolog format -Xd twin didn't have this
  4126.     problem.)
  4127.  
  4128.  7. -Z -u problem: Creating a horizon chart with uranians active but
  4129.     not stars, would result in the last uranian line of the chart being
  4130.     repeated on the screen 47 times (there being 47 stars in Astrolog)
  4131.     due to some sloppy indexing code in the program.
  4132.  
  4133.  8. -r0 -m -X problem: Doing a graphical relationship midpoint chart
  4134.     would result in the graphic relationship aspect grid coming up
  4135.     instead. Now the -r0 -m -X switch combination will implicitly do the
  4136.     results of the -g0 switch, which for relationship charts puts
  4137.     midpoints instead of aspects in the grid chart.
  4138.  
  4139.  9. -S problem: There was no way to get rid of the Earth from the -S
  4140.     space charts either in text or graphics format. Not even the -R0
  4141.     restrict all switch would affect it because the Earth doesn't have a
  4142.     formal object index of its own. Now -R0 (and the new -R1) will affect
  4143.     this body along with all the others.
  4144.  
  4145.  10. astrolog.dat omission: Absolutely no checking was done on the
  4146.     values in the astrolog.dat defaults file for validity, meaning one
  4147.     could get away with default latitudes of 300 degrees north and so on.
  4148.     This is almost more of a new feature, but the same error checking is
  4149.     done now on the astrolog.dat files as is done for the command line
  4150.     and when prompting the user.
  4151.  
  4152.  
  4153.  #####################  MINOR 3.05 BUGS FIXED  #####################
  4154.  
  4155.       Here are 8 more minor problems existing in version 3.05 that
  4156.  were fixed. These are minor and hardly noticeable, but it might be
  4157.  good to mention them anyway "for the record".
  4158.  
  4159.  1. -Xbb problem: Windows .bmp bitmap files were written with slightly
  4160.     bogus scaling information, resulting in the files being displayed as
  4161.     square pictures (regardless of their original dimensions) when
  4162.     inserted into most other apps. Now we store zeros for these values
  4163.     when writing out the bitmap, so that they will now nicely come in one
  4164.     screen pixel per bitmap pixel for these apps.
  4165.  
  4166.  2. -Xn -XT text bad: When doing graphics animation with the current
  4167.     chart info displayed at the bottom of the screen, when the animation
  4168.     time changes to the next hour, extra roundoff could generate a
  4169.     display of 60 minutes for a few seconds. For example, when the
  4170.     animation time switched from 10:59 to 11:00, it would be displayed as
  4171.     10:60 for a few seconds before reverting to the correct 11:00.
  4172.  
  4173.  3. -g -k colors bad: The text colors for the locations of the planets
  4174.     down the main diagonal in the -g aspect grid chart were incorrect,
  4175.     not reflecting the element of the sign like they do everywhere else.
  4176.     A few more text color improvements made: Season changes in the -d
  4177.     searches are now colored bright white like the similar moon phases
  4178.     are. The -g0 aspect configuration chart now has separate colors for
  4179.     each planet in a configuration. Stars in the -v listing have their
  4180.     houses colored appropriately now like all the other bodies do.
  4181.  
  4182.  4. -I -T text improvement: This is more of a new feature than a bug,
  4183.     but when printing the interpretation for a transit return, the fact
  4184.     that the transiting planet is the same as the natal would make it
  4185.     read a little awkward since the same description was printed twice in
  4186.     the same sentence. We now rephrase these particular configurations to
  4187.     make them clearer.
  4188.  
  4189.  5. Typos: The uranian body "Apollon" was incorrectly named as just
  4190.     "Apollo". A few other less conspicuous typos have been corrected,
  4191.     such as one where the error message would be incorrect if an invalid
  4192.     time were passed to the -a switch.
  4193.  
  4194.  6. Potential typo: Where Astrolog says "Invoke program as 'astrolog
  4195.     -H'..." upon execution, we now actually get the real name of the
  4196.     current executable here instead of just printing "astrolog" all the
  4197.     time, meaning if you rename astrolog.exe to be just ast.exe, it will
  4198.     print Invoke as 'ast -H' here. Just yet another tiny improvement. :)
  4199.  
  4200.  7. -L -X color glitch: In color graphic astro-graph charts, the
  4201.     bottom side of the rectangular boundary of the world map would get
  4202.     mostly colored dark gray, when it should have been the bright
  4203.     highlight color like the rest of the border.
  4204.  
  4205.  8. Compiler warnings: A few invalid or missing pointer casts to X
  4206.     window functions could result in compiler warnings in three places in
  4207.     the xdriver.c file for some systems. These have been there since the
  4208.     X window features where introduced in version 2.00 and never caused a
  4209.     problem, but I finally got around to expressing them properly!
  4210.  
  4211.  
  4212.  #####################  ASTROLOG ON MICROSOFT WINDOWS  #####################
  4213.  
  4214.       Although Astrolog is not a Windows program and doesn't have
  4215.  direct support for it with menus and all, at least not yet, Astrolog
  4216.  3.10 nevertheless can be run from the Windows environment, some new
  4217.  features making this easier.
  4218.  
  4219.       One can make a Program Manager icon which will run Astrolog in a
  4220.  DOS box. Using the new -Q0 switch here will prompt the user for
  4221.  whatever switches they want to use, as well as looping back when done
  4222.  to allow additional switches to be specified much like invoking the
  4223.  program over and over again from DOS. Upon exiting the program, the
  4224.  DOS box will also terminate, and although not as elegant as a true
  4225.  Windows interface with dialog boxes and all, this is just as if not
  4226.  more usable than the DOS interface.
  4227.  
  4228.       To make a Windows Program Manager icon for Astrolog, first click
  4229.  in the program group you want the icon to appear in, then choose File
  4230.  New, and click OK to make a new program item. In the dialog, for the
  4231.  description field type something like "Astrolog 3.10". For the
  4232.  command line field, type "C:\ASTROLOG\ASTROLOG.EXE /Q0", i.e.
  4233.  whatever the path name is to the executable file, and you probably
  4234.  want to include the /Q0. For the working directory field, type
  4235.  "C:\ASTROLOG", i.e. just the path to the directory where the astrolog
  4236.  files are. For the shortcut key you can leave it blank or press a key
  4237.  like 'a', meaning that pressing Ctrl-Alt-A at any time when the
  4238.  Program Manager is active will start the Astrolog program.
  4239.  
  4240.       Then click on the change icon button, OK the warning, and from
  4241.  the Change Icon dialog type "C:\ASTROLOG\ASTROLOG.ICO" (again the
  4242.  path to your Astrolog directory) in the filename field. This should
  4243.  load in Astrolog's own Windows icon file included in the zip archive,
  4244.  a yellow planet with red rings and two blue moons and stars around
  4245.  it. Click OK twice and you should be back in your group with a nice
  4246.  Astrolog icon that can be double clicked on to boot Astrolog whenever
  4247.  you want.
  4248.  
  4249.       You may also want to include "/V 43" or something similar along
  4250.  with /Q0 for the command line field, if you want to have more than
  4251.  just 25 rows in the DOS box to print the text charts in. One can also
  4252.  create additional icons that have certain other switches or directly
  4253.  display certain charts. For example, have another icon called
  4254.  "Astrolog Now!" which has "/n /X /Q" for its switches. Double click
  4255.  on this to see where the planets are right now. You can also use the
  4256.  PIF editor utility (usually PIFEDIT.EXE in the Windows directory)
  4257.  instead to create an astrolog.pif file. With the right system and
  4258.  settings, you can specify a created .pif file instead of the Astrolog
  4259.  executable directly, in the Program Manager icon, and run the program
  4260.  in a window in real time along with your other Windows apps, just
  4261.  like Astrolog on X windows!
  4262.  
  4263.  
  4264.  #####################  3.10 COMPILING INSTRUCTIONS  #####################
  4265.  
  4266.       Compiling Astrolog version 3.10 is virtually identical to
  4267.  compiling previous versions: first edit the top of the file
  4268.  astrolog.h, commenting out any of the #define's which set various
  4269.  features that aren't valid on your system or you don't want, such as
  4270.  the GRAPH, X11, MSC, MOUSE, NOPC, TIME, and SWITCHES variables. Also
  4271.  in this file, set to your own appropriate values the default
  4272.  longitude, latitude, time zone, and default file search directory.
  4273.  Then in the same manner, also edit these default parameter values in
  4274.  the astrolog.dat file to your liking, at least the location and time
  4275.  zone values. Then, for Unix systems, just run the command 'make' in
  4276.  the directory containing the included Makefile.
  4277.  
  4278.       Compiling Astrolog on a PC is easy too. One can usually do it by
  4279.  simply compiling each file in turn and then linking them all
  4280.  together. You don't have to worry about explicitly mentioning things
  4281.  like the math library if your paths are set up properly. (I used the
  4282.  Microsoft C7 compiler to generate the ready to run PC executable, but
  4283.  I linked with the improved graphics.lib included with Visual C 1.00
  4284.  (C8) for the DOS graphics features.) If you have the nmake utility,
  4285.  the makefile included in the zip archive will nicely compile and link
  4286.  astrolog 3.10 on a PC, with flags set properly and all. I compiled
  4287.  under the Large memory model, with 12,000 bytes of stack space. The
  4288.  default directory in this ready to run PC executable is set to
  4289.  C:\ASTROLOG. The other compile time defaults are set to my own
  4290.  location, but you can easily override them with your own values using
  4291.  the astrolog.dat file.
  4292.  
  4293.       It is possible to easily compile Astrolog on a VMS system, even
  4294.  with X windows functionality. Here's an example of a simple VMS .COM
  4295.  file sent to me by Max Calvani which can automatically compile and
  4296.  link Astrolog for VMS. This should work for version 3.10, but I
  4297.  haven't tried it myself since I don't have access to a VMS system.
  4298.  
  4299.  ---- BEGIN INCLUDED FILE COMPILE.COM CUT HERE ----
  4300.  $ set ver
  4301.  $ define X11 decw$include
  4302.  $ CC CHARTS
  4303.  $ CC DATA
  4304.  $ CC DRIVER
  4305.  $ CC FORMULAS
  4306.  $ CC GENERAL
  4307.  $ CC INTRPRET
  4308.  $ CC OPTIONS
  4309.  $ CC XCHARTS
  4310.  $ CC XDATA
  4311.  $ CC XDRIVER
  4312.  $ CC XGENERAL
  4313.  $ link/exe=astrolog.exe -
  4314.  │CHARTS.obj, -
  4315.  │DATA.obj, -
  4316.  │DRIVER.obj, -
  4317.  │FORMULAS.obj, -
  4318.  │GENERAL.obj, -
  4319.  │INTRPRET.obj, -
  4320.  │OPTIONS.obj, -
  4321.  │XCHARTS.obj, -
  4322.  │XDATA.obj, -
  4323.  │XDRIVER.obj, -
  4324.  │XGENERAL.obj, -
  4325.  │sys$input/opt
  4326.  sys$share:decw$xlibshr/share
  4327.  $ set nover
  4328.  $ exit
  4329.  ---- END INCLUDED FILE COMPILE.COM CUT HERE ----
  4330.  
  4331.  --
  4332.  
  4333.  #+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
  4334.  +     Walter D. "Cruiser1" Pullen    |    cruiser1@stein.u.washington.edu     +
  4335.  #+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
  4336.  +   "Who am I, What am I?  As I am, I am not.  But as we are, I AM.  And to   +
  4337.  #   you my creation, My Perfect Love is your Perfect Freedom. And I will be   #
  4338.  +   with you forever and ever, until the End, and then forever more." - GOD   +
  4339.  #+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
  4340.