-- AAAAA SSSSS TTTTTTT RRRRRR OOOOO L OOOOO GGGGG A A S S T R R O O L O O G G A A S T R R O O L O O G AAAAAAA SSSSS T RRRRRR O O L O O G GGGG A A S T R R O O L O O G G A A S S T R R O O L O O G G A A SSSSS T R R OOOOO LLLLLLL OOOOO GGGGG ** VERSION 6.00 ** History file for Astrolog version 6.00 (December 2015): This is a comprehensive history list of the first 26 versions of Astrolog that have been released to the Net over the past twenty-four years. This file is mainly for those who have version 6.00 or later, but aren't yet familiar with the earlier versions in which many of the other features not just new to the latest version were described and documented. Below is a listing of all versions of Astrolog that have been released (up to version 6.00) after which for each version, is listed the description of the new features and changes added to that version. Taken together, all these update descriptions add up to a comprehensive list of Astrolog's features and command switches. [Features added to version:] 1) v1.00 posted Wed, 11 Sep 91 00:00:38 GMT (Initial planet calculations) 2) v1.10 posted Sat, 14 Sep 91 00:02:16 GMT (Aspects; different house systems) 3) v1.20 posted Fri, 20 Sep 91 23:56:55 GMT (File input; wheels; relationships) 4) v1.30 posted Wed, 9 Oct 91 03:17:04 GMT (Transits; searches; astro-graphy) 5) v1.40 posted Tue, 12 Nov 91 01:18:13 GMT (Restrictions; other conveniences) 6) v2.00 posted Wed, 11 Dec 91 07:11:25 GMT (X charts; multiple source files) 7) v2.10 posted Tue, 18 Feb 92 07:59:03 GMT (Color; more X charts; local space; more progression and file support) 8) v2.20 posted Wed, 3 Jun 92 00:25:40 GMT (Stars; space charts; influences; astrolog.dat; more relationships) 9) v2.25 posted Thu, 18 Jun 92 18:54:43 GMT (Bug fixes over v2.20) 10)v2.30 posted Fri, 12 Sep 92 01:20:42 GMT (Interpretations; comments, etc.) 11)v2.40 posted Wed, 20 Jan 93 03:23:16 GMT (Ansi text color; midpoint lists) 12)v3.00 posted Sun, 21 Mar 93 12:22:27 GMT (PC Graphics; more interpretations) 13)v3.05 posted Thu, 20 May 93 23:40:00 GMT (Bug fixes over v3.00) 14)v3.10 posted Sun, 26 Sep 93 08:29:58 GMT (Transit influences; efficiency) 15)v4.00 posted Wed, 5 Jan 94 10:22:11 GMT (Accurate formulas; PostScript; metafiles; better wheel charts) 16)v4.10 posted Mon, 21 Mar 94 10:58:54 GMT (Improvements, fixes over v4.00) 17)v4.20 posted Fri, 23 Sep 94 07:19:01 GMT (New files; constellations; macros; new objects; dispositors) 18)v4.30 posted Mon, 28 Nov 94 09:35:33 GMT (Parallel aspects; bug fixes) 19)v4.40 posted Sun, 12 Feb 95 04:28:11 GMT (Macintosh support; Arabic parts) 20)v5.00 posted Mon, 24 Jul 95 10:55:53 GMT (Windows interface; asteroid files) 21)v5.05 posted Sun, 20 Aug 95 09:29:49 GMT (Bug fixes over v5.00) 22)v5.10 posted Sun, 31 Dec 95 11:56:00 GMT (Chart printing; setting saving) 23)v5.20 posted Sun, 24 Mar 96 14:05:00 GMT (Gauquelin sectors; printing fixes) 24)v5.30 posted Mon, 30 Sep 96 11:55:00 GMT (Mac graphics; tri and quad-wheels) 25)v5.40 posted Thu, 24 Dec 98 14:22:00 GMT (Vedic style charts) 26)v6.00 posted Mon, 22 Dec 15 04:47:57 GMT (Swiss ephemeris, esoteric astrology) All of the above versions of Astrolog except 2.25, 3.05, and 5.05 and those after it were posted in direct source file, shell archive, and/or zip archive form to the newsgroup alt.astrology. Versions 2.10, 2.25, 3.05 and 4.10 were submitted in shell archive format to comp.sources.misc. In addition, version 1.30 was also posted to talk.religion.newage. A beta release of version 5.20 was created but wasn't made generally available. -- IMPORTANT NOTICE: Astrolog and all chart display routines and anything not enumerated below used in this program are Copyright (C) 1991-2015 by Walter D. Pullen (Astara@msn.com, http://www.astrolog.org/astrolog.htm). Permission is granted to freely use, modify, and distribute these routines provided these credits and notices remain unmodified with any altered or distributed versions of the program. The main ephemeris databases and calculation routines are from the library SWISS EPHEMERIS and are programmed and copyright 1997-2008 by Astrodienst AG. The use of that source code is subject to the license for the Swiss Ephemeris Free Edition, available at http://www.astro.com/swisseph. This copyright notice must not be changed or removed by any user of this program. Additional ephemeris databases and formulas are from the calculation routines in the program PLACALC and are programmed and Copyright (C) 1989,1991,1993 by Astrodienst AG and Alois Treindl (alois@azur.ch). The use of that source code is subject to regulations made by Astrodienst Zurich, and the code is not in the public domain. This copyright notice must not be changed or removed by any user of this program. The original planetary calculation routines used in this program have been copyrighted and the initial core of this program was mostly a conversion to C of the routines created by James Neely as listed in 'Manual of Computer Programming for Astrologers', by Michael Erlewine, available from Matrix Software. The PostScript code within the core graphics routines are programmed and Copyright (C) 1992-1993 by Brian D. Willoughby (brianw@sounds.wa.com). More formally: This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful and inspiring, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details, a copy of which is in the LICENSE.HTM file included with Astrolog, and at http://www.gnu.org ************************************************ Astrolog 1.00 posted Wed, 11 Sep 91 00:00:38 GMT ************************************************ There seems to have been zillions of requests for unix system programs which can calculate planetary positions, or a birthchart in general. I had been looking all over the place for one for a long while without success, until someone posted the fact that Matrix software produces a book called 'Manual of Computer Programming for Astrologers' which contains all kinds of useful formulas. Anyway, since there doesn't seem to be an astrology program in existance anywhere, I decided to make one myself and got the book and converted the routines to C and made a chart casting program around them. At last here is a program which can do your chart for you! Cut out the portion of this article between the "cut here"'s, and compile the program with "cc -O astrolog.c -lm". Execute it 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: 9; 10; 1991; 16.05 [for 5:05pm, with daylight time in effect]; 122.20; 47.36) The program calculates the positions of all planets, chiron, the four main asteroids, as well as stuff like the part of fortune and vertex. There are option switches (do astrolog -H to see them) which allow siderial and heliocentric based charts to be done as well. Enjoy the program, but remember the copyright message. Yes, I know the code is currently very messy, but I wanted to get this posted as fast as possible so we can start calculating stuff right away. I'm currently adding other features, like aspects, other house systems besides placidus, an option to generate the chart for this exact moment, etc, to the program, so expect future enhancements. There's also another program I have at home which generates nice graphic wheel charts (for a different computer system) given the birth data (makes nice X11 bitmaps) which I hope to be able to convert soon also. Anyway: ************************************************ Astrolog 1.10 posted Sat, 14 Sep 91 00:02:16 GMT ************************************************ Several changes and fixes have been made to the astrolog.c birthchart calculator since the first posting four days ago: Some problems that people had with compiling it have been corrected: * The value PI is now explicitly defined, instead of depending on the math library which may or may not have defined it already. * All line lengths are less than 80 characters, to help prevent line splitting or cutting from those whose news servers puke on too long lines. The minor bug in which the moon's north node was *not* displayed as being retrograde has been fixed, as well as a rare display alignment glitch. New features have been added to the program (which may be combined): * Aspects and midpoint display is now supported: Invoke as astrolog -g and a 20x20 grid showing the midpoint locations for each planet, and showing if any aspects are present and how accurate they are, is displayed. * A couple of different house systems are now supported: Invoke as astrolog -c to change the system from the default Placidus. (See astrolog -H for help on what each number refers to.) * Additional information is displayed when the chart is cast: (1) Whether or not each planet is in it's 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. * For those with unix systems who can handle the time calls (If your system pukes on trying to compile this, simply comment out the #define TIME line at the beginning), the program now 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' about every 4 seconds!) You will need to change the #defines for the default longitude and latitude in the code though, or else specify where you are explicitly by using the -l switch to change the default location. * Although minor, some more helpful info is displayed when entering the chart data, as well as a header for the columns when the chart info is displayed. Again future enhancements will include: supporting yet more house systems, and allowing the chart to be displayed in a wheel format on the text screen (not too difficult) or graphically in an X11 window or bitmap (will take a lot longer to do, although I've done one already for a different system), allowing saving charts to files and comparing them with each other or the current status (transits), allowing progressions to be specified, and maybe a few other things. I probably could have done this as a patch, but I don't know how to pack or even unpack patch files, so I guess that's out of the question. After a few more versions, I might get this in comp.sources.whatever, but for now I'm just posting it here because the program is still relatively new. Anyway, sorry if this is a long article, but anyway, here is the updated version of astrolog.c (can be compiled, extracted, as before): ************************************************ Astrolog 1.20 posted Fri, 20 Sep 91 23:56:55 GMT ************************************************ Ok, astrology lovers, here is the new and improved version 1.2 (Third posting) of the Astrolog birthchart calculator, complete with all kinds of new features, like allowing computation of transits, progressions, relationships between charts, printing of house wheel charts, etc: First a list of bug fixes over version 1.1: 1) The glaring bug in which, if you said you wanted the Campanus system of houses, you would in fact always get Placidus, is fixed. 2) The program processed dates during the Gregorian calendar incorrectly, and this has been fixed. 3) The default longitude and latitude were truncated to integers, causing loss of a few minutes accuracy in the house cusps when using the -n option, which has been fixed. 4) The program now no longer core dumps if you include too few parameters with the command switches. 5) [I thought I corrected this for the previous version, but there was one place where I forgot it] The variable M_PI has been replaced with explicit definitions of pi for those compilers that don't understand what M_PI is. 6) The type 'time_t' has been replaced with just an int, since that all it is anyway, and since some compilers don't know the type 'time_t'. Several people have told me that the north node always seem to be off by about half a degree. I've been looking into this but haven't found the problem yet. (I've tried using the 'true' north node, the 'mean' north node, etc.) (Wait for next version.) Now a list of all the new neat features Astrolog now provides: (Remember, do 'astrolog -H' to see a brief list of the command switches.) * Seven new aspects have been included, for those who like obscure aspects! (Thanks to Mark Martin for giving me the list of their angles and orbs.) * The '-A' command switch gives a list of all the aspects, their abbreviations as used in the aspect grids, their angles, and their orbs. * For those who don't like all these aspects, specifying -A will limit the number of aspects (e.g. -A 5 will make charts with only the five major aspects listed in them). * The aspect orbs have been narrowed for certain bodies like the north node for which they are expected to be more narrow. * There's been a very minor change to the aspect grids, which will indicate whether an aspect is slightly short of exact or slight long of exact. If the difference is displayed as "3.5" it means the aspect is 3.5 degrees long of exact; if it's displayed as "3,5", the aspect is 3.5 degrees short. (i.e. with a comma instead of a period; Yeah, I know that's a hack, but it's useful in determining whether the exact aspect just happened or is about to happen. (Note that conjuncts are always '.', and oppositions always ','.) * Five new house systems have been included which can be specified using the -c switch. Astrolog now supports 9 different systems total. * The program now supports directing output 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.) * Display of the chart in a nice wheel format is now supported using the '-w' switch. (Special error case: If one of the houses gets too 'full' of planets, the planet will be put at the beginning of the next house.) * There are now three different formats of chart display available: The standard listing of planet positions, which you get without any switches; the aspect/midpoint grid you get with '-g', and the house wheel you get with '-w'. The -e "everything" option will display the chart in all three of these formats (Of course the screen will scroll because of all the output). * Harmonic charts (i.e. where all the planet positions are multiplied by a factor and the chart recast) are now supported via the '-x' option. (e.g. -x 3 will make all trines conjunct in the chart displayed.) * A secondary progression chart for a particular date can be cast using the '-p ' command switch. (Note, I'm not sure if the house cusps are progressed correctly, but they're reasonably close to what is properly expected.) * Computing the relationship between two charts is now supported. Invoke the program as 'astrolog -r ' and the program will give you the relationship between the two charts. Normally, and with the -w switch, the program will display person2's planets in person1's houses (synastry). With the -g switch, a full grid listing the aspects between all the planets of the two charts (with person1's planets on the vertical axis and person2's on the horizontal) is displayed (minus the vertex, because the screen is too narrow to include it unfortunately.) Note that transits can be computed with this by comparing your chart with the positions of the planets at the current moment (-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'.) * The command switch '-t ' can be used as a shortcut way to compute the current transits for the chart in . (Saves you from having to mention the 'now' in the '-r' option.) Anyway, some new features that we might find in the *next* version are: Adding the calculation of aspects occurring within a day and at what times they are exact (like in Jim Maynard's Celestial Guides), and some Astro-graph routines (i.e. like Jim Lewis' astro*carto*graphy charts which list where in the world the planets were angular at the time of birth.), as well as finally cleaning up the messy code. I hope to make some more clear documentation on how to use the program (remember, most command switches can be combined!) I've got many of the major features one might want in an astrology program down now, but there's still room for expansion: There's still the X windows chart bitmaps (Andy Gray has shown me a nice Postscript program to print charts graphically that he's working on.) Anyway, enjoy the new version of Astrolog (Compile as before)! ************************************************ Astrolog 1.30 posted Wed, 9 Oct 91 03:17:04 GMT ************************************************ Once again, we have a new version (1.30, i.e. the Fourth posting) of the Astrolog birthchart calculator ready to be used. The main highlights are some more minor (and not so minor) bug fixes, as well as some great new features, like the ability to display the exact times of aspects in a day or month, astro*carto*graphy, etc. (Note, I've sent this to talk.religion.newage in addition to just alt.astrology this time, since not everyone gets the alt.* groups, even though I'm increasing my chances of getting flamed for posting 2K line articles... I'm really going to have to start posting this in segments soon, or figure out how to post to comp.sources.whatever; however, the file is still under the magic 64K bytes in length.) First, the bug fixes over version 1.2: 1) The north node is *finally* being computed correctly now. Before it would always seem to be off by about 1/2 a degree or so. 2) The Part of fortune was calculated 180 degrees off about half the time before, and this major bug has been fixed. 3) If Daylight Saving time is in affect, the user must subtract 1 from the time value entered. If the person happened to be born from midnight - 1am, a negative value would have to be entered. Before it wasn't clear what value should be entered. In fact now, one should subtract 1 from the integer of the value, and not the decimal value itself. In other words, things are processed clearer now in that if the person was born at 12:15am with DST in affect, they would enter -1.15 (one less than 0.15) instead of having to subtract from the whole value and enter something like -0.45. 4) (This is more of a new feature than a bug) the program now supports multiple display switches at once. In other words, the user can invoke with '-g -w' and get the aspect grid and the wheel chart, while before the program would only allow one of these to be printed at a time (or else the user would have to print *everything* using the '-e' switch.) 5) Oh, and some of the code has been cleaned up, although not much. Slowly but surely, this will become an elegant program :) A couple of people have emailed me saying that their computer (for example, Mac's) won't accept command switches on the command line (like they boot Astrolog from a menu for instance.) Therefore, they weren't able to access all the features of the program. 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 code. 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. Now a list of the new neat features Astrolog provides: (Remember, it's still 'astrolog -H' to see a list of the command switches.) * 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 specified zone, with general accuracy of a few minutes.) This will tell the times all planets make aspects with each other, or change their sign; retrogradation during the day will be indicated, but the exact time of it won't be listed. * The '-r' option can now be used to generate composite relationship charts. Simply invoke it as '-rc ' 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. * The '-L' option will take the standard chart information and generate the astrograph 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. * The '-E ' option will generate a quick ephemeris for the ten main bodies for the month in question, useful if you just want to see what's happening this month in the sky. It generally is used by itself and not with any other options. (Displayed daily for midnight, GMT time.) Any dots after a planet location in the list indicate the planet was retrograde at the time. * The '-T ' option will scan the entire month specified, and print out any transits that happen, in that month, to the planets as listed in the specified . (There will be quite a few, even though fast moving objects like the moon aren't looked at, so you might want to use this option with the '-A 5' option to limit this to just the major aspects.) Again, this option is generally is used by itself and not with many others. (The times are in GMT time, and 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.) * There are a few other minor things that might affect the program, such as the fact that by default now, only the major and the 6 main minor aspects are taken into account, and that one must '-A 18' if they want to get them all, as well as a few minor display changes, etc. Anyway, I've got many of the more advanced features in the program now, so the next version (might) start to have X windows support in it. (And of course I mentioned that I was working on a more comprehensive help file, part of which I posted, but alas, I was more attracted to adding new features!) I've obtained access to a nice world map which could be included to enchance the astro*graph -L option to make *real* astro-graph maps! And of course, I still want to eventually have the option to have nicely drawn X birthcharts appear on the screen. I've run Andy Gray's postscript version, and although it's still not finished, it does make good printouts. Anyway, enjoy this new version 1.30 of Astrolog, which you can compile as before after removing before and after the "cut here's" with 'cc -O -o astrolog astrolog.c -lm'! ************************************************ Astrolog 1.40 posted Tue, 12 Nov 91 01:18:13 GMT ************************************************ This being the 11th day of the 11th month, I figured that this would be a good time to post the new updated version (1.40) of our Astrolog birthchart calculator plus a whole lot more program! There aren't really any new fundamental features, but there are over a dozen enhancements (many suggested by its users) which make it's operation easier and more powerful. (Plus of course we have a chance to eliminate a couple of pesky bugs.) The actual code is in a separate article, which should be right after or nearby this one. A list of the new features and enhancements Astrolog version 1.40 provides: 1) 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 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.) 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 Juptier 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. (Note: -R will also affect what bodies appear in the -w wheel chart, too.) 2) The -T transits option has been expanded. Putting a zero in place of the month will cause the entire year to be scanned, which prevents one from having to search each month in turn if they are looking for something in particular. (Useful in combination with -R.) 3) The -T option now includes ALL of one's natal house cusps in the transit scans instead of just the Asc and MC. The 11th, 12th, 2nd, and 3rd cusps have been added (and oppositions to these and the Asc/MC can be used to to determine aspects to the other six cusps.) 4) Normally the -T option always ignores the moon and does not include the transiting moon in the lists because it moves so fast and would cause an enormous amount of info. Still, if you are looking for lunar transits, specifying the option as -T0 instead of just -T will include the moon. 5) The -d option can now search the entire month for aspects between planets if one so desires. Specifying it as -d0 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.) 6) Both the -T and -d option will display the signs that any planets aspecting each other are in, in addition to the aspect itself (e.g. instead of just "Jupiter Tri 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. 7) The -E ephemeris option can now be used to display the ephemeris for the entire year instead of just for one month. Like the -T option, putting a '0' for the month will give the entire year's ephemeris. 8) The -E option can also display the Asteroids, Chiron, and the Node in the ephemeris listing if one invokes it as -E0 instead of just -E. Note however that this will make each line more than 80 columns, so this is mainly just for printing purposes. 9) The aspects as listed with the -A option are in a more logical order, from the most major to the least. This makes the -A aspect restriction switch more useful. (e.g. before -A 2 would restrict analysis to conjunctions and sextiles, which isn't all that useful; now the same command will restrict to conjunctions and oppositions.) A) Note also now that by default only the 5 major aspects are used. If one wants the minors, they have to do -A 9, and if one want's ALL the aspects, they must do -A 18. B) Some header info is printed for the standard chart listing, which includes the date, time, and location of the chart being displayed, which of course keeps one from getting a whole bunch of printouts confused with each other. C) 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. D) The -1 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. E) 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. F) Finally the -q option can be used to cast a quick chart for 12 noon on a particular date, using the default longitude and latitude. if TIME is defined the current time zone will be determined and used, otherwise GMT will be used. Again, 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. Now, a list of bug fixes over version 1.30: * The midpoint grid displayed in the -g option would cause a coredump if any of the midpoints lie between 29.5 deg Pisces and 0 deg Aries, and this has been fixed. * The -d print aspects in day routine would incorrectly sometimes label a planet just going direct as just going retrograde, and vice versa. This has been corrected. * Attempting to enter a non numeric string when prompted for a numeric value in the program will cause a bunch of trash to be displayed on the screen. The program now properly tells you that that's an improper input. (Also, hitting Ctrl-d at an input will gracefully terminate the program.) * Although very minor, before there was one place where a function did not return a value. Although it didn't cause any bugs, some compilers would complain about this. * There were a couple of non-computational related typos in the code and the comments that have been corrected (e.g. before at the beginning, the comment would tell you to enter the "Longitude N" of your current location before compiling. This should of course read "Longitude W".) * Finally, those trying to compile Astrolog on PC's and other smaller computers said that many of the expressions were too long for their compiler to handle. Therefore I have cut down some of the longer expressions into multiple lines and have replaced a few of the macros with actual function calls. Expect the X routines to be included in the next version, which will be split into several program parts, as well as some decent documentation soon, or at least comprehensive list of all the features. ************************************************ Astrolog 2.00 posted Wed, 11 Dec 91 07:11:25 GMT ************************************************ Tomorrow Uranus transits my Ascendant at 12 degrees 29' Capricorn. Combine this with my Saturn trining its natal position yesterday, a nice Aquarius Moon and a Moon Mercury Sextile this evening, and what would it be a great time to do? Behold: here is our next version of our Astrolog astrology program! The main new things this version 2.00 contains are our long awaited X11 graphics features and the source code now in multiple files. The program is divided up into 6 source files: astrolog.h, data.c, formulas.c, options.c, graphics.c, and driver.c. Each of these files lies in a separate posting of straight source code which should be after or nearby this one in the list of articles. There is also a small unix Makefile for the code at the end of this update article. I chose to post each file separately in this manner, rather than tar them, uuencode them, zip them, or make a shell archive from them, because we always have the issue of non-unix people not having access to or not knowing how how to extract the program. The main (but not only) thing added to version 2.00 are the X windows features, which are generally accessed via the new -X switch and derivatives of it on the command line. There are two different types of displays: A standard graphic display of a wheel chart in a window (with glyphs, aspects in the center, etc) and 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. 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. A listing and brief description of the command switches for X windows follow: -X: 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) -Xb: This switch will cause a standard X11 bitmap file to be produced instead of putting the graphics in an actual window. This is useful if you want to convert the graphics to different formats, e.g. so they can be displayed on PC's, etc. Note that -Xb (or any other -X switch) automatically assumes the -X switch above, so 'astrolog -i file -Xb' is sufficient (and you don't also have to include the -X). -Xo : Normally, for -Xb above, the program will prompt you for the name to write the bitmap info to; however, you can explicitly specify this filename in with the -Xo switch if you don't want to be prompted. -XB: 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! -Xr: Normally the charts comes up white on a black background (except on some workstations in which this seems to be reversed.) Either way, to get the chart or bitmap displayed in reverse video (black on white), use the -Xr switch. -Xw []: The default window size is 600x600. This can be changed with the -Xw switch. -Xw with one argument n will make an n by n window; -Xw with two arguments x and y will make an x by y window with the chart centered in the middle. Note that this switch will not affect astro-graph windows; to change the size of these use -Xs below. -Xs : Note that the size of the planet and sign glyphs don't change when you change the size of the window. This can cause problems for very small windows where the glyphs overlap the rest of the chart and for very large windows 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, and 300, where 200 is the default. Note that this switch is used to change the size of the astro-graph windows (because the world map is considered to be one giant glyph by the program.) -XW: 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. -XG [degree]: 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.) 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. The X 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 300 the ratio is one pixel to 1/3 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. Once the X window in question actually comes up, one can press certain keys within the window to do certain actions. A list of these follows: 'H': The most important key. Pressing this will display a help list of all the key presses available in the text screen from which the window was invoked from. 'q': Pressing this key will terminate the window (and the Astrolog program itself.) 'p': 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. In pause mode, the window won't be updated at all, e.g. moving another window on top of the Astrolog window and then off again or iconifying will leave the Astrolog one blank. Key presses will still be accepted in pause mode but their effects won't be apparent until one presses 'p' again to continue. The fewer X windows calls in pause mode will make Astrolog use less CPU time. 'x': Pressing this will invert the colors in the window, or in other words will do the same thing as the -Xr switch on the command line. 'T': Normally, there is no actual text printed in the windows. However, one can bring up header information listing the date, time, and location of the chart in question. Pressing the 'T' key will toggle the display of the header text at the bottom of the chart on and off. 'S': One can manually resize the Astrolog windows using a window manager (except when a world map is displayed, in which case resizing will have no effect). Pressing the 'S' key will 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. '<' and '>': This two keys will respectively decrease and increase the size of the sign and planet glyphs (as well as resize the astro-graph charts) through the three scale factors available. After resizing the window you will probably want to use these keys if the glyphs are now too big or small for the new chart. 'C', 'L', 'W', 'G': There are basically four main modes in which a window can be in: There are the main charts (wheel and astro-graph) as well as the two world displays (the simple map by itself and the globe view). These four keys can be used to switch between these four 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 'C' to return to your original wheel chart. 'N': 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! '!', '@', '#', '$', '%', '^', '&', '*', and '(': 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 millenia 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 this animation mode, press the 'N' key. 'r': 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. '1'..'9': 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. There have been a couple of changes made to the program, i.e. not just new features but some things in version 1.40 are no longer valid: * Before, the program tried to actually use internal system calls in the time library to determine whether DST was in effect or not. Since this didn't seem to be accurate at all times, and also many people's systems didn't have the needed gm_tmoff field, I have done away with it and have replaced it with a DEFAULT_ZONE constant set at compile time. * Now that we have a particular default time zone assumed, the transit (-T) times are displayed in the local zone instead of in GMT, the ephemeris (-E) list is displayed daily at midnight local time instead of GMT, and the quick (-q) chart is always displayed for noon default time, too. * The -T transits and -d aspects in day are now displayed in am/pm time instead of the 24 hour cloak. There have also been a few spacing and alignment changes to make these times easier to read. In addition to the X enhancements, there have been a few more features added: 1) 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 was always a pain to have to cd into this special directory all the time, I have added a DEFAULT_DIR string to be set at compile time. Now, 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. 2) Additional information has been added to the standard list of the planet positions displayed. 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). 3) In addition, 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 six 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). 4) The -A option when used by itself will now list the number of each aspect in addition to all the other info already there (e.g. conjunct = 1, opposite = 2, etc.) This is so one can easily figure out what exact number to pass to the -A option when changing the number of aspects used. 5) Similar to the -A option, the new -O option will list all the planets and other celestial objects used by the program, and their numbers as recognized by the -R restrictions. This list will also show the zodiac signs that planets rule, fall in, are exalted in, and debilitated in. 6) The -z 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 transits 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. 7) A "new" system of houses has been added: No houses at all, or in other words the Ascendant will always be 0 degrees Aries, the Nadir 0 degrees Cancer, etc. Access this by passing the value 9 to the -c option. This system is useful for the extended chart animations as described above 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 siderial chart option. Now, a list of bug fixes over version 1.40: * A major bug would cause the input from any eastern longitude (or time zone) or southern latitude to produce results slightly off the expected values. Fixes on how to correct this were posted soon after the release of version 1.40, and they are now included in the code, so there should be no more problems. The reason why such a large bug got in there in the first place (which *wasn't* in versions 1.00-1.20) was that I inadvertently introduced it when I was correcting the earlier (now fixed) bug which would produce incorrect results whenever the user had to enter negative values for the time, e.g. DST was in effect and they were born between midnight and 1am (meaning they enter 0.xx - 1.00 for DST = -1.xx). Both bugs are fixed now and my apologies for the hasty debugging which got it in there in the first place. * The moon and north node would always produce zodiac positions for the standard zodiac, even if the user specified the -s option. The -s option will now yield the proper siderial positions for these two objects. * Some have commented that there are time zones 13 hours before or after GMT, and that the old version would only accept values from -12 to +12. The legal time zone offsets accepted by the program have been expanded to include these areas. * Too much round off in the chart headers displayed for a chart would force all time zones offsets to be integers, and this has been fixed to properly display non-integer zones. Also, another display glitch would occasionally display the person as being born one hour after their true birth time. Both of these were only display errors and didn't affect the actual results computed. * A couple of array sizes in the code have been increased to account for the fact that some compilers will only reserve n elements for the array type name[n], i.e. space is *not* reserved for the index name[n], which would introduce glitches in results for some systems before. * The -q "quick" chart option wasn't mentioned in the -H help list of all the options before, and it is now. * Not really a bug, but I neglected to mention in the list of new features for version 1.40 that the -1 "put on Ascendant option", if not given any object number after it, will by default assume you mean the sun, and will cast a normal chart except that the house cusps will be rotated in order to put the sun on the Ascendant. Anyway, that about sums up Astrolog version 2.00. I confess that this is my first major X window programming job, and that combined with splitting the code could produce problems on other systems, so there might be some needed changes to be made in the code soon. Still, hopefully each code segment is small enough to be compilable on small systems. Anyway, there probably will be a version 2.10 in the future: I would like to include some new features like list the latitude crossings for the astro-graph maps, and I've only really begun to explore the graphics possibilities with the charts (like I could print out the aspects grid and locations with the charts, etc). There are also a couple of other programmers who have expressed interest in merging their own creations with Astrolog: for example, Postscript routines (BTW, you can use the xdpr(1) command on certain systems to print out the contents of an X window), interpretation databases, etc. As far as Astrolog and computers go, the future in our own minds has as many possibilities as the future in the stars! :) To compile version 2.00, first edit the top of the file astrolog.h, putting in your own appropriate values for the default longitude, latitude, time zone, and default directory. Also comment out any of the #defines which set various features that aren't valid on your system, such as the X11, TIME, and SWITCHES variables. Then, for unix systems, run the command 'make' on the Makefile (or you can always compile by hand: "cc -O -c *.c; cc -o astrolog *.o -lm -lX11" will do it; just make sure to compile each source file and link them together at the end with the math and X11 libraries.) ************************************************ Astrolog 2.10 posted Tue, 18 Feb 92 07:59:03 GMT ************************************************ As I post this, we are having the Full Moon in Leo/Aquarius. Identity, represented by the Sun, is in the sign of computers, unconventional science, and contribution to humanity; opposite the Moon in the sign of self-expression. The opposition is occurring in the last degree of these two signs, building up to the entry into the signs of analysis and self-transcendence. Therefore, guess what it's a good time for? Behold: the next version (2.10) of our Astrolog astrology program! It has been over two months since the last version, however some of the many new features should make it worth the wait. Some of these included are: X windows in Color, several new X window chart displays, lots more progression and aspect support, ability to do transits to composite and other charts, latitude crossings for astro-carto- graphy, and other things, along with our standard batch of bug fixes. As before, there are 6 source files: astrolog.h, data.c, formulas.c, options.c, graphics.c, and driver.c. Each of these files should be in a separate posting of straight C source code after or nearby this one in the list of articles. There a small unix Makefile for the program at the end of this update article. Again, I am posting each file separately in this manner, rather than using shar, tar, zip, etc, because we always have the issue of non-unix people not having access to or not knowing how how to extract the program. Note however, that very soon I am going to finally post Astrolog to a formal source group (comp.sources.misc) as a standard shell archive for us unix junkies, so it should be available at a 24 hour ftp site soon. -- Here is a complete list of new features now in Astrolog over version 2.00, listed in rough order from the most significant to least significant: A) Color X windows is probably the main new feature added to Astrolog 2.10. The charts displayed in color are *much* more eye catching than the old B/W ones, IMHO. Here is how the colors have been assigned for the normal wheel and astro-graph 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. B) For color X systems, the new -Xm switch will create all windows in monochrome B/W mode, as they were in 2.00. In addition, pressing the 'm' key within a window will toggle in and out of monochrone mode on color systems. C) Aspect grid windows 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 -g) 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 largest scale size (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); 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. Remember, the ASCII aspect grids in earlier versions were rather limited, only displaying orbs to the nearest 0.1 degree, midpoints to the nearest degree, as well as the confusing '.' vs. ',' for angles slightly greater or less than exact (not to mention leaving the vertex out for the relationship grids between two charts). Well no longer: we can now see *real* aspect grids with Astrolog! D) The -A display aspects option has been extended to 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 displays are referring to. E) A new text display switch has been included, -Z, which 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. F) This new -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. Like the standard chart display, this window may be resized to any proportion. One can press the 'Z' key in any window to enter this display type in that window at any time. G) 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 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 new 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. H) The new 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. I) Another file output feature, the ability to concatenate "comment lines" at the end of a data file, been been added to both the -o and -o0 options. (Some people have complained that the info in the Astrolog chart files are too cryptic.) 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 '-' (the next 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'. (In unix, quotes can be used to allow spaces within one parameter.) J) Determining dates of transits of progressed planets to natal planets can be done with the new -Tp option. This is just like the -T option, except that the exact aspects of progressed planets (rather than transiting planets) to the planets in 'file' are displayed. Again, one can substitute '0' for the month to scan the entire year. K) Another added progression feature allows determining aspect times of progressed planets among themselves. The -i -dp switch will, like the -d option, display times of aspects and sign changes, except that they will be for the chart in file, 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; again, one might want to substitute '0' for the month to scan the whole year. Also, since they move so slow, the accuracy is cut down, do the dates given are probably only accurate to the nearest day, in spite of the times given to the minute. Note that Astrolog can now 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 do is do progressed planets to transiting planets, although that may change in the next version :) L) The new -pn switch is like the -p 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. M) Determination of latitude crossing points has been added to the astro-graph routines! The new -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. N) Change the default orbs of the various aspects with the -Ao ... switch. Do you not like the 7 degree orbs for conjunctions that are in there by default? One can change the first n aspect orbs (i.e. as many orb values that one puts after the -Ao) anywhere from just the conjunction to all 18 aspects. Non-integer values are allowed of course. Use negative orb values to completely eliminate an aspect from ever appearing. For example: astrolog -A 6 -Ao 5 5 -1 10 narrows the orbs for Conjunction and Opposition, completely eliminates the Square, widens the orb for Trines, and leaves the Sextiles and Inconjuncts in 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 decimal 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. O) Note that Astrolog imposes restrictions on the max orb that any particular aspect can have to certain particular objects, namely the node, fortune, and vertex, which can't have aspects to them in excess of 2 degrees. One can suspend these restrictions by replacing the -Ao option above, invoking it as -AO instead. For a fun (and perhaps useful) display, try: astrolog -A 1 -AO 180 -g [-X], and see everything conjunct everything else. P) Search through the aspect grid for major aspect configurations, including Grand Trines, T-Squares, Grand Crosses, Yod's, and Cradles with the -g0 option. 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. Q) 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 (or something like that, I'm just the programmer). Anyway, Astrolog can display the zodiac positions of these bodies as well, and will do this by taking the eight Uranian bodies and literally replacing Mercury..Pluto with them. (Do: astrolog -u -O to list them.) This replacement will allow the Uranians to be included in Astrolog's various options, although of course this means that they can't interact with Mercury..Pluto in any way. (Note, I didn't bother to change the X glyphs or sign rulerships since I don't know what they are for the Uranians.) R) Decan displays are now 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.) S) 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 appears backwards (i.e. a planet having just entered the 6th house from the 5th is displayed right under the Descendant.) Replace -w with the -w0 switch and the objects from houses 4 through 9 will be reversed and printed in order from bottom to top, making a more flowing looking chart. T) The new -q0