Here is public domain source code that any would-be programmer/astrologer can use as the core for any sort of astrology program a person wants to make. This source code uses the Astrodienst Swiss Ephemeris (click here) to do all planetary, asteroid, and house calculations. Please see Astrodienst's web page for the details of the Swiss Ephemeris license (click here) and other documentation.
AstrAstr contains natal, secondary progression, and transit calculations, natal chart interpretations, daily transit interpretations, single and dual chartwheels, two types of keyword features, 7 different house systems, my AstroLine graphic planetary display, a meanings form that allows you to select and read various natal interpretations for any planet in a house, sign, or aspect, plus any rising sign, a natal chart report writer, a daily transit report writer, plenty of option settings, help files, a Tip of the Day feature, two astrology fonts that can be used in any word processor application, and 90-degree wheels for displaying asteroid positions. Since this is free source code, there is currently no automatic atlas feature in the program, except the ability to interface with the ACS DOS or Windows atlases. There are geographic lists of about 2300 cities, though.
Download AstrAstr_install.exe (the installation program), 2,243,325, 06 Feb 2008. Once downloaded, simply double-click on the file to install the program. Please make sure you download the ephemeris files for the program.
Download astrastr_source.zip (the source code), 2,161,174, 06 Feb 2008. Once downloaded, simply create a new directory, then unzip astrastr_source.zip into that directory. Then double-click on AstrAstr.vbp to open AstrAstr in your Visual Basic environment. Go from there.
Download or read Tips for Quick Startup, 4278, 05 Nov 2005.
Click here to see a screenshot of the 90-degree dual wheel with asteroids. Be sure to scroll all the way to the right to see more.
Swiss ephemeris data files (.se1 files) are REQUIRED in order to use AstrAstr. Please download these files. Once downloaded, unzip astrastr_ephems.zip into your \ephems sub-directory (off your root AstrAstr.exe directory) after setting up or installing AstrAstr.
Download astrastr_ephems.zip, 15,918,813, 29 May 2005. Swiss
ephemeris files for AstrAstr program.
NOTES
1. A free program such as AstrAstr cannot license an atlas or give it
away free without a license. AstrAstr can interface to the ACS atlas
if you have already purchased the program, but AstrAstr does NOT come
with the ACS atlas. You may look up longitude, latitude, and time zone
information at http://www.astro.com/atlas.
2. To developers - if you do not have a registered copy of the ACS
Atlas (Windows version), then remove the reference to ACSATLAS.OCX in the .vbp file.
3. The atlas function in AstrAstr works if you have either the DOS or Windows version of the ACS atlas.
4. The abbreviation 'BML' stands for "Black-moon Lilith".
5. All ephemeris files MUST be located in the \ephems sub-directory.
Additional ephemeris files may be found at http://www.astro.com/swisseph/?lang=e or
ftp://ftp.astro.com/pub/swisseph.
6. In order to calculate any asteroid, you MUST have the Swiss
ephemeris .se1 file for that asteroid. These files are located in the
\ephems sub-directory. Planets and asteroids are listed by their
designated number - see the file named Asteroid_master_list.txt for
asteroid codes. Within the displayed textbox, asteroids have 10000
added to the code found in Asteroid_master_list.txt.
7. If you do not want a particular planet's interpretations to appear
in the TRANSIT INTERPRETATION listing or report, then simply rename
the *_tr.txt file for that particular planet. For example, if you do
not want Saturn interpretations to appear because you have not written
any, then rename the file called Sat_tr.txt to Sat_tr99.txt, for instance.
Version 1.03 - 27 May 2006
1. Added option #16 to control whether or not Black Moon Lilith (BML) is mean position or true position.
Version 1.01/1.02 - 22 November 2005
1. Added natal and dual cosmodyne calculations. See under DATA menu.
Version 1.01 - 31 May 2005 and 05 Nov 2005
1. New installation program.
2. Added a visible pointer helping the user to see semi-sextiles,
sextiles, trines, and quincunxes when viewing the 90-degree asteroid
dials. Menu items for setting the values of pointer width and pointer
movement amount have also been added. See HELP - 90-DEG DIAL WINDOW
for more information.
3. Add options #167 - #170 to control the maximum number of planets
allowed in each house. These values control the spacing of the planets
in the various wheels.
4. Added a listing of the asteroids and each of their identification
numbers to the 90-degree dial chartwheel printout.
5. Alphabetize the asteroid lists.
6. Bug fixes with regard to the DATA - SUMMARY feature (the declination
listings) and the chartwheel aspects listing for parallels and
contra-parallels.
Version 1.00 - 29 May 2005
1. Added capability to access Windows version of ACS atlas directly.
2. Added secondary progression calculations and a dual chartwheel for
progressed planets versus natal planets (these are only calculated for
birth time, birth time zone, and birth location, regardless of what is
entered in the Diurnal Input Data window).
3. Added test display routines for 4 different wheel arrangements.
4. Added a menu item under DATA called SUMMARY, which lists a summary
of natal, progressed, and transit planet positions. Only the main
planets are shown.
5. Add single and dual 90 degree wheels in a separate display window.
6. Added lots of asteroids in the 90 degree wheels.
7. Added a cross to the 90 degree dial displays for easier analysis.
Use the left, right and down arrows to manipulate. Try it.
8. The user may toggle the aspect lines shown on a dual chartwheel
with one of the sub-menu items under OPTIONS on the Wheels menu. See
options #230 and #231 in options.hlp.
9. Added option #15 so the user may select either the Part of
Fortune or Black Moon Lilith for planet #13. Black Moon Lilith is
denoted by BML in the text or 'B' on the chartwheel. Aspect lines will
now appear for planet #13.
10. Added ability to update natal chart by a day, hour, or minute -
and to also go backward by those intervals in chartwheel display window.