--

Helpfile for Astrolog version 4.10 (March 1994):

     This file contains a complete list of all the features available
in Astrolog version 4.10, and documentation on how to use each
option. The file is divided into six parts:

1) A summary list of all the main features which are accessed via
command line parameter switches, along with a list of single keypress
commands that can be given in an X window or to the screen (assuming
graphics are compiled in) to change the display in various ways.

2) The list of command switches and keypresses is repeated, but after
each option is listed a more lengthy description of the details of
the feature.

3) Details of default parameters, in compile time options, and in the
default parameter file, are described.

4) Descriptions of things that appear in the Astrolog text displays
are described. This consists of describing how to enter chart
information into the program, and how to interpret what is seen in
the main default display.

5) Next to last is a description of the different graphic chart
displays and how they are organized, and the X windows features in
general. (Looking for a quick impressive display to prove Astrolog
was worth compiling? With graphics try: "astrolog -Xn -XG". :)

6) Next to last are discussed the program's graphics features for
PC's, how to use them, the ways they are different from X Windows,
and the best way to use them if running under Microsoft Windows.


************************
LIST OF COMMAND SWITCHES
************************

Astrolog (version 4.10) command switches:
 -H: Display this help list.
 -Hc: Display program credits and copyrights.
 -H0: Display names of zodiac signs and houses.
 -O: Display available planets and other celestial objects.
 -O0: Like -O but ignore object restrictions.
 -A: Display available aspects, their angles, and present orbs.
 -I0: Display meanings of signs, houses, planets, and aspects.
 -Q: Prompt for more command switches after display finished.
 -Q0: Like -Q but prompt for additional switches on startup.

Switches which determine the type of chart to display:
 -v: Display list of object positions (chosen by default).
 -v0: Like -v but express velocities relative to average speed.
 -w [<rows>]: Display chart in a graphic house wheel format.
 -w0 [..]: Like -w but reverse order of objects in houses 4..9.
 -g: Display aspect and midpoint grid among planets.
 -g0: Like -g but flag aspect configurations (e.g. Yod's) too.
 -g0: For comparison charts, show midpoints instead of aspects.
 -ga: Like -g but indicate applying instead of difference orbs.
 -m: Display all object midpoints in sorted zodiac order.
 -m0: Like -m but list aspects ordered by influence instead.
 -m[0]a: Like -m0 but indicate applying and separating orbs.
 -Z: Display planet locations with respect to the local horizon.
 -Z0: Like -Z but express coordinates relative to polar center.
 -Zd: Search day for object local rising and setting times.
 -S: Display x,y,z coordinate positions of planets in space.
 -j: Display astrological influences of each object in chart.
 -j0: Like -j but include influences of each zodiac sign as well.
 -L [<step>]: Display astro-graph locations of planetary angles.
 -L0 [..]: Like -L but display list of latitude crossings too.
 -K: Display a calendar for given month.
 -Ky: Like -K but display a calendar for the entire year.
 -d [<step>]: Print all aspects and changes occurring in a day.
 -dm: Like -d but print all aspects for the entire month.
 -dy: Like -d but print all aspects for the entire year.
 -dp <month> <year>: Print aspects within progressed chart.
 -dpy <year>: Like -dp but search for aspects within entire year.
 -dp[y]n: Search for progressed aspects in current month/year.
 -D: Like -d but display aspects by influence instead of time.
 -E: Display planetary ephemeris for given month.
 -Ey: Display planetary ephemeris for the entire year.
 -e: Print all charts together (i.e. -v-w-g0-m-Z-S-j0-L0-K-d-D-E).
 -t <month> <year>: Compute all transits to natal planets in month.
 -tp <month> <year>: Compute progressions in month for chart.
 -t[p]y: <year>: Compute transits/progressions for entire year.
 -t[p]Y: <year> <years>: Compute transits for a number of years.
 -t[py]n: Compute transits to natal planets for current time now.
 -T <month> <day> <year>: Display transits ordered by influence.
 -Tp <month> <day> <year>: Print progressions instead of transits.
 -T[p]n: Display transits ordered by influence for current date.
 -I [<columns>]: Print interpretation of selected charts.

Switches which affect how the chart parameters are obtained:
 -n: Compute chart for this exact moment using current time.
 -n[d,m,y]: Compute chart for start of current day, month, year.
 -z: Assume Daylight time (change default zone appropriately).
 -z <zone>: Change the default time zone (for -d-E-t-q options).
 -l <long> <lat>: Change the default longitude & latitude.
 -q <month> <date> <year> <time>: Compute chart with defaults.
 -qd <month> <date> <year>: Compute chart for noon on date.
 -qm <month> <year>: Compute chart for first of month.
 -qy <year>: Compute chart for first day of year.
 -qa <month> <date> <year> <time> <zone> <long> <lat>:
     Compute chart automatically given specified data.
 -qj <day>: Compute chart for time of specified Julian day.
 -i <file>: Compute chart based on info in file.
 -o <file> [..]: Write parameters of current chart to file.
 -o0 <file> [..]: Like -o but output planet/house positions.
 -os <file>: Redirect output of text charts to file.

Switches which affect what information is used in a chart:
 -R [<obj1> [<obj2> ..]]: Restrict specific bodies from displays.
 -R0 [<obj1> ..]: Like -R but restrict everything first.
 -R1 [<obj1> ..]: Like -R0 but unrestrict and show all objects.
 -R[C,u,U]: Restrict all minor cusps, all uranians, or stars.
 -RT[0,1,C,u,U] [..]: Restrict transiting planets in -t lists.
 -C: Include non-angular house cusps in charts.
 -u: Include transneptunian/uranian bodies in charts.
 -U: Include locations of fixed background stars in charts.
 -U[z,l,n,b]: Order by azimuth, altitude, name, or brightness.
 -A <0-18>: Specify the number of aspects to use in charts.
 -Ao <aspect> <orb>: Specify maximum orb for an aspect.
 -Am <planet> <orb>: Specify maximum orb allowed to a planet.
 -Ad <planet> <orb>: Specify orb addition given to a planet.
 -Aa <aspect> <angle>: Change the actual angle of an aspect.

Switches which affect how a chart is computed:
 -b: Use ephemeris files for more accurate location computations.
 -b0: Like -b but display locations to the nearest second too.
 -c <value>: Select a different default system of houses.
     (0 = Placidus, 1 = Koch, 2 = Equal, 3 = Campanus,
     4 = Meridian, 5 = Regiomontanus, 6 = Porphyry, 7 = Morinus,
     8 = Topocentric, 9 = Equal (MC), 10 = Neo-Porphyry, 11 = None.)
 -s [..]: Compute a sidereal instead of the normal tropical chart.
 -s0: Display locations as right ascension instead of degrees.
 -h [<objnum>]: Compute positions centered on specified object.
 -p <month> <day> <year>: Cast 2ndary progressed chart for date.
 -p0 <month> <day> <year>: Cast solar arc chart for date.
 -p[0]n: Cast progressed chart based on current date now.
 -pd <days>: Set no. of days to progress / day (default 365.25).
 -x <1-360>: Cast harmonic chart based on specified factor.
 -1 [<objnum>]: Cast chart with specified object on Ascendant.
 -2 [<objnum>]: Cast chart with specified object on Midheaven.
 -3: Display objects in their zodiac decan positions.
 -f: Display houses as sign positions (flip them).
 -G: Compute houses based on geographic location only.
 -F <objnum> <sign> <deg>: Force object's position to be value.
 -+ [<days>]: Cast chart for specified no. of days in the future.
 -- [<days>]: Cast chart for specified no. of days in the past.
 -+[m,y] [<value>]: Cast chart for no. of months/years in future.

Switches for relationship and comparison charts:
 -r <file1> <file2>: Compute a relationship synastry chart.
 -rc <file1> <file2>: Compute a composite chart.
 -rm <file1> <file2>: Compute a time space midpoint chart.
 -r[c,m]0 <file1> <file2> <ratio1> <ratio2>: Weighted chart.
 -rd <file1> <file2>: Print time span between files' dates.
 -rb <file1> <file2>: Display biorhythm for file1 at time file2.
 -r0 <file1> <file2>: Keep the charts separate in comparison.
 -rp <file1> <file2>: Like -r0 but do file1 with progr. to file2.
 -y <file>: Display current house transits for particular chart.
 -y[b,d,p] <file>: Print biorhythm/datediff for current time now.

Switches to access graphics options:
 -k: Display text charts using Ansi characters and color.
 -V: <25,43,50>: Start up with text mode set to number of rows.
 -X: Create a graphics chart instead of displaying it as text.
 -Xb: Create bitmap file instead of putting graphics on screen.
 -Xb[n,c,v,a,b]: Set bitmap file output mode to X11 normal,
     compacted, very compact, Ascii (bmtoa), or Windows bmp.
 -Xp: Create PostScript stroke graphic instead of bitmap file.
 -Xp0: Like -Xp but create complete instead of encapsulated file.
 -XM[0]: Create Windows metafile stroke graphic instead of bitmap.
 -Xo <file>: Write output bitmap or graphic to specified file.
 -XB: Display X chart on root instead of in a separate window.
 -Xm: Create monochrome graphic instead of one in color.
 -Xr: Create chart graphic in reversed colors (white background).
 -Xw <hor> [<ver>], -ge[..]: Change the size of chart graphic.
 -Xs <100,200,300,400>: Change the size of map or characters by %.
 -Xi: Create chart graphic in slightly modified form.
 -XT: Inhibit display of chart info at bottom of graphic.
 -Xl: Inhibit labeling of object points in chart graphic.
 -X1 <object>: Rotate wheel charts so object is at left edge.
 -X2 <object>: Rotate wheel charts so object is at top edge.
 -Xd <name>, -di[..] <name>: Open X window on specified display.
 -XW: Simply create an image of the world map.
 -XW0: Like -XW but do a non-rectangular Mollewide projection.
 -XP: Create just the world map, but from a polar projection.
 -XG [<degrees>]: Display the image of the world as a globe.
 -Xn [<mode>]: Start up chart or globe display in animation mode.
Also, press 'H' while running for list of key press options.


Astrolog window keypress options (version 4.10):
 Press 'H' or '?' to display this list of key options.
 Press 'p' to toggle pause status on or off.
 Press 'x' to toggle fg/bg colors on screen.
 Press 'm' to toggle color/monochrome display on screen.
 Press 'i' to toggle status of the minor chart modification.
 Press 'T' to toggle header info on current chart on screen.
 Press 'b' to toggle drawing of a border around the chart.
 Press 'l' to toggle labeling of object points in chart.
 Press 'v' to display current chart positions on text screen.
 Press 'R', 'C', 'u', 'U' to toggle restriction status of minor
       objects, minor house cusps, uranian planets, and stars.
 Press 'c' to toggle relationship comparison chart mode.
 Press 's', 'h', 'f', 'F' to toggle status of sidereal zodiac,
       heliocentric charts, domal charts, and decan charts.
 Press 'O' and 'o' to recall/store a previous chart from memory.
 Press 'B' to dump current window contents to root background.
 Press 'B' to resize chart display to full size of screen.
 Press 'Q' to resize chart display to a square.
 Press '<' and '>' to decrease/increase the scale size of the
       glyphs and the size of world map.
 Press '[' and ']' to decrease/increase tilt in globe display.
 Press '+' and '-' to add/subtract a day from current chart.
 Press 'n' to set chart information to current time now.
 Press 'N' to toggle animation status on or off. Charts will
       be updated to current status and globe will rotate.
 Press '!'-'(' to begin updating current chart by adding times.
       !: seconds, @: minutes, #: hours, $: days, %: months,
       ^: years, &: years*10, *: years*100, (: years*1000.
 Press 'r' to reverse direction of time-lapse or animation.
 Press '1'-'9' to set rate of animation to 'n' degrees, etc.
 Press '1'-'9' to determine section of chart to show if clipped.
 Press 'V','L','A','Z','S','E','W','G','P' to switch to normal (-v),
       astro-graph (-L), grid (-g), local (-Z), space (-S), ephemeris
       (-E), world map (-XW), globe (-XG), and polar (-XP) modes.
 Press '0' to toggle between -Z,-Z0 & -XW,-XW0 & -E,-Ey modes.
 Press 'space' to force redraw of current graphics display.
 Press 'tab' to toggle between graphics resolutions.
 Press 'q' to terminate the window and program.

 Left   mouse button: Draw line strokes on chart in window.
 Middle mouse button: Print coordinates of pointer on world map.
 Right  mouse button: Terminate the window and program.


**********************************
DESCRIPTION OF EACH COMMAND SWITCH
**********************************

     Note: Astrolog allows command line parameter switches to be
invoked with either the leading dash ("-") standard to Unix users, or
a leading slash ("/") that many PC users are accustomed to. Not only
that, but the leading character is actually optional, and isn't
necessary at all! For example, the command "astrolog -i chartfile -R
-u -U -Z -Xs 300 -Xi -XB" can be done as "astrolog /i chartfile /r /u
/U /Z /Xs 300", or can be abbreviated as "astrolog i chartfile R u U
Z Xs 300 Xi XB". (This is subject to a couple of minor limitations,
in that one can't have the -1 or -3 option follow a -R restriction
list of numbers, since the "-1" will be considered a number.)

     Note: Many switches are technically a "toggle" instead of a
"set" for the particular feature in question. For example, "astrolog
-v -g -g" will only result in the -v chart being printed; an aspect
grid won't because the first -g turned it on while the second -g
turned it off again. This can be useful, in say the -e everything
switch. If you want all of Astrolog's charts except the astro-graph,
you can do "astrolog -e -L", where the -e turns everything on and the
-L turns the astro-graph chart, already on because of -e, off. In
another example, to get a chart with only the stars in it, one can do
"astrolog -R0 -RU", where the -R0 restricts everything, and the -RU
unrestricts all the stars. The various -X switches which set a mode
in graphics are also toggles. A combination like "-Xr -Xr" which with
one instance will just go into reverse video mode, will remain out of
it because the first -Xr put you in and the second toggled you back out.

     Note: The various static help listings that can be generated,
such as the lists from -H, -O, -A, -I0, and -H0, may be combined with
each other and even actual charts, and are treated like the normal
charts. For convenience the program will terminate right away if the
only thing specified is one of the tables, e.g. just "-H" will print
the help list and exit, but "-H -i file -g" will print the help list
followed by an aspect grid chart.

     Note: In the list below, greater than/less then symbols ('<' and
'>') are used to denote a command switch parameter, brackets ('[' and
']') are used to denote an optional parameter, and commas are used to
separate either/or choices. For example, the specification of the -I
switch is "-I [<columns>]", meaning that one can specify the -I
switch, followed a parameter for the number of columns, but that this
extra parameter is optional. The specification of the -Xs switch is
"-Xs <100,200,300,400>", meaning it can be used as either "-Xs 100",
"-Xs 200", "-Xs 300", or "-Xs 400". An ellipsis ('..') generally
refers to a list of values or an abbreviation for something already
indicated in related switches.

----

Astrolog (version 4.10) command switches:

-H: Display this help list.

  This option displays a list exactly like the one given above on the
  screen. Note: Concerning the list itself, PC users are accustomed to
  seeing command switches with a leading slash "/" instead of a dash
  "-". To accommodate this, this list of options available does, if the
  program has been compiled for a PC, display all the switches with a
  leading "/" instead of a "-". (On Unix and other systems they will
  still be displayed with the standard leading "-".)

-Hc: Display program credits and copyrights.

  This help switch displays a full page of credits, listing the names
  of those who programmed Astrolog or parts of it, and important
  copyright information and other legal stuff. Every time the program
  is invoked, the -Hc switch is mentioned to use to see this info.

-H0: Display names of zodiac signs and houses.

  The -H0 switch will display a list of the 12 signs of the zodiac,
  and the 12 houses, listing their standard and traditional names. This
  is similar to switches like -O or -A, in that it displays lists of
  things (objects, aspects, or in this case the signs) that Astrolog
  uses in its charts.

-O: Display available planets and other celestial objects.

  Similar to the -A option below, the -O option will list all the
  planets and other celestial objects used by the program, and their
  numbers as recognized by the -R restrictions (mentioned later). This
  list will also show the zodiac signs that planets rule, fall in, are
  exalted in, and debilitated in. (Note that when -O is specified by
  itself, the program will exit right after the table is displayed.)

-O0: Like -O but ignore object restrictions.

  The -O switch above simply displays a list of all the objects, cusps,
  uranians, and stars, along with their index numbers. This list can be
  affected by the -R restrictions, and the -C, -u, and -U switches must
  be included in order for all of Astrolog's objects to get listed. In
  order to make it easier to simply display a list of all 78 objects
  Astrolog recognizes, the -O0 option is just like -O by itself (and is
  equivalent to "-C -u -U -O") except that it will ignore all
  restrictions and always list every object. Stars are printed in the
  list along with their azimuth, altitude, and brightness values.

-A: Display available aspects, their angles, and present orbs.

  The -A command switch gives a list of all 18 supported aspects,
  their abbreviations as used in the aspect grids, their angles, and
  their orbs. It will list the number of each aspect in addition to all
  the other info already there (e.g. conjunct = 1, opposition = 2, etc.)
  so one can easily figure out what exact number to pass to the -A
  option when changing the number of aspects used (see below). Finally,
  it will display a brief verbal description of what each aspect glyph
  look like. This is in case one doesn't know what aspects the weird
  symbols in the -g -X graphic displays are referring to.

-I0 Display meanings of signs, houses, planets, and aspects.

  This will display the general meanings of each sign, each house, each
  planet, and each aspect, on the screen. This shows more or less the
  database the program uses to base its interpretations on (see -I
  switch charts later).

-Q: Prompt for more command switches after display finished.

  Usually when Astrolog finishes printing the specified chart or
  charts, or when we leave a graphics screen mode, the program will
  terminate. However, sometimes one wants to display or work with lots
  of charts or options, which would normally cause them to have to
  invoke the program over and over again from their shell, using many
  processes, and can be slow loading over and over from a slow disk.
  Auto-termination is also bad when automatically starting up the
  program in an X window or DOS box - once the program finishes, the
  container will exit right away too, not allowing reading of the text
  charts. The -Q switch causes the program to enter a looping mode
  environment where (after the first chart is displayed) the user will
  automatically be prompted to enter a new set of command switches
  (using the no SWITCHES interface described later) which will be
  processed. This will go on and the program will run until you enter
  "." on a line for the switches to really terminate it.

  Program errors which normally cause Astrolog to exit right away, will
  (unless "fatal" errors) return the user back to this outer loop.
  What's more is that being in the loop doesn't cause all the minor
  program variables to be reset every time. The main things like what
  info to use and what charts to display must be specified each time,
  but minor modes (such as the present -x harmonic factor) won't, so
  say specify -x 5 once, and you will be casting fifth harmonic charts
  until you specify otherwise or exit the loop, not having to include
  -x each time.

-Q0: Like -Q but prompt for additional switches on startup.

  This is just like -Q above except that the user will first be
  prompted for command switches right upon entering the program. Note
  that these will be in addition to whatever else was on the command
  line where the -Q0 itself was specified. This is mostly useful when
  running on a Windows system (see later) where one can have -Q0 as a
  default switch to pass to the program. Upon activation, the user will
  be in a loop with Astrolog asking for switches right away before
  proceeding to generate or prompt for any chart information.

----

Switches which determine the type of chart to display:

-v: Display list of object positions (chosen by default).

  This is just a formal specification for the standard chart listing of
  the planetary positions. One will get this chart by default if they
  don't specify any other chart types, and they will get it along with
  everything else in the -e option (see below). Although it isn't
  necessary, it must be included if one wants this type of chart to be
  displayed along with some of the other chart types described below.

-v0: Like -v but express velocities relative to average speed.

  This switch is just like -v except that it modifies the planet
  velocities fields slightly. (See later for a description of these
  velocity fields.) The -v switch normally expresses velocity values
  as an *absolute* quantity in degrees per day that the object appears
  to have moved through the zodiac. This means that outer planets will
  generally always have lower values, e.g. although a velocity of 0.010
  degrees/day for fast moving Mercury means it's about to turn
  retrograde, the same velocity value is normal for slow moving Pluto.
  As it is useful to know when a planet is about to change direction,
  the -v0 switch will divide the actual velocity values by how fast
  each planet moves with respect to the Sun, meaning that all planets
  will have an average *relative* velocity value of 1.000, and in all
  cases, a velocity of 2.000 means the planet is moving twice as fast
  as normal, and one of 0.010 means the planet is about to turn
  retrograde.

  Note: The -v0 switch which expresses planetary velocities relative to
  average speed has a known incompatibility will cause some applying
  vs. separating aspect orbs to be inverted, i.e. displayed as
  applying when the reverse is true or vice versa. This affects app/sep
  aspect grids and aspect lists (-ga, -ma, and -D charts, but not the
  -T transit influence charts). This is because the velocities are used
  to determine applying vs. separating to see if one planet is
  overtaking another. The bug comes with the program thinking that, for
  example, Pluto moving 2 times faster than normal, will soon overtake
  Mars, slightly ahead of it in the zodiac, moving half normal speed.
  When the values are expressed as absolute speed, it's apparent that
  the outer planet Pluto always moves much slower than the more inner
  planet Mars even when Mars is moving half normal speed. This problem
  is at least not likely to come up much since only explicitly
  combining -v0 with -ga, -ma, or -D will cause a problem.

-w [<rows>]: Display chart in a graphic house wheel format.

  Display of the chart in a nice wheel format is supported using the
  '-w' switch. (If one of the houses gets too 'full' of planets, the
  planet will be put at the beginning of the next house.) The same
  chart header information as is at the top of the standard -v chart is
  printed in the middle of the wheel. In addition, the day of the week
  that the date falls on, as well as the Julian day corresponding to
  the date and time of the chart, is shown.

  Note that this switch takes an optional parameter to specify the size
  in text rows of each house printed. By default this is four, but one
  may increase (realize this will make the chart require more than 24
  lines to print) or decrease (don't know why you would want to, but
  you can) this value to their preference. The parameter may range from
  1 to 10, and with this you can nicely generate a text wheel chart
  with all 79 objects in it, without overflowing all the houses.

-w0 [..]: Like -w but reverse order of objects in houses 4..9.

  In the -w text wheel option, the objects in each house are printed
  from top to bottom in order from earliest in the house to latest. This
  looks good except for in houses 5..8 where this would appear backwards
  (e.g. a planet having just entered the 6th house from the 5th would be
  displayed right under the Descendant.) Therefore the objects from
  houses 4 through 9 are reversed and printed in order from bottom to
  top, making a more flowing looking wheel chart. If however, one always
  wants each house to be filled from its top to bottom regardless of
  which house, replace the -w with the -w0 switch

-g: Display aspect and midpoint grid among planets.

  Aspects and midpoint display are supported: Invoke as astrolog -g and
  a rectangular grid showing the midpoint locations for each planet,
  and showing if any aspects are present and how accurate they are, is
  displayed. The planets are labeled down the main diagonal of the
  grid, with the aspects to the lower left and the midpoints in the
  upper right. This is of course often used along with the -A*
  switches. Both the aspect orbs and midpoints are displayed to the
  nearest minute, and on the main diagonal (or edges if a relationship
  aspect grid) is displayed the sign and degree of the planet in
  question in addition to the planet name itself.

-g0: Like -g but flag aspect configurations (e.g. Yod's) too.

  Search through the aspect grid for major aspect configurations,
  including Grand Trines, T-Squares, Grand Crosses, Yod's, Cradles, and
  Stelliums, with the -g0 option. (In a Stellium, three objects must all
  be conjunct with each other.) This option will produce the same aspect
  grid that -g displays, but afterwards will go through the grid and
  list any of these aspect configurations and what objects are forming
  them. (Of course, to see any Yod's, one has to -A 6 or more so that
  Inconjuncts will be included in the aspect grid.)

-g0: For comparison charts, show midpoints instead of aspects.

  For relationship aspect grids, the -g0 switch will display a midpoint
  grid instead of an aspect grid between the planets in the two charts
  e.g. "-r0 chart1 chart2 -g0". (See later for descriptions of the
  relationship charts.)

-ga: Like -g but indicate applying instead of difference orbs.

  Ability to determine whether an aspect is applying or separating (is
  about to happen or just happened) is included in the -g option.
  Normally the aspect orbs are flagged as being '+' or '-' based on
  whether they are greater or less than the exact amount (e.g. a 91
  degree Square has a +1 degree orb while a 89 degree one a -1 orb.) If
  one, however, invokes the -g option as -ga instead, an orb printed as
  'a' will indicate an applying aspect while an orb with 's' a
  separating one. (To estimate applying vs. separating, the program
  examines the planetary positions and their relative velocities at the
  time in question.)

-m: Display all object midpoints in sorted zodiac order.

  True midpoint charts are supported in addition to the midpoints that
  can be seen in the -g aspect grid. Use the -m switch and get a list
  of all midpoints printed out sorted in zodiac order. This will show
  both the actual midpoint location, as well as the angular difference
  between the two objects displayed to the nearest minute. So if you
  want to see, say, if any important midpoint is close to your Sun,
  this is a much easier chart to use than scrutinizing the
  midpoint/aspect grid.

-m0: Like -m but list aspects ordered by influence instead.

  Aspects too may be displayed in a nice ordered list, instead of only
  in the -g aspect grid. Invoke the above switch as -m0 instead of just
  -m and get a list of every aspect from the aspect grid printed out
  one per line. The order in which they are printed is based on the
  total "power" in the aspect, i.e. the influence of the two planets in
  question, the aspect in question, and the orb. The same info and data
  from the -j influence charts (see below) are used here, so changing
  any default influences there will affect this ordering. The two
  planets are printed, the aspect they make, their orb, and then the
  power of the aspect used in ordering. Any power number more than 10
  is a very major aspect. An exact Sun Moon conjunction can exceed 25.
  So, if you want to know, say, if that exact Mars Jupiter conjunction
  is more powerful than that wide Sun Moon sextile, try a -m0 chart and
  find out at least what Astrolog's opinion is.

-m[0]a: Like -m0 but indicate applying and separating orbs.

  This is a shorthand way to bring up the -m0 sorted aspect chart, with
  the aspect orbs shown as applying vs. separating, instead of positive
  or negative offsets to the exact aspect size. This is like how -ga
  does the same thing with the -g aspect grid switch. To get the
  functionality of -ma without this, one would have to use -ga itself
  along with -m0, and then include -g by itself again ("-m0 -ga -g") to
  toggle the aspect grid off but leave applying vs. separating mode on!

-Z: Display planet locations with respect to the local horizon.

  The text display switch -Z prints out where each object is on the
  local horizon in terms of altitude and azimuth. For each object, the
  following is displayed: Its altitude on the local horizon from +90
  degrees (straight up) to -90 degrees (straight down), and its azimuth
  from 0..360 degrees, where 0 = due east, 90 = north, 180 = west, 270 =
  south. To make visualizing the azimuth easier, an "azimuth vector"
  with a N/S component and a W/E component is displayed, e.g. (1.00s
  0.33w) means that the object is mainly south, with its true angle
  being formed by an vector component west that's 1/3 the strength of
  the south component, i.e. the object is about 18 degrees west of
  south. This along with the altitude should make it easy to physically
  point to where any planet is at any moment, making it easy to locate
  planets in the night sky. This feature can also be used to determine
  the times that a planet rises and sets. Also displayed are altitude
  and azimuth differences between each object and the Sun and Moon,
  first showing the number of degrees that the Sun/Moon is "ahead" (or
  farther east in the zodiac) of the object in question, and then the
  number of degrees that the Sun/Moon is above the object in question.
  This feature can be used to roughly predict eclipses! Both the Sun and
  Moon span about 0.5 degrees in the sky, therefore if both the azimuth
  and altitude differences are < 0.5 (or 1.0 if the difference is
  between the Sun and Moon themselves) then the object in question is
  probably being occulted somewhat by the Sun/Moon. Note that there are
  three types of planetary position displays: Right ascension and
  declination showing the object's position with respect to the stars,
  longitude and latitude showing where on the Earth the object is
  straight up (as in the astro-graph zenith locations), and finally
  azimuth and altitude showing the positions of the object relative to
  the local horizon.

-Z0: Like -Z but express coordinates relative to polar center.

  This will do a text chart just like the -Z local horizon switch above
  except that it will print the location of each planet in prime
  vertical coordinates, instead of altitude and azimuth. Prime vertical
  coordinates are measured with its "azimuth" around the 360 degree
  circle, with 0 degrees due east on the local horizon, going down with
  90 degrees straight down, 180 degrees due west and so on; declination
  "altitudes" are measured with positive values toward the north and
  negative toward the south.

-Zd: Search day for object local rising and setting times.

  One can display the rising and setting times of the Sun, Moon, and
  planets with this feature. Specifically, when this switch is
  included, the program will, for the entire day specified in the chart
  information, display whenever a planet rises (specifically conjuncts
  the local horizon while in the eastern hemisphere), sets (conjuncts
  horizon in west), reaches its zenith point (or specifically conjuncts
  the meridian while in the southern hemisphere, i.e. is due south from
  the observer), and reaches its nadir point (conjuncts meridian in
  north). Note that some stars may be high or low enough that they will
  never rise or set, but instead will just "zenith" or "nadir" twice in
  a day as they spin around the pole.

-S: Display x,y,z coordinate positions of planets in space.

  Solar system space based charts are available with the -S switch,
  which give the astronomical positions of each planet in terms of x, y,
  and z coordinates. Although not directly useful astrologically, it
  does give one a good view of how the planets actually were positioned
  at the time in question. For example, normal astrology doesn't make
  the distinction between the four different "forms" of say, a Mercury
  Venus Conjunction, i.e. they can either be Conjunct on the near side
  of the Sun, Conjunct on the far side of the Sun, or one can be on one
  side and the other on the other side. When the chart is actually
  displayed, for each body the following information is printed: The
  relative angle of the planet with respect to the central body, i.e.
  its zodiac position converted to the appropriate number from 0..360.
  This is followed by the x, y, and z coordinate positions of the
  object, in astronomical units from the central body. The x-axis
  increases in the direction of 0 degrees Aries (tropical zodiac), the
  y-axis increases in the direction of 0 degrees Cancer, and the z-axis
  is with respect to the Earth's orbit (meaning that the Sun and Earth
  always have a z-axis value of 0.0). Finally the overall length from
  the central body in AU is printed, which is just the diagonal as
  indicated by the x, y, z vectors. (The Earth and Sun are of course
  always about 1.0 AU from each other.) The Moon circles the Earth and
  isn't a part of the solar system proper; therefore, it is never in
  these charts. The -e everything option will include this chart in its
  listing of all the chart displays. (Note that the Earth doesn't have
  a formal object index of its own. Hence there's no real way to
  directly restrict it from these -S space charts either in text or
  graphics format. Only the -R0 (and -R1) restrict everything switches
  will affect this body, as they do all the others.)

-j: Display astrological influences of each object in chart.

  Another chart type is available - interpretation of influences. This
  is the simplest part of the general interpretation ability of the
  program. What this part does is calculate the relative "power" of each
  planet's placement, giving a general idea of the prominent areas of a
  chart. When such a chart is printed, each planet is given a point
  value, larger numbers indicating more strength. Each planet's strength
  is divided between two fields: the positioning in and of itself, and
  the power of the aspects it makes with the other planets. In addition
  to each field, the total of these two areas is printed, as well as the
  relative percentage of the planet in question with respect to all the
  planets combined. Each planet gets a ranking for its positioning,
  aspects, and total power as well, with the strongest getting #1, the
  next strongest #2, etc. The -e option will include this chart along
  with all the others as well in it's listing of all the chart displays.

  To determine the strength of the positioning of a planet, various
  things are taken into account: 1) The power of a planet in and of
  itself, e.g. the Sun and Moon are more powerful then the other
  planets. 2) The house placement of a planet, e.g. a planet in the 1st
  house is more powerful than one in the 2nd. 3) Whether a planet is in
  the sign it rules or is exalted in, e.g. Jupiter in Sag results in
  more power to Jupiter. 4) Whether a planet is in the house
  corresponding to the sign it rules or is exalted in, e.g. Jupiter in
  the 9th house. 5) Planets get more power if the signs they rule are
  occupied, e.g. a bunch of stuff in Aquarius gives more power to
  Uranus. 6) Planets get more power if the houses they rule are
  occupied, e.g. a bunch of stuff in the 11th house gives power to
  Uranus. 7) Finally, planets get power according to what houses the
  cusps of which fall in the signs they rule, i.e. the ruler of the
  Ascendant (and to less extent the Midheaven, and so on) gets lots of
  influence. Determining the strength of a planet's aspects is much
  easier, and is basically composed of the sum of the strength of each
  aspect the planet makes. Taken into account are: 1) The influence of
  the planet being aspected to, e.g. Sun conjunct Jupiter gives more
  influence to Jupiter than Mercury conjunct Jupiter would. The
  planet's placement as described above plays a role, too, e.g. Venus
  opposition Mars in Aries gives more influence to Venus that it would
  be if Mars were in Taurus. 2) The influence of the aspect itself,
  e.g. Oppositions are more powerful then Sextiles. 3) Finally the orb
  of the aspect, i.e. exact aspects are more powerful than wide ones.
  (The influence of the orb varies linearly from max power at exact to
  zero power at the limit of the orb - sorry Maggie M. and Mark K. - no
  complex aspect wave functions, at least for this version :)

  Special thanks goes to Mark K. who initially presented this idea of
  interpreting overall influences to me. I basically just took his
  ideas, polished them a bit, and put it into the code. Interestingly,
  while programming this feature, I had a dream about him, in which he
  elaborated upon some of the ideas and even gave me suggestions for
  some of the planets' default power values (astral visitation?) And,
  while on the subject, I've had a couple of other Astrolog dreams; I
  had one neat one while working on the -h feature (described later)
  about a far distant future version of Astrolog that could actually
  teleport one to the places which they cast charts for :)

-j0: Like -j but include influences of each sign as well.

  The -j planet influences in a chart feature can be expanded to
  include signs as well. Invoke it as -j0 instead of just -j, and in
  addition to getting the influence of each planet in a chart, one will
  get the influence of each sign in the chart as well. To determine
  sign influence, we use the planet powers already determined; a sign
  gets influence if: (1) There is a planet in it, (2) there is a planet
  in the house it corresponds to, and (3) if any planet that rules or
  co-rules it is in the chart. For example, with my 11th house Venus in
  Sagittarius, for me: (1) Sagittarius gets more power because Venus is
  in it, (2) Aquarius gets more power because Venus is in the 11th, and
  (3) Libra and Taurus get power because Venus itself rules these
  signs. The exact power given is based on the total influence of Venus
  already determined. Any sign that has over about 175 points or 20% of
  the total is a really powerful and fundamental part of the psyche. We
  also sum up the influences of all the signs (which will logically
  total up to the sum of all the planets), displaying the influence of
  each element as well, which is perhaps a more accurate version of the
  element table in the -v chart.

-L [<step>]: Display astro-graph locations of planetary angles.

  The '-L' option will take the standard chart information and generate
  the astro-graph positions of the planets. In other words, this does
  the exact same thing that Jim Lewis' Astro*Carto*Graphy maps do. It
  will display the longitude of where on the Earth at the time in
  question each object was on the midheaven and on the nadir, and the
  latitude of where the planets actually appeared at zenith. Also, for
  latitude increments of 5 degrees, the longitude of where the objects
  appeared on the ascendant and descendant is displayed. For text
  screens, one can pass an optional parameter to this -L (or -L0) option
  to change the default latitude step rate at which the Ascendant and
  Descendant lines are computed. Again, this value is by default 5
  degrees, although one can may increase or decrease it to any integer
  (subject to the restriction that the number 160 is divisible by it.)

-L0 [..]: Like -L but display list of latitude crossings too.

  Determination of latitude crossing points is included in the
  astro-graph routines! The -L0 option will do the same thing as the -L
  option, except that after displaying the longitude and latitude
  locations of the Asc/Desc/MC/IC lines, it will then search among the
  lines and display (in order from farthest North to farthest South) the
  latitude of any points where lines cross each other. This includes the
  curvy Asc/Desc lines crossing the straight MC/IC lines as well as
  cases where different Asc/Desc lines cross themselves. And unlike Jim
  Lewis' Astro*Carto*Graphy, Astrolog will also display the longitude of
  the crossing (useful for Asc/Desc crossings) in addition to the
  latitude (as well allowing more planetary bodies to be included in the
  scan, and going farther North and South than Jim Lewis' printouts go.)
  Note however, that there is presently a small (very rare) minor
  omission glitch in the code, where if a crossing is within a couple of
  degrees of 180 deg W/E, it may not be displayed.

-K: Display a calendar for given month.

  The -K switch generates a simple calendar for the month specified in
  the current chart. This is a standard type of chart generatable from
  a date so the -e everything switch includes this -K chart along with
  all the others. Note that this is technically a non-astrological
  chart, but generic calendars are useful and easy to generate with all
  of Astrolog's date determination features, so the option to create
  them using Astrolog is included. The calendars are compact, with one
  text row per week. The day specified in the current chart will be
  highlighted in green assuming -k Ansi color is active, e.g. "-n -K"
  will generate a chart for this month, with the number of today's date
  highlighted.

-Ky: Like -K but display a calendar for the entire year.

  The -Ky switch is just like -K except that it will generate a
  calendar for the whole year. All twelve months will be displayed on
  the screen, each just like the individual monthly calendars above but
  printed in four rows of three months each.

-d [<step>]: Print all aspects and changes occurring in a day.

  The '-d' option will take the standard chart information, and for the
  day in question, display the exact times of all aspects that occur.
  This is just like the aspects-per-day as displayed in Jim Maynard's
  Celestial Guide books. (Displayed in local time as defined by the
  default zone, with accuracy based on the searching divisions setting,
  described later.) This will tell any time two planets make aspects
  with each other, a planet changes its sign, or a planet goes
  retrograde or direct. Both the -d (and -T listed later) options will
  display the signs that any planets aspecting each other are in, in
  addition to the aspect itself (e.g. instead of just "Jupiter Trine
  Uranus", we have "Jupiter (Vir) Tri (Cap) Uranus". If a particular
  object is going retrograde, then its sign will be displayed in
  brackets instead of parentheses, and if a particular object is about
  to or has just gone retrograde or direct, then its sign will be in <>'s.

  This switch accepts an optional parameter for the searching divisions
  accuracy step value. This command line change of the divisions value
  can be done for other charts such as the -t transit search by using
  the switch toggle feature to turn -d off but still leave the
  divisions value set, e.g. "-d 100 -d -t" will set the value to 100
  but not actually display the -d chart.

-dm: Like -d but print all aspects for the entire month.

  The -d option can search the entire month for aspects between planets
  if one so desires. Specifying it as -dm instead of just -d will go
  through the entire month instead of just the current day. (Combining
  this one with -R allows searching for important aspects, sign
  changes, etc.)

-dy: Like -d but print all aspects for the entire year.

  The -d option can search the entire given year for events as well, if
  it's specified as -dy instead of just -d or -dm.

-dp <month> <year>: Print aspects within progressed chart.

  Another progression feature allows determining aspect times of
  progressed planets among themselves. The -dp <month> <year> switch
  will, like the -d option, display times of aspects and sign changes,
  for the time around the chart in question, except that they will be
  progressed throughout the month specified. Progressed planets move
  very slowly ("year for a day") so therefore there will usually be, if
  any, only a couple of aspects in a given month. Also, since they move
  so slow, the accuracy is cut down, so the dates given are probably
  only accurate about to the nearest day, in spite of the times given
  to the minute. Note that Astrolog can scan for aspects of: transiting
  planets among themselves (-d switch), transiting planets to natal
  planets (-T switch), progressed planets to natal planets (-Tp), and
  progressed planets among themselves (-dp). Only thing Astrolog can't
  directly do is do progressed planets to transiting planets, although
  that may change in a future version :)

-dpy <year>: Like -dp but search for aspects within entire year.

  Since progressed planets move so slow and only a few aspects in a
  progressed chart will appear each month, one might want to instead
  scan the whole year. To do this, use the -dpy switch, which takes
  only one parameter for the year. This switch is consistent in format
  to how with the -T and -E switches one specifies an entire year.

-dp[y]n: Search for progressed aspects in current month/year.

  The -dp progression event search option can be invoked as -dpn to
  search the current month, or -dpyn to search the entire current year.
  For example, if I want to search for the exact times of all aspects
  in my natal chart, progressed to any time this month, I simply do "-i
  mychartfile -dpn".

-D: Like -d but display aspects by influence instead of time.

  This switch will display a chart listing all aspects in effect within
  the chart in question, in order by influence based on their power
  when transiting. This chart focuses upon and gives precedence to
  aspects of outer planets with each other, as opposed to common inner
  planet configurations. For example, at this time in early January
  1994 the most influential aspects in effect are the Uranus Neptune
  conjunction and the Saturn Pluto square. This chart is very much like
  the format of the -m0 aspect list chart, except that we are using the
  transit as opposed to natal influences of the planets. The -m0 chart
  is most appropriate for a person's natal chart, in that the inner
  planets are focused upon, such as a Sun Moon square will be near the
  top of the list. This -D chart is more appropriate for times as
  opposed to people, since it focuses upon rare outer planet
  configurations. This chart is also very similar to the -T transit
  influence chart, in that it shows the aspect, applying or separating
  orb, and power of the event with its present orb, except that this
  does influences of transiting planets among themselves as opposed to
  aspects to a natal chart. If you want to see what major events are
  coming up, and don't want things such as Uranus Neptune conjunctions
  to "sneak by", use this chart and watch the configuration gradually
  rise to the top of the list as its orb narrows over time. This chart
  may be combined with others and is included in the -e everything switch.

-E: Display planetary ephemeris for given month.

  The -E option will generate a quick ephemeris of the planet positions
  each day for the month indicated in the given chart, as taken from
  the standard interface. This is useful if you just want to see an
  overview of what's happening some month in the sky. Any dots after a
  planet location in the list indicate the planet was retrograde at the
  time that day. For example, to see the ephemeris for someone's birth
  month, one can do the convenient "-i chartfile -E", or to see the
  ephemeris for this month, do "-n -E" (see -i and -n options later).

  Note: The ephemeris listings obtain the time (and time zone) to cast
  each day's chart for (e.g. noon, midnight) from the chart information
  given it, instead of always defaulting to something like midnight in
  the default time zone. This is a bit more flexible since one may want
  to specify a noon or 6:00am or whatever ephemeris which wouldn't be
  possible otherwise. The -qm <month> <year> switch (see later) always
  uses midnight for the time and the default for the time zone, so when
  using this switch with -E, the results will be a midnight ephemeris
  in this default zone. However, something like -i yourchart -E to do
  an ephemeris for your birth month will display the positions each day
  at your birthtime instead of at midnight.

-Ey: Display planetary ephemeris for the entire year.

  To display an ephemeris for all twelve months in an entire year,
  invoke the -E switch as -Ey. For example, to get an ephemeris for
  all of last year, one can do "-qy 1992 -Ey" (see -qy and -qm options
  below).

-e: Print all charts together (i.e. -v-w-g0-m-Z-S-j0-L0-K-d-D-E).

  There are twelve main different formats of chart display available:
  The standard listing of planet positions, which you get without any
  switches or with the -v option, the aspect/midpoint grid you get with
  -g, the house wheel you get with -w, and the charts generated with
  the -m, -Z, -S, -j, -L, -K, -d, -D, and -E options. The -e
  "everything" option will display the chart in all twelve of these
  formats for about 1000 lines and 60K bytes of text! Note that one can
  even include the -t and/or -T transit options below and include yet a
  couple more chart formats in the list (however transits require a
  time parameter to do transits for so they aren't really a single
  chart display and hence aren't included in -e by default).

-t <month> <year>: Compute all transits to natal planets in month.

  The '-t <month> <year>' option will scan the entire month specified,
  and print out any transits that happen, in that month, to the planet
  positions as listed in the current chart, as taken from the standard
  interface. There will be quite a few, even though fast moving objects
  like the Moon aren't looked at by default (unless specified in the
  default parameter file or with the -RT switch), so you might want to
  use this with the -R option to limit this to just certain planets.
  (The times are displayed in the local time zone, and are generally
  accurate to within a half hour or so; Try doing it for your birth
  month and your own chart - All planets should conjunct their natal
  positions at about the time of your birth.) To determine transits to
  natal house cusps other than the Asc and MC, i.e. when does a planet
  change house in your natal chart, include the -C switch described
  later. See the -RT option, as well as the "smart cusps" default,
  described later, for options which directly affect this feature.

-tp <month> <year>: Compute progressions in month for chart.

  Determining dates of transits of progressed planets to natal planets
  can be done with the -tp <month> <year> option. This is just like the
  -t option, except that the exact aspects of progressed planets
  (rather than transiting planets) to the planets in the chart are
  displayed. Progressions occur much less often than transits, and
  there will only be a few, if any, in a given month, so one might to
  invoke this as -Tpy, as described below.

-t[p]y: <year>: Compute transits/progressions for entire year.

  To display transits for an entire year, invoke the -t switch as -ty
  (-tpy for progressions), which only takes one parameter, the year.
  For example, "-i chartfile -ty 1994".

-t[p]Y: <year> <years>: Compute transits for a number of years.

  One may also search an arbitrary number of years at once for
  transits. One uses the -tY <year> <years> switch like the -ty <year>
  switch above, except that -tY takes an extra parameter for how many
  years to search. For example, -tY 1994 10 will search the ten years
  from 1994 through 2003 for whatever transits. With a negative value
  for the years to scan, it will start that many years before the given
  year, e.g. -tY 1993 -10000 will scan the previous 100 centuries for
  transits, starting with 8005 B.C.! Note that this switch may also be
  invoked as "-tYn <years>", in which case it will start from the
  current year and be an equivalent shorthand to "-tY 1994 <years>" for
  this year at least.

-t[py]n: Compute transits to natal planets for current time now.

  This feature is a quick shorthand way to generate transits for the
  current month. For example, instead of "astrolog -i chartfile -t 1
  1994", one can do "astrolog -i chartfile -tn". To do transits for the
  entire current year, invoke it as "-tyn".

-T <month> <day> <year>: Display transits ordered by influence.

  The -T switch is a transit influence chart. Given a date, it will
  take the transiting planets on that date, and determine how they
  interact with the generic natal chart specified with -i or however.
  The information will be printed as a list of transits, sorted in
  order from most significant to least significant. For each transit in
  effect, the transiting and natal planets (and the signs they are in)
  are displayed, along with the aspect and the orb, and whether the
  transit is applying and going to happen in the future, or just passed
  exactness and the orb is separating. The computer computed power
  value of each transit will be printed too - anything over 100 is a
  very major transit. Any transit that's a return, i.e. a transiting
  planet conjuncting the same one in the natal chart, will be flagged
  with a capital "R" at the end of the line.

  The things which affect how Astrolog computes the influence of a
  transit are: The power of the object that's doing the transit, e.g.
  transiting Pluto conjunct your natal Ascendant is much more powerful
  than the transiting Moon conjunct your Ascendant. The power of the
  object being transited affects the power too (but not as much as the
  transiter) e.g. Jupiter transiting your Sun is more powerful than
  Jupiter transiting an asteroid. Finally, the orb plays a role as
  well, in that a transit that will be exact in a couple of days from
  the given date passed to -y is more powerful than one won't be exact
  for another month. Note that the power of a planet when transiting is
  different than its influence in the natal chart: Although Sun
  conjunct Moon is more powerful in a natal chart than Saturn conjunct
  Moon, when transiting, Saturn transiting Moon is much more
  influential than Sun transiting Moon. Hence there are two lists of
  object influence values in the astrolog.dat file (described later)
  that can be customized. There's the generic list of standard
  influences (which have items like Sun, Moon, and Ascendant most
  powerful), and a parallel list of transit influences (which have the
  slower moving bodies the most powerful).

  This switch is in compliment to the -t transit search list, and you
  may find this one more useful. The -t chart prints the times when
  a transit is exact, which is useful to know, but doesn't really help
  when you want to know when a transit enters orb enough to be
  significant, and it won't flag a major year long transit that will be
  exact next month, listing it among a bunch of less significant
  aspects for the following month. With -T, you can see a major transit
  first enter orb at the bottom of the list, and then slowly rise to
  the top as it becomes more exact through the days. And you can answer
  the question as to which is more influential: say an exact transit of
  Mars to a minor house cusp, or a major transit of Saturn to an angle
  that's still a month away from exactness.

  Also notice the resemblance between -T and the -r0 -m0 combination.
  Both display aspects ordered by influence. In fact, "-i chart -Tn"
  will look almost identical to "-y chart -m0", except that -T is
  designed and formated for doing transits to a particular chart.
  (Doing -T will always use applying vs. separating orbs, generate
  powers using the transit influences, and allow the transiting and
  natal planets to be restricted separately with -RT and -R.) Astrolog
  allows transit charts to be done between transiting planets and natal
  planets, as well as charts among transiting planets to themselves,
  both of which can be expressed as searches for exact times, or
  displays of influences of each aspect at a particular time, as
  summarized in the following organized list:

  o -t switch: Display exact times of transits to natal planets.
  o -T switch: Display influences  of transits to natal planets.
  o -d switch: Display exact times of aspects among transiting planets.
  o -D switch: Display influences  of aspects among transiting planets.

-Tp <month> <day> <year>: Print progressions instead of transits.

  The -T transit influence switch can also (like the -t transit search)
  display all aspects between progressed planets and natal planets in
  influence order, if it's invoked as -Tp instead of just -T. This
  works like -T in every way except that a switch combination like "-i
  mychart -Tp 1 31 1994" will display aspects between my natal planets,
  and those in my natal chart progressed to the end of the month, and
  their influence and orbs at that time, instead of between my natal
  planets and the actual positions of the planets at the end of January.

-T[p]n: Display transits ordered by influence for current date.

  The -Tn switch is a shorthand way to pass the current date today and
  time now to the -T switch. If you want to see what transits are most
  affecting your natal chart presently, just do "-i yourchart -Tn".

-I [<columns>]: Print interpretation of selected charts.

  The -I display an interpretation option is a powerful, expansive
  feature to generate interpretations of many of Astrolog's charts.
  Simply include the -I switch to get an interpretation of any
  particular type of chart that the program would display otherwise.
  If Astrolog doesn't support interpretations for it, the normal chart
  will be shown instead.

  For example, A brief interpretation of the meaning of the positioning
  of each planet in its sign and house is supported when the -I switch
  is invoked with -v (or by itself since -v is the default). If one
  does this, then instead of the standard -v listing of planet
  positions, the positions will be listed with a brief interpretation
  of what they mean. I have to say that this is a pretty limited
  version of interpretation, being nothing more than a combining of
  phrases representing the planet, sign, and house in question;
  nevertheless, people who don't know how to interpret charts might
  find this to be of use (or at least amusing. :)

  Another common interpretation one would want is the ability to give a
  brief interpretation of each aspect in the aspect grid. When the -I
  switch is combined with -g, the standard -g aspect grid will be
  replaced with a list of each aspect occurring and a brief listing of
  what it means. Again, this is mainly just a lookup of the general
  meanings of each planet and the aspect in question, but still might
  be found of interest by some. (Note: only the first 11 aspects, out
  to the Bi-Quintile, can be considered.)

  Synastry relationship charts may be interpreted too, with the -r -I
  combination. Actually, they could be technically interpreted without
  any special code, since the output of a synastry chart is a technical
  "chart" with planet and house positions, but it would just be an
  interpretation of Person2's planets in Person1's houses as if that
  were a natal chart. This interpretation feature recognizes charts
  generated with -r as synastry charts and interprets them
  appropriately. For each of Person2's planets, the interpretation of
  how and where it affects Person1 is displayed.

  Eight more interpretations just as useful can be done: "-r0 person1
  person2 -g -I" is a legal combination, and will display meanings of
  aspects between planets in two charts in a relationship aspect grid.
  "-i person -m0 -I" is legal, and will display the meanings of aspects
  in a chart; this is like -g -I, but the aspect meanings are printed
  in sorted order based on how powerful Astrolog thinks each aspect is,
  so this is probably more useful. "-r0 person1 person2 -m0 -I" is legal,
  and will display the meanings of aspects in a relationship aspect
  list, like -r0 -g -I, but in the improved sorted order. "-d -I" is
  legal, and will display the meanings of aspects among transiting
  planets occurring during a day, as well as of sign and direction
  changes. "-T -I" is legal, and will display the meanings of aspects
  from transiting planets to natal ones. "-y -I" is also legal, and
  will display the transit interpretations in sorted order by
  influence. Finally, "-m -I" is a legal combination, which will do an
  interpretation of a midpoint chart, printing each midpoint in the
  same order as without the -I, but with each midpoint as an
  interpretation sentence instead. Relationship midpoint charts may be
  interpreted in the same manner using the "-r0 person1 person2 -m -I"
  combination.

  This interpretation toggle switch accepts an optional parameter to
  specify the number of screen columns in which to format the
  interpretation paragraphs. This is the same value as the screen width
  field in the astrolog.dat default file. Giving a parameter to -I can
  be used to override the astrolog.dat value without having to change
  the file.

----

Switches which affect how the chart parameters are obtained:

-n: Compute chart for this exact moment using current time.

  For those with systems who can handle time calls (If your system
  pukes on trying to compile them, simply comment out the #define TIME
  line at the beginning), the program supports displaying the chart for
  the time at the current moment! In other words, invoke as astrolog -n
  and see where the planets are right now. (This is fun - the house
  cusps change 1 minute about every 4 seconds!) You will need to change
  the #defines for the default longitude and latitude in astrolog.h, or
  else specify where you are explicitly by using the -l switch to
  change the default location. To figure out the time zone, the program
  uses the default value in the astrolog.dat file or as defined in the
  DEFAULT_ZONE constant set at compile time.

  Note that the default time zone setting or passing values to -z,
  won't affect the positions of the planets, as expected since they are
  where they are "now" no matter how time is expressed. The default
  zone is merely used to determine what to express the local time to
  when displaying the current time. It is important however to realize
  that the time zone setting on your system can affect the actual raw
  time the program gets internally for "now". If the -n switch seems to
  always generate times an hour or more off to what you have your time
  zone set to, it's likely that your time zone environment variable is
  uninitialized or set incorrectly. You will need to set the "TZ"
  environment variable, setting it to a value such as "xxxnyyy", where
  'n' is the hours your zone is before GMT, 'xxx' is a three character
  string indicating the abbreviation of the zone (required, but doesn't
  need to be set to anything more than 'xxx' if you prefer) and 'yyy'
  is the abbreviation for the zone when/if ever in Daylight Time. For
  example, if running Astrolog on a PC in Eastern Time, put the line
  "set TZ=EST5EDT" in your AUTOEXEC.BAT file.

-n[d,m,y]: Compute chart for start of current day, month, year.

  These switches are like the -n generate chart for current moment now
  feature, except that they will respectively generate charts for the
  midnight on the current day, midnight on the first of the current
  month, and midnight on the first day of the current year. 

-z: Assume Daylight time (change default zone appropriately).

  Normally the -z option takes an argument which will then become the
  default time zone. If one, however, invokes it by itself, it will
  subtract one hour from whatever the default time zone presently is.
  This is useful since it is equivalent to adjusting any times printed
  to Daylight time, i.e. it will add one hour to any times displayed.
  (When entering the birth time for charts, one is supposed to subtract
  one hour if Daylight time was in effect; note that subtracting one
  hour from the time zone will do the same thing.) For example, over
  here on the West Coast, I have my default time zone compiled to be
  "8"; now that Daylight time is in effect here, I can do -z 7 or just
  -z to decrease the default time zone when I make a -T transit list,
  which will in effect add one hour to the local times displayed, or in
  effect "Spring ahead" the clock for me. (For a better way of adjusting
  Astrolog for Daylight time without having to specify -z all the time,
  recompile the program, or add one hour to the times in your head, use
  the "defaults" file described later to edit the time zone.) Remember
  that the -z (and -l) switches must be before any other switches they
  modify (such as -n) in order for the new default to take effect.

-z <zone>: Change the default time zone (for -d-q-t-E options).

  The -z <value> option can be used to change the default time zone to
  the value in question. For example, you can force the -E ephemeris
  and -t transit lists to be displayed at midnight GMT time instead of
  the local time with "-z 0"; or, for the East coast where by default
  the time zone is "5", you can do "-z 4" during DST to properly
  display transits, aspects in day, and other lists in the local DST zone.

-l <long> <lat>: Change the default longitude & latitude.

  Like the -z option, the -l option can be used to change the default
  compile time world coordinates used in certain options, such as the
  -n cast chart for right now switch.

-q <month> <date> <year> <time>: Compute chart with defaults.

  The -q <month> <date> <year> <time> option takes the four parameters
  and casts a chart for the time in question. The time zone and
  location are taken from the default compiled values. This is just yet
  another useful shorthand way to quickly make a chart. Note that the
  -qa option which takes all seven chart parameters can be duplicated
  with -q along with the -z <zone> and -l <long> <lat> options.

-qd <month> <date> <year>: Compute chart for noon on date.

  The -q <month> <day> <year> option can be used to cast a quick chart
  for 12 noon on a particular date, using the default longitude and
  latitude, and time zone. One example where this is useful is with the
  -d option, e.g. to see the times of exact aspects on a particular
  date, like your next birthday, your finals, etc, without having to
  specify unnecessary data. Note that this is just like the -q switch
  except that -q requires a specific time on the day in question as well. 

-qm <month> <year>: Compute chart for first of month.
-qy <year>: Compute chart for first day of year.

  A quick chart cast for midnight on the first of a month can be
  generated with the two parameter -qm <month> <year> switch. A chart
  cast for midnight on the first of January of a year can be generated
  with the one parameter -qy <year> switch. Both of these use the
  default time zone and location. These switches are most useful for
  charts that don't require all the standard information. For example,
  to get an ephemeris for December, 2000, do "astrolog -qm 12 2000" and
  avoid having to enter in a day, hour, or location that wouldn't have
  any effect. These options are in similar to the -qd <month> <day>
  <year> switch above that will do a chart for noon on the given date,
  and the -q <month> <day> <year> <time> switch that takes a time as well.

-qa <month> <date> <year> <time> <zone> <long> <lat>:
Compute chart automatically given specified data.

  Normally one generates a chart by entering the seven data coordinates
  manually. A fast typist familiar with the program might prefer to give
  all the data at once, which can be done with this option. Simply list
  the seven parameters above, in the exact format as they would be given
  to the program were the user being prompted for them.

-qj <day>: Compute chart for time of specified Julian day.

  This switch will automatically cast a chart for the given Julian Day.
  Unlike the other -q switches which take standard months, days, and
  years, this switch takes one parameter for the Julian Day (which may
  be fractional to specify a time within the day in question). For
  example, another way to cast a chart for Midnight, GMT, on New Year's
  day of 1994 is with "-qj 2449353.5". (Julian Day 0 refers to Noon
  GMT, January 1, 4712 BC.)

  Known bug: If the extended Placalc formulas aren't compiled into the
  program it will have to use an older version of the Julian day
  conversion routines which will result in these -qj charts giving
  incorrect results for dates in the Julian Calendar, i.e. before
  October 1582, which can be seen by casting a chart with -qj
  specifying a day less than 2299161.5, in which case the Julian Day
  displayed for the date of the chart cast will be ten days greater
  than what was passed to it.

-i <file>: Compute chart based on info in file.

  See the -o option below.

  Note that there is a "virtual file" named "set" which can be passed
  to the -i and -r switches. Instead of looking for an actual disk
  file, this represents the "last" set of chart information dealt with,
  and is useful to avoid having to manually enter information in
  certain cases. (Other "virtual files" Astrolog can use are "now"
  which means the current time at the default location, and "tty" which
  means prompt the user for the info.)

  This is best used within a -Q loop. For example, you first manually
  enter the time for a chart and it's displayed. Now, this time in the
  loop, you want the same chart in an aspect grid, and don't want to
  have to enter the data again or create a file to read from. Entering
  "-i set" will use this chart info now matter how it was entered. For
  graphics charts this "last" chart will be set to the initial chart or
  whatever animation situation was saved via the 'o' key. Perhaps the
  most useful ability of the "set" chart however is that it will set
  itself to times that appear in -t and -d transit and aspect in day
  searches. For example, if you want to cast a chart for the New Moon
  this January, first do a combination like "-qd 1 11 1994 -d -R0 1 2
  -A 1", which will scan the 11th for Conjunctions involving the Sun
  and Moon, and display the time. Before, to get a New Moon chart one
  would then have to manually specify the time displayed. Now, just "-i
  set" will bring it up! The initial contents of the "set" chart, i.e.
  what you get by directly doing something like "astrolog -i set" are
  initialized to the astrological "chart" for this version 4.10 of the
  program itself, which is 12:28pm PST (8 hours before GMT) on Sunday,
  March 20th, 1994 in Seattle, WA (122W20 47N36).

-o <file> [..]: Write parameters of current chart to file.

  The program supports directing chart information to, and reading
  output from, data files. The '-o' option will dump all the birth data
  (the date and stuff, not the planet positions) to the specified file.
  The '-i' option will cast the chart based on the info in the file.
  (This allows you to put your birth data into a specific file, and cast
  your chart whenever you want to after that without having to reenter
  your birth data all the time.)

  Another file output feature, the ability to concatenate "comment
  lines" at the end of a data file, is included with both the -o and
  -o0 options. (Some people have complained that the info in the
  Astrolog chart files is too cryptic to read.) After scanning the
  filename, the -o[0] option will then write any parameter that follows
  it at the end of the file, until a parameter beginning with a '-' or
  '/' (the next obvious command switch) is reached. For example: -o
  'file' "Walter D. Pullen" Seattle will add my name and my birth city
  in two separate lines at the end of 'file'. (On most systems, quotes
  can be used to allow spaces within one parameter.)

-o0 <file> [..]: Like -o but output planet/house positions.

  Ability to write the actual sign and house positions of a chart to
  a file (instead of just the time and place) has been implemented via
  the -o0 <file> option. This option can be used interchangeably with
  the old -o output to file switch. The information written includes the
  zodiac position of the 20 main objects, their retrograde status and
  declination, as well as the positions of the (first six) house cusps.
  This file information can easily be passed into another program, and
  can be read back into Astrolog with the -i option. The -i option will
  automatically determine which type the file is, and will either use
  the given positions, or else calculate them as needed (note that some
  switches, such as the -c house system selection, will have no effect
  for this file type.) Check an example of one of these files to see
  the precise format (a zodiac position is recorded as three numbers:
  degree in sign, sign as 1..12, and floating point minute within
  degree.) When the files are read back in, they will be flagged as
  "having no space or time" like the composite charts in the chart
  header displays.

  This file format can allow one to do things such as transits to
  composite charts (send the composite chart to file with -o0 option and
  then use that file as the first parameter to the -T option) composites
  between two composite charts (use -rc between two composite charts
  sent to a file) and even, if one is willing to do a small amount of
  editing, to do transits to midpoints or the 0 degrees Aries point.
  Note that one can easily edit the positions in the -o0 position file
  to be whatever they like, so one could replace some unimportant object
  (like the vertex) with 0 degrees Aries or an important midpoint value.
  Note that trying to still use the -o time and space output with an
  output chart that doesn't have space/time will confuse the program; it
  will either say it can't make the file or else will output the
  time/space of the most recent parameter file it read in.

  Note: The positions of the eight uranians can also be output to these
  planet position files in addition to the 20 main objects, but only if
  the uranians were actually calculated with -u in effect. Hence these
  position files can be of two different lengths, but the program will
  be able to read in both formats, leaving the uranians uninitialized
  at zero Aries if they aren't also in the file.

-os <file>: Redirect output of text charts to file.

  This switch, given a file, will output the contents of a text chart
  to that file. This is just like output redirection (i.e. "> textfile"
  at the end of a command line) except that it's implemented within the
  program. Hence unlike output redirection it will work from within a
  -Q loop, from the File Run menu in Microsoft Windows, and on systems
  whose shells don't allow redirection at all. This also has the
  advantage in that prompts and user messages won't be sent to the
  file, hence things can be done such as "astrolog -os textfile", where
  the program will still prompt you on the screen for the chart info,
  but the chart itself will still go to the file.

----

Switches which affect what information is used in a chart.

-R [<obj1> [<obj2> ..]: Restrict specific bodies from displays.

  The ability to restrict the transit (-T) and daily aspect (-d) scans
  to just certain bodies has been implemented with the -R switch. Using
  -R by itself will prevent the asteroids, Chiron, the Part of Fortune
  and the Vertex from being in any of the lists. One may also give a
  list of one or more numbers representing planets to be ignored (e.g. 1
  = Sun, 2 = Moon, 3 = Mercury, etc) so that a complete custom setup can
  be obtained (e.g. -R 1 2 3 4 5 will cause all of the inner planets to
  be ignored). More than one -R switch can be combined (e.g. -R -R 16
  will cause the asteroids, etc, and the North Node to be ignored; the
  first -R gets rid of the asteroids, etc, and the second one deletes
  the North Node.) Also, specifying the same particular body more than
  once will cause it to be included again, or in other words, -R
  <objectnum> complements the status of whether it is to be ignored or
  not (e.g. -R -R 15 will cause all of the asteroids, etc, excluding
  Vesta, to be ignored; the first -R makes causes the asteroids to be
  ignored, and specifying Vesta in the second -R makes it reappear.)

-R0 [<obj1> ..]: Like -R but restrict everything first.

  The -R0 option will cause ALL of the bodies to be ignored, which is
  useful if you are looking for just the transits/aspects of a few
  planets (e.g. -R0 6 7 will cause everything but Jupiter and Saturn to
  be ignored.) Combining all these methods can cause whatever you are
  looking for in transits and aspects to be quickly found without having
  to wade through lots of stuff you aren't interested in.

-R1 [<obj1> ..]: Like -R but unrestrict and show all objects.

  This will unconditionally UN-restrict all planets and other objects
  used by the program, a compliment to the -R0 switch above which
  restricts everything. Note that this will also set modes, in that it
  does automatically activate the -C, -u, and -U sets of objects.

-R[C,u,U]: Restrict all minor cusps, all uranians, or stars.

  These three switches are similar to the -R0 option in that they
  initially restrict objects, i.e. all the minor cusps, Uranians, and
  stars, (described below) respectively from appearing. For example, if
  you want to include only the star Sirius in an X window chart without
  having to also include all the other stars (or having to enter a very
  long restriction list), do: "astrolog -U -RU 48 -X", which will
  include the stars, and then restrict them all except Sirius, before
  making the chart.

-RT[0,1,C,u,U] [..]: Restrict transiting planets in -t lists.

  Transiting planets may be restricted from charts independently of
  those planets being transited to. In -T charts, the -R option only
  affects the natal planets. To restrict transiting planets, one must
  use the -RT option. The -RT option is exactly like -R, and any
  subswitches of -R can be used with -RT as long as the 'T' immediately
  follows the 'R'. For example, -RT by itself restricts transiting
  asteroids from appearing in -T charts, -RT0 restricts all transiting
  bodies, -RTu restricts the Uranians, and so on. This is a really
  useful feature, and allows one to pretty much be able to generate
  exactly and only those transits one is interested in. For example, if
  you want to see if anything is transiting your natal Jupiter or natal
  Saturn this month, do: "astrolog -i yourchart -T 3 1993 -R0 6 7". If
  you want to see if Chiron is transiting anything this year (excluding
  asteroids), do: "astrolog -i yourchart -Ty 1993 -RT0 11 -R". If you
  are only interested in transits of outer planets to your Sun or Moon,
  do: "astrolog -i yourchart -T 3 1993 -RT0 6 7 8 9 10 -R0 1 2", and so
  on. By default, only the transiting Moon is restricted. To get it
  back, merely unrestrict it with "-RT 2". These default transit
  restrictions are in the astrolog.dat defaults file described later,
  and are right after the standard restriction table, both of which may
  be modified however you please.

-C: Include non-angular house cusps in charts.

  This option must be indicated to include the four minor house cusps
  (i.e. 11th, 12th, 2nd, 3rd) in the various chart options, such as the
  -g aspect grids, -t transit searches, the X wheel chart, etc. This
  option of course won't have any effect on certain charts where only
  physical bodies are shown (e.g. -Z, -S, -L) or where all house cusps
  are already indicated in the chart (e.g. -v, -w).

-u: Include transneptunian/uranian bodies in charts.

  Display the locations of the "Uranian" planets with the -u switch.
  Transneptunian or Uranian planets are an interesting subset of
  astrology which includes various objects alleged to be beyond Pluto.
  (Do: astrolog -u -O to list the eight Uranian bodies.) Anyway,
  Astrolog will display the zodiac positions of these planets as well if
  one includes this option, and will print their positions after the
  main planets, or include them in the other chart types.

-U: Include locations of fixed background stars in charts.

  Astrolog has the ability to display the positions of 47 of the
  brightest and most important stars in the sky. To include these stars
  in a chart, use the -U "universe" option. The 43 brightest stars,
  i.e. all those with apparent magnitude values < 2.0 are included, in
  addition to four dimmer "stars" which are considered significant,
  i.e.: Polaris the North star, the Pleiades (specifically the star
  Pleione within it) star cluster (home of our extraterrestrial
  cousins), Zeta Reticuli (home of the Grey aliens), and the Andromeda
  (M31) Galaxy (closest galaxy to our own Milky Way, and home to
  various extraterrestrial hierarchies.) One bright star is called
  "Orion", which is formally Alnilam, the middle star of Orion's belt.
  Since stars are fixed in the sky, they will never change position in
  the -s sidereal zodiac, although they will slowly precess forward in
  the normal tropical zodiac. The -R restriction option can be used to
  determine which stars are actually included, although the -U option
  still needs to be included to get any stars at all. (With on screen
  graphics, the stars are labeled by three letter abbreviations, and
  are colored according to their brightness: orange for stars brighter
  than (less than) magnitude 1.0, and dark red for the dimmer remaining
  stars with magnitudes greater than this value.)

-U[z,l,n,b]: Order by azimuth, altitude, name, or brightness.

  In the -v standard chart, -Z horizon chart, and in the -O object list,
  where all the stars are printed sequentially, it can sometimes be
  confusing to locate the star you want among 42 others. The -U option
  can be modified to sort the stars in various ways. If one uses -Ub
  instead of just -U, the stars will be listed in order from brightest
  to dimmest. Doing -Un instead of -U will alphabetize the stars by
  name. -Ul will sort them by their altitude from highest in the sky to
  lowest, while -Uz will sort them by their zodiac position. Note that
  any star ordering will have no visible effect in X windows, and one
  must still use the default ordering when passing numbers to the -R
  option to restrict various stars.

-A <0-18>: Specify the number of aspects to use in charts.

  If you like many aspects, or only desire the major ones, to be
  included in the aspect grids, specifying -A <number> will limit or
  extend the number of aspects (e.g. -A 2 will make charts with only
  conjunctions and oppositions listed in them, while -A 18 will include
  all 18 aspects that Astrolog supports.)

-Ao <aspect> <orb>: Specify maximum orb for an aspect.

  Change the default orbs of the various aspects with the -Ao <aspect>
  <orb> switch. Do you not like the 7 degree orbs for conjunctions that
  are in there by default? Given an aspect number and an orb value,
  the orb used for that particular aspect is updated accordingly.
  Non-integer orb values are allowed of course. Use negative orb values
  to completely eliminate an aspect from ever appearing. For example:
  astrolog -Ao 2 4 -Ao 4 -1 narrows the orb for Oppositions, and
  completely eliminates Trines, leaving all the other aspects at the
  default values. Note that for very wide orbs more than one aspect may
  apply for a particular angle, in which case the more fundamental
  aspect is chosen. Also for wide aspects the fractional value of the
  orb may be lost in the -g text grid (due to too many characters) and
  their might be some slight overlap in the X window -g cells.

-Am <planet> <orb>: Specify maximum orb allowed to a planet.

  Ability to explicitly specify maximum orbs that any aspect can make
  to a particular planet is supported with the -Am switch. This is used
  for objects like the North Node which require narrower orbs than what
  the aspects themselves normally allow. The -Am switch takes two
  parameters: the first to indicate the index of the object, and the
  second to indicate what the maximum orb allowed to it will be. By
  default, the only objects with restriction are the Node, Part of
  Fortune, Vertex, and stars, which allow a 2 degree max orb to them.
  With this option, one can change these limits or impose restrictions
  for other planets too. The astrolog.dat file (described later) will
  read in these default planet orbs for the first 20 objects.

-Ad <planet> <orb>: Specify orb addition given to a planet.

  Ability to widen an aspect orb for any planet is supported with the
  -Ad switch. This is used for objects like the Sun and Moon for which
  one might want wider orbs to them than what the aspects themselves
  allow. Like the -Am switch, this -Ad switch takes two parameters: the
  first to indicate the object, and the second to indicate how much
  wider orbs allowed to it will be. By default, the only objects which
  have orbs widened for them are the Sun and Moon, each of which adds
  one degree to the orb of any aspect to it. With this option, one can
  change these additions or allow other objects to have them, too. The
  astrolog.dat file will also read in defaults for these orb additions
  for the first 20 planets. (Note that these object orb additions can
  be added to a negative orb for an aspect making it valid, so if you
  really want to restrict an aspect with -Ao, it should be a large
  enough negative value so that the sum of any additions between two
  objects won't make it go positive.)

-Aa <aspect> <angle>: Change the actual angle of an aspect.

  This option is used to change the actual angle of a particular
  aspect. This is useful if one wants to search for some unusual angle
  not already available in Astrolog's aspects or accessible through the
  -x harmonic charts. For example, if I want to know when any planet
  enters a 2.5 degree orb of any planet in my natal chart, I would do a
  transit search along with "-Aa 1 2.5", where "1" is the index of the
  conjunction aspect, and "2.5" means the "conjunction" is now exact
  when any two objects are 2 degrees and 30 minutes apart.

----

Switches which affect how a chart is computed:

-b: Use ephemeris files for more accurate location computations.

  Astrolog 4.10 has a set of calculation routines which are much more
  accurate than the standard Matrix software routines that are usually
  used by default! One may choose between these calculation methods
  with the -b switch. With -b, Sun through Pluto, the North Node, and
  Chiron will be computed more accurately (although slower). The other
  asteroids, uranians, stars, and house cusps are always generated with
  the Matrix routines.

  This advanced calculation uses ephemeris files for some planets which
  must be in a directory specified at compile time in order to work.
  The advanced routines are valid based on how many of the ephemeris
  files one has. With all of them, the formulas will cover and deliver
  accurate positions for nearly 8500 years from December -5260 BC
  through March 3237 AD! There are 62 ephemeris files total. Each file
  covers a range of 100,000 days, or about 273 years. Altogether they
  take up 2.8 megabytes of disk space, but each segment of 273 years
  only takes up 90K. For each time segment, there is an ephemeris file
  named "LRZ5_n" containing the positions of Jupiter through Pluto (at
  80 day increments) and a file "CHI_n" containing the positions of
  Chiron. The 'n' refers to span of Julian Days covered by it (divided
  by 100000). For example, Julian Days 1,200,000 through 1,300,000 are
  in the files "LRZ5_12" and "CHI_12" (the 'm' character in some files
  refers to negative/minus Julian Days). You don't need all the files
  to use -b, just those that cover the dates you want to use. If you
  try to use -b with a date not covered by an available ephemeris file,
  an error message will be printed and the Matrix positions will be
  used. The files "LRZ5_24" and "CHI_24" cover the years 1859 through
  2131 AD, which is good for most modern purposes and only takes up
  90K. (These two files were included in the released zip archive for
  this version. For Unix users who want any ephemeris files, and PC
  users who want to cover more years, the complete set of files is at
  the hilbert anonymous ftp site.)

  Astrolog uses the formulas from the "Placalc" program package to
  generate its precise positions. Placalc's accuracy is about the same
  as Mark Pottenger's "CCRS" routines, and those used in Nova (it even
  fixes some accuracy problems Nova has, in some of its earlier
  versions at least). Placalc's integrated outer planet positions
  represent the standard of the Nautical Almanac, the international
  astronomical standard, as published in the Astronomical Almanac, for
  its computations as computed before 1984. (Since 1984 the standard
  has been the DE200 integrations by JPL.) The Sun's position
  implements the Newcomb theory for all terms > 0.01", the positions of
  Mercury through Mars are done to all terms > 0.05", while "Brown's
  improved lunar ephemeris" is used such that the Moon is within 3" of
  DE200. Placalc's fraction of second precision, is of course much
  more accurate when compared to the Matrix positions, which are only
  accurate to about one minute (and several degrees for Chiron, as well
  as the four asteroids) for this century only. For example, at 1800
  AD, the Matrix positions for the outer planets are off by 2 degrees,
  and about 1 degree for 2100; by 1500 AD, Matrix is off by 14 degrees
  for Pluto while Chiron is barely in the right hemisphere any more.

  There is a flag to "Use ephemeris files" in the astrolog.dat file,
  which when set, will always use the Placalc routines and is the same
  as just including -b all the time, in which case -b will toggle them
  back off. There is a compile time option #define PLACALC in the
  astrolog.h which can be commented out to disable the -b switch and
  the new formulas.

  Note that this calculation method is not compatible with allowing the
  -v0 switch to express planetary velocities relative to average speed
  work with it, and nor will central planetary bodies other than the
  Sun or Earth (standard Geo and Helio centric charts) via -h work. It
  will however display velocities for the Moon and the Node, which
  aren't available with the Matrix routines.

  Special thanks goes to Dr. Alois Treindl who kindly allowed his
  formulas to be used in Astrolog. Mr. Treindl is the founder and owner
  of Astrodienst Zurich, second largest astrological computer service
  in Europe, and is well known for his work with Liz Greene. Astrolog
  basically treats his Placalc routines as a library which we link
  into, in that code that knows about both programs is kept to a
  minimum. In fact, any changes made to the Placalc .c and .h files are
  under #ifdef ASTROLOG, so by reverse applying this, one can
  regenerate the original files that came with the Placalc package.

-b0: Like -b but display locations to the nearest second too.

  The ability to display zodiac positions to the nearest degree second
  is supported with the -b0 switch. Normally all positions are
  displayed just to the minute (which was all that is useful due to the
  accuracy available in the Matrix formulas). With the Placalc routines
  accurate to within seconds, this switch, in addition to turning on
  the more accurate formulas like just -b above does, will also turn on
  the more accurate display. The only charts presently affected by -b0
  are the -w text wheel chart and the sidebar positions in graphic
  wheel charts. There is also an astrolog.dat flag called "Print zodiac
  seconds" which when set will always display to the second even if -b
  itself isn't specified (in which case -b0 can be used to toggle it
  back off).

-c <value>: Select a different default system of houses.
(0 = Placidus, 1 = Koch, 2 = Equal, 3 = Campanus,
4 = Meridian, 5 = Regiomontanus, 6 = Porphyry, 7 = Morinus,
8 = Topocentric, 9 = Equal (MC), 10 = Neo-Porphyry, 11 = None.)

  Twelve different house systems are supported in the program: Invoke
  as astrolog -c <number> to change the system from the default of
  Placidus. Note that certain house systems (i.e. Placidus and Koch)
  aren't defined for locations inside the Ant/arctic circle. If the
  user attempts to cast a chart using them with a latitude beyond about
  66 degrees N or S, the program will halt and print an appropriate
  error. House system number 10 is the Midheaven based Equal house
  system. This is just like the more common standard Equal house system
  (-c 2) except that we start with the 10th cusp being the same as the
  MC and disassociate the 1st cusp from the Ascendant, instead of
  starting with the 1st cusp being the same as the Ascendant and
  disassociating the 10th cusp from the MC. House index 11 is the
  Neo-Porphyry system of house division. This is a new system similar
  to Porphyry houses except that it's "smooth" around the zodiac with
  the MC/Asc difference being spread in a continuous sinusoidal manner
  from expanded to compressed quadrants. House system 11 refers to no
  houses at all, or in other words where the Ascendant will always be 0
  degrees Aries, the Nadir 0 degrees Cancer, etc, which is useful for
  the extended chart animations as described later, where having houses
  at all can tend to get in the way, and one can even observe the
  precession of the equinoxes with this system if used in conjunction
  with the -s sidereal chart option.

-s [..]: Compute a sidereal instead of the normal tropical chart.

  With this option, the chart will be just like the normal charts as
  most commonly used in astrology, except that all the zodiac positions
  will be shifted (to be about 24 degrees earlier). This is because the
  option casts sidereal charts which are based on the positions of the
  fixed stars (i.e. Aries starts at the constellation Aries) rather than
  the seasons (i.e. Aries starts at the Spring or Vernal Equinox.) Due
  to the "precession of the equinoxes" the position of the Sun at
  the Equinoxes has been gradually happening at an earlier point in the
  sidereal zodiac each year (taking about 2100 years change signs.)

  This switch accepts an optional parameter of an offset for the start
  of the zodiac. This value, when non-zero, will be added to all zodiac
  positions, and effectively allows one to choose any starting point
  for the sidereal (or tropical) zodiac, which is useful for Hindu or
  other systems whose sidereal zodiacs have zero Aries at a different
  location than the standard Western sidereal zodiac. This value is
  initialized to a zodiac offset value setting in the astrolog.dat
  initialization file, which is by default zero. 

-s0: Display locations as right ascension instead of degrees.

  For astronomers out there, this -s0 option will print all planetary
  positions in the right ascension hours/minutes format instead of the
  sign/degrees/minutes astrologers are accustomed to. This will affect
  how the objects are listed in the -v display, and how the star
  azimuths are displayed in the -O list. For example, 0 degrees Aries is
  represented as 0 hr, 0 min; 0 Cancer goes to 6 hr, 0 min, and so on
  through the 24 hour clock.

-h [<objnum>]: Compute positions centered on specified object.

  Normal astrology charts are based on the positions of the planets
  relative to the Earth. However, this option allows seeing of the
  zodiac positions with respect to the Sun's (or any other planet's)
  point of view. The -h option when invoked by itself will display a
  heliocentric chart: the Sun in the original listing will be replaced
  with the Earth's position as seen from the Sun in the heliocentric
  chart, with the other planets' positions modified accordingly. For
  bodies other than the Sun, the option takes a parameter to indicate
  which planet to center the chart on, e.g. do -h 5 to cast a Mars
  centered chart. (Moon centered charts aren't allowed; in fact, note
  that the -h option won't ever affect the Moon, which will always be
  displayed as seen from the Earth, no matter what the center body is
  set to, since it's not a formal planet.

-p <month> <day> <year>: Cast 2ndary progressed chart for date.

  A secondary progression chart for a particular date can be cast using
  the '-p <month> <date> <year>' command switch. (Note: I'm not sure if
  the house cusps are progressed correctly for all methods of
  computation, but they are reasonably close to what is expected using
  most of them.) The precise time within the given day progressed to
  is midnight in the default time zone.

-p0 <month> <day> <year>: Cast solar arc chart for date.

  Solar arc progressions are supported in addition to secondaries.
  Invoke the -p <month> <day> <year> switch as -p0 instead, and a chart
  will be generated with all planets and house cusps progressed forward
  an amount equal in degrees to the number of years that have passed
  between the specified date and the chart in question. The -pd option
  here (see below) specifies the number of days that have to pass per
  zodiac degree to progress forward; by default this is 365.25. To
  generate a solar arc chart for the current moment now, invoke the -pn
  switch as -p0n.

-p[0]n: Cast progressed chart based on current date now.

  The -pn switch is like the -p <month> <date> <year> switch except that
  (like the -n switch) it assumes the current moment now to cast the
  progressed chart to. This is just another shorthand convenience to see
  what ones progressed chart is like presently; just do: astrolog -i
  file -pn.

-pd <days>: Set no. of days to progress / day (default 365.25).

  User definable progression rates can be specified with this option.
  When using the -p progression option, Astrolog assumes you want the
  standard "year for a day" rate of progressions. By passing different
  values to the -pd switch, one can change the default "365.25 days for
  a day" to any value they want for some less often used method of
  progression. For example, one can do "-pd 7 -pn" to do a week for a
  day, "-pd -365.25 -pn" to get negative year for day progressions, and
  so on. (Note that "-pd 1 -p..." would be the same as if no
  progression were done at all.)

-x <1-360>: Cast harmonic chart based on specified factor.

  Harmonic charts (i.e. where all the planet positions are multiplied by a
  factor and the chart recast) are supported via the '-x' option. (e.g.
  -x 3 will make all trines conjunct in the chart displayed.)

-1 [<objnum>]: Cast chart with specified object on Ascendant.

  The -1 <obj> option can be used to change the houses to force a
  particular object to be on the ascendant. This is useful in casting
  Solar charts or for when the time of birth is not exactly known. For
  example -1 2 will case a normal chart, but the house cusps will be
  rotated so that the moon is on the ascendant.

-2 [<objnum>]: Cast chart with specified object on Midheaven.

  Just as the -1 option is used to cast a chart with an object on the
  Ascendant, the -2 <object> switch will cast a chart with the
  specified object on the Midheaven. The house cusps will be rotated so
  that the object in question is conjunct the 10th house cusp. As with
  the -1 option, if <object> is not specified, the Sun will be assumed
  by default.

-3: Display objects in their zodiac decan positions.

  Decan displays are supported in Astrolog, and one can display a decan
  influenced chart with the -3 switch. The decan theory is that each
  sign in the zodiac can be divided into three parts: The first 10
  degrees (i.e. the first decan) is mainly influenced by the sign in
  question, the second 10 degrees (second decan) although still
  influenced by the sign in question is also somewhat influenced by the
  next sign of the same element, while the last decan is influenced by
  the third sign of the same element. The -3 switch applied to a chart
  will move each object into the sign of its decan. For example, if the
  Sun is at 29 degrees Aquarius and the Moon at 5 degrees Virgo, in the
  resulting chart, the Sun will go to Libra (26 degrees) and the Moon
  will remain in Virgo (although be at 15 degrees now since it was
  previously in the middle of the first decan of Virgo.)

-f: Display houses as sign positions (flip them).

  The -f option can be used to "flip" the signs and houses, i.e. display
  the house as a sign position and vice versa. For example having the
  Sun at 26 degrees Scorpio, 2/3 way though the 10th house, will cause
  the resulting Sun under the -f option to be at 20 degrees Capricorn,
  26/30th the way through the 8th house. This can be used to determine
  how far a planet is through a particular house, as well as for domal
  chart analysis that Mark Kenski has informed me about. Domal analysis
  is based on the fact that for synastry comparisons, for example, a
  planet in Gemini and one in the 3rd house can be considered related in
  a way similar to a conjunction.

-G: Display houses based on geographic location only.

  This switch generates a special type of locational analysis chart,
  called a geodetic chart, in which the house cusps are computed from a
  different source, i.e. as a function of only the longitude and
  latitude. This basically gives every spot on the planet a different
  unique set of house cusps, and can be used to analyze the
  characteristics of different areas, and their influence on you if you
  insert your own planets in the houses. This type of chart was
  described in the January 1992 issue of Dell Horoscope magazine, from
  which I learned how to generate these charts. Basically, the Midheaven
  is approximately the longitude value converted from degrees into the
  appropriate zodiac sign; for example 0 degrees E goes to 0 degrees
  Aries, 30 degrees E goes to 0 degrees Taurus, etc.

-F <objnum> <sign> <deg>: Force object's position to be value.

  The -F option is used to force a particular object's position to
  always be a particular location in the zodiac. This feature can be
  used as an easy way to manually include things Astrolog normally
  doesn't in various charts. For example, this can be used to force the
  position of some minor thing, like the Vertex, to always be the
  location of whatever you prefer, like the 0 degrees Aries point, or
  an important midpoint. Then you can do an aspect grid, transit
  search, or whatever, and calculate aspects to midpoints or transits
  over midpoints. The -F switch takes three arguments: first is the
  index of the object to replace, next is the sign from 1..12 to force
  it to be, and third is the degree within the sign. For example, if I
  want to see if anything is making an exact aspect today with my Sun
  Moon midpoint at 6Sag28, I could do "astrolog -n -d -F 16 9 6.28",
  which would replace the North Node with my Sun Moon midpoint in the
  aspect search.

-+ [<days>]: Cast chart for specified no. of days in the future.

  The -+ <#ofdays> option will cast a normal chart, but one for #ofdays
  in the future (or past if a negative value is given). One use for
  this is in combination with the -n and -d options. For instance, I
  often invoke the program as "astrolog -n -d" to see the exact times
  of today's aspects. However, just before midnight I might want to
  see what's going to happen in the following day, so I would do
  "astrolog -n -d -+ 1" to see the exact times for tomorrow's aspects.
  The #ofdays parameter is optional, and will default to one if left
  off, so the above command can be done as just "astrolog -n -d -+".

  Note that for such a chart, the chart header will show the correct
  date of the actual new chart, instead of the original one. For
  example, today (9-11), if I do "astrolog -n -+ 2" I will get the
  chart for two days from now, and the chart header will display 9-13.
  This has some special uses. For example, if you want to know what the
  date was/will be when you are 10000 days old, do "astrolog -i
  yourchart -+ 10000" and see what the date in the resulting chart
  header is.

-- [<days>]: Cast chart for specified no. of days in the past.

  This "dash minus" option is just like the "dash plus" (-+) option
  described above, except it subtracts instead of adds the specified
  number of days from any chart cast. This is only for convenience, in
  that "-- 1" is the same as "-+ -1".

-+[m,y] [<value>]: Cast chart for no. of months/years in future.

  The -+m switch is just like the -+ switch above except that it will
  add one month (30 days) to whatever chart instead of one day. The
  -+y switch will add one year (365 days) to whatever chart. The --
  "dash minus" switch is extended in a similar manner, in that --m and
  --y will do as expected. These switches also have the optional
  parameter to specify how many months or years to move forward or back.

----

Switches for relationship and comparison charts:

-r <file1> <file2>: Compute a relationship synastry chart.

  Computing the relationship between two charts is supported. Invoke the
  program as 'astrolog -r <file_of_person1> <file_of_person2>' and the
  program will give you the relationship between the two charts. In
  other words, the program will use the positions of person2's planets
  and person1's houses. Use this with the -w option to get a wheel chart
  and you can do synastry. Note that transits can be computed with this
  by comparing your chart with the positions of the planets at the
  current moment (as in -n switch). To make this easier, you may specify
  the filename "now" for any file and the computer will use the current
  planet positions instead of looking for a like named file. (e.g.
  'astrolog -r me now' will compute transits for file 'me'.)

-rc <file1> <file2>: Compute a composite chart.

  The '-r' option can be used to generate composite relationship
  charts. Simply invoke it as '-rc <person1> <person2>' instead of
  just -r and a composite chart (i.e. composed of the midpoints of the
  planets, etc. of the two charts in question) will be generated.
  (Note: when the house cusps in the two charts are nearly 180 degrees
  apart, simply taking the midpoints of all the cusps may result in
  them being out of order in the resulting composite. In such a case we
  give priority to the composite midheaven, and invert the midpoints of
  any of the other cusps or the Ascendant by 180 degrees if leaving
  them that way would have things out of order.)

-rm <file1> <file2>: Compute a time space midpoint chart.

  Time-space midpoint relationship charts are supported: Doing "-rm
  chart1 chart2" will calculate the time and location exactly half way
  between the times and locations as indicated in the two files. Unlike
  all other types of relationship charts, this one actually exists in
  space and time, and therefore can be treated like a single chart and
  can be output to a file with the -o option.

-r[c,m]0 <file1> <file2> <ratio1> <ratio2>: Weighted chart.

  The -rc composite and -rm time-space midpoint relationship charts may
  be weighted to give more influence to one of the charts. When the
  switches are invoked as -rc0 or -rm0 they accept two additional
  parameters which are the ratio weights to give to the two chart files
  in question. For example, the sequence "-rm person1 person2 2 1" will
  still do a time space midpoint chart, but the time and location that
  the chart is cast for will be biased at a 2:1 ratio toward person1,
  i.e. will be 2/3 of the way from person2's chart info closer to
  person1's info.

  Note that the -rc0 switch can be used to generate multiple composite
  charts between more than two people! A composite chart between two
  people can already be done and saved to a file with "-rc person1
  person2 -o0 composite12". A third person can now be merged in by
  doing a composite between it and the composite of the first two, but
  giving the first result a 2:1 ratio because two charts have already
  gone into it, by "-rc0 composite12 person3 2 1 -o0 composite123". A
  fourth person can then be merged in at a higher ratio with "-rc0
  composite123 person4 3 1 -o0 composite1234" and so on. Actually this
  method won't always generate a 100% correct multiple composite chart
  in cases where the objects are spread out over 180 degrees and the
  initial composites put the current midpoint in the wrong half, e.g.
  if the Suns of person1 through person3 are 1Can, 29Sag, and 0Ari,
  then the true composite Sun is at 0Ari, but composite12 is at 0Lib
  and hence the final composite is at 0Leo or 0Sag, in the wrong
  "quadrant" biased toward the earlier results. Still the results are
  useful and the method can be used with -rm0 to get the correct
  average between multiple chart locations.

-rd <file1> <file2>: Print time span between files' dates.

  One useful non-astrological function in the program is the ability to
  determine how much time has passed between two dates, with the -rd
  switch. As with the -rb option below, this is considered a
  relationship "chart" because it requires the input of two different
  dates, and when -rd is in effect, again the standard -v planet
  position listing will be replaced by a line telling how much time has
  passed in the interval. The time difference is expressed in seven
  ways: to the nearest year, month, week, hour, minute, and second.
  For example, "-rd person1 person2", will display how many years,
  days, etc person1 is older than person2 (or the other day around).
  Want to say know how many years older your mother is than you? Just
  do "-rd momchart yourchart". Want to find out how many days old you
  will be on Jan. 1, 2000? Do "-rd yourchart tty", and type in the
  first date of the next millennium, and see what you get!

-rb <file1> <file2>: Display biorhythm for file1 at time file2.

  Biorhythm charts are supported by Astrolog with the -rb switch.
  Although not directly related to Astrology, the concepts are similar,
  and adding this didn't require much extra code, and since some are
  interested in this, I felt I'd add it in. The biorhythm theory says
  that we have three main types of energy: Physical, Emotional, and
  Intellectual. These three run in continuous wave cycles from high to
  low, each of which repeats about every 30 days or so. Therefore, a
  biorhythm chart for a particular day should describe how much energy
  one has or how they are feeling in this area. Now, Astrolog considers
  biorhythm charts as a type of relationship chart, because in order to
  generate one, two dates or charts are needed: the birth date of the
  person, and the date to cast their chart for. Technically the program
  will replace the standard -v listing of planet positions with the
  biorhythm chart when -rb is in effect. As an example, "-rb file1
  file2" will cast the chart for the birthday signified by chart1 or
  chart2 (whichever is older) for the date in the other file. Remember
  that one can substitute the pseudo filename 'tty' to mean get the
  chart info from the terminal instead.

  The actual biorhythm chart itself will display, for the day in
  question, what the percentages of the physical, emotional, and
  intellectual cycles are, as numbers from -100% (low ebb) to +100%
  (happy and full of energy). In addition, the biorhythm percentages for
  the seven days before (T-7 days) and the seven days after (T+7 days)
  the date in question will be listed, too, so one can see if the
  cycles are rising or falling. Finally, as a cute way to help in
  interpretation, the program prints the appropriate smiley, medium, or
  sad face after each percentage. (BTW, it takes over 58 years for all
  three cycles together to synchronize and repeat themselves.)

-r0 <file1> <file2>: Keep the charts separate in comparison.

  There is a distinction between any of the above types of particular
  relationship charts and the actual comparison between two separate
  charts. The -r0 option is used to generate actual comparison charts.
  For example, combining -r0 with the -g switch will cause a full grid
  chart of the aspects between all the planets of the two charts (with
  person1's planets on the vertical axis and person2's on the
  horizontal) to be displayed. (Unfortunately, if all 20 of the
  default objects are left unrestricted here, the grid will exceed 80
  columns, unless the 80 column clip feature (described later) is
  turned on.) The -r0 option can also be used with the -X switch to
  generate true relationship wheel charts, (described later). The -r0
  option will act like the -r synastry option in certain displays that
  can't compare two charts; for example, '-r0 -v' will act the same as
  just '-r -v'. (Note: the "-t file" current transit option is
  basically a shorthand way of doing "-r0 file now".)

  Comparison relationship charts may also be generated for the -m
  midpoint and -m0 aspect list options. Combining -m with -r0 will
  yield an ordered list of all midpoints between all combinations of
  one planet from chart1 and another planet from chart2. Combining -m0
  with -r0 will yield a list of all aspects between planets in the two
  charts, in order based on what Astrolog think their influences are.
  So, if you really want to know if your Sun widely trining your SO's
  Moon, will override the effect of your Saturn closely squaring their
  Mars, do "astrolog -r0 yourchart sochart -m0" and see the influence
  given to each aspect.

-rp <file1> <file2>: Like -r0 but do file1 with progr. to file2.

  This switch is a form of the -r0 relationship comparison charts. This
  switch, given two files, will compare the natal chart in file1, to
  the chart of this natal chart progressed to the time specified in
  file2. This is a shorthand way to the commonly desired comparison of
  a progressed chart to a natal one. The -y switch may be invoked as
  -yp <file> which will automatically compare the chart to the current
  time now. For example, to get a dual graphic wheel chart with your
  natal planets in the inner wheel, and your current progressed chart
  on the outer wheel, simply do "-yp yourchart -X". (There is no easy
  way to do this otherwise, short of using -o0 position files, since -p
  will affect all charts.)

-y <file>: Display current house transits for particular chart.

  The command switch '-y <file>' can be used as a shortcut way to
  compute the current transits for the chart in <file> (assuming you
  have the TIME features compiled in), which saves you from having to
  mention the 'now' in the '-r0' option.

-y[b,d,p] <file>: Print biorhythm/datediff for current time now.

  The -y option is extended based on the -rd and -rb features. The -tb
  <file> switch will display the person indicated in file's biorhythm
  for today. The -td <file> switch will display how many months, days,
  etc old the person in the file is right now. Want to know how many
  minutes old you are? Just do "-i yourchart -td". Do the same command
  again right away and see that you are now a couple seconds older than
  the first time!

----

Switches to access graphics options:

-k: Display text charts using Ansi characters and color.

  With this option, the text charts may be displayed in color, as well
  as with real graphics characters instead of with things like dashes
  and pluses. This makes the text charts look almost as neat as their
  color X11 graphic counterparts. All that's needed is a terminal that
  accepts Ansi escape sequences. You will get garbage if you include -k
  on a non-Ansi terminal. (For this reason, the default for this flag
  is off, although it can be made on all the time by setting the
  appropriate flag in the astrolog.dat parameter file.) Most PC's are
  in Ansi mode, so if you have a PC this should work. Include the -k
  switch on the command line, and the program will display all charts
  as before, but change the color appropriately for every part of any
  chart printed! Just try a -w chart, a -g grid, or a -T list and see
  the difference of how much easier it is to find a planet or aspect
  among a large chart!

  Color isn't used randomly but is based on logic. Most colors are very
  similar to the ones chosen in the color X charts. In general,
  everything is based on the following rules for elements: Fire is Red,
  Earth is Yellow, Air is Green, and Water is Blue. Zodiac signs and
  positions are printed in the color of their element. Houses are
  printed in the color of their corresponding sign. Planets are printed
  in the color of the sign they rule. As for the other objects, we have
  the following colors: Asteroids are in bright purple (magenta),
  Uranians are in dim purple, and non-physical points like the Node,
  Fortune, and Vertex are in a bluish gray (dark cyan). Stars are
  either orange if they are bright (magnitude < 1.0) or a dark red if
  dimmer. For aspects we have the following: Conjunctions are Yellow,
  Oppositions are Blue, Squares are Red, Trines are Green, Sextiles are
  Light Blue (Cyan). For the minor aspects we have magenta for
  inconjunct/semisextile, orange for semisquare/sesquiquadrature, dark
  cyan for all the quintiles, dark purple for all the septiles, and
  dark red for all the noviles.

-V <25,43,50>: Start up with text mode set to number of rows.

  For PC's compiled with screen graphics, the -V switch will change the
  text screen to have the specified number of rows, assuming the
  hardware available supports it. Legal values are 25, 43, and 50. This
  most useful as an initial parameter when running the program from
  Microsoft Windows (see later) to give more text rows to work in, or
  in the -Q loop mode (see later), as well as being another way of
  getting to the functionality of the DOS "mode" command.

--

-X: Create a graphics chart instead of displaying it as text.

  This is the general switch, which means display a chart in an X window
  instead of on the screen in some form. For example, the command
  'astrolog -i mychart -X' will open a new window and display the chart
  in question in it. (Of course, all the other switches, e.g. -R, -c,
  -1, etc, can be used to change what info is actually displayed.) If
  you use the -L astro-graph switch in addition to this, the appropriate
  Astro*Carto*Graphy map will come up in a window instead of the earlier
  boring list of longitudes. (e.g. astrolog -i me -X -L) The -Z and -g
  switches will produce their own chart types as well, although, of
  course, only one type of chart can be in a window at any given time.

-Xb: Create bitmap file instead of putting graphics on screen.

  This switch will cause a bitmap file to be produced and written to a
  file instead of putting the graphics on the actual screen. This is
  useful if you want to convert the graphics to different formats, e.g.
  so they can be displayed on alternate systems, etc. Note that -Xb (or
  any other -X<letter> switch) automatically assumes the -X switch
  above, so 'astrolog -i file -Xb' is sufficient (and you don't also
  have to include the -X).

  Astrolog allocates its bitmap arrays in an efficient manner. When
  creating an x by y graphics image, that is exactly how much memory is
  allocated. You can run Astrolog along with TSR's or other programs in
  memory which may reduce the amount of free memory available for the
  program. If you get a message saying there isn't enough memory for
  the bitmap, just try again with a slightly smaller size until it
  works. For the other extreme, if you have the memory and disk space,
  Astrolog can generate a 2500 by 2500 bitmap over three megabytes in
  size. Note that on a PC, combinations such as "-Xb -Xs 400 -g" will
  likely always run out of memory, since the bitmap always has to be a
  very large size. For this case of a large scaled aspect grid, one
  can get around the problem by manually "clipping" the aspect grids
  through decreasing the number of cells to to include by changing the
  "Aspect grid cells" astrolog.dat default parameter described later.

-Xb[n,c,v,a,b]: Set bitmap file output mode to X11 normal,
compacted, very compact, Ascii (bmtoa), or Windows bmp.

  The bitmap file can be written in five different formats; by default
  whatever format specified at compile time is used. One can change
  this mode by putting an extra character on the command line after the
  -Xb switch. Specifically, to override the compile time mode, use -Xbn
  for a standard X11 bitmap, -Xbc for an X11 bitmap with some white
  space removed, -Xbv for a very compact X11 bitmap (which may not be
  able to be processed correctly by all X programs), -Xba for a one
  character per pixel Ascii dump identical to the result generated from
  the X11 bmtoa program, and finally -Xbb for the Windows .bmp bitmap
  described below.

  One of the available bitmap formats are the .bmp extension bitmap
  files commonly used on PC's running under Microsoft Windows. If you
  have a PC running Windows, you can set your root background to be one
  of these monochrome Astrolog bitmaps by: use the -Xb option to create
  a bitmap file, then rename it to have the extension .bmp and put it
  in your Windows subdirectory, then go into Program Manager -> Control
  Panels -> Desktop and select this file to be your "wallpaper". These
  bitmap files may be generated in either color or black and white.
  By default, all graphic charts will be in color, unless specified
  otherwise. Color is most useful for these PC bitmaps (-Xbb), although
  a color bitmap will take up more disk space. X11 bitmap files will
  always be output in monochrome format, since color .xbm files don't
  exist. A color Ascii file (-Xba) will have the color value of each
  pixel converted to a hexadecimal number, instead of being in the
  format generated by the Unix bmtoa utility in the case of monochrome
  charts.

-Xp: Create PostScript stroke graphic instead of bitmap file.
-Xp0: Like -Xp but create complete instead of encapsulated file.

  Astrolog can generate PostScript graphics files! PostScript is a
  graphics format different from bitmaps in that it's based on
  "strokes" as opposed to "pixels". With a stroke graphic, an image is
  defined in terms of "circle here, line there, etc" instead of a large
  array. This means PostScript graphics can be printed at any size
  without losing accuracy or becoming "blocky", and look perfectly
  smooth when printed to a laser printer. A PostScript file is also
  about an order of magnitude smaller in size than a corresponding
  bitmap file.

  To generate a PostScript chart, use the -Xp switch. This will work
  just like bitmap files for all Astrolog's graphics charts, in that
  you will be prompted for a file to write the graphics to unless you
  explicitly pass a file to the -Xo switch. The type of file generated
  will be an encapsulated PostScript graphic (which are usually seen
  with a .eps extension) meaning that it's made to be inserted into a
  document and scaled and so on and printed from there. A true
  independent PostScript file which can be sent directly to a printer
  can be generated by specifying -Xp as -Xp0 instead. As with bitmaps,
  it is recommended to include -Xm for a monochrome graphic unless you
  have a color printer, and to include -Xr so the chart is black on a
  white background (so that you don't cover 90% of the page with ink
  when printing)!

  There is a compile time option #define PS in the astrolog.h which can
  be commented out to disable the -Xp switch and all PostScript
  features. Note that on an X window system one may directly print out
  a bitmap to a PostScript printer even without this internal support.
  One simply brings up an Astrolog chart in an X window, or creates a
  bitmap and displays that bitmap in a window using some other graphics
  program, and then uses the Unix command "xdpr" to print it, with a
  line such as "xdpr -P<postscriptprintername> -device ps", and then
  clicking on the window to print it to the specified printer. Of
  course, the native PostScript charts will look much smoother.

  Special thanks goes to Mr. Brian D. Willoughby (who BTW also lives
  really close to where I work, and who helped me restore the files on
  my NeXT optical disk after it crashed thereby recovering my only
  copies of Astrolog versions 1.00 through 2.00) who wrote the routines
  and parts in the xgeneral.c file which deal with PostScript (e.g.
  what's the PS command to draw a line, ellipse, filled rectangle,
  etc.) Basically, if it's inside #ifdef PS, Brian likely gets credit
  for it, for anything else (except the placalc.c file of course, and
  the Matrix routines which are marked as so) I'm the one to blame. :)

-XM[0]: Create Windows metafile stroke graphic instead of bitmap.

  -XM switch: Yet another graphics format, Astrolog can generate
  Windows metafiles. Metafiles are those files (usually with extension
  .wmf and often called "pictures" for users) that are frequently used
  in Microsoft Windows for clipart and other such things. (Astrolog is
  one of the few non-Windows programs which can generate metafiles
  internally without relying on Windows itself.)

  Like PostScript, metafiles are a "stroke" graphic format. Metafiles
  are in binary format unlike the human readable Ascii text in
  PostScript files, and hence are smaller in size for the same image.
  Although the same chart generated in PostScript and metafile format
  will more or less look the same, for PC and Windows users, metafiles
  are preferred. (For Unix systems PostScript is preferred since there
  aren't many Unix apps out there that know or care about Windows
  metafiles, while PostScript is a standard used everywhere.) A
  metafile can be inserted as a picture into Word, CorelDraw, and
  pasted into Windows Write and many other applications. Unlike
  PostScript, a metafile can be displayed on the screen in your
  document, instead of like most EPS files which when displayed by
  Windows just indicate that "this is an PostScript image" and have to
  be printed to be seen. A metafile can actually be edited in MS Draw
  and many other drawing applications where one may modify the Astrolog
  chart, change colors, add text, and so on before printing!

  Metafiles (and PostScript graphics) have the option to include actual
  system fonts for text, as well as even zodiac sign, planet, and
  aspect glyphs! This will look smoother than having Astrolog fake all
  the characters with 45 degree line segments. There is a setting in
  the astrolog.dat file which when set by the user will always use
  system fonts instead of simulating them. If the -XM switch is invoked
  as -XM0 instead, the status of this flag will be toggled for the
  chart generated. (This switch can be used with PostScript charts by
  specifying "-XM0 -Xp".) In the PostScript charts, the following
  printer fonts are used: Courier for text, Times Roman for house
  labels, and Astro for Sign, Planet, and Aspect glyphs.

  For these metafiles, the following Windows TrueType fonts are used:
  Courier-New for text, Times New Roman for house labels, Wingdings for
  sign glyphs, and Astro-SemiBold for Planets and Aspect glyphs. All of
  these fonts should be installed in your system already except likely
  Astro-SemiBold. This font is available from the hilbert ftp site in
  the directory /pub/astrology/Fonts in the file 6ttfont.zip. To
  install it on Windows, unzip this file, then go into the Windows
  Control Panel and select the Fonts icon. Click on the Add button and
  select the file "astro-se.ttf" that was in the zip archive, and the
  font will be installed on your system. If it's not installed, the
  planet and aspect glyphs will appear as letters. (Hack: If you can't
  get access to the Astro font, but still want all the other fonts to
  be included, one can set the value of "use actual fonts" in
  astrolog.dat to 2 instead of 1, which will cause only the planet and
  aspect glyphs to be simulated by Astrolog.)

  It is possible that a metafile using all the system fonts may print
  perfectly to a PostScript printer, but an PS file itself won't find
  the Astro font. This is because the Astro font may be installed on
  your Windows system, but not on the printer itself, and because when
  printing a metafile to a printer, Windows will conveniently
  automatically embed the necessary font information in what it sends
  to the printer if the font isn't already there. Note that one may
  actually generate a PostScript chart from a metafile in Windows by
  using the Print Manager (or the Setup dialog button available from
  within those Windows host applications that use the standard Print
  dialog) to set printing to be to an encapsulated PS file instead of
  directly to a printer. Of course doing this won't likely be needed
  since Astrolog can generate PS files natively.

  There is a compile time option #define META in the astrolog.h which
  can be commented out to disable the -XM switch and all metafile
  features.

-Xo <file>: Write output bitmap to specified file.

  This option is used in conjunction with the -Xb option, to specify the
  name of the file to write the bitmap to. If not included along with the
  -Xb option, the program will prompt you for the filename when writing
  the bitmap to disk.

-XB: Display X chart on root instead of in a separate window.

  For X window systems only, this switch will cause the chart graphics
  to be displayed directly on the root window. This action occurs very
  quickly since the program does not have to write a separate bitmap
  file and call xsetroot -bitmap on it (although one could easily do
  this if they want to). For example, one could put the line 'astrolog
  -n -XB' in their .xsession file and whenever they log in, their
  background will be set to a chart of the current state of the planets!

-Xm: Create monochrome graphic instead of one in color.

  For systems without color monitors, the -Xm switch will create all
  charts in monochrome B/W mode. One can still generate color bitmap
  files on a monochrome system, just can't properly display them of
  course.

-Xr: Create chart graphic in reversed colors (white background).

  Normally the charts comes up white on a black background. To get the
  chart or bitmap displayed in reverse video (black on white), use this
  -Xr switch.

-Xw <hor> [<ver>], -ge[..]: Change the size of chart graphic.

  The default graphic chart size is 480x480 units. This can be changed
  with the -Xw switch. -Xw with one argument n will make an n by n
  chart; -Xw with two arguments x and y will make an x by y image with
  the chart centered in the middle. Note that this switch will not
  affect astro-graph or aspect grid windows; to change the size of
  these use -Xs below. For X window systems only, Astrolog accepts the
  standard -geometry switch (which can be abbreviated as -geom or
  anything starting with -ge). This is only an alias to this -Xw chart
  size switch, in that it takes the same parameters in the same way.

-Xs <100,200,300,400>: Change the size of map or characters by %.

  Note that the size of the planet and sign glyphs don't change when
  you change the size of a graphics chart. This can cause problems for
  very small charts where the glyphs overlap the rest of the chart and
  for very large charts where there is lots of excess space. The -Xs
  switch can be used to change the size of all glyphs. The valid values
  that can be passed to it are 100, 200, 300, and 400 where 200 is the
  default. Note that this switch is used to change the size of the
  astro-graph (and aspect grid) graphic charts (because the world map
  is considered to be one giant glyph by the program.)

-Xi: Create chart graphic in slightly modified form.

  Certain people have asked that some of the graphics charts be modified
  in various minor ways, i.e. in either adding or removing certain
  information. Rather than add a new hard to remember minor option for
  each change, I have added one major switch which covers all the
  charts. The -Xi switch will invoke this "induce/inhibit information"
  option, and pressing the 'i' key in a window will accomplish the same
  thing by toggling the mode's status. By default, all the charts are
  as before, but when this bonus option is set, it affects each graphic
  chart in a different way, as follows:

 o For the standard -v and relationship -r0 -v wheel charts, it will
   inhibit the display of the aspect grid in the center - useful for
   speed or when doing large time lapse animations when it would get in
   the way.

 o For the -g aspect grid, it will flip the aspects and midpoints across
   the center diagonal, i.e. the midpoints will be below it and the
   aspects above it, instead of the other way around. For the -r0 -g
   relationship aspect grid, the entire grid will be replaced with one
   showing all midpoints between all the objects in the two charts.
   Note: The -g0 switch when combined with -r0 will also generate a
   relationship midpoint (as opposed to aspect with just -g) grid.
   However, this will revert back to the aspect grid if both -Xi and -g0
   are in effect with -r0.) 

 o For the -Z horizon chart and -S space chart, it will, for the major
   planets, increase the size of the "points" showing where each object
   actually is, making a brighter "spot", for easier viewing; combine
   this in the horizon chart with the 'l' key label inhibitor and get a
   very realistic view of the night sky, with planets brighter and all.

 o For the -L astro-graph chart, this will eliminate the display of the
   Ascendant, Descendant, and Nadir lines, leaving just the vertical
   Midheaven lines and zenith points, for a remarkable increase in speed
   and much less clutter when including many objects.

 o For the -XW world map display, this will show the Earth's ley line
   locations by drawing them on top of the map. Familiar with ley lines?
   They are lines of energy crossing the Earth. I was experimenting
   earlier with the master ley line grids on the Earth (in the pattern of
   an overlapped 20 sided Icosahedron and 12 sided Dodecahedron) and I
   figured Astrolog with its world map would be an interesting program to
   explore this with. Actually this is mainly a hack, and belongs more to
   the field of dowsing than to astrology, but I figured I would leave it
   in there for amusement and inspiration.

   Hackers note: there is an interesting "bug/feature" that can arise
   with the -XW as well as the -XG (and -XP, described below) switches:
   These displays can be brought up in a window without having to
   specify an actual chart. Now suppose one presses 'V', 'L', etc. to
   bring up a chart - what will be displayed? The answer will be
   whatever default values were already there, and if you're curious,
   it's set to be my own birth data: 11:01am PST (8 hours before GMT) on
   Friday, November 19, 1971 in Seattle, WA (122W20 47N36).

 o For the -XP polar globe view, this will show the southern hemisphere
   instead of the northern.

 o For the -XG globe display, it will display the zenith locations of all
   planets (and stars if -U in effect) on the globe, i.e. where on the
   Earth each object could be viewed by looking straight up. This on the
   globe display is almost identical to the astro-graph chart without its
   various lines, except of course that the projection of the world map
   is different. It's also similar to the -Z horizon display, except that
   it's free from the distortion of projecting the celestial sphere upon
   a plane, so it has use to star gazers. However, animation mode here
   will still only affect what part of the Earth is viewable, and won't
   update the chart from which the zenith locations were obtained.

 o For the -E and -Ey graphical ephemeris displays, it will exclude
   showing the Moon, which is commonly desired because its line moves
   across the ephemeris chart so much faster than any of the other planets.

-XT: Inhibit display of chart info at bottom of graphic.

  Normally, at the bottom of any chart graphic is printed some header
  information listing the date, time, and location of the chart in
  question. One can inhibit this display by specifying the -XT switch.

-Xl: Inhibit labeling of object points in chart graphic.

  This switch will inhibit labeling with glyphs or text abbreviations,
  the spots indicating the positions of planets in the various graphics
  charts. This is just the command line counterpart to the existing
  functionality accessed by the 'l' key.

-X1 <object>: Rotate wheel charts so object is at left edge.

  Yet another graphics feature, this allows one to effectively rotate
  one of the graphic wheel charts so that a particular object is hinged
  to the left hand (east) edge of the chart. Given the -X1 switch with
  the index value of an object, the wheel is drawn but always rotated
  so that the object in question is at the left side of the chart. By
  default we have the ascendant at the left edge, of course. This is
  useful for tracking important planets so one knows where they are,
  but yet doesn't distort the house cusps as the -1 switch does.

-X2 <object>: Rotate wheel charts so object is at top edge.

  This is identical to the -X1 switch above except here we rotate the
  entire graphic wheel so the object in question is always at the top
  of the chart. Note that during a day, the degree difference between
  the Ascendant and Midheaven varies in most house systems, so that
  with the Ascendant hinged at the left edge, the Midheaven will wobble
  back and forth near the top of the wheel. If you prefer, "-X2 18"
  will fix the Midheaven at the top of the screen, and the chart will
  be like before except the Ascendant will be the one to wobble near
  the left edge of the chart.

-Xd <name>, -di[..] <name>: Open X window on specified display.

  For X windows only, the -Xd <display> switch can be used to change
  the display to bring the window up on. Normally, the X window will
  always come up on the current display, but we can do things like
  "astrolog -Xd machine:0.0" and have the window appear there. In
  addition, the program will accept this string through the standard
  "-display" (which can be abbreviated as "-disp" or anything starting
  with "-di") switch common to most X11 applications.

-XW: Simply create an image of the world map.

  Believe it or not, I painstakingly entered the data for the world map
  used by the program by hand using an Atlas during a long week. If you
  just want to see the map of the world by itself without any
  astro-graph lines on it, use the -XW switch.

-XW0: Like -XW but do a non-rectangular Mollewide projection.

  The -XW0 switch is just like the normal -XW switch in that it just
  displays the world map and nothing else, except that this -XW0 map
  generated will be in what's called the Mollewide projection, a good
  looking form often used for maps of the world, as opposed to the
  standard rectangular map projection used in -XW which distorts the
  polar regions of the globe across the top and bottom of the screen.
  (The Mollewide projection pinches the polar regions together,
  generating a elliptical map, which is similar to the -XG globe
  displays, but which shows the whole world instead of just half.)

-XP: Create just the world map, but from a polar projection.

  The -XP option will generate a polar view of the Earth as a globe.
  This is like the -XG globe option except that the view is always from
  the top (or bottom). By default, the view is looking down on the north
  pole with 0 deg W/E toward the bottom of the screen. (Animation mode
  will cause the view to spin about the center of the screen.) To see a
  view of the south pole hemisphere, go into the bonus information mode
  described above ('i' key). Again, like with all the other X window
  display modes, one can enter this display with a keystroke: press 'P'
  in any Astrolog window and it will revert to this display.

-XG [<degrees>]: Display the image of the world as a globe.

  Once we have the data for the map of the world, there are
  several neat things we can do with it; for instance, with a little
  trigonometry and clipping, we can bring up a view of a globe, which
  is what the -XG switch does. An optional argument will specify a
  rotation value in degrees to display different parts of the globe.
  (The globe seems to look best for a -Xw window size of around 350.)

  Note that the -XW and -XW0 maps can be animated like as this -XG
  globe display can. Animation of these maps are done by shifting the
  whole map to one side or the other. In fact, such a feature can be
  used indirectly to shift one of the X window astro-graph charts
  (which are drawn on the world map) from the normal case of having the
  date line on the edges of the screen: Go into the world map or globe
  display, animate it a bit, and then change graphic modes to display
  the astro-graph chart, and it will be shifted by the corresponding
  amount. (Note that animating the astro-graph screen itself will
  change the chart info, not how the screen itself is done.) Because
  the -XW world map, and -XP polar globe display, can be animated just
  as the -XG general globe display can, the -XW and -XP switches accept
  optional parameters on the command line that will specify what degree
  (from 0 to 359) to start the map at, just like the -XG switch does.
  In addition, the -XG option itself accepts a second optional
  parameter, which is the starting angle for the globe's tilt, from -90
  to +90 degrees.

-Xn: Start up chart or globe display in animation mode.

  The -Xn [<value>] option can be used to start up an X window in
  animation mode. It a window, one would have to explicitly press 'N' or
  a shift+number key to start the window animation. Without a parameter
  after -Xn, the option will start it up in continuous update to "now"
  mode (which is like pressing 'N' in that any chart will be erased with
  the current chart now.) The switch can accept parameters from 1..9,
  corresponding to the animation rates obtained by pressing shift 1..9
  in the window, i.e. update whatever chart is passed to it seconds,
  minutes, hours, days, months, years, etc. later each time.

----

Astrolog window keypress options (version 4.10):

     (Note: When a graphics chart is up, pressing a key which doesn't
do any of the operations below will sound a beep.)

Press 'H' or '?' to display this list of key options.

  The most important key, of course. Pressing this will display a help
  list of all the key presses available in the text screen from which
  the window was invoked from.

Press 'p' to toggle pause status on or off.

  Press this to pause all updates to the window. This is mainly used to
  freeze any animation (see below) but also has an effect even on
  'still' windows. Key presses will still be accepted in pause mode but
  their effects won't be apparent until one presses 'p' again to
  continue. This can be used to temporarily freeze a chart in animation
  so that it can be looked at without interruption.

Press 'x' to toggle fg/bg colors on screen.

  Pressing this will invert the colors on the screen, or in other
  words will do the same thing as the -Xr switch on the command line.

Press 'm' to toggle color/monochrome display on screen.

  For color displays, pressing this key will toggle in and out of
  monochrome mode.

Press 'i' to toggle status of the minor chart modification.

  Pressing this key will toggle whether or not an alternate form of the
  present chart should be displayed. See the -Xi switch described
  earlier for more information on these alternate chart formats.

Press 'T' to toggle header info on current chart on screen.

  Pressing the 'T' key will toggle whether or not the chart parameters
  are printed at the bottom of the window. This corresponds to the -XT
  switch mentioned earlier.

Press 'b' to toggle drawing of a border around the chart.

  This key, when pressed when a graphics chart is being displayed, will
  toggle whether or not a border is drawn around the graphic. Some
  charts, such as aspect grids, will always have a border regardless of
  the state of this flag, while others such as the globes will never
  have one. Most charts however, such as the wheel charts will look
  good either way and this key can be used to choose.

Press 'l' to toggle labeling of object points in chart.

  Press the 'l' key in a window to inhibit the labeling of all planets
  in the various charts. Instead of drawing the actual little point and
  then the glyph near it (as well as sometimes a line from the glyph to
  the dot), just the point is displayed. This mode is mainly useful for
  the -Z horizon and -S space charts (and has little use for anything
  else) when in cramped quarters or to get a more realistic view of how
  the sky actually looks.

Press 'v' to display current chart positions on text screen.

  Press this key to dump back to the text screen the list of where all
  the planets currently being displayed in the window are. This display
  is the same as produced with the -v switch, and is useful if one wants
  text to show where everything in the chart is.

Press 'R', 'C', 'u', 'U' to toggle restriction status of minor
objects, minor house cusps, uranian planets, and stars.

  Press the 'R' (restrict) key in an Astrolog graphics screen and the
  chart will be redrawn with the restriction status of the asteroids
  and other minor objects toggled. Pressing the 'C', 'u', and 'U' keys
  in the window will toggle the restriction status of the four minor
  house cusps, the uranian planets, and the fixed stars, respectively.
  These keys compliment the 'R' key option and are the counterparts to
  the -C, -u, -U, and -RC, -Ru, -RU switches. (Note that for the 'C',
  'u', and 'U' keys, toggling their state off will automatically
  restrict all the objects associated with them, while the 'R' key can
  simultaneously restrict some and unrestrict other bodies.)

Press 'c' to toggle relationship comparison chart mode.

  This key, when pressed when a graphics chart is being displayed, will
  toggle the state of whether a relationship comparison chart (-r0) is
  being shown. For example, pressing it when a wheel chart is up will
  revert to a dual wheel chart showing two sets of planets, while
  pressing it when an aspect grid is up will revert to a dual aspect
  grid between the planets of two different charts. When going from a
  comparison to a single chart, one of the charts will be used while
  the other thrown away. When going from a single to a comparison, the
  same chart information will be put in both (which won't be too useful
  until they are made different through animation or other keypresses).

Press 's', 'h', 'f', 'F' to toggle status of sidereal zodiac,
heliocentric charts, domal charts, and decan charts.

  Press the 's' key in the window to toggle whether or not the sidereal
  vs. tropical zodiac is used. Press the 'h' key to toggle to a
  heliocentric based chart or back again to a geocentric one. Press the
  'f' key to toggle the status of whether or not the chart should be
  modified to correspond to the appropriate domal chart (where the house
  positions are represented as zodiac positions and vice versa). Press
  the 'F' key to toggle the status of whether or not the chart should be
  modified to correspond to a decan chart (where each sign is divided in
  thirds representing the two other signs in its element). These keys of
  course correspond the -s, -h, -f, and -3 options, respectively.

Press 'O' and 'o' to recall/store a previous chart from memory.

  Have you ever animated your natal or some other chart to some far
  distant future or past time, only then to wish you could somehow
  easily get back in time to the original chart? You can, by pressing
  the 'O' key in a window, which will recall to the screen previously
  "saved" chart parameters (which are by default set to whatever you
  started the window with.) Press the 'o' key to change this default
  stored chart to be the chart that is presently in the window.

Press 'B' to dump current window contents to root background.

  Press the 'B' key in an X window to dump whatever is currently being
  displayed to the background root window. This is basically the
  corresponding keypress to the -XB option.

Press 'B' to resize chart display to full size of screen.

  For PC systems, the 'B' key does a different function that the
  feature shown above. See PC graphics section for its description.

Press 'Q' to resize chart display to a square.

  One can manually resize the Astrolog X Windows using a window manager
  (except when a world map or aspect grid is displayed, in which case
  any resizing will have no effect). Pressing the 'Q' key will
  automatically resize any (non-world map) window to be a square. This
  is useful, after resizing charts to approximately the size you want,
  to make them precise squares. Note that for PC's, this will take EGA
  and CGA mode pixel ratios into account, in that the horizontal and
  vertical sizes may be made different in order that the actual display
  looks square. This will also take into account wheel chart sidebars
  and only resize the actual visible chart to a square when one is
  being displayed to prevent distortion.

Press '<' and '>' to decrease/increase the scale size of the
glyphs and the size of world map.

  This two keys will respectively decrease and increase the size of the
  sign and planet glyphs (as well as resize the astro-graph and aspect
  grid charts) through the three scale factors available. After resizing
  the window, you will probably want to use these keys if the glyphs are
  then too big or small for the new chart.

Press '[' and ']' to decrease/increase tilt in globe display.

  '[', ']' keys: Not only can the globe display be rotated, but the
  poles can be tilted down at various angles! (This basically makes the
  -XP polar globe view option obsolete; it's still in there only for
  backwards compatibility.) Press the '[' and ']' keys when the globe is
  being displayed to respectively "pull down" and "push back up" the
  angle of the polar axis from which the globe is viewed. Combining
  this with the globe rotation allows one to move any point of the globe
  to the center of the screen.

Press '+' and '-' to add/subtract a day from current chart.

  These keys, when pressed when a graphics chart is being displayed,
  will update the current chart forward or backward one day (actually
  1..9 days based on the current animation rate).

Press 'n' to set chart information to current time now.

  This key, when pressed when a graphics chart is being displayed, will
  change the current chart (or "outer" chart when a -r0 comparison
  chart is up) to the current time and place now. This interactively
  does the same as the -n command line switch. The only other way to
  revert a graphics chart to the time "now" is to enter animation mode
  via the 'N' key and then leave it, so this is a shortcut convenience.
  (This feature is only available when the TIME compile time value is
  uncommented of course.)

Press 'N' to toggle animation status on or off. Charts will
be updated to current status and globe will rotate.

  Animation! This key will toggle in and out of a mode where the chart
  is continually updated in the window. Entering the animation mode
  will cause the chart being currently displayed to be replaced by the
  chart for the exact moment at the time you are running the program.
  Every second or two, the chart will be updated to reflect the new
  current state of the planets and houses. For large window sizes, one
  can actually see very minor changes in the chart every few seconds.
  With the text 'T' mode in effect, the chart is basically an advanced
  version of xclock, and makes a good window to be left running on
  your display. If you are in the -XG globe display mode, pressing
  the 'N' key will cause the globe to rotate for an impressive display!

Press '!'-'(' to begin updating current chart by adding times.
!: seconds, @: minutes, #: hours, $: days, : months,
^: years, &: years*10, *: years*100, (: years*1000.

  These nine keys (i.e. shift plus the number keys from 1..9) enter
  into a different form of chart animation. Pressing them will cause the
  current chart being displayed (i.e. it will not revert to the current
  planet positions) to continually have a delta time added to it and be
  recast and shown. Pressing '!' will have one second added to the chart
  for every update (slow action unless you have a very fast system - the
  animation will be even slower than for the 'N' key). Pressing '@' will
  have one minute added to the chart each time, which makes for a nice
  display (note that you will definitely want to be in the text 'T' mode
  for these animations so you can see what times in the future these
  charts are being cast for. Pressing '#" will have one hour added each
  time (note that now the house cusps are starting to move quickly, so
  you may want to switch to a different system of houses (such as the
  Equal to keep the Midheaven from flopping back and forth) and/or use
  -1 to put an object like the sun on the Ascendant.) Pressing '$' will
  have one day added each time (now you will probably want to start
  using -R to remove fast moving objects like the moon), and pressing
  '%' will have one month added for each update of the window. The
  final keys, shift 6..9 cause years, decades, centuries, and millennia
  to be added each time, and tend to only be used to look for long range
  actions (when will Neptune next enter Pisces, etc.) To exit these
  animation modes, press the 'N' key.

Press 'r' to reverse direction of time-lapse or animation.

  Press this to reverse the direction of any animation taking
  place. For the '!'..'(' animation keys above, this will cause
  negative times to be added to the chart, e.g. pressing '#'
  then 'r' on a chart cast for noon will cause the next chart to
  be displayed for 11am, then 10am, etc. For the Globe animation,
  this will cause the rotation to reverse direction.

Press '1'-'9' to set rate of animation to 'n' degrees, etc.

  The nine number keys are used to set the relative "rate" of
  animation to "n" whatevers. For example, normally the "@" key means
  add one minute to the chart for each update, but press "5" and now
  we are adding 5 minutes each time. For the Globe animation,
  by default the Earth rotates one degree each time; however, the
  number keys can speed this up to nine degrees for each update.

Press '1'-'9' to determine section of chart to show if clipped.

  For PC systems only, see the section on PC graphics for this
  additional feature accessed through the number keys.

Press 'V','L','A','Z','S','E','W','G','P' to switch to normal (-v),
astro-graph (-L), grid (-g), local (-Z), space (-S), ephemeris
(-E), world map (-XW), globe (-XG), and polar (-XP) modes.

  There are basically nine main modes in which the graphics screen can
  be in: There are the six main charts (wheel, astro-graph, aspect
  grids, local sky, space view, and ephemeris) as well as the three
  world displays (the simple map by itself, the globe view, and the
  polar projection). These nine keys can be used to switch between
  these nine modes in the middle of program execution. For example, you
  can bring up your own chart in a window, then press 'L' to see the
  astro-graph chart for the same birth data. Then you can press 'W' to
  just see the world map by itself, and 'G' to see the globe view,
  after which you can press 'V' to return to your original wheel chart.

Press '0' to toggle between -Z,-Z0 & -XW,-XW0 & -E,-Ey modes.

  When graphics are up on the screen, pressing this key acts similar to
  the mode changing keys above that switch between the different
  graphic chart types. When pressed, the state of the program being
  invoked with -Z vs. -Z0, as well as the state of -XW vs. -XW0, and
  the state of -E vs. -Ey, will be reversed. In other words, if I am
  viewing the -Z -X horizon chart, and I want to see the -Z0 -X sky
  graphic, then I press '0' to go to it. Similarly, this key will flip
  me back and forth between the -XW simple rectangular world map
  display and the -XW0 Mollewide projection graphic, as well as the -E
  monthly ephemeris and the -Ey yearly ephemeris. A bit of a hack, but
  useful, and the only way to change these suboptions while the program
  is running.

Press 'space' to force update of current graphics display.

  When a graphics chart is up on the screen, pressing the space bar
  will force a redraw of the chart. This is useful for say to cleanup
  after one has scribbled on it with the mouse button features
  (described below).

Press 'tab' to toggle between graphics resolutions.

  This feature is only available on PC systems. See PC graphics section
  for its description.

Press 'q' to terminate the window and program.

  Pressing this key will exit graphics mode or terminate the window
  (and leave the Astrolog program itself.)

----

Left   mouse button: Draw line strokes on chart in window.
Middle mouse button: Print coordinates of pointer on world map.
Right  mouse button: Terminate the window and program.

  Mouse buttons: Pressing the mouse buttons in the X windows will do
  various functions. The left mouse button acts as a pen that allows
  one to actually draw on the chart: press it and drag the pointer to
  draw a line on the window - good for aiding in analysis or in
  presentations. (Any scribbles one makes will disappear the next time
  the chart window is updated, therefore drawing will have little
  effect or be disabled when in animation mode.) The middle mouse
  button will only work when the world map is shown, i.e. in the -L
  astro-graph or -XW world map displays: press it and get the
  approximate longitude and latitude of the place on the map where the
  pointer is, printed in the main window. For the three scale sizes of
  100, 200, 300, and 400 percent, the accuracy is to the nearest
  degree, 30 minutes, 20', and 15', respectively. So, if you want to
  cast a chart for southern Madagascar, Africa, but don't know the
  coordinates, click the middle button on the map for a good
  approximation! Finally, the right button acts just like the 'q' key,
  and will terminate the window.

  Note that for X windows, pressing the middle mouse button when a
  world map is up, in addition to displaying the longitude and latitude
  of the point clicked on in the parent window, will also set the
  current chart location to this point. This makes an easy interface
  for doing chart relocation! Say you want to relocate your natal chart
  to Tokyo, Japan. Just bring up your chart in graphics mode, press 'W'
  to switch to the world map display, click middle button on Japan,
  then return to the wheel chart and there your chart is, as if you had
  been born at the same time but in Tokyo.

  Control keys: Certain control keys can be pressed when a graphics
  chart is up to set the color of the "pen" one can scribble on the
  chart with using the left mouse button. (Who knows, maybe Astrolog
  will contain a full featured drawing program someday. ;) Usually, the
  scribbles are always in the gray highlight color. However, sixteen
  control keys can be pressed to change the pen to sixteen different
  colors, which are defined as follows: Ctrl-A is White, Ctrl-Z is
  Black, Ctrl-R is Red, Ctrl-G is Green, Ctrl-B is blue, Ctrl-Y is
  Yellow, Ctrl-O is Orange, Ctrl-L is Light gray, Ctrl-D is Dark gray,
  Ctrl-V is Magenta (Valentine pink), Ctrl-U is Purple (pUrple), Ctrl-E
  is Maroon (Dark red, next to 'R' on keyboard), Ctrl-F is Dark Green
  (Forest green, next to 'G' on keyboard), Ctrl-N is Dark Blue (Navy
  blue, next to 'B' on keyboard), Ctrl-J is Cyan, Ctrl-K is Dark Cyan
  (Next to 'J' on keyboard).


*******************************
DATA ENTRY AND THE MAIN DISPLAY
*******************************

     The main part of the program is executed simply by entering
"astrolog" (assuming that's the name of the executable), and the
program will ask you for all the birth info and will give the
planet/house positions. (e.g. for here in Seattle right now for the
seven prompts I would enter [for June 11th, 1992 AD at 10:22pm, with
daylight time in effect - if daylight time were *not* in effect, I
would have entered 22.22 for the fourth value instead]: 6; 11; 1992;
21.22; 122.20; 47.36) The program then calculates and displays the
positions of all planets, Chiron, the four main asteroids, as well as
stuff like the Part of Fortune and the Vertex. (The Uranian bodies
and fixed stars can also be listed if one includes the appropriate
command switches described earlier.)

     This user interface where one manually inputs the chart
information is "smart" in a few ways. First, the true names of months
or their abbreviations may be entered (case doesn't matter) instead
of the corresponding number if you prefer. At most, the first three
letters of the month are needed; some months (like February which is
the only month starting with "F") may be abbreviated all the way up
to their first letter. The second enhancement is that the time value
may be entered with a "pm" or "am" (or just "p" and "a") suffix in
addition to the standard 24 hour clock. For example, instead of
entering "18.30" for "6:30pm", you can enter "6.30pm" or even "6.3p"
and the program will process it the same. Similarly, "12.30am" can be
used instead of "0.30", and so on. The final enhancement is that
colons may be used instead of decimal points for the time and
location values. For example "6.30" may be entered as "6:30" instead,
and longitude values like "122.20" may be entered "122:20", which is
more intuitive than those decimal points.

     Note: One may enter seconds for times and locations as
fractional minutes by including more than two digits for the minute
after the decimal or colon separator. For example, "122:205" will be
treated as 122 degrees and 20.5 minutes west. To specify the time of
4:05am and 45 seconds, enter the time as "4:0525am". 

     Note: To enter years B.C. enter negative years. As there was no
year 0 BC or 0 AD (i.e. the year 1 BC was followed by 1 AD) one needs
to add one to the negative BC value entered, e.g. to specify 500
B.C., enter the year as -499.

     Note: Astrolog deals with the switchover from the Julian to the
present Gregorian calendar system when accepting input and printing
output. The calendar system changed (at least in Europe) from the
Julian to the Gregorian calendar in 1582 when October 4th was
followed the next day by October 15th. Throughout the program
Astrolog uses the Julian Calendar for date and leap year
specification for dates before 10/4/1582 and the Gregorian after.  It
will properly handle the change even in the middle of months in
charts, e.g. in -K calendar charts, -E ephemeris charts, -dm aspect
search charts, and graphics animations, ten days will be skipped in
October 1582.

--

     When the standard list of planetary positions is displayed, some
additional information in addition to these locations are shown: (1)
Whether or not each planet is in its ruling sign, or fall, as well as
displaying the same information for ruling or debilitating houses.
(2) The sum of the signs in each element and mode and their totals is
displayed in a grid form. Also, planets in their exalted and
debilitated signs are noted. In addition to the (R) indicating a
planet in it's ruling sign, and an (F) for a planet in it's fall, we
have (e) if a planet is in its exalting sign, and a (d) for a planet
in its debilitating sign (which is always opposite the exaltation, as
how the fall is opposite the ruler).

     Also in this main display, the total number of planets in each
of the hemispheres of the wheel, as well the number of objects in
positive/masculine and negative/feminine quality signs, are counted.
To the right of the element table, we have a column of seven numbers
labeled as follows: "+" is the number of "positive" objects (i.e. in
Fire or Air signs); "-" is the number of "negative" objects (i.e. in
Water or Earth signs); "M" is the number of objects above the horizon
(i.e. in the hemisphere of the Midheaven); "N" is the number of
objects below the horizon (in the hemisphere of the Nadir); "A" is
the number of objects in the Eastern half of the sky (in the
hemisphere of the Ascendant); and "D" is the number of objects in the
Western half of the sky (in the hemisphere of the Descendant).
Finally we have a field indicating the division of objects into the
first six and second six signs of the zodiac. The number of objects
in the first six signs of the zodiac will be printed, labeled by the
character "<". (The number in the second half isn't printed; just
subtract from the total if you want to know.) According to a book on
the Kaballah, the emphasis of the first six signs on the zodiac is on
"what's to learn", and the emphasis on the second six signs is on
"what's to share". Use or interpret this as you wish.

     I have taken the liberty to define ruling and exalting signs for
the asteroids (and the rest of the first twenty objects that don't
already have them.) This won't affect much other than whether a 'R',
'F', 'e', or 'd' is displayed in the -v charts, but it will slightly
affect the powers given to these objects in the -j influence chart
since they can be in their ruling sign, etc. The -O object list will
display the list of ruling and exalting signs (and the fall and
debilitating signs which are just opposite the above) for all these
objects in addition to the planets; however, I have listed them below:

     Chiron, the compassionate, experienced healer, is most similar
in function to Pisces, hence Chiron rules here. Chiron expresses well
in caring, feeling, Cancer, hence Chiron exalts here. Ceres, goddess
of agriculture and representing the mothering, reproductive instinct,
is similar in function to Taurus, hence Ceres rules here. Ceres
expresses well in the nurturing, caring, sign of Cancer, hence Ceres
exalts here. Pallas Athena, mentally acute and unemotional, is most
similar in function to Virgo, hence Pallas rules here. Pallas
expresses well in practical, disciplined, introverted Capricorn,
hence Pallas exalts here. Juno, ability to sacrifice self-interests
to maintain a relationship, is most similar in function to
relationship oriented Libra, hence Juno rules here. Juno expresses
well in sociable, crowd pleasing Leo, hence Juno exalts here. Vesta,
with its orientation to directing hidden creative or sexual energy
without fear, is most similar in function to Scorpio, hence Vesta
rules here. Vesta expresses well in individualistic, quirky Aquarius,
hence Vesta exalts here.

     The North Node, with its emphasis on being able to break from
the past routine and pursue the unfamiliar and personal growth, is
most similar in function to society questioning independent Aquarius,
hence it rules here. The Node expresses well in growth and sacrifice
oriented Virgo, hence the Node exalts here. The Part of Fortune is
calculated based on the positions of the Sun, Moon, and Ascendant; if
these three objects are in their ruling signs, then the Fortune will
fall in Pisces, hence the Fortune should rule here. Similarly, if the
Sun, Moon, and Ascendant are all in their exalting signs, then the
Fortune will fall in Aquarius, hence the Fortune should exalt here.
The Midheaven, being the 10th house cusp, corresponds to Capricorn,
ruled by Saturn. Hence the Midheaven's ruling and exalting signs are
the same as Saturn's: Capricorn and Libra. The Ascendant corresponds
similarly to Mars, hence its ruling and exalting signs are the same:
Aries and Capricorn. The Vertex, being always near the Descendant,
corresponds to Libra, and hence has the same rulership and exaltation
as Venus: Libra and Pisces. The four minor house cusp objects are set
to have rulership of the sign corresponding to the house, and an
exaltation the same as the main planet which rules this sign, e.g.
the 2nd Cusp, corresponding to Taurus, ruled by Venus, rules Taurus
and exalts in Libra.

     Each uranian also has been assigned its own ruling and exalting
sign, meaning uranians in their rulership, etc, will be flagged as
such and have more or less influence and so on. I also came up with
these myself and used the interpretation strings to decide what the
most appropriate signs are. If you disagree, feel free to change
them, or I'll be willing to describe in more detail why I chose what
I did for them. Specifically, Cupido rules Libra and exalts in
Gemini, Hades rules Scorpio and exalts in Virgo, Zeus rules Leo and
exalts in Aries, Kronos rules Capricorn and exalts in Sagittarius,
Apollon rules Sagittarius and exalts in Aquarius, Admetos rules Virgo
and exalts in Scorpio, Vulkanus rules Aries and exalts in Leo, and
finally Poseidon rules Sagittarius and exalts in Pisces.

     The standard chart listing of the planetary positions will also
include an additional field for the "velocity" of each planet. This
velocity value approximates how fast the planet is moving through the
zodiac with respect to the Earth (or whatever the central body is set
to) in degrees per day. This value of course, goes negative when a
planet goes retrograde. This is useful not only to get a feel for how
fast each planet moves through the zodiac, but to determine when a
planet is about to go retrograde or direct - the value approaches
zero when the planet changes direction.


**************************************
DATA DEFAULTS AND COMPILE TIME OPTIONS
**************************************

     Astrolog includes the ability to search an input file for
various default parameters to use in the program. This allows one to
easily change major defaults without having to recompile the program,
which is useful if, say, one receives a compiled executable from a
friend who had a different configuration. The program looks for the
file "astrolog.dat" in the current directory, and if not there, looks
for it in the default directory. Parameters in this file will
override any defaults compiled into the program, although the highest
priority is still given to the command line options. Note one doesn't
*have* to have this file in order to run the program - if not found
Astrolog will still run as before using the compile time defaults.

     Presently, the parameters one can change in this file are:
default time zone (as indicated with -z option), default longitude
and latitude (as in -l option), default zodiac system and zodiac
starting offset (as changed with -s option), number of aspects (-A
option), and default house system to use (values as in -c option).
Next is whether the -k Ansi graphics should always be in effect. If
the value here is non-zero, then it is assumed -k is always in
affect, and one needs then to use the -k switch to return to normal.
This is recommended for PC users who display charts on the screen
more often than they print one out. After this is the default number
of rows per house to pass to the -w wheel chart option. Next, the
value of the minor compile time variable DIVISIONS may be changed in
the file. This value tells how many "segments" we should divide each
day, etc, when doing aspect or transit searches (-d or -t). More
segments is slower but can be more accurate by a minute or two. I
suggest a value of 24 here for Unix systems and 8 for PC's, but it is
easy to experiment to see what would is best for you. One may
increase this value up to 2880 without problem (if they don't mind
the wait) which will mean a chart every 30 seconds for -d aspect in
day charts and one every 15 minutes for -t transit search charts.

     Next comes the default number of rows to include in each house
for the -w text wheel chart, which is four by default. Then there's a
field in the astrolog.dat file specifying the character width of the
screen, which is usually set to 80. This value is used to determine
what column to break lines at when formatting and printing the
interpretation paragraphs. So one may change this to accommodate
narrower or wider screens or printers. (Note that this will not
affect and has no relation to the 80 column clip flag below.)

     "European date format" feature: There's a flag in astrolog.dat
which determines whether dates are displayed in Month/Day/Year order
or in the more "European" Day/Month/Year format. Setting or clearing
this flag will specify the DMY or MDY format everywhere in the
program from text wheel charts to transit charts to the chart info
displayed in graphics charts. "European time format" feature: This is
another flag in astrolog.dat which is just like the above except that
it affects how times are displayed throughout the program. When
clear, times will be printed in a.m./p.m. format, while when set they
will be in the more "European" 24 hour clock.

     "Smart cusps" feature: This is a yet another setting, a simple
yes/no option that will affect the way -t transit search lists, -T
transit influence charts, and -m0 aspect lists are displayed. It can
only be set in this astrolog.dat file. If the value there is
non-zero, then transits to minor house cusps will be processed in a
more intuitive manner. First of all, aspects other than conjunctions
or oppositions to minor cusps will be ignored, e.g. a trine to the
11th house is redundant and isn't really useful; we are more
interested in the conjunction to the 3rd house cusp. Minor aspects to
the Ascendant and Midheaven, and all other objects, are left alone.
In addition, with smart cusps active, oppositions to minor house
cusps will be printed as conjunctions to the opposing cusp, e.g.
instead of "Jupiter Opp 3rd Cusp", we have the more logical "Jupiter
Con 9th Cusp". This is just another way to make transit charts
clearer and less confusing.

     "80 column clip" feature: This is another yes/no option that can
only be set in astrolog.dat. If set to non-zero, then we guarantee
that no text chart when displayed will overflow 80 columns. By
default, with all objects unrestricted, certain charts will have rows
more than 80 columns long, breaking up the chart making it very
difficult to read. The -r0 -g relationship aspect grid, and the -E
ephemeris listing, will normally go beyond the 80th column. With this
feature however, these and other charts that can go beyond column 80,
such as -L when uranians are unrestricted, will always be displayed
on one line, with columns that would go beyond the 80th not getting
printed.

     Then in the astrolog.dat file come default restriction values
(as with the -R option) for the first 20 objects (0 = active, 1 =
restricted). Some people just don't like or care about the various
minor bodies such as the asteroids, Chiron, Part of Fortune, etc.,
and think that they clutter up the various charts. This is a good way
to keep them from showing up by default (one can still use the -R
option to get back any objects eliminated here.) This is immediately
followed by a similar restriction list for planets when transiting in
the -T charts. Then come two flags which can be set to automatically
restrict sign changes and direction changes from appearing in the -d
chart displays. This works like the -R restrictions but for all types
of these special events, instead of all aspects or events containing
a particular object.

     Next come the default orbs (as with the -Ao option) for the 18
aspects. Then comes a list of the maximum orbs of any aspect allowed
to the first 20 objects (as with the -Am option), and after this is a
list of the amount to widen aspect orbs to the first 20 objects (as
with the -Ad option.) Then, for the -j influence interpretation
chart, four values indicating the power given to planets in ruling
sign, planets exalted in sign, planets in ruling house, and planets
exalted in house, may be specified. Finally neat the end of the file,
comes a long list of the main influence values used by the -j option,
i.e. the power values of each of the first 20 planet objects, of the
12 houses, and of the 18 aspects.

     At the very end of the astrolog.dat file are several options for
the graphics defaults. (Note that based on what options are compiled
into the program, anywhere from zero to all of the fields may be
relevant and hence even be read in.) The mode in which graphics
bitmap files are written to disk, like as specified with -Xb, is set
here, and like everything else in astrolog.dat can be used to
override the compile time value. The default horizontal and vertical
pixel size that a chart comes up on the PC screen or in an X window,
like as specified with -Xw, may be set here too. Finally, the default
DOS graphics modes may be customized, which are described later.

     "PostScript orientation" feature: One may choose the paper
orientation of full PostScript graphics charts as generated with the
-Xp0 switch. If this PS paper orientation value is positive, then
the chart will be printed in portrait mode, while if the value is
negative, then it will be printed in landscape mode. If the
orientation value is set to zero (the default), then the program will
decide based on the size of the current chart, with charts with
larger horizontal sizes (e.g. astro-graph charts and wheel charts
with sidebars) being in landscape, and charts with horizontal sizes
less than or equal to the vertical (e.g. aspect grids and wheel
charts without sidebars) being in portrait.

     "PostScript page size" feature: One may also choose the paper
size of full -Xp0 PostScript graphics charts. There are two settings
which specify the horizontal and vertical size in inches of the paper
to be printed upon. By default this is 8.5" x 11". If you have say
8.5" x 14" legal size or A4 paper in your printer it can be used just
as easily. (Note: It's been mentioned that at least some systems or
drivers may clip all graphics beyond 8.5" x 11", but excluding any
external restrictions Astrolog's PostScript should allow one to go
beyond these limits.)

     "Aspect grid cells" feature: Aspect grids by default are always
20 by 20 cells (21 by 21 when for the -r0 relationship comparison
grids). The actual value is also in the graphics section of the
astrolog.dat file can be increased or decreased as desired.

     "Alternate glyphs" feature: Astrolog has the ability to choose
between different common glyphs for various astrological symbols. One
may optionally display charts with the "European" version of the
Capricorn glyph, instead of the more twisty "American" type glyph.
One may also display charts with the "astronomical" version of the
Uranus glyph with a dotted circle with an ascending arrow, instead of
the more astrological "Herschel" glyph with the crescent bounded
cross over a circle. Finally one may display with the "astronomical"
version of the Pluto glyph as the "PL" initials, instead of the more
"astrological" version with the circle over crescent over cross.
There is one glyph selection numerical field in the astrolog.dat
file, which, if the ones place is "1" means use the alternate
Capricorn glyph, if the tens place is "1" means to use the alternate
Uranus glyph, and if the hundreds place is "1" means to use the
alternate Pluto. The default value is "0", but many astrologers on
the other side of the Atlantic may prefer "111". 

     About the only major thing that one *can't* change in the file
is the default directory path in which the program looks in for input
files if not in the current directory, since Astrolog needs the
default directory in order to be able to locate the file in the first
place! The compile time location of where to look for this file can
be overridden by the Astrolog environment variables described below.
The standard "astrolog.dat" file included with the release of the
program has some "comment lines" describing what is contained in each
line. One can chance or delete comments as long as they make sure
that an equals sign ('=') immediately proceeds any value or list of
values, since the program uses this character to determine where
comments end.

     Astrolog.dat files for versions 4.00 and before won't work with
version 4.10, because there are additional definable parameters
expected in the file read in for this version. Attempting to read in
such an old file into version 4.10 will result in an error message
saying one should upgrade the old file or delete it. Either delete
the old file and modify the one included with this release, or else
manually merge in the new fields in the new file with your old one.

--

     Astrolog 4.10 has several environment variables which may be set
to indicate directories where to find the various files it may look
for. Without them, the only place the program will look for chart
files, the astrolog.dat initialization file, and ephemeris files is
in the current directory and default directories set at compile time.
The program will look where any or all of these environment variables
point, if they are defined. The three environment variables are named
"ASTROLOG", "ASTR4.10", and "ASTR". On a PC you can set an
environment variable from the DOS prompt with a command such as "set
ASTROLOG=C:\PROGRAMS\ASTRO410\CHARTS". This command can be put in
your AUTOEXEC.BAT file to remain persistent. On a Unix system you can
set an environment variable from the shell with a command such as
"setenv ASTROLOG /username/programs/astro410/charts". This line can
be put in your .cshrc file to remain persistent. Note that the
ASTR4.10 environment variable is version specific, i.e. future
versions will ignore this variable and look in one such as ASTR4.20.
This allows one to have a directory for version specific files such
as the astrolog.dat file, and have multiple versions of Astrolog on
the system at once without them conflicting with each other. I
personally point ASTROLOG to my chart files directory, ASTR4.10 to my
astrolog.dat directory, and ASTR to my ephemeris directory, although
any file may be found with any of the variables. Specifically, when
Astrolog searches for a file, it will look in the following
directories, in order: The current directory, the ASTR4.10
environment variable directory, the ASTROLOG environment directory,
the ASTR dir, and finally the compile time default directory.

--

     Some systems (for example, Mac's) don't directly accept
parameter switches on the command line (such as Astrolog is being
booted from a menu.) Therefore, such a limitation makes one unable to
access many program features in the normal way. If this is the case
with your system (or if you just don't like command line options),
then comment out the '#define SWITCHES' line at the beginning of the
astrolog.h file. If you do this, then the program will ignore any
switches and prompt you to enter them manually at the very beginning
of program execution. You just enter one line containing all the
parameters together, separated by one or more spaces, just like is
done when typing in the command line. Astrolog will automatically
parse the string and extract the parameters, just like the operating
system shell does.

     Related to this, the "-." switch, when encountered on a command
line, will immediately terminate the program, ignoring any modes or
other command switches. This is the formal way how to really exit the
program when in the -Q loop (and really only useful in this case).
Remember, earlier it was said to enter "." for the command line to
exit the -Q mode. Well, Astrolog internally interprets the "." as a
switch without a leading dash, i.e. "-.", which is a switch that will
force program termination.

--

     I often use Astrolog to look at and compare files containing
charts of various people. I have many chart files, so I keep them in
a separate directory. Since it is always a pain to have to cd into
this special directory all the time, there is a DEFAULT_DIR string to
be set at compile time. Whenever the program reads in a chart file
with the -i option, it will first look in the current directory for
it. If it's not found there, Astrolog will then look for a file of
the same name in the special default directory.

     A couple of other compile time option variables are in the
include file astrolog.h: For those people who don't like Placidus, a
default house system can be set by changing the value of
DEFAULT_SYSTEM to the value from 0..9 indicating what system to use
if the user doesn't explicitly specify one with -c or in
astrolog.dat. A couple of other compile time options are in
astrolog.h which can be used to leave out certain parts of the
program which you don't desire to have or just take up memory and
make the executable larger. The #define INTERPRET can be commented
out to remove all the -I interpretation routines and tables. The
#define BIORHYTHM can be commented out to remove the non-astrological
-rb biorhythm text and graphical charts.

     There is a special compile time variable dealing with graphics
(in addition to the "X11" and "MSG" ones) called "GRAPH". One
comments out the #define GRAPH line if they don't want graphics, and
not just if they don't have X windows. In other words, one can
generate most of Astrolog's graphics charts even if they don't have X
windows or a PC with graphics abilities. Now, when GRAPH is defined
but X11 and MSG aren't, the program will generate the charts, but
just never try to bring up a window; it will simply always assume
that you are writing a bitmap file. The bitmap file will contain a
(unfortunately always black and white for the X bitmap format) image
of what would normally be in the window, just as the -Xb switch does.
One can then use various graphics utilities to convert the image into
something they can display on their system if they can't do so using
any of the available bitmap modes. (Any system that can compile
Astrolog should be able to compile in all the non screen graphics
features as well.)

     A bitmap output mode other than the Windows .bmp bitmaps and
standard ones that can be read with the Unix X11 xsetroot command is
allowed in the graphics routines. If one changes the BITMAPMODE
compile time option in astrolog.h to the character 'A' when
compiling, or invokes the -Xb switch as -Xba, then all bitmaps output
will be in a straight Ascii form, with one character corresponding to
each pixel. This format is identical to the result produced by the
Unix command bmtoa, and it can be converted back into a bitmap with
the Unix command atobm. Although not as efficient spacewise, this is
a simpler format, and is recommended for those without X windows who
are still using Astrolog's graphics, if they want to write their own
conversion program.


********************************
DESCRIPTION OF X WINDOW FEATURES
********************************

     One of the most impressive features of the program are the X
windows features, which are generally accessed in the program via the
-X switch and derivatives of it on the command line. There are five
different types of chart displays: A standard graphic display of a
wheel chart in a window (with glyphs, aspects in the center, etc),
graphic displays of the Astro-graph charts (which look almost
identical to the Astro*Carto*Graphy maps from Jim Lewis) complete
with all the labeled lines drawn on a map of the world (like the -L
option), aspect/midpoint grids showing the aspects and orbs in effect
between every body in a chart (like -g option), a local sky chart
showing where each planet is located on a map of the local horizon
area (as in -Z), and a space chart showing an aerial view of the
solar system (as in -S). The X wheel and aspect grid charts can
displayed in a different form to accommodate relationship comparison
charts. There are also other commands that can be given to the
window once it is up and running, which can do other things, such as
continually update the window every few seconds to the current status
(i.e. an extended version of the -n option) as well as other forms of
animation. Note that the program is still text based, and one can
easily turn off all the X features by commenting out the #define X11
in astrolog.h if they don't have X windows.

     Probably the only thing more impressive than the X window
features are the X window features displayed on color monitors. (The
charts displayed in color are *much* more eye catching than the B/W
ones, IMHO.) Here is how the colors have been assigned for the
various charts: Four colors have been allocated for the four elements
- Fire = Red, Earth = Brown, Air = Green, Water = Blue. The various
sign glyphs (and the corresponding house labels) are in the color of
their element. Planets are in the color of the sign of their main
ruler. Chiron and the four asteroids are Gold, while the north node,
and other non-physical objects like the fortune and vertex are
Violet. Representations of the Ascendant/ Descendant/ Midheaven/
Nadir (in the astro-graph map lines and elsewhere) are in the element
color of the corresponding sign/house that the angular lines refer
to, i.e. Ascendant = Red, Midheaven = Brown, Descendant = Green,
Nadir = Blue. A few extra things have been added for color wheel
charts only: dark gray lines marking off each house (in addition to
the main lines on the horizon and meridian), and each degree instead
of every 5th degree being marked in dark gray on the outer circle
(every 5th degree being white). Aspects lines are colored too, as
follows: Conjunctions = Yellow, Sextiles = Light Blue, Squares = Red,
Trines = Green, Oppositions = Dark Blue. For the minor aspects we
have: Inconjuncts/Semisextiles = Brown, Semisquares/
Sesquiquadratures = Orange, (Bi/Semi)Quintiles = Violet,
(Bi/Tri)Septiles = Gold, (Bi/Quatro)Noviles = Pink.

     For color X terminals, the -XG globe display and -XW world map
display are done with the continents in different colors! This makes
them look much better than monochrome maps. Each of the seven
continents is in a different color of the rainbow, and the colors are
chosen to correspond to the appropriate chakra (etheric energy vortex
along the human spine) that goes with each land mass. They are:
Africa - red - Root chakra, Australia - orange - Navel chakra, South
America - yellow - Solar plexus chakra, North America - green - Heart
chakra, Europe - blue - Throat chakra, Asia - indigo - Third Eye
chakra, Antarctica - violet - Crown chakra. Major lakes are, of
course, colored navy blue.

--

-v -X: The X wheel charts have their graphic information organized as
follows: There's an outer circle showing the signs and sign glyphs,
inside of which is a smaller circle divided up into 5 degree
increments to make determining exact degrees easier. Inside of this
is a circle divided up into the 12 houses labeled with numbers. The
entire chart is divided by two dashed lines through the Ascendant/
Descendant (which is always horizontal of course) and the
Midheaven/Nadir. Inside the house circle are the planet glyphs in
their appropriate positions. Small pointer lines run from each glyph
to just before single dots. These dots indicate the precise locations
in the zodiac of each object. The pointer lines (which are dashed if
the object is retrograde and solid otherwise) are necessary so as not
to have to draw planet glyphs on top of one another when planets are
conjunct. Inside the ring of the single dots, are the aspect lines
connecting these positions. Since the default number of aspects to
use is just the 5 majors, one can determine which aspect is in place
just by looking at the aspect line. The accuracy of the aspect is
determined by the dashedness of the line: A solid line means the orb
is < 2 degrees; a dashed line means the orb is < 4 degrees; a really
dashed line mean the orb is < 6 degrees, etc.

-v0 -X: Astrolog's wheel charts will be labeled more extensively than
just having the chart header information displayed at the bottom of
the graphic like in other chart modes. The wheels will include full
information on time, place, house system, zodiac, central planet,
element table info, as well as the actual positions of planet and
house cusps as displayed in the wheel. All this information is in a
"sidebar" to the right of the wheel which includes a listing not
unlike the -v text chart. (Note that the size of this sidebar is
such that for the default 480x480 pixel chart size, including the
sidebar will make it 640x480, which perfectly fills a VGA PC screen.)
If you want a standard style wheel with just the chart information at
the bottom of the graphic, set the -v0 flag, as in "-v0 -X" instead
of "-v -X" or just "-X".

-w -X: A different way of formatting the graphical wheel charts
described above is available by combining the -w switch with -X.
Normally all of Astrolog's wheel charts are such that each zodiac
sign is the same size. Due to different house sizes in most systems
however, this makes the houses appear different sizes on the wheel,
so that the Midheaven won't be the exact top of the chart for
instance. Some users may instead prefer "house oriented" as opposed
to sign oriented wheel charts. Astrolog, with the -w -X combination,
will make each house be the same size on the screen, and will
compress or expand the signs instead (of course this means that such
things as exact squares may not be between objects exactly 90 degrees
apart on the circle any more). When graphics are displayed on the
screen, the '0' key will toggle between the two forms of wheel chart.

-L -X: The graphical astro-graph charts are organized as follows: A map of
the world is shown. The edges of the map are labeled with ruler lines
that are 5 degrees apart (with longer ruler lines for more important
longitudes and latitudes, like those that are multiples of 10, 30,
etc.) The equator is labeled with a dashed line. The polar regions of
the world aren't shown; the map shown ranges from 60 degrees S
latitude to 75 degrees N latitude. Note that each pixel on the screen
represents exactly one half a degree on the world. (For -Xs 100 the
ratio is one pixel to one degree, and for -Xs 400 the ratio is one
pixel to 1/4 degree.) On this map are drawn the lines indicating
where on the world the various planets are angular at the time in
question. (Note: you might want to -R restrict some objects because
otherwise the map tends to get pretty cluttered with lines.) As
expected, Midheaven and Nadir lines are vertical, and the Ascendant
and Descendant lines are curved. Little square boxes on the Midheaven
lines indicate the exact zenith latitude location. Each line is
labeled at the top or the bottom of the screen, showing what planet
is in question and (sometimes) what angle is in question. All
Ascendant and Midheaven lines are labeled at the bottom of the
screen, and all Descendant and Nadir lines are labeled at the top.
Each line goes a bit beyond to the top or bottom of the world map,
and then another pointer segment (which is again dashed of the object
in question is retrograde) goes and points to the planet glyph. There
is a capital "A" or "M" under each of the glyphs at the bottom of the
screen, explicitly indicating whether the line is an Ascendant or
Midheaven line. At the top of the screen, however, there are only the
glyphs, but one can still determine whether these lines are
Descendant or Nadir lines based on whether they are curved or not.
Note that not all the Descendant lines are labeled; this is because
some of the Ascendant/Descendant lines actually connect near the top
of the screen and don't actually cross it. This graphic astro-graph
chart will display a small purple dot at the precise point on the
world map for which the chart in question is being generated. This is
useful to help see how close the various planetary lines are to you,
if you live in the middle of the continent or someplace not easily
determinable on the compact map of the world.

-g -X: Aspect grid graphics with the appropriate aspect glyphs can be
displayed by combining the -g option with the -X option (astrolog -g
-X). Both the split aspect/midpoint grids labeled down the diagonal,
as well as the relationship aspect grids between two charts (astrolog
-r <file1> <file2> -g -X) are supported. The aspects glyphs, objects,
and the signs in the grids are in their colors as defined earlier.
Like the astro-graph windows, these charts can't be resized in the
normal way unless one uses the '>' and '<' keys. For anything less
than the larger scale sizes (achieved with the switch -Xs 300, or by
pressing '>' within a window) all that will be displayed in each
aspect grid cell is the glyphs of the aspect in effect, the planet
being aspected, or the sign of the midpoint. However, once the
largest scale size is reached, there is room in each cell to display
the aspect orb to the nearest minute off of exact (with a plus or
minus sign indicating whether the actual angle is slightly greater
than or less than exact, or an 'a' or 's' if applying vs. separating
orbs are to be shown instead); the degree and minute in addition to
the sign for midpoints; and the degree and sign location for each
planet that's in the grid, as with the -g text charts.

-m -X: Combining the -m switch with -X will have the same result as
-g with -X, since the aspect grid shows both aspects and midpoints
separated by the grid diagonal. However, doing a relationship
midpoint chart (-r0 -m -X) will result in the relationship aspect
grid coming up but showing the midpoints instead of aspects, as
desired. The -r0 -m -X switch combination implicitly does the results
of the -g0 switch, which for relationship charts puts midpoints
instead of aspects in the grid.

-Z -X: The -Z local horizon feature can be displayed in an X window
as well (e.g. astrolog -Z -X), in which all the planets will be
displayed in a window depicting the sky. The small dot above or below
each glyph indicates exactly where each planet is. (Some of the
glyphs may be overlapping, although the program tries to cut down on
this.) There is a horizontal line dividing the window representing
the local horizon; planets above this line are visible, while planets
below it are set. There are three vertical lines dividing the window
as well: The middle line represents the due south direction, the one
to the left is due east, the one to the right is due west, and the
edges of the window are due north. (These directions are labeled in
the borders of the chart.) Like the standard chart display, this
window or graphic may be resized to any proportion. At any time one
can press the 'Z' key when a graphic is up to enter this display type
in that window.

-Z0 -X: An additional graphics chart is available through the -Z0
switch: local horizon charts suitable for stargazing. As we know, the
normal -Z switch generates a listing of the planets with respect to
the local horizon, and the -Z combined with the -X switch generates a
graphic image of the planets and stars on the local horizon. This
chart assumes one is facing due south, and is divided left to right
by the horizon line, with straight up being toward the top of the
screen and straight down toward the bottom. This is a good chart,
especially for noticing the rising and setting of planets and other
objects, but the fact that the meridian is split up causes distortion
when trying to view objects high up in the sky. Therefore, if one
combines this -Z0 switch with the -X switch, a differently oriented
local horizon chart will be displayed. Here, the zenith point
straight up is in the center of the screen, and the horizon line is a
surrounding circle. Due north is along the line from the center to
the top of the screen, due south is on the line from the center to
the bottom, east is to the left, and west is to the right. In other
words, this is just like what one would see if they were lying on
their back looking straight up with their feet to the south, so this
should be better for stargazing. Outside the circle marks what's
below the horizon, and the extreme corners of the screen mark the
nadir - what's straight down. As with the normal -Z graphic chart,
this one has the various axes marked at five degree increments.

-S -X: The -S switch can be combined with -X to give a graphics chart
of the solar system. This will be displayed as an aerial view of the
entire solar system, with 0 degrees Aries to the left of the screen,
0 degrees Cancer to the bottom, etc. Note that this chart includes
all possible planets, including the Earth (whose glyph is a cross
inside a circle). Whatever object is chosen to be the central body is
at the center of the screen, with all the others around it. This is a
fun chart to animate - watch the planets go around the Sun, and *see*
how they turn retrograde with respect to the Earth. In addition to
the bodies themselves, twelve spokes are drawn from the center body
to the edge of the screen, which delineate the zodiac with respect to
it. Note that the scale of the solar system is large; attempting to
fit all the planets out to Pluto on the screen at once will cause all
the inner planets to be crammed together near the middle of the
screen. To deal with this, the scale size as indicated with the -Xs
switch and the '<' and '>' keys will affect how much of the solar
system is viewed at once (in addition to the glyph sizes). For a
scale size of 400, the viewing region will have a radius of 1 AU
(just enough to cover out to the Earth's orbit). For a scale size of
300, the viewport will have a radius of 6 AU (about out to the orbit
of Jupiter; useful for viewing the inner planets). For a scale size
of 200 (default), it will have a radius of 30 AU (enough to include
Neptune, and Pluto most of the time). Finally, a scale size of 100
will result in a radius of 90 AU, enough to easily include the entire
solar system, as well as the orbits of the hypothetical Uranian
bodies beyond Pluto. Note that this chart (and its text version as
well) will usually leave the Earth's Moon out. The -b extended
Placalc formulas are required to be in effect (as well as either the
Sun or Earth being the central body) in order for the Moon to be able
to appear. At a 400% scale zoom with the Moon included as well, one
can actually get a feel for the relative distance of the Sun from the
Earth and the Moon from the Earth, although the chart will have to be
over 1000 pixels wide for the Moon to even appear one pixel away from
the Earth at all! 

-E -X: A graphical planetary tracking chart is available by combining
the -E switch with -X. This "graphical ephemeris" will display the
sign degrees of the zodiac along the horizontal axis, and the days in
the given month along the vertical. The positions of the planets at
each day are then graphed. The result is a bunch of wavy lines that
make it easy to see all the planetary movements during the month.
Wherever lines cross there's a conjunction on the day indicated on
the axis at the same level as the crossing. Although this only looks
at the month in the given chart information, the actual day will be
highlighted on the vertical axis. Combining the -Ey yearly ephemeris
instead with -X will generate a graphical ephemeris showing the
movements for the entire year, with the months labeled along the
vertical axis.

-r0 -X: True relationship wheel charts can be displayed in a window,
i.e. where the planets of both charts are displayed in separate rings
of the same wheel. Use the -r0 option to display this comparison
type. For example, for the command "astrolog -r0 person1 person2 -X",
the following is displayed: The signs and houses as in person1's
chart are drawn in the outermost part of the wheel. Inside this is a
ring of person2's planets as displayed in person1's houses, and
inside of this are person1's own planets. Finally at the very middle
is an aspect grid, which shows those aspects that are occurring
between the objects in the two charts. Basically this is just the
standard wheel chart for person1, except that person2's planets are
in an outer ring of objects and the aspect grid shows the aspects of
the relationship. Putting such a chart in animation mode only affects
person2's planets, so this is a great way to analyze transits: Doing
"astrolog -t yourchartfile -X" will show all your current transits,
and allow you to easily animate the transiting planets through your
natal signs and houses.

-rb -X: Graphical biorhythm charts are available by combining the -rb
(or -yb) switch with -X. This will make a graph of one's biorhythm
for the two weeks before and after the specified time, with days on
the horizontal axis and the Physical, Emotional, and Intellectual
percentages on the vertical. When any graphics chart is up, one may
press the 'Y' key to revert to a biorhythm chart. (Note that as this
is a relationship comparison chart, if you go to it from a graphics
mode only showing one chart, it will show the biorhythm for them at
their birth, and you will want to then animate or adjust it to get a
useful display.)

--

     A couple of conveniences for the graphics features exist. Note
that the -Xo <bitmapfilename> option is only used in conjunction with
the -Xb write output to bitmap switch. Therefore, -Xo automatically
assumes -Xb is set. (Invoking -Xb itself without -Xo will have the
program prompt the user for the bitmap filename.) In other words,
astrolog -Xb -Xo 'file' is the same as just astrolog -Xo 'file'.
Astrolog includes its own appropriate X bitmap (a rainbow over an
opened Third Eye) if one iconifies the window, instead of reverting
to the braindead UnknownIcon :)

     For X windows, one can animate a graphics chart on the root
background by combining -XB with the -Xn switch. This will be just
like the animations done in windows except the root is being used
instead. Astrolog can be run in the background this way to
continually update your root to the current chart representing the
present moment. Limitations with this are that since there's no
window, no keypresses can be processed so the program must be
manually terminated, and that the continual updates will be as CPU
intensive as the window animations are.

     Hack: Doing a relationship comparison graphic chart with the -S
space or -Z horizon charts in animation mode will not cause the
screen to be cleared between each screen update. This is a hack which
allows one to get the effect of a timed exposure as the objects move
across the sky in a -Z horizon chart, and allows one to see the
orbits of planets as they move around the sun in the -S charts.
(Note that it's best to not be in a flicker free graphics mode on
PC's so the updates all stay on one page, and to turn off object
labels with -Xl or the 'l' key so the screen doesn't fill with
glyphs.)

     Hack: Another fun hack is that doing a graphic wheel chart with
-I interpretation on (the interpretation setting normally doesn't
affect graphics in any way) will decorate the corners around the
wheel! How its decorated depends on the screen width setting in
astrolog.dat or passed to -I. If this value is even, a spider web
design will be put in each corner. If this value is odd, a moire
pattern will be put in each corner. The decoration looks best when
the screen width is around 79 or 80. The higher the value, the more
dense the lines will be in the "spider webs", or the less of the
screen the moire will cover. (Don't make the moire value too low or
you will cover the entire screen, which looks cool but doesn't aid
reading the chart any! :)


***********************************
DESCRIPTION OF PC GRAPHICS FEATURES
***********************************

     Astrolog's PC graphics charts look and feel and are displayed
just like the X window graphics already described. When compiling,
one has a choice between four options: (1) choose no graphics
abilities at all, (2) compile so that graphic chart bitmaps can be
generated and output to a file, (3) compile allowing file graphics in
addition to direct screen graphics in X windows, and (4) compile with
file graphics and direct graphics on the screen of a PC. The addition
of PC graphics in no way inhibits or affects the X window graphics
already in place; it's merely a matter of which compile time options
are set. Unix users don't need to look at this section.

     Astrolog uses the Microsoft PC graphics library as defined in
the file graph.h included with their C7 "C" language compiler. This
file and the graphics.lib library is needed in order to be able to
compile with these graphics options set, just as the X window
libraries are needed to compile with those graphics included. If
unavailable, one can still access these PC graphics with the library
linked in, in the already compiled executable posted.

     PC Astrolog is a DOS program and should be run from a DOS
prompt, outside of any Windows system. To generate a graphics chart
instead of a text one, include the -X switch just as one would do to
bring up an X window. The expected graphic chart will be displayed on
the screen unless the -Xb write bitmap to file switch is in effect.
The colors chosen for the graphics are basically identical to those
chosen in X window charts, and both of these in turn are based on the
Ansi colors used in the Ansi text charts.

     Now, there are many various types of PC monitors and
resolutions. Astrolog will automatically try to determine and pick
the highest resolution mode available on your system, so this need
not be worried about.

     The PC Astrolog charts may be animated in all the various ways,
and the animation will usually be flicker free! Now, PC's do have
limited memory, therefore there might not be room for more than one
page of graphics at the highest resolution. Hence, animation at the
highest (default) mode, may flicker; however, graphics at a slightly
lower resolution may take enough less memory to allow enough to do
flicker free animation. A special PC only feature for this has been
added: Pressing the 'tab' key while the PC graphics are up will try
to pick a lower resolution, where flicker free animation can be done.
Specifically, we'll toggle to a 640x350 EGA mode. On my own system,
the highest resolution I get is a 640x480 16 color VGA mode, however
the charts can't be animated without flicker. When I hit 'tab', I
drop from 480 lines of graphics to 350, but now the animation will be
perfectly smooth. The results with whatever graphics system you have
may be different.

     The chart that comes up will use as many pixels as is defined by
the chart's size as specified with the -Xw and -Xs switches. The 'Q'
change chart size to square key works just as before. However, on PC
screens we will try to take in account the pixel size ratio. On EGA
screens where the pixels are long and narrow, meaning a true "square"
chart looks tall and thin, we compensate by increasing the horizontal
size of the chart. The 'B' key, which for X window graphics will
blast the current window contents to the root background, is a
meaningless feature for a PC. This key, for PC graphics systems, will
instead resize the chart to be the full size of the screen. Note
that some charts however (such as wheel charts without sidebars, -S
space charts, -Z0 sky charts, and -XG globes) are distorted unless
they are square. For these charts, the 'B' key will resize the chart
to be the largest square that will fit on the screen, i.e. will
automatically do what pressing 'B' followed by the 'Q' force to
square key would do. When the graphics mode is changed through
'tab', the chart size will also be modified to be the largest
"square" that will fit on the screen.

     If the size of the chart is less than the size of the screen, it
will be displayed centered in the middle of the screen. If however
the chart size is greater than the screen size, then the chart will
take up the whole screen, and part of it will be clipped. By default
we show the upper left corner of the chart if this is the case. Now,
one can define and change which part of the chart gets shown. On PC's
the meaning of pressing the number keys have been enhanced. Normally,
number keys set the animation speed; they still do, but now only when
animation is actually being done. If not in animation, the number
keys from 1..9 will define which "quadrant" or area of the chart gets
shown. It's best to think of and use the number pad for this feature
(make sure num lock is on!) Pressing the '7' key, i.e. the upper left
number on the number pad, will set it so the default upper left part
of the chart is seen. Pressing the '3' key, on the lower right corner
of the pad, will show the lower right corner of charts larger than
the screen size. Pressing '5' will show the middle area of the chart,
with equal amounts of the chart clipped from left and right, and top
and bottom. Pressing '6' will show the right end of the chart,
vertically centered on the screen, and so on. Basically, we have a
simple implementation of something like scroll bars, allowing viewing
of all parts of the "window"! One can generate and display on the
screen even the largest charts producible with Astrolog. (Bitmap
files are still limited to, i.e. will be clipped to, a maximum size
of 728x720 pixels, however). Even on an 640x350 EGA, one can use this
to generate and view all parts of a 300% scaled relationship aspect
grid (883x883), or even a 300% scaled world map display (1082x545)!

--

     Astrolog has support for the mouse and the mouse buttons when
running graphics under DOS. Upon entering a graphics chart under
DOS, a mouse pointer will appear. Holding down the left mouse button
will allow you to scribble on the screen with the mouse as a pen, in
the highlight color, just like how for Unix the left button is used
to scribble in an X window. For PC's, the middle mouse button (if you
have one - most mice such as Microsoft mice don't) will exit graphics
mode and terminate the program, like pressing the 'q' key or like how
the right mouse button does for X windows. The right mouse button
does the same thing as the middle button for X: it will reset the
current chart location to that clicked on. It won't actually display
the new longitude and latitude, but you can easily see what it is by
observing the chart information at the bottom of a graphics chart, or
by pressing the 'v' key to see the whole chart and its location in
text mode.

     The ability to use the mouse to sketch and scribble on the
charts is extended for PC's. The right mouse button (on those
non-world map charts where it doesn't already set the current
location) will draw a straight line to the mouse pointer from the
point where one last clicked the left button. Also, pressing ctrl-t
will draw a rectangle from the point of the last click to the current
mouse position.  Finally, pressing ctrl-x will draw an ellipse
inscribed within the bounds from the last click point to the current
position. These are just more features to make Astrolog a better
graphics drawing program. :) 

     Not all PC systems have mice. There is a #define in astrolog.h
called "MOUSE". If commented out, then all mouse functionality will
be compiled out, even if compiling for Unix. Note that the mouse
pointer and all PC mouse functions are temporarily disabled when
running in an animation mode. If on a PC system a mouse isn't
installed on a system and Astrolog is run with mouse features
enabled, the mouse features will be ignored as if the functionality
weren't even compiled in. 

     When implementing this, I found no readily available library
that would activate and query the mouse from DOS. The Microsoft
graphics library I used doesn't have any mouse functions in it;
however, in the C7 sample programs directory, there is an uncompiled
library file called "mouse.c" with its "mouse.h" interface. I
compiled this file as if it were one of the Astrolog program files
and linked it in to gain access to the functionality. If you are
compiling Astrolog for DOS yourself, you will probably either need to
have a copy of the Microsoft compiler or else compile out the mouse
features, unless you can find an alternate library with the same
functionality. This is further complicated by the fact that there is
a bug in the mouse.c file which causes the locations of the mouse
pointer to overflow and hence wrap before the end of the screen is
reached! I manually fixed this before compiling in mouse.c to the
official DOS executable for this version. To fix it if you want to
compile PC Astrolog yourself with this file, change line 176 in
mouse.c from: "pEvent->x = (short)((long)mi.last * mi.xActual) /
mi.xVirtual;" to: "pEvent->x = (short)((long)mi.last * mi.xActual /
mi.xVirtual);", i.e. just move the last right parenthesis to the end
of the expression. Also change line 177 in the same manner.

     [There's a minor known bug with the PC mouse features in the
program, which is that when in a flicker free graphics mode, the
mouse pointer will only appear half the time. (You can still scribble
and set location, just that the pointer won't be visible.) This is
due to the fact that a flicker free mode is actually two pages
switched back and forth between for smooth updates. If you don't see
and want your mouse here, the update generated by pressing spacebar
will revert you to the other page where the mouse pointer is.]

--

     Although Astrolog is not a Windows program and doesn't have
direct support for it with menus and all, at least not yet, Astrolog
nevertheless can be run from the Windows environment, various
features making this easier.

     One can make a Program Manager icon which will run Astrolog in a
DOS box. Using the -Q0 switch here will prompt the user for whatever
switches they want to use, as well as looping back when done to allow
additional switches to be specified much like invoking the program
over and over again from DOS. Upon exiting the program, the DOS box
will also terminate, and although not as elegant as a true Windows
interface with dialog boxes and all, this is just as if not more
usable than the DOS interface.

     To make a Windows Program Manager icon for Astrolog, first click
in the program group you want the icon to appear in, then choose File
New, and click OK to make a new program item. In the dialog, for the
description field type something like "Astrolog 4.10". For the
command line field, type "C:\ASTROLOG\ASTROLOG.EXE /Q0", i.e.
whatever the path name is to the executable file, and you probably
want to include the /Q0. For the working directory field, type
"C:\ASTROLOG", i.e. just the path to the directory where the astrolog
files are. For the shortcut key you can leave it blank or press a key
like 'a', meaning that pressing Ctrl-Alt-A at any time when the
Program Manager is active will start the Astrolog program.

     Then click on the change icon button, OK the warning, and from
the Change Icon dialog type "C:\ASTROLOG\ASTROLOG.ICO" (again the
path to your Astrolog directory) in the filename field. This should
load in Astrolog's own Windows icon file included in the zip archive,
a yellow planet with red rings and two blue moons and stars around
it. Click OK twice and you should be back in your group with a nice
Astrolog icon that can be double clicked on to boot Astrolog whenever
you want.

     You may also want to include "/V 43" or something similar along
with /Q0 for the command line field, if you want to have more than
just 25 rows in the DOS box to print the text charts in. One can also
create additional icons that have certain other switches or directly
display certain charts. For example, have another icon called
"Astrolog Now!" which has "/n /X /Q" for its switches. Double click
on this to see where the planets are right now. You can also use the
PIF editor utility (usually PIFEDIT.EXE in the Windows directory)
instead to create an astrolog.pif file. With the right system and
settings, you can specify a created .pif file instead of the Astrolog
executable directly, in the Program Manager icon, and run the program
in a window in real time along with your other Windows apps, just
like Astrolog on X windows!

--

     Finally, for PC's with graphics, the actual modes the program
enters when in the "normal" and the "flicker free animation" modes
can be customized and set in astrolog.dat. The values are the various
mode numbers defined in graph.h for the Microsoft library. By
default, the normal high-res mode is set to the value "-3", which
means a mode with the highest resolution, which is usually 640x480 16
color VGA. The default low-res animation mode is set to "16", which
corresponds to 640x350 16 color EGA (which on most systems is the
highest resolution allowing multiple pages meaning animation can be
done without flicker). Here is a complete table of the legal graphics
modes, with their index values to specify them, their screen pixel
resolution, their number of colors, and any comments as to what
hardware are required for them. It is not recommended to attempt to
enter a graphics mode here that your system doesn't support.

Num. Hor.   Ver. Col. Device.
 -3  640 x  480,  16 ("highest resolution" up to 640x480, usually #18)
 -2  320 x  200, 256 ("most colors", usually #19)
  4  320 x  200,   4 (MRES)
  5  320 x  200,   4 (4 grays)
  6  640 x  200,   2 (CGA)
  8  720 x  348,   2 (Mono Hercules)
 13  320 x  200,  16 (MRES)
 14  640 x  200,  16 (CGA)
 15  640 x  350,   2 (Mono EGA)
 16  640 x  350,  16 (EGA, maybe just 4 colors)
 17  640 x  480,   2 (Mono VGA)
 18  640 x  480,  16 (VGA)
 19  320 x  200, 256 (MRES)
 64  640 x  400,   2 (Olivetti, 1 of 16 colors)
256  640 x  400, 256 (VESA SVGA)
257  640 x  480, 256 (VESA SVGA)
258  800 x  600,  16 (NEC MultiSync 3D)
259  800 x  600, 256 (NEC MultiSync 3D)
260 1024 x  768,  16 (NEC MultiSync 4D)
261 1024 x  768, 256 (NEC MultiSync 4D)
262 1280 x 1024,  16 (NEC MultiSync 5D)
263 1280 x 1024, 256 (NEC MultiSync 5D)

--

#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
+     Walter D. "Cruiser1" Pullen    |    cruiser1@stein.u.washington.edu     +
#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
+   "Who am I, What am I?  As I am, I am not.  But as we are, I AM.  And to   +
#   you my creation, My Perfect Love is your Perfect Freedom. And I will be   #
+   with you forever and ever, until the End, and then forever more." - GOD   +
#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#+#
