home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 5
/
DATAFILE_PDCD5.iso
/
utilities
/
m
/
moontool
/
!MoonTool
/
!Help
next >
Wrap
Text File
|
1993-08-08
|
35KB
|
1,123 lines
/*
Moon Tool for the Archimedes
============================
Sun Workstation version ................ John Walker
Archimedes Risc OS 3.1 port ............ Edouard Poor
This program is in the public domain:
"Do what thou wilt shall be the whole of the law".
Introduction
============
MoonTool is a program designed give you the following infomation:
o Phase of the Moon
o Age of the Moon
o Distance to the moon
o Dates of the Last and Next New moon as well as the First and
Last Quarters and the Full Moon.
o Angle the Moon subtends
In addition it also gives you information about:
o Time and Date in Julian, Local and Universal (GMT) times.
o Distance to the Sun
o Angle the Sun subtends
An invaluable tool for those of you who don't like going outside to look
at the moon, all the nethack players among you, astronomers who like
to know when the moon it new and thus the stars are at their best viewing,
or indeed anyone who just really needs to exactly how far away the moon
and sun are...
Interface
=========
The program starts up in it's iconised mode, giving you a simple window
with a single button displaying a picture of the moon as it appears
in the sky. You can move the window with its title bar, or click on the
icon to bring up the full, un-iconised, view.
In un-iconised mode you are presented with all the information about the
current time, the moons distance and age, the suns distance, and the
"Moon Phase" icon. Looking to the top right of the window you will see
that it has a full-size icon; clicking on this will reveal additional
information about the dates of the phases of the moon (all in UTC, or
Universal Time).
Clicking again on the "Moon Phase" icon of the moons current appearance
will put the program back into iconised mode.
Quitting the prgram simply consists of closing the window when it is
in un-iconised mode.
Risc OS 3.1 Notes
=================
This program needs both Local Time and Greenwich Mean Time set up
correctly in your machine.
This requires two things-- Firstly setting the configured time in your
machine to Greenwich Mean Time then getting the time correct for
where you live by setting the Congfiguration Setting 'TimeZone' (you
can type "help TimeZone" on the command line). This step will probably
be unnessesary in the UK where you are on GMT anyway...
Where I live (in New Zealand) I use "configure TimeZone +12:0"
The second step is to do with daylight savings-- Use !Alarm to toggle
between daylight savings on and off instead of altering the time or
the TimeZone offset. (Daylight Savings Time or DST is labeled 'BST'
in !Alarms 'Set Time' window, which stands for British Summer Time,
because Acorn is Very Good at Internationalisation...)
If you set and maintain the time in the method outlined above, you
will always be able to have the correct time, and be able to work
out the time in GMT or UTC as well, as will any program that needs
to know the time in both local and universal. C programs that use
localtime() and gmtime(), for example, need this.
Problems
========
There are no problems or bugs with this program. It is perfect in every
way and any difficulties you may experience are one of the three following
people, or organisation's fault:
o Yourself
o Your Acorn Dealer
o Acorn Computers Limited
For example you might say "When I run !MoonTool on my RO2 machine it
crashes" - This would be your fault for not purchasing Risc OS 3.1 yet.
You might say "In 256 colour mode the button plinths in, but it also
inverts as well" - This would be Acorns fault for not having better
'Kwality Kontrol' on its operating systems.
Also someone might complain "When the moon behind a cloud I can't see it
but I can still it on my computer. Could you set it up so that it's
visiability is always the same as the real moon?" - This would be their
dealers fault for selling a computer to someone whose IQ was obviously
in the low 70's...
In short, if you havn't worked it out yet, I take no responibility for
anything at all to do with this program.
To Be Done
==========
Well everything is actually about as well done as it's likely to get,
but if anyone wants to send me any improvments to the address below
I'd be very grateful, and will release anothr version with your
modifications and credit.
Also if anyone can design me a better Filer Icon I'd be most happy
to replace the one I've got at the moment...
If anyone feels like spell checking this !Help file I'm sure hundreds,
if not thousands, of english speakers around the world would be grateful
to you :-)
Author Info (Archimedes Version)
================================
Send all snail mail/money orders/cheques/cash to:
Edouard Poor
15 Stanley Pt Rd
Devonport
Auckland
New Zealand
Email/uu-files may be addressed to:
epoo1@cs.aukuni.ac.nz (valid until at least March 1994)
edouard@nacjack.gen.nz (not used very often)
Voice line:
+64 9 4450330
Bibliography
============
The algorithms used in this program to calculate the positions Sun and
Moon as seen from the Earth are given in the book "Practical Astronomy
With Your Calculator" by Peter Duffett-Smith, Second Edition, Cambridge
University Press, 1981. Ignore the word "Calculator" in the title; this
is an essential reference if you're interested in developing software
which calculates planetary positions, orbits, eclipses, and the like. If
you're interested in pursuing such programming, you should also obtain:
"Astronomical Formulae for Calculators" by Jean Meeus, Third Edition,
Willmann-Bell, 1985. A must-have.
"Planetary Programs and Tables from -4000 to +2800" by Pierre Bretagnon
and Jean-Louis Simon, Willmann-Bell, 1986. If you want the utmost
(outside of JPL) accuracy for the planets, it's here.
"Celestial BASIC" by Eric Burgess, Revised Edition, Sybex, 1985. Very
cookbook oriented, and many of the algorithms are hard to dig out of the
turgid BASIC code, but you'll probably want it anyway.
Many of these references can be obtained from Willmann-Bell, P.O. Box
35025, Richmond, VA 23235, USA. Phone: (804) 320-7016. In addition to
their own publications, they stock most of the standard references for
mathematical and positional astronomy.
Sun Workstation (Original) Author Info
======================================
A Moon for the Sun
Release 2.0
Designed and implemented by John Walker in December 1987,
revised and updated in February of 1988.
This program was written by:
John Walker
Autodesk, Inc.
2320 Marinship Way
Sausalito, CA 94965
(415) 332-2344 Ext. 829
Usenet: {sun!well}!acad!kelvin
I'd appreciate receiving any bug fixes and/or enhancements, which I'll
incorporate in future versions of the program. Please leave the original
attribution information intact so that credit and blame may be properly
apportioned.
Source Code
===========
Well it was originally compiled with my own personal library "QDD_Lib"
but it uses very few calls, and they are all, unlike Acorns "RISC_OSLib"
ones, very easy to read. It should be very easy for anyone with a C
compiler and any set of wimp libraries to convert this program to
compile under their own set-up.
Enjoy.
*
*
*
* Astronomical constants
*/
#define epoch 2444238.5 /* 1980 January 0.0 */
/*
* Constants defining the Sun's apparent orbit
*/
#define elonge 278.833540 /* Ecliptic longitude of the Sun at epoch 1980.0 */
#define elongp 282.596403 /* Ecliptic longitude of the Sun at perigee */
#define eccent 0.016718 /* Eccentricity of Earth's orbit */
#define sunsmax 1.495985e8 /* Semi-maj