home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-05-31 | 72.2 KB | 2,131 lines |
- Newsgroups: comp.sources.x
- From: ecdowney@hwking.cca.cr.rockwell.com (Elwood C. Downey)
- Subject: v20i010: xephem - astronomical ephemeris program, Patch01
- Message-ID: <1993Jun1.234850.18206@sparky.imd.sterling.com>
- X-Md4-Signature: ae609a630bd522121d423c4be56c2610
- Sender: chris@sparky.imd.sterling.com (Chris Olson)
- Organization: Sterling Software
- Date: Tue, 1 Jun 1993 23:48:50 GMT
- Approved: chris@sparky.imd.sterling.com
-
- Submitted-by: ecdowney@hwking.cca.cr.rockwell.com (Elwood C. Downey)
- Posting-number: Volume 20, Issue 10
- Archive-name: xephem/patch01
- Environment: X11
- Patch-To: xephem: Volume 19, Issue 90-110
-
- Hello all;
-
- Please find attached a patch for my interactive astronomical ephemeris
- program for X Windows, xephem. It will bring it from v2.4b to v2.4e.
-
- This patch makes few changes in functionality. Most changes merely increase
- portability, particularly to VMS, OSF/1 and Motif 1.2. It does fix a bug
- that causes a segmentation fault if you select "Sky Mark" from the ObjX/Y
- menu before the Sky View menu was ever posted and one that prevents listing
- rise, set or transit times while looping. The only added functionality is
- the display of the constellation name during cursor tracking in the Sky View
- menu.
-
- Thank you.
-
- Elwood Downey, ecdowney@pobox.cca.cr.rockwell.com
-
- ------------------------patch--------------------------------------------------
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # Contents: xephem.p1
- # Wrapped by chris@sparky on Tue Jun 1 18:43:14 1993
- PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive."'
- if test -f 'xephem.p1' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xephem.p1'\"
- else
- echo shar: Extracting \"'xephem.p1'\" \(69363 characters\)
- sed "s/^X//" >'xephem.p1' <<'END_OF_FILE'
- Xdiff -c v2.4b/Makefile.simple v2.4e/Makefile.simple
- X*** v2.4b/Makefile.simple Tue Jun 1 14:30:20 1993
- X--- v2.4e/Makefile.simple Tue Jun 1 10:23:00 1993
- X***************
- X*** 1,4 ****
- X! # Simple Makefile for xephem v2.4b.
- X # We include sample compile and link flags for a few popular systems.
- X
- X # "stock" X systems
- X--- 1,4 ----
- X! # Simple Makefile for xephem v2.4e.
- X # We include sample compile and link flags for a few popular systems.
- X
- X # "stock" X systems
- Xdiff -c v2.4b/README v2.4e/README
- X*** v2.4b/README Tue Jun 1 14:31:30 1993
- X--- v2.4e/README Tue Jun 1 14:24:00 1993
- X***************
- X*** 35,50 ****
- X
- X If not, there is also a Makefile.simple.
- X
- X! atof() can be somewhat problematic. It was historically declared to be
- X! double in math.h. More contemporary systems declare it only in stdlib.h.
- X! Xephem includes stdlib.h if __STDC__ is defined, else it assumes atof()
- X! is declared in math.h. This should work pretty well but if you get
- X! crazy numbers from xephem check the files that use atof and figure out a
- X! way to get it declared to return a double. Atof() is called in compiler.c,
- X! db.c, formats.c, mainmenu.c and satmenu.c.
- X
- X- Also, on some systems (such as SVR3.2) compile with -D_NO_PROTO and -DSYSV.
- X-
- X I have searched carefully through the output of running all of xephem
- X through lint and gcc on Ultrix and SVR4 and can rationalize all the
- X warnings so don't let these bother you.
- X--- 35,42 ----
- X
- X If not, there is also a Makefile.simple.
- X
- X! On some systems (such as SVR3.2) compile with -D_NO_PROTO and -DSYSV.
- X
- X I have searched carefully through the output of running all of xephem
- X through lint and gcc on Ultrix and SVR4 and can rationalize all the
- X warnings so don't let these bother you.
- X***************
- X*** 80,86 ****
- X to run on the following configurations:
- X
- X
- X! xephem v2.4b is known to run on the following systems; check with the author
- X for availability of statically linked binary executables.
- X
- X OS CPU X
- X--- 72,78 ----
- X to run on the following configurations:
- X
- X
- X! xephem v2.4e is known to run on the following systems; check with the author
- X for availability of statically linked binary executables.
- X
- X OS CPU X
- X***************
- X*** 88,99 ****
- X SVR3.2/Venix i486 Metrolink X11R4/Motif 1.1.3
- X SVR4.0.3/Consensys i486 MIT X11R5/Motif 1.1.4
- X Ultrix 4.2 DECstation 5000 DEC's (?)
- X! SunOS 4.1.2 Sun 4c TeleUSE development system
- X hpux 8.07 HP 9000/720 X11R4, Motif 1.1.?
- X IRIX 4.0.5 SGI X11R4
- X OSF/1 1.2 DEC Alpha X11R5, Motif 1.1.3
- X
- X
- X If you would like to gut xephem for just its astronomical functionality, start
- X with obj_cir(). This is basically the dividing line between the user interface
- X and the astronomical functions. Also, the following files are pretty much just
- X--- 80,97 ----
- X SVR3.2/Venix i486 Metrolink X11R4/Motif 1.1.3
- X SVR4.0.3/Consensys i486 MIT X11R5/Motif 1.1.4
- X Ultrix 4.2 DECstation 5000 DEC's (?)
- X! SunOS 4.1.2 Sun 4c TeleUSE development system*
- X hpux 8.07 HP 9000/720 X11R4, Motif 1.1.?
- X IRIX 4.0.5 SGI X11R4
- X OSF/1 1.2 DEC Alpha X11R5, Motif 1.1.3
- X+ AIXv3.2 IBM RS/6000 AIXwindows
- X+ VMS VAX DECwindows
- X+ SCO v3.2 i486 ODT 2.0
- X+ Linux i486 MetroLink
- X
- X+ * requires Sun's X server patch 100444-35.
- X
- X+
- X If you would like to gut xephem for just its astronomical functionality, start
- X with obj_cir(). This is basically the dividing line between the user interface
- X and the astronomical functions. Also, the following files are pretty much just
- X***************
- X*** 149,171 ****
- X
- X ecdowney@pobox.cca.cr.rockwell.com
- X
- X! April 21, 1993
- X
- X! The following (untested!) DCL file will build xephem for VMS/DECwindows MOTIF;
- X! based on an earlier version by Ethan VanMatre:
- X
- X $!
- X $! Makefile.com -- Command file to compile and link Xephem
- X $!
- X- $!
- X $! A simple minded command file to compile and link Xephem under VAX/VMS
- X $! and DECwindows MOTIF
- X $!
- X! $! when who what
- X $!
- X! $! 2-feb-1992 Ethan VanMatre original from unix makefile
- X $!
- X! $
- X $ cc aa_hadec/opt/obj
- X $ cc anomaly /opt/obj
- X $ cc cal_mjd /opt/obj
- X--- 147,176 ----
- X
- X ecdowney@pobox.cca.cr.rockwell.com
- X
- X! June 1, 1993
- X
- X! The following DCL file, courtesy fisica@astrpd.DNET.NASA.GOV (Max Calvani -
- X! Italy) will build xephem for VMS/DECwindows MOTIF. In addition,
- X! drucker@Csa2.LBL.Gov (Bob Drucker, Berkeley/LBL) writes:
- X
- X+ For VMS users the default settings file can be pointed to in one of
- X+ two ways. The default name for the resource file on VMS is
- X+ SYS$LOGIN:DECW$XDEFAULTS.DAT. If you don't wish to use this
- X+ you can define the logical XENVIRONMENT to point to the file (this
- X+ allows you to keep the file anywhere you want with any name).
- X+
- X $!
- X $! Makefile.com -- Command file to compile and link Xephem
- X $!
- X $! A simple minded command file to compile and link Xephem under VAX/VMS
- X $! and DECwindows MOTIF
- X $!
- X! $! when who what
- X $!
- X! $! 2-feb-1992 Ethan VanMatre original from unix makefile
- X! $! 13-mar-1993 Max Calvani updated for xephem v2.4.
- X $!
- X! $ set ver
- X $ cc aa_hadec/opt/obj
- X $ cc anomaly /opt/obj
- X $ cc cal_mjd /opt/obj
- X***************
- X*** 186,191 ****
- X--- 191,197 ----
- X $ cc listmenu/opt/obj
- X $ cc mainmenu/opt/obj
- X $ cc marsmenu/opt/obj
- X+ $ cc marsmap/opt/obj
- X $ cc misc /opt/obj
- X $ cc moon /opt/obj
- X $ cc moonmenu/opt/obj
- X***************
- X*** 200,211 ****
- X $ cc plot_aux/opt/obj
- X $ cc plotmenu/opt/obj
- X $ cc precess /opt/obj
- X $ cc query /opt/obj
- X $ cc reduce /opt/obj
- X $ cc refract /opt/obj
- X $ cc riset /opt/obj
- X $ cc riset_cir/opt/obj
- X- $ cc risetmenu/opt/obj
- X $ cc satmenu /opt/obj
- X $ cc sex_dec /opt/obj
- X $ cc skyfiltmenu/opt/obj
- X--- 206,217 ----
- X $ cc plot_aux/opt/obj
- X $ cc plotmenu/opt/obj
- X $ cc precess /opt/obj
- X+ $ cc preferences/opt/obj
- X $ cc query /opt/obj
- X $ cc reduce /opt/obj
- X $ cc refract /opt/obj
- X $ cc riset /opt/obj
- X $ cc riset_cir/opt/obj
- X $ cc satmenu /opt/obj
- X $ cc sex_dec /opt/obj
- X $ cc skyfiltmenu/opt/obj
- X***************
- X*** 239,244 ****
- X--- 245,251 ----
- X listmenu.obj, -
- X mainmenu.obj, -
- X marsmenu.obj, -
- X+ marsmap.obj, -
- X misc.obj, -
- X moon.obj, -
- X moonmenu.obj, -
- X***************
- X*** 253,264 ****
- X plot_aux.obj, -
- X plotmenu.obj, -
- X precess.obj, -
- X query.obj, -
- X reduce.obj, -
- X refract.obj, -
- X riset.obj, -
- X riset_cir.obj, -
- X- risetmenu.obj, -
- X satmenu.obj, -
- X sex_dec.obj, -
- X skyfiltmenu.obj, -
- X--- 260,271 ----
- X plot_aux.obj, -
- X plotmenu.obj, -
- X precess.obj, -
- X+ preferences.obj, -
- X query.obj, -
- X reduce.obj, -
- X refract.obj, -
- X riset.obj, -
- X riset_cir.obj, -
- X satmenu.obj, -
- X sex_dec.obj, -
- X skyfiltmenu.obj, -
- X***************
- X*** 278,280 ****
- X--- 285,288 ----
- X $!clean:
- X $ purge
- X $!
- X+ $ set nover
- Xdiff -c v2.4b/XEphem.ad v2.4e/XEphem.ad
- X*** v2.4b/XEphem.ad Tue Jun 1 14:30:43 1993
- X--- v2.4e/XEphem.ad Wed May 19 13:59:45 1993
- X***************
- X*** 168,173 ****
- X--- 168,176 ----
- X XEphem*SkyFilter*SymbolDA.foreground: snow
- X XEphem*SkyFilter*SymbolDA.background: #00004a
- X
- X+ ! set the width of the symbol boxes in the Sky view Filter menu.
- X+ XEphem*SkyFilter*SymbolDA.width: 20
- X+
- X ! initial types of object to display in Sky View
- X XEphem*SkyFilter*Planets.set: True
- X XEphem*SkyFilter*Elliptical.set: True
- Xdiff -c v2.4b/compiler.c v2.4e/compiler.c
- X*** v2.4b/compiler.c Tue Jun 1 14:30:14 1993
- X--- v2.4e/compiler.c Tue May 18 09:36:50 1993
- X***************
- X*** 27,32 ****
- X--- 27,34 ----
- X #define P_(s) ()
- X #endif
- X
- X+ extern double atod P_((char *buf));
- X+
- X int compile_expr P_((char *ex, char *errbuf));
- X int execute_expr P_((double *vp, char *errbuf));
- X int prog_isgood P_((void));
- X***************
- X*** 276,282 ****
- X (void) sprintf (err_msg, toomc, MAX_OPX);
- X return (ERR);
- X }
- X! consts[nconsts] = atof (lcexpr);
- X tok = CONST | (nconsts++ << OP_SHIFT);
- X skip_double();
- X } else if (isalpha(c)) {
- X--- 278,284 ----
- X (void) sprintf (err_msg, toomc, MAX_OPX);
- X return (ERR);
- X }
- X! consts[nconsts] = atod (lcexpr);
- X tok = CONST | (nconsts++ << OP_SHIFT);
- X skip_double();
- X } else if (isalpha(c)) {
- Xdiff -c v2.4b/datamenu.c v2.4e/datamenu.c
- X*** v2.4b/datamenu.c Tue Jun 1 14:31:45 1993
- X--- v2.4e/datamenu.c Tue Jun 1 10:54:35 1993
- X***************
- X*** 40,45 ****
- X--- 40,46 ----
- X extern void f_ra P_((Widget w, double ra));
- X extern void f_showit P_((Widget w, char *s));
- X extern void f_string P_((Widget w, char *s));
- X+ extern void field_log P_((Widget w, double value, int logv, char *str));
- X extern void get_something P_((Widget w, char *resource, char *value));
- X extern void get_xmstring P_((Widget w, char *resource, char **txtp));
- X extern void hlp_dialog P_((char *tag, char *deflt[], int ndeflt));
- X***************
- X*** 66,72 ****
- X static void dm_help_cb P_((Widget w, XtPointer client, XtPointer call));
- X static void dm_compute P_((int r, int force, Now *np));
- X static void dm_format P_((Now *np, Obj *op, RiseSet *rp, int c, Widget w));
- X! static void dm_rs_addplus P_((Widget w, int addplus));
- X static void dm_rs_hrsup P_((Widget w, RiseSet *rp));
- X static void show_constellation P_((Now *np, Obj *op, Widget w));
- X static void dm_separation P_((Obj *p, Obj *q, int how, Widget w));
- X--- 67,73 ----
- X static void dm_help_cb P_((Widget w, XtPointer client, XtPointer call));
- X static void dm_compute P_((int r, int force, Now *np));
- X static void dm_format P_((Now *np, Obj *op, RiseSet *rp, int c, Widget w));
- X! static void dm_rs_addplus P_((Widget w, double tm, int addplus));
- X static void dm_rs_hrsup P_((Widget w, RiseSet *rp));
- X static void show_constellation P_((Now *np, Obj *op, Widget w));
- X static void dm_separation P_((Obj *p, Obj *q, int how, Widget w));
- X***************
- X*** 844,853 ****
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NORISE)
- X f_string (w, "NoRise");
- X! else {
- X! f_mtime (w, rp->rs_risetm); /* 5 chars wide */
- X! dm_rs_addplus (w, rp->rs_flags & RS_2RISES); /* adds 1 */
- X! }
- X break;
- X
- X case RSAZ_ID:
- X--- 845,852 ----
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NORISE)
- X f_string (w, "NoRise");
- X! else
- X! dm_rs_addplus (w, rp->rs_risetm, rp->rs_flags & RS_2RISES);
- X break;
- X
- X case RSAZ_ID:
- X***************
- X*** 872,881 ****
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NOSET)
- X f_string (w, "NoSet ");
- X! else {
- X! f_mtime (w, rp->rs_settm); /* 5 chars wide */
- X! dm_rs_addplus (w, rp->rs_flags & RS_2SETS); /* adds 1 */
- X! }
- X break;
- X
- X case SETAZ_ID:
- X--- 871,878 ----
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NOSET)
- X f_string (w, "NoSet ");
- X! else
- X! dm_rs_addplus (w, rp->rs_settm, rp->rs_flags & RS_2SETS);
- X break;
- X
- X case SETAZ_ID:
- X***************
- X*** 898,907 ****
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NOTRANS)
- X f_string (w, "NoTran");
- X! else {
- X! f_mtime (w, rp->rs_trantm); /* 5 chars wide */
- X! dm_rs_addplus (w, rp->rs_flags & RS_2TRANS); /* adds 1 */
- X! }
- X break;
- X
- X case TRALT_ID:
- X--- 895,902 ----
- X f_string (w, "NvrUp ");
- X else if (rp->rs_flags & RS_NOTRANS)
- X f_string (w, "NoTran");
- X! else
- X! dm_rs_addplus (w, rp->rs_trantm, rp->rs_flags & RS_2TRANS);
- X break;
- X
- X case TRALT_ID:
- X***************
- X*** 939,957 ****
- X }
- X }
- X
- X static void
- X! dm_rs_addplus (w, addplus)
- X Widget w;
- X int addplus;
- X {
- X! char *orig, *new;
- X
- X! get_xmstring (w, XmNlabelString, &orig);
- X! new = XtMalloc(strlen(orig)+2); /* '+' plus the '\0' */
- X! (void) sprintf (new, addplus ? "%s+" : "%s ", orig);
- X! f_string (w, new);
- X! XtFree (orig);
- X! XtFree (new);
- X }
- X
- X /* display the total hours this object has been up.
- X--- 934,955 ----
- X }
- X }
- X
- X+ /* display the rise/set/transit time tm (in hours) in widget w.
- X+ * if addplus is != 0 then add a '+' to the time string.
- X+ * N.B. be sure the total string length is the same regardless of addplus.
- X+ */
- X static void
- X! dm_rs_addplus (w, tm, addplus)
- X Widget w;
- X+ double tm;
- X int addplus;
- X {
- X! char str[32];
- X
- X! fs_mtime (str, tm); /* 5 chars: "hh:mm" */
- X! (void) strcat (str, addplus ? "+" : " "); /* always add 1 */
- X! field_log (w, tm, 1, str);
- X! f_showit (w, str);
- X }
- X
- X /* display the total hours this object has been up.
- X***************
- X*** 973,980 ****
- X return;
- X }
- X if (rp->rs_flags & RS_NEVERUP) {
- X! f_mtime (w, 0.0); /* 5 chars wide */
- X! dm_rs_addplus(w, 0); /* adds 1 */
- X return;
- X }
- X
- X--- 971,977 ----
- X return;
- X }
- X if (rp->rs_flags & RS_NEVERUP) {
- X! dm_rs_addplus (w, 0.0, 0);
- X return;
- X }
- X
- X***************
- X*** 983,990 ****
- X hrs = s - r;
- X if (hrs < 0)
- X hrs += 24.0;
- X! f_mtime (w, hrs); /* 5 chars wide */
- X! dm_rs_addplus(w, rp->rs_flags&(RS_NORISE|RS_NOSET|RS_2RISES|RS_2SETS));
- X }
- X
- X static void
- X--- 980,986 ----
- X hrs = s - r;
- X if (hrs < 0)
- X hrs += 24.0;
- X! dm_rs_addplus(w, hrs, rp->rs_flags&(RS_NORISE|RS_NOSET|RS_2RISES|RS_2SETS));
- X }
- X
- X static void
- Xdiff -c v2.4b/db.c v2.4e/db.c
- X*** v2.4b/db.c Tue Jun 1 14:30:16 1993
- X--- v2.4e/db.c Thu May 20 12:51:21 1993
- X***************
- X*** 3,14 ****
- X
- X #include <stdio.h>
- X #include <ctype.h>
- X- #include <malloc.h>
- X #include <math.h>
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #include <string.h>
- X #endif
- X #include "astro.h"
- X #include "circum.h"
- X #include "preferences.h"
- X--- 3,17 ----
- X
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X+
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #include <string.h>
- X+ #else
- X+ extern void *malloc(), *realloc();
- X #endif
- X+
- X #include "astro.h"
- X #include "circum.h"
- X #include "preferences.h"
- X***************
- X*** 20,25 ****
- X--- 23,29 ----
- X #define P_(s) ()
- X #endif
- X
- X+ extern double atod P_((char *buf));
- X extern Now *mm_get_now P_((void));
- X extern int obj_cir P_((Now *np, Obj *op));
- X extern void cal_mjd P_((int mn, double dy, int yr, double *Mjd));
- X***************
- X*** 332,341 ****
- X break;
- X }
- X case F_MAG:
- X! op->f_mag = atof (bp) * MAGSCALE;
- X break;
- X case F_SIZE:
- X! op->f_size = atof (bp);
- X break;
- X case F_EPOCH: {
- X double fepoch;
- X--- 336,345 ----
- X break;
- X }
- X case F_MAG:
- X! op->f_mag = atod (bp) * MAGSCALE;
- X break;
- X case F_SIZE:
- X! op->f_size = atod (bp);
- X break;
- X case F_EPOCH: {
- X double fepoch;
- X***************
- X*** 365,389 ****
- X }
- X
- X case E_INC:
- X! op->e_inc = atof (bp);
- X break;
- X case E_LAN:
- X! op->e_Om = atof (bp);
- X break;
- X case E_AOP:
- X! op->e_om = atof (bp);
- X break;
- X case E_A:
- X! op->e_a = atof (bp);
- X break;
- X case E_N:
- X! op->e_n = atof (bp);
- X break;
- X case E_E:
- X! op->e_e = atof (bp);
- X break;
- X case E_M:
- X! op->e_M = atof (bp);
- X break;
- X case E_CEPOCH:
- X crack_year (bp, pref, &op->e_cepoch);
- X--- 369,393 ----
- X }
- X
- X case E_INC:
- X! op->e_inc = atod (bp);
- X break;
- X case E_LAN:
- X! op->e_Om = atod (bp);
- X break;
- X case E_AOP:
- X! op->e_om = atod (bp);
- X break;
- X case E_A:
- X! op->e_a = atod (bp);
- X break;
- X case E_N:
- X! op->e_n = atod (bp);
- X break;
- X case E_E:
- X! op->e_e = atod (bp);
- X break;
- X case E_M:
- X! op->e_M = atod (bp);
- X break;
- X case E_CEPOCH:
- X crack_year (bp, pref, &op->e_cepoch);
- X***************
- X*** 405,411 ****
- X /* leave type unchanged if no or unrecognized prefix */
- X break;
- X }
- X! op->e_mag.m1 = atof(bp);
- X break;
- X case E_M2:
- X switch (bp[0]) {
- X--- 409,415 ----
- X /* leave type unchanged if no or unrecognized prefix */
- X break;
- X }
- X! op->e_mag.m1 = atod(bp);
- X break;
- X case E_M2:
- X switch (bp[0]) {
- X***************
- X*** 421,430 ****
- X /* leave type unchanged if no or unrecognized prefix */
- X break;
- X }
- X! op->e_mag.m2 = atof(bp);
- X break;
- X case E_SIZE:
- X! op->e_size = atof (bp);
- X break;
- X
- X case H_EP:
- X--- 425,434 ----
- X /* leave type unchanged if no or unrecognized prefix */
- X break;
- X }
- X! op->e_mag.m2 = atod(bp);
- X break;
- X case E_SIZE:
- X! op->e_size = atod (bp);
- X break;
- X
- X case H_EP:
- X***************
- X*** 431,461 ****
- X crack_year (bp, pref, &op->h_ep);
- X break;
- X case H_INC:
- X! op->h_inc = atof (bp);
- X break;
- X case H_LAN:
- X! op->h_Om = atof (bp);
- X break;
- X case H_AOP:
- X! op->h_om = atof (bp);
- X break;
- X case H_E:
- X! op->h_e = atof (bp);
- X break;
- X case H_QP:
- X! op->h_qp = atof (bp);
- X break;
- X case H_EPOCH:
- X crack_year (bp, pref, &op->h_epoch);
- X break;
- X case H_G:
- X! op->h_g = atof (bp);
- X break;
- X case H_K:
- X! op->h_k = atof (bp);
- X break;
- X case H_SIZE:
- X! op->h_size = atof (bp);
- X break;
- X
- X case P_EP:
- X--- 435,465 ----
- X crack_year (bp, pref, &op->h_ep);
- X break;
- X case H_INC:
- X! op->h_inc = atod (bp);
- X break;
- X case H_LAN:
- X! op->h_Om = atod (bp);
- X break;
- X case H_AOP:
- X! op->h_om = atod (bp);
- X break;
- X case H_E:
- X! op->h_e = atod (bp);
- X break;
- X case H_QP:
- X! op->h_qp = atod (bp);
- X break;
- X case H_EPOCH:
- X crack_year (bp, pref, &op->h_epoch);
- X break;
- X case H_G:
- X! op->h_g = atod (bp);
- X break;
- X case H_K:
- X! op->h_k = atod (bp);
- X break;
- X case H_SIZE:
- X! op->h_size = atod (bp);
- X break;
- X
- X case P_EP:
- X***************
- X*** 462,489 ****
- X crack_year (bp, pref, &op->p_ep);
- X break;
- X case P_INC:
- X! op->p_inc = atof (bp);
- X break;
- X case P_AOP:
- X! op->p_om = atof (bp);
- X break;
- X case P_QP:
- X! op->p_qp = atof (bp);
- X break;
- X case P_LAN:
- X! op->p_Om = atof (bp);
- X break;
- X case P_EPOCH:
- X crack_year (bp, pref, &op->p_epoch);
- X break;
- X case P_G:
- X! op->p_g = atof (bp);
- X break;
- X case P_K:
- X! op->p_k = atof (bp);
- X break;
- X case P_SIZE:
- X! op->p_size = atof (bp);
- X break;
- X default:
- X printf ("BUG! db_set_field: bad id: %d\n", id);
- X--- 466,493 ----
- X crack_year (bp, pref, &op->p_ep);
- X break;
- X case P_INC:
- X! op->p_inc = atod (bp);
- X break;
- X case P_AOP:
- X! op->p_om = atod (bp);
- X break;
- X case P_QP:
- X! op->p_qp = atod (bp);
- X break;
- X case P_LAN:
- X! op->p_Om = atod (bp);
- X break;
- X case P_EPOCH:
- X crack_year (bp, pref, &op->p_epoch);
- X break;
- X case P_G:
- X! op->p_g = atod (bp);
- X break;
- X case P_K:
- X! op->p_k = atod (bp);
- X break;
- X case P_SIZE:
- X! op->p_size = atod (bp);
- X break;
- X default:
- X printf ("BUG! db_set_field: bad id: %d\n", id);
- X***************
- X*** 508,515 ****
- X if (nobj[t] >= nmem[t]) {
- X int oldn = nmem[t];
- X int newn = oldn + DBMEMCHUNKS;
- X! char *newp = db[t] ? realloc (db[t], size*newn)
- X! : malloc (size*newn);
- X if (!newp)
- X return (NULL);
- X zero_mem (newp + size*oldn, size*DBMEMCHUNKS);
- X--- 512,519 ----
- X if (nobj[t] >= nmem[t]) {
- X int oldn = nmem[t];
- X int newn = oldn + DBMEMCHUNKS;
- X! char *newp = db[t] ? (char *) realloc (db[t], size*newn)
- X! : (char *) malloc (size*newn);
- X if (!newp)
- X return (NULL);
- X zero_mem (newp + size*oldn, size*DBMEMCHUNKS);
- Xdiff -c v2.4b/dbmenu.c v2.4e/dbmenu.c
- X*** v2.4b/dbmenu.c Tue Jun 1 14:31:11 1993
- X--- v2.4e/dbmenu.c Wed May 19 14:18:50 1993
- X***************
- X*** 4,13 ****
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X! #include <errno.h>
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X #include <Xm/Xm.h>
- X #include <Xm/Form.h>
- X #include <Xm/Frame.h>
- X--- 4,14 ----
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X!
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X+
- X #include <Xm/Xm.h>
- X #include <Xm/Form.h>
- X #include <Xm/Frame.h>
- X***************
- X*** 26,31 ****
- X--- 27,33 ----
- X #endif
- X
- X extern Obj *db_next P_((Obj *op, HowNext how));
- X+ extern char *syserrstr P_((void));
- X extern int db_n P_((void));
- X extern int db_read P_((FILE *fp, int append));
- X extern void all_newdb P_((int appended));
- X***************
- X*** 46,52 ****
- X
- X #undef P_
- X
- X- extern char *sys_errlist[];
- X extern Widget toplevel_w;
- X extern char *myclass;
- X #define XtD XtDisplay(toplevel_w)
- X--- 48,53 ----
- X***************
- X*** 211,217 ****
- X if (!fp) {
- X char msg[128];
- X (void) sprintf (msg, "Can not open %.75s: %.25s", name,
- X! sys_errlist[errno]);
- X xe_msg (msg, 1);
- X }
- X return (fp);
- X--- 212,218 ----
- X if (!fp) {
- X char msg[128];
- X (void) sprintf (msg, "Can not open %.75s: %.25s", name,
- X! syserrstr());
- X xe_msg (msg, 1);
- X }
- X return (fp);
- Xdiff -c v2.4b/formats.c v2.4e/formats.c
- X*** v2.4b/formats.c Tue Jun 1 14:30:50 1993
- X--- v2.4e/formats.c Tue May 18 09:37:32 1993
- X***************
- X*** 18,23 ****
- X--- 18,24 ----
- X #define P_(s) ()
- X #endif
- X
- X+ extern double atod P_((char *buf));
- X extern void dec_sex P_((double d, int *hd, int *m, int *s, int *isneg));
- X extern void f_dec_sexsign P_((double x, int *h, int *m, int *s));
- X extern void field_log P_((Widget w, double value, int logv, char *str));
- X***************
- X*** 143,149 ****
- X dec = v;
- X frac = (v - dec)*60.0;
- X (void) sprintf (str, "59.%.*s5", p, "999999999");
- X! if (frac >= atof (str)) {
- X dec += 1;
- X frac = 0.0;
- X }
- X--- 144,150 ----
- X dec = v;
- X frac = (v - dec)*60.0;
- X (void) sprintf (str, "59.%.*s5", p, "999999999");
- X! if (frac >= atod (str)) {
- X dec += 1;
- X frac = 0.0;
- X }
- X***************
- X*** 487,493 ****
- X /* not in a number now ... */
- X if (in) {
- X /* ... but we *were* in a number, so it counts */
- X! comp[ncomp] = atof (bp0);
- X set[ncomp] = 1;
- X in = 0;
- X }
- X--- 488,494 ----
- X /* not in a number now ... */
- X if (in) {
- X /* ... but we *were* in a number, so it counts */
- X! comp[ncomp] = atod (bp0);
- X set[ncomp] = 1;
- X in = 0;
- X }
- Xdiff -c v2.4b/listmenu.c v2.4e/listmenu.c
- X*** v2.4b/listmenu.c Tue Jun 1 14:31:13 1993
- X--- v2.4e/listmenu.c Wed May 19 14:19:00 1993
- X***************
- X*** 4,17 ****
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X #include <X11/Xlib.h>
- X #include <Xm/Xm.h>
- X #include <Xm/Form.h>
- X #include <Xm/DrawingA.h>
- X! #include <Xm/LabelG.h>
- X #include <Xm/PushB.h>
- X #include <Xm/ToggleB.h>
- X #include <Xm/Separator.h>
- X--- 4,19 ----
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X+
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X+
- X #include <X11/Xlib.h>
- X #include <Xm/Xm.h>
- X #include <Xm/Form.h>
- X #include <Xm/DrawingA.h>
- X! #include <Xm/Label.h>
- X #include <Xm/PushB.h>
- X #include <Xm/ToggleB.h>
- X #include <Xm/Separator.h>
- X***************
- X*** 27,32 ****
- X--- 29,35 ----
- X
- X extern int access(); /* don't know whether to include unistd.h */
- X
- X+ extern char *syserrstr P_((void));
- X extern void all_selection_mode P_((int whether));
- X extern void f_string P_((Widget w, char *s));
- X extern void hlp_dialog P_((char *tag, char *deflt[], int ndeflt));
- X***************
- X*** 58,73 ****
- X
- X extern Widget toplevel_w;
- X
- X- #ifdef VMS
- X- #include <perror.h>
- X- #include <errno.h>
- X- #else
- X- extern char *sys_errlist[];
- X- extern errno;
- X- #endif
- X-
- X- #define errsys (sys_errlist[errno])
- X-
- X /* max number of fields we can keep track of at once to list */
- X #define MAXLSTFLDS 10
- X #define MAXLSTSTR 32 /* longest string we can list */
- X--- 61,66 ----
- X***************
- X*** 494,500 ****
- X char *buf;
- X XmToggleButtonSetState (active_w, False, False);
- X buf = XtMalloc (strlen(txt)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", txt, errsys);
- X xe_msg (buf, 1);
- X XtFree (buf);
- X }
- X--- 487,493 ----
- X char *buf;
- X XmToggleButtonSetState (active_w, False, False);
- X buf = XtMalloc (strlen(txt)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", txt, syserrstr());
- X xe_msg (buf, 1);
- X XtFree (buf);
- X }
- Xdiff -c v2.4b/mainmenu.c v2.4e/mainmenu.c
- X*** v2.4b/mainmenu.c Tue Jun 1 14:32:10 1993
- X--- v2.4e/mainmenu.c Tue Jun 1 12:23:55 1993
- X***************
- X*** 38,43 ****
- X--- 38,44 ----
- X #define P_(s) ()
- X #endif
- X
- X+ extern double atod P_((char *buf));
- X extern double mjd_day P_((double jd));
- X extern double mjd_hr P_((double jd));
- X extern int f_ison P_((void));
- X***************
- X*** 118,125 ****
- X extern char *myclass;
- X extern XtAppContext xe_app;
- X #define XtD XtDisplay(toplevel_w)
- X- extern char *sys_errlist[];
- X- extern errno;
- X extern Widget calm_create();
- X
- X /* shorthands for fields of a Now structure, now.
- X--- 119,124 ----
- X***************
- X*** 156,161 ****
- X--- 155,162 ----
- X static XtIntervalId mm_interval_id; /* set while waiting in a pause loop */
- X static int mm_selecting; /* set while our fields are being selected */
- X
- X+ #define NO_PAUSE_DELAY 20 /* ms between loops when pause is 0 */
- X+
- X /* field ids
- X * N.B. must be in same order as they appear in mm_field_map[].
- X */
- X***************
- X*** 726,732 ****
- X print_idle();
- X } else {
- X mm_interval_id =
- X! XtAppAddTimeOut (xe_app, spause>0 ? 1000 : 120, mm_timer_cb, 0);
- X }
- X }
- X
- X--- 727,734 ----
- X print_idle();
- X } else {
- X mm_interval_id =
- X! XtAppAddTimeOut (xe_app, spause>0 ? 1000 : NO_PAUSE_DELAY,
- X! mm_timer_cb, 0);
- X }
- X }
- X
- X***************
- X*** 870,876 ****
- X if (bp[0] == 'n' || bp[0] == 'N')
- X time_fromsys (&now);
- X else
- X! mjd = atof(bp) - MJD0;
- X set_t0 (&now);
- X new = 1;
- X break;
- X--- 872,878 ----
- X if (bp[0] == 'n' || bp[0] == 'N')
- X time_fromsys (&now);
- X else
- X! mjd = atod(bp) - MJD0;
- X set_t0 (&now);
- X new = 1;
- X break;
- X***************
- X*** 1035,1041 ****
- X epoch = EOD;
- X else {
- X double e;
- X! e = atof(bp);
- X year_mjd (e, &epoch);
- X }
- X new = 1;
- X--- 1037,1043 ----
- X epoch = EOD;
- X else {
- X double e;
- X! e = atod(bp);
- X year_mjd (e, &epoch);
- X }
- X new = 1;
- Xdiff -c v2.4b/misc.c v2.4e/misc.c
- X*** v2.4b/misc.c Tue Jun 1 14:31:52 1993
- X--- v2.4e/misc.c Thu May 20 18:13:49 1993
- X***************
- X*** 5,13 ****
- X--- 5,15 ----
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X+
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X+
- X #include <X11/Xlib.h>
- X #include <X11/cursorfont.h>
- X #include <Xm/Xm.h>
- X***************
- X*** 88,93 ****
- X--- 90,97 ----
- X int lc P_((int cx, int cy, int cw, int x1, int y1, int x2, int y2, int *sx1, int *sy1, int *sx2, int *sy2));
- X void hg_mag P_((double h, double g, double rp, double rho, double rsn, double *mp));
- X void gk_mag P_((double g, double k, double rp, double rho, double *mp));
- X+ double atod P_((char *buf));
- X+ char *syserrstr P_((void));
- X
- X #undef P_
- X
- X***************
- X*** 809,812 ****
- X--- 813,851 ----
- X double *mp;
- X {
- X *mp = g + 5.0*log10(rho) + 2.5*k*log10(rp);
- X+ }
- X+
- X+ /* given a string convert to floating point and return it as a double.
- X+ * this is to avoid the unportabilities associated with declaring atof().
- X+ */
- X+ double
- X+ atod (buf)
- X+ char *buf;
- X+ {
- X+ double tmp;
- X+
- X+ (void) sscanf (buf, "%lf", &tmp);
- X+ return (tmp);
- X+ }
- X+
- X+ /* return a string for whatever is in errno right now.
- X+ * I never would have imagined it would be so hard to turn errno into a string!
- X+ */
- X+ char *
- X+ syserrstr ()
- X+ {
- X+ #if defined(__STDC__)
- X+ #include <errno.h>
- X+ #include <string.h>
- X+ return (strerror (errno));
- X+ #else
- X+ #if defined(VMS)
- X+ #include <errno.h>
- X+ #include <perror.h>
- X+ #else
- X+ extern char *sys_errlist[];
- X+ extern int errno;
- X+ #endif
- X+ return (sys_errlist[errno]);
- X+ #endif
- X }
- Xdiff -c v2.4b/patchlevel.h v2.4e/patchlevel.h
- X*** v2.4b/patchlevel.h Tue Jun 1 14:30:25 1993
- X--- v2.4e/patchlevel.h Tue Jun 1 10:20:14 1993
- X***************
- X*** 3,6 ****
- X * it is also updated by any subsequent patches that are issued for xephem.
- X */
- X
- X! #define PATCHLEVEL "Version 2.4b May 10, 1993"
- X--- 3,6 ----
- X * it is also updated by any subsequent patches that are issued for xephem.
- X */
- X
- X! #define PATCHLEVEL "Version 2.4e June 1, 1993"
- Xdiff -c v2.4b/plotmenu.c v2.4e/plotmenu.c
- X*** v2.4b/plotmenu.c Tue Jun 1 14:30:58 1993
- X--- v2.4e/plotmenu.c Wed May 19 14:19:24 1993
- X***************
- X*** 4,12 ****
- X--- 4,14 ----
- X #include <stdio.h>
- X #include <ctype.h>
- X #include <math.h>
- X+
- X #if defined(__STDC__)
- X #include <stdlib.h>
- X #endif
- X+
- X #include <X11/Xlib.h>
- X #include <Xm/Xm.h>
- X #include <Xm/Form.h>
- X***************
- X*** 25,30 ****
- X--- 27,33 ----
- X #define P_(s) ()
- X #endif
- X
- X+ extern char *syserrstr P_((void));
- X extern int plot_cartesian P_((FILE *pfp, Widget widget, unsigned int nx, unsigned int ny, int flipx, int flipy, int grid));
- X extern void all_selection_mode P_((int whether));
- X extern void f_string P_((Widget w, char *s));
- X***************
- X*** 70,85 ****
- X extern Widget toplevel_w;
- X #define XtD XtDisplay(toplevel_w)
- X
- X- #ifdef VMS
- X- #include <perror.h>
- X- #include <errno.h>
- X- #else
- X- extern char *sys_errlist[];
- X- extern errno;
- X- #endif
- X-
- X- #define errsys (sys_errlist[errno])
- X-
- X /* max number of things we can keep track of at once to plot */
- X #define MAXPLTLINES 10
- X #define MAXFLDNAM 32 /* longest allowed field name */
- X--- 73,78 ----
- X***************
- X*** 622,628 ****
- X char *buf;
- X XmToggleButtonSetState (active_w, False, False);
- X buf = XtMalloc (strlen(txt)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", txt, errsys);
- X xe_msg (buf, 1);
- X XtFree (buf);
- X }
- X--- 615,621 ----
- X char *buf;
- X XmToggleButtonSetState (active_w, False, False);
- X buf = XtMalloc (strlen(txt)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", txt, syserrstr());
- X xe_msg (buf, 1);
- X XtFree (buf);
- X }
- X***************
- X*** 668,674 ****
- X if (!fp) {
- X char *buf;
- X buf = XtMalloc (strlen(fn)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", fn, errsys);
- X xe_msg (buf, 1);
- X XtFree (buf);
- X XtFree (fn);
- X--- 661,667 ----
- X if (!fp) {
- X char *buf;
- X buf = XtMalloc (strlen(fn)+100);
- X! (void) sprintf (buf, "Can not open %s: %s", fn, syserrstr());
- X xe_msg (buf, 1);
- X XtFree (buf);
- X XtFree (fn);
- Xdiff -c v2.4b/skyviewmenu.c v2.4e/skyviewmenu.c
- X*** v2.4b/skyviewmenu.c Tue Jun 1 14:32:28 1993
- X--- v2.4e/skyviewmenu.c Tue Jun 1 13:24:09 1993
- X***************
- X*** 63,68 ****
- X--- 63,69 ----
- X extern int svf_filter_ok P_((Obj *op));
- X extern int tickmarks P_((double min, double max, int numdiv, double ticks[]));
- X extern void aa_hadec P_((double lati, double alt, double az, double *ha, double *dec));
- X+ extern void confnd P_((double r, double d, double e, char **name));
- X extern void db_update P_((Obj *op));
- X extern void ecl_eq P_((double Mjd, double Lat, double Lng, double *ra, double *dec));
- X extern void eq_ecl P_((double Mjd, double ra, double dec, double *Lat, double *Lng));
- X***************
- X*** 174,179 ****
- X--- 175,181 ----
- X static Pixmap sv_pm; /* off-screen pixmap we *really* draw */
- X static Widget talt_w, taz_w; /* tracking alt/az report widgets */
- X static Widget tra_w, tdec_w; /* tracking ra/dec report widgets */
- X+ static Widget tconst_w; /* tracking constellation report wdgt */
- X
- X /* pixels and GCs
- X */
- X***************
- X*** 357,364 ****
- X sv_id (op)
- X Obj *op;
- X {
- X! Display *dsp = XtDisplay (svda_w);
- X! Window win = XtWindow (svda_w);
- X unsigned int wide, h, r, xb, yb;
- X double altdec, azra;
- X int x, y;
- X--- 359,366 ----
- X sv_id (op)
- X Obj *op;
- X {
- X! Display *dsp;
- X! Window win;
- X unsigned int wide, h, r, xb, yb;
- X double altdec, azra;
- X int x, y;
- X***************
- X*** 366,371 ****
- X--- 368,376 ----
- X if (!svform_w || !XtIsManaged(svform_w) || !op || op->type == UNDEFOBJ)
- X return (-2);
- X
- X+ dsp = XtDisplay (svda_w);
- X+ win = XtWindow (svda_w);
- X+
- X sv_getcircle (&wide, &h, &r, &xb, &yb);
- X
- X altdec = aa_mode ? op->s_alt : op->s_dec;
- X***************
- X*** 1085,1090 ****
- X--- 1090,1107 ----
- X set_xmstring (taz_w, XmNlabelString, " ");
- X XtManageChild(taz_w);
- X
- X+ /* make a label for the constellation just below Alt */
- X+
- X+ n = 0;
- X+ XtSetArg (args[n], XmNleftAttachment, XmATTACH_WIDGET); n++;
- X+ XtSetArg (args[n], XmNleftWidget, fov_w); n++;
- X+ XtSetArg (args[n], XmNtopAttachment, XmATTACH_WIDGET); n++;
- X+ XtSetArg (args[n], XmNtopWidget, talt_w); n++;
- X+ XtSetArg (args[n], XmNalignment, XmALIGNMENT_BEGINNING); n++;
- X+ tconst_w = XmCreateLabel (svform_w, "TConst", args, n);
- X+ set_xmstring (tconst_w, XmNlabelString, " ");
- X+ XtManageChild(tconst_w);
- X+
- X /* make a drawing area inside the sliders for drawing the sky */
- X
- X n = 0;
- X***************
- X*** 1442,1447 ****
- X--- 1459,1465 ----
- X int evt = ev->type;
- X int okmotion, okbutton;
- X double lst;
- X+ char *constellation;
- X
- X /* only interested if motion event or button 1 press/release */
- X okmotion = evt == MotionNotify && ev->xmotion.state == Button1Mask;
- X***************
- X*** 1482,1487 ****
- X--- 1500,1508 ----
- X refract (pressure, temp, alt, &alt);
- X }
- X
- X+ confnd (ra, dec, epoch == EOD ? mjd : epoch, &constellation);
- X+ constellation += 5; /* skip the abbreviation */
- X+
- X (void) strcpy (alt_buf, "Alt: ");
- X fs_angle (alt_buf+5, alt);
- X (void) strcpy (az_buf, "Az: ");
- X***************
- X*** 1495,1500 ****
- X--- 1516,1522 ----
- X (void) strcpy (az_buf, " ");
- X (void) strcpy (ra_buf, " ");
- X (void) strcpy (dec_buf, " ");
- X+ constellation = " ";
- X }
- X
- X f_showit (talt_w, alt_buf);
- X***************
- X*** 1501,1506 ****
- X--- 1523,1529 ----
- X f_showit (taz_w, az_buf);
- X f_showit (tra_w, ra_buf);
- X f_showit (tdec_w, dec_buf);
- X+ f_showit (tconst_w, constellation);
- X }
- X
- X /* a dot has been picked:
- X***************
- X*** 2254,2260 ****
- X }
- X
- X /* determine if the given object is visible and within a circle of radius r
- X! * pixels. if so, return 1 and compute the location in *xp/*yp, else return 0.
- X * N.B. only call this for bona fide db objects -- *not* for objects in the
- X * TrailObj lists -- it will destroy their history.
- X */
- X--- 2277,2283 ----
- X }
- X
- X /* determine if the given object is visible and within a circle of radius r
- X! * pixels. if so, return 1 and compute the location in *xp / *yp, else return 0.
- X * N.B. only call this for bona fide db objects -- *not* for objects in the
- X * TrailObj lists -- it will destroy their history.
- X */
- Xdiff -c v2.4b/time.c v2.4e/time.c
- X*** v2.4b/time.c Tue Jun 1 14:30:34 1993
- X--- v2.4e/time.c Tue Jun 1 12:26:24 1993
- X***************
- X*** 20,25 ****
- X--- 20,26 ----
- X
- X #undef P_
- X
- X+
- X static long c0;
- X static double mjd0;
- X
- X***************
- X*** 55,62 ****
- X double inc;
- X {
- X if (inc == RTC) {
- X! long c;
- X! (void) time (&c);
- X mjd = mjd0 + (c - c0)/SPD;
- X } else
- X mjd += inc/24.0;
- X--- 56,62 ----
- X double inc;
- X {
- X if (inc == RTC) {
- X! long c = time (NULL);
- X mjd = mjd0 + (c - c0)/SPD;
- X } else
- X mjd += inc/24.0;
- Xdiff -c v2.4b/versionmenu.c v2.4e/versionmenu.c
- X*** v2.4b/versionmenu.c Tue Jun 1 14:31:17 1993
- X--- v2.4e/versionmenu.c Tue Jun 1 13:32:32 1993
- X***************
- X*** 6,12 ****
- X--- 6,21 ----
- X */
- X
- X /*
- X+ * 2.4e 6/1 can not list rise/set/transit times while looping: fixed.
- X+ * decreased loop delay when pause is set to 0.
- X+ * changed troublesome comment in skyviewmenu.c.
- X+ * another change for DEC's alpha in time.c.
- X+ * added constellation name to Sky View cursor tracking report.
- X+ * patch to bring v2.4b to v2.4e posted to comp.sources.x.
- X+ * 2.4d 5/27 Sky Mark in ObjX/Y before Sky View seg faults: fixed.
- X+ * 2.4c 5/19 portability enhancements, particularly to VMS and Motif 1.2.
- X * 2.4b 5/10 changed to using memcpy() instead of struct assign (for Alpha).
- X+ * 2.4b was released to comp.sources.x May 1993 in v19i090-v19i110.
- X * 2.4a 4/23 changed usage of time() (just needed for DEC's Alpha CPUs)
- X * 2.4 4/21 fixed blank jup and sat views (unsigned).
- X * 2.3 4/12 add ecliptic option to sky view.
- Xdiff -c v2.4b/xephem.c v2.4e/xephem.c
- X*** v2.4b/xephem.c Tue Jun 1 14:31:47 1993
- X--- v2.4e/xephem.c Wed May 19 13:37:00 1993
- X***************
- X*** 463,490 ****
- X cascade = XmCreateCascadeButton (menu_bar, "Control", args, n);
- X XtManageChild (cascade);
- X
- X! /* Create "ObjX/Y..." Cascade Button. */
- X! str = XmStringCreate ("ObjX/Y...", XmSTRING_DEFAULT_CHARSET);
- X n = 0;
- X! XtSetArg (args[n], XmNlabelString, str); n++;
- X XtSetArg (args[n], XmNmnemonic, 'O'); n++;
- X! cascade = XmCreateCascadeButton (menu_bar, "ObjXY", args, n);
- X! XtManageChild (cascade);
- X! XtAddCallback (cascade, XmNactivateCallback, m_activate_cb,
- X (XtPointer)OBJS);
- X! XmStringFree (str);
- X!
- X! /* Create "DB..." Cascade Button. */
- X! str = XmStringCreate ("DB...", XmSTRING_DEFAULT_CHARSET);
- X n = 0;
- X! XtSetArg (args[n], XmNlabelString, str); n++;
- X! XtSetArg (args[n], XmNmnemonic, 'D'); n++;
- X! cascade = XmCreateCascadeButton (menu_bar, "DB", args, n);
- X XtManageChild (cascade);
- X! XtAddCallback (cascade, XmNactivateCallback, m_activate_cb,
- X! (XtPointer)DB);
- X! XmStringFree (str);
- X!
- X /* Create "Preferences" PulldownMenu. */
- X
- X pref_create_pulldown (menu_bar);
- X--- 463,492 ----
- X cascade = XmCreateCascadeButton (menu_bar, "Control", args, n);
- X XtManageChild (cascade);
- X
- X! /* Create "Objects" pulldown */
- X n = 0;
- X! menu_pane = XmCreatePulldownMenu (menu_bar, "obj_pane", args, n);
- X!
- X! n = 0;
- X! XtSetArg (args[n], XmNmnemonic, 'D'); n++;
- X! button = XmCreatePushButton (menu_pane, "Data Base", args, n);
- X! XtManageChild (button);
- X! XtAddCallback (button, XmNactivateCallback, m_activate_cb,
- X! (XtPointer)DB);
- X!
- X! n = 0;
- X XtSetArg (args[n], XmNmnemonic, 'O'); n++;
- X! button = XmCreatePushButton (menu_pane, "ObjX/Y", args, n);
- X! XtManageChild (button);
- X! XtAddCallback (button, XmNactivateCallback, m_activate_cb,
- X (XtPointer)OBJS);
- X!
- X n = 0;
- X! XtSetArg (args[n], XmNsubMenuId, menu_pane); n++;
- X! XtSetArg (args[n], XmNmnemonic, 'O'); n++;
- X! cascade = XmCreateCascadeButton (menu_bar, "Objects", args, n);
- X XtManageChild (cascade);
- X!
- X /* Create "Preferences" PulldownMenu. */
- X
- X pref_create_pulldown (menu_bar);
- Xdiff -c v2.4b/xephem.hlp v2.4e/xephem.hlp
- X*** v2.4b/xephem.hlp Tue Jun 1 14:30:45 1993
- X--- v2.4e/xephem.hlp Tue Jun 1 14:12:32 1993
- X***************
- X*** 60,71 ****
- X The "Control" pulldown toggles the plotting, listing and searching control
- X menus.
- X
- X! The "ObjX/Y..." pushbutton toggles the menu that allows you to define
- X! the user defined objects, ObjX and ObjY. Said menu also allows you to
- X! inspect each item currently in the xephem database.
- X
- X! The "DB..." pushbutton toggles the menu that allows to add or replace
- X! entries in the xephem database from files of database objects.
- X
- X The "Preferences" pulldown lists the available preferences that may be
- X changed at runtime. The options currently available include whether the
- X--- 60,76 ----
- X The "Control" pulldown toggles the plotting, listing and searching control
- X menus.
- X
- X! The "Objects" pulldown entries toggle the menus that control reading
- X! database files of objects into memory and defining the two user defined
- X! objects, ObjX and ObjY.
- X
- X! The "Data Base" pushbutton toggles the menu that allows you to add or
- X! replace objects in memory from files of database objects.
- X!
- X! The "ObjX/Y" pushbutton toggles the menu that allows you to define
- X! the user defined objects, ObjX and ObjY. This menu also allows you to
- X! inspect the fields of any object currently in memory and locate the
- X! object on the Sky View menu.
- X
- X The "Preferences" pulldown lists the available preferences that may be
- X changed at runtime. The options currently available include whether the
- X***************
- X*** 114,142 ****
- X Dusk Local time when the sun center is "Twilight dip" degrees below
- X the horizon after sunset today.
- X Night Length Length of astronomical night, ie, Dawn - Dusk. If this and the
- X! display for Dawn and Dusk are shown as "-----", it means the sun
- X! is either always below or always above "Twilight dip" degrees
- X! below the horizon on this particular day.
- X
- X N Steps The number of times the display will be updated (time advanced
- X by Step Size each step) automatically.
- X Step Size The amount of time UTC (and its derivatives) is incremented
- X! each loop.
- X Pause Number of seconds to pause between screen updates. This is
- X! used mainly to set up for free-running unattended operation.
- X! Pausing is not done when plotting or searching is on.
- X
- X Latitude Location latitude, positive degrees north of equator.
- X Longitude Location longitude, positive degrees west of Greenwich meridian.
- X Elevation Local elevation of the ground above sea level, in feet. (see
- X! implementation notes). Used in refraction correction.
- X Temperature Local surface air temperature, in degrees F. Used in refraction
- X! correction.
- X Atm Pressure Local surface air pressure, in inches of mercury. Used in
- X! refraction correction.
- X Epoch The epoch, to the nearest 0.1 years, to which the ra/dec
- X! fields are precessed. This says (OfDate) when coordinates
- X! are not precessed, ie, are in the epoch of date.
- X
- X The calendar on the right of the Main menu is based on UTC. Selecting a date
- X button will set the date. Unlabeled buttons before the first of the month
- X--- 119,147 ----
- X Dusk Local time when the sun center is "Twilight dip" degrees below
- X the horizon after sunset today.
- X Night Length Length of astronomical night, ie, Dawn - Dusk. If this and the
- X! display for Dawn and Dusk are shown as "-----", it means the sun
- X! is either always below or always above "Twilight dip" degrees
- X! below the horizon on this particular day.
- X
- X N Steps The number of times the display will be updated (time advanced
- X by Step Size each step) automatically.
- X Step Size The amount of time UTC (and its derivatives) is incremented
- X! each loop.
- X Pause Number of seconds to pause between screen updates. This is
- X! used mainly to set up for free-running unattended operation.
- X! Pausing is not done when plotting or searching is on.
- X
- X Latitude Location latitude, positive degrees north of equator.
- X Longitude Location longitude, positive degrees west of Greenwich meridian.
- X Elevation Local elevation of the ground above sea level, in feet. (see
- X! implementation notes). Used in refraction correction.
- X Temperature Local surface air temperature, in degrees F. Used in refraction
- X! correction.
- X Atm Pressure Local surface air pressure, in inches of mercury. Used in
- X! refraction correction.
- X Epoch The epoch, to the nearest 0.1 years, to which the ra/dec
- X! fields are precessed. This says (OfDate) when coordinates
- X! are not precessed, ie, are in the epoch of date.
- X
- X The calendar on the right of the Main menu is based on UTC. Selecting a date
- X button will set the date. Unlabeled buttons before the first of the month
- X***************
- X*** 254,264 ****
- X Long longitude, in degrees west of Greenwich, in the form d:m:s.
- X Lat latitude, in degrees north of the equator, in the form d:m:s.
- X Elevation height above sea level, in feet or meters, such as 800. Used to
- X! compute parallax of solar system objects.
- X Temp air temperature, in degrees F or C, such as 60.
- X Pressure air pressure, in inches of Mercury or mBar, such as 29.50.
- X! Temp and Pressure are used to compute refraction when the AdpHzrn
- X! option is active; see the Help for the Data setup table.
- X StepSize the time increment between screen updates, such as "1" to give
- X one hour updates. this can be a specific amount or RTC to use
- X the system clock as a real-time source. You may also specify a
- X--- 259,269 ----
- X Long longitude, in degrees west of Greenwich, in the form d:m:s.
- X Lat latitude, in degrees north of the equator, in the form d:m:s.
- X Elevation height above sea level, in feet or meters, such as 800. Used to
- X! compute parallax of solar system objects.
- X Temp air temperature, in degrees F or C, such as 60.
- X Pressure air pressure, in inches of Mercury or mBar, such as 29.50.
- X! Temp and Pressure are used to compute refraction when the AdpHzrn
- X! option is active; see the Help for the Data setup table.
- X StepSize the time increment between screen updates, such as "1" to give
- X one hour updates. this can be a specific amount or RTC to use
- X the system clock as a real-time source. You may also specify a
- X***************
- X*** 268,277 ****
- X see the discussion under Program Operation.
- X Epoch this sets the desired ra/dec precession epoch. you can put any
- X date here (use decimal form, such as 1992.5) or "EOD" to use the
- X! current instant ("Epoch of Date").
- X Pause The number of seconds to pause between calculation steps.
- X TwilightDip Number of degrees the sun is below the horizon that you want to
- X! define as being the end of "twilight"; must be at least 0.
- X @Date/time
- X Xephem uses many values that get are entered in some variation of X/Y/Z form.
- X We call this a "triad" input format.
- X--- 273,282 ----
- X see the discussion under Program Operation.
- X Epoch this sets the desired ra/dec precession epoch. you can put any
- X date here (use decimal form, such as 1992.5) or "EOD" to use the
- X! current instant ("Epoch of Date").
- X Pause The number of seconds to pause between calculation steps.
- X TwilightDip Number of degrees the sun is below the horizon that you want to
- X! define as being the end of "twilight"; must be at least 0.
- X @Date/time
- X Xephem uses many values that get are entered in some variation of X/Y/Z form.
- X We call this a "triad" input format.
- X***************
- X*** 615,628 ****
- X Various odd ball rising, transit and setting conditions are accounted for
- X and marked as follows when they occur:
- X
- X! NoRise up some time but never rises, as such, today.
- X! NoSet up some time but never sets, as such, today.
- X! NoTran up some time but doesn't transit, as such, today.
- X! CirPol object is circumpolar (never goes below horizon) today.
- X! NvrUp object is never up today.
- X! XX:XX+ "+" appended to rise, transit or set times means the event occurs
- X twice today; the time given is the time of the first event.
- X! "+" appended to "Hours Up" means it is still up at midnight.
- X
- X Any of the information in this table may be plotted, listed or used in a
- X search algorithm. See the help for these control functions for more details.
- X--- 620,633 ----
- X Various odd ball rising, transit and setting conditions are accounted for
- X and marked as follows when they occur:
- X
- X! NoRise up some time but never rises, as such, today.
- X! NoSet up some time but never sets, as such, today.
- X! NoTran up some time but doesn't transit, as such, today.
- X! CirPol object is circumpolar (never goes below horizon) today.
- X! NvrUp object is never up today.
- X! XX:XX+ "+" appended to rise, transit or set times means the event occurs
- X twice today; the time given is the time of the first event.
- X! "+" appended to "Hours Up" means it is still up at midnight.
- X
- X Any of the information in this table may be plotted, listed or used in a
- X search algorithm. See the help for these control functions for more details.
- X***************
- X*** 653,689 ****
- X
- X Cns name of the constellation in which the object appears.
- X R_A apparent geocentric right ascension of object, precessed to
- X! given epoch, in hours, minutes and decimal minutes.
- X Dec apparent geocentric declination of object, precessed to
- X! given epoch, in degrees and minutes.
- X Az degrees eastward of true north for object.
- X Alt degrees up from a horizontal plane that is Elevation feet above
- X sea level.
- X HeLong true heliocentric longitude, in degrees. Earth's is displayed
- X on the sun's line. For the moon this is the geocentric
- X! longitude.
- X HeLat true heliocentric latitude, in degrees. For the moon this is
- X the geocentric latitude.
- X EaDst true distance from Earth center to object center, in AU, except
- X distance to the moon is in miles or km depending on the Units
- X! preference.
- X SnDst true distance from sun center to object center, in AU.
- X Elong spherical angular separation between sun and given object,
- X! calculated from the their geocentric ecliptic coordinates.
- X! Note this is not just the difference in ecliptic longitude.
- X! The sign, however, is simply sign(obj's longitude - sun's
- X! longitude), ie, degrees east. thus, a positive elongation
- X! means the object rises after the sun. This field is not
- X! generally useful in searching for conjunctions because of
- X! the discontinuous sign change that occurs at conjunction.
- X Size angular size of object, in arc seconds.
- X VMag visual magnitude of object.
- X Phase percent of visible surface in sunlight. Note the moon phase
- X! is calculated simplistically as just abs(elongation)/180*100
- X! which can be a few degrees off... this means that because of
- X! how elongation is defined it doesn't say 0 during new moon
- X! (or 100 during full) except during close eclipses (maybe
- X! that's a "feature"?).
- X
- X Column three controls information related to rising, transiting, and
- X setting. These may be computed according to two options.
- X--- 658,694 ----
- X
- X Cns name of the constellation in which the object appears.
- X R_A apparent geocentric right ascension of object, precessed to
- X! given epoch, in hours, minutes and decimal minutes.
- X Dec apparent geocentric declination of object, precessed to
- X! given epoch, in degrees and minutes.
- X Az degrees eastward of true north for object.
- X Alt degrees up from a horizontal plane that is Elevation feet above
- X sea level.
- X HeLong true heliocentric longitude, in degrees. Earth's is displayed
- X on the sun's line. For the moon this is the geocentric
- X! longitude.
- X HeLat true heliocentric latitude, in degrees. For the moon this is
- X the geocentric latitude.
- X EaDst true distance from Earth center to object center, in AU, except
- X distance to the moon is in miles or km depending on the Units
- X! preference.
- X SnDst true distance from sun center to object center, in AU.
- X Elong spherical angular separation between sun and given object,
- X! calculated from the their geocentric ecliptic coordinates.
- X! Note this is not just the difference in ecliptic longitude.
- X! The sign, however, is simply sign(obj's longitude - sun's
- X! longitude), ie, degrees east. thus, a positive elongation
- X! means the object rises after the sun. This field is not
- X! generally useful in searching for conjunctions because of
- X! the discontinuous sign change that occurs at conjunction.
- X Size angular size of object, in arc seconds.
- X VMag visual magnitude of object.
- X Phase percent of visible surface in sunlight. Note the moon phase
- X! is calculated simplistically as just abs(elongation)/180*100
- X! which can be a few degrees off... this means that because of
- X! how elongation is defined it doesn't say 0 during new moon
- X! (or 100 during full) except during close eclipses (maybe
- X! that's a "feature"?).
- X
- X Column three controls information related to rising, transiting, and
- X setting. These may be computed according to two options.
- X***************
- X*** 710,721 ****
- X TrnTm
- X TrnAlt The local time and altitude when the object crosses the meridian
- X today, ie, when its azimuth is true south or, if no precession, when
- X! the local sidereal time equals the object's right ascension.
- X SetTm
- X SetAz The local time and azimuth when the upper limb (or center) of the
- X object sets today.
- X HrsUp The number of hours the object is up today, that is, the difference
- X! between the set and rise times.
- X
- X Note that these times are for the current local day. See the description of
- X "odd ball" circumstances that this definition can produce and how xephem
- X--- 715,726 ----
- X TrnTm
- X TrnAlt The local time and altitude when the object crosses the meridian
- X today, ie, when its azimuth is true south or, if no precession, when
- X! the local sidereal time equals the object's right ascension.
- X SetTm
- X SetAz The local time and azimuth when the upper limb (or center) of the
- X object sets today.
- X HrsUp The number of hours the object is up today, that is, the difference
- X! between the set and rise times.
- X
- X Note that these times are for the current local day. See the description of
- X "odd ball" circumstances that this definition can produce and how xephem
- X***************
- X*** 777,804 ****
- X central display is intended to be similar to a telescopic view. Descriptions
- X of each function are keyed to the schematic depiction below:
- X
- X! _____________________________________________
- X! |Alt-Az | | [Alt] [Az] | |
- X! |RA-Dec | F | | A |
- X! |--------| O | | l |
- X! |Grid | V | | t |
- X! |--------| | | |
- X! |F Mag | | | / |
- X! |B Mag | | Sky | |
- X! |--------| | | D |
- X! |Dots | | | e |
- X! |Ecliptic| | | c |
- X! |Labels | | | |
- X! |--------| | | |
- X! |Locate | | | |
- X! |--------| | [RA] [Dec] | |
- X! | |___|__________________________|___|
- X! | | Az / RA |
- X! | |__________________________________|
- X! | | Date/Time stamp |
- X! |________|__________________________________|
- X! | Filter Close Help |
- X! |___________________________________________|
- X
- X Alt-Az / RA-Dec
- X The radio box in the upper left corner selects whether the display
- X--- 782,809 ----
- X central display is intended to be similar to a telescopic view. Descriptions
- X of each function are keyed to the schematic depiction below:
- X
- X! _____________________________________________
- X! |Alt-Az | | [Alt] [Az] | |
- X! |RA-Dec | F | [Constellation] | A |
- X! |--------| O | | l |
- X! |Grid | V | | t |
- X! |--------| | | |
- X! |F Mag | | | / |
- X! |B Mag | | Sky | |
- X! |--------| | | D |
- X! |Dots | | | e |
- X! |Ecliptic| | | c |
- X! |Labels | | | |
- X! |--------| | | |
- X! |Locate | | | |
- X! |--------| | [RA] [Dec] | |
- X! | |___|__________________________|___|
- X! | | Az / RA |
- X! | |__________________________________|
- X! | | Date/Time stamp |
- X! |________|__________________________________|
- X! | Filter Close Help |
- X! |___________________________________________|
- X
- X Alt-Az / RA-Dec
- X The radio box in the upper left corner selects whether the display
- X***************
- X*** 866,875 ****
- X The left vertically-oriented slider controls the field-of-view of the
- X display circle. This can be varied from 1 to 180 degrees.
- X
- X! [Alt] [Az] [RA] [Dec]
- X! The coordinates of the cursor are tracked and displayed across the bottom
- X! and top of the circular display area as long as it is within the circle and
- X! the left mouse button is depressed.
- X
- X NOTE: The values displayed during tracking for the coordinate system
- X opposite to the one currently in effect may not agree exactly with
- X--- 871,880 ----
- X The left vertically-oriented slider controls the field-of-view of the
- X display circle. This can be varied from 1 to 180 degrees.
- X
- X! [Alt] [Az] [RA] [Dec] [Constellation]
- X! The coordinates and constellation of the cursor are tracked and displayed
- X! across the top and bottom of the circular display area as long as the left
- X! mouse button is depressed and the cursor is within the circle.
- X
- X NOTE: The values displayed during tracking for the coordinate system
- X opposite to the one currently in effect may not agree exactly with
- X***************
- X*** 898,931 ****
- X selected, the data will be as it was at the time the position was created.
- X In addition, the popup offers several control operations, as follows:
- X
- X! Selecting "Point" from the popup will center the object in the field of
- X! view (as well as can be done with the accuracy of the pointing scales
- X! anyway).
- X
- X! Selecting "Make ObjX/Y" will assign the given object to become ObjX
- X! or ObjY, depending on which one is currently being displayed in the
- X! ObjX/Y menu. See the help for the ObjX/Y menu for more information on
- X! that menu.
- X
- X! Selecting "Leave Trail" will start to accumulate all positions of the
- X! given object as time is advanced. Each new location will be connected
- X! with a line to its previous location. The trails remain correct if the
- X! display coordinate system is changed. Trails may be turned on or off
- X! without loss of trail information. However, trailing information is
- X! discarded if trailing is turned off when a new time step is performed.
- X! If any point in a trail is selected the information displayed is as per
- X! the object at that time. The fastest way to accumulate trailing
- X! information is to turn trailing on and pop the menu down while running.
- X
- X! Note that in Alt-Az mode, if an object goes below the horizon the line
- X! segments of the trail are displayed but not the actual points.
- X
- X! Selecting "Persistent Label" will place the name of the object near it
- X! on the display. This will remain until the label is turned off. Note
- X! this option is maintained separately for trailed objects and for
- X! the untrailed objects; that is, you have independent control over
- X! labeling for a trailed object and its currently displayed object
- X! since the latter also always appears in the trailed list.
- X
- X The coordinates of the cursor are displayed in the corners of the circular
- X sky area as long as the cursor is within the central circle and the left
- X--- 903,936 ----
- X selected, the data will be as it was at the time the position was created.
- X In addition, the popup offers several control operations, as follows:
- X
- X! Selecting "Point" from the popup will center the object in the field of
- X! view (as well as can be done with the accuracy of the pointing scales
- X! anyway).
- X
- X! Selecting "Make ObjX/Y" will assign the given object to become ObjX
- X! or ObjY, depending on which one is currently being displayed in the
- X! ObjX/Y menu. See the help for the ObjX/Y menu for more information on
- X! that menu.
- X
- X! Selecting "Leave Trail" will start to accumulate all positions of the
- X! given object as time is advanced. Each new location will be connected
- X! with a line to its previous location. The trails remain correct if the
- X! display coordinate system is changed. Trails may be turned on or off
- X! without loss of trail information. However, trailing information is
- X! discarded if trailing is turned off when a new time step is performed.
- X! If any point in a trail is selected the information displayed is as per
- X! the object at that time. The fastest way to accumulate trailing
- X! information is to turn trailing on and pop the menu down while running.
- X
- X! Note that in Alt-Az mode, if an object goes below the horizon the line
- X! segments of the trail are displayed but not the actual points.
- X
- X! Selecting "Persistent Label" will place the name of the object near it
- X! on the display. This will remain until the label is turned off. Note
- X! this option is maintained separately for trailed objects and for
- X! the untrailed objects; that is, you have independent control over
- X! labeling for a trailed object and its currently displayed object
- X! since the latter also always appears in the trailed list.
- X
- X The coordinates of the cursor are displayed in the corners of the circular
- X sky area as long as the cursor is within the central circle and the left
- X***************
- X*** 1082,1127 ****
- X For other object types, the remaining fields are defined as follows:
- X
- X elliptical format (e < 1):
- X! i = inclination, degrees
- X! O = longitude of ascending node, degrees
- X! o = argument of perihelion, degrees
- X! a = mean distance (aka semi-major axis), AU
- X! n = mean daily motion, degrees per day (computed from a**3/2 if omitted)
- X! e = eccentricity,
- X! M = mean anomaly (ie, degrees from perihelion),
- X! E = epoch date (ie, time of M),
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k or H/G = magnitude model; select which by preceding the first field
- X! with either a "g" or an "H"; H/G is the default if neither is given.
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X hyperbolic format (e > 1):
- X! T = epoch of perihelion
- X! i = inclination, degrees
- X! O = longitude of ascending node, degrees
- X! o = argument of perihelion, degrees
- X! e = eccentricity,
- X! q = perihelion distance, AU
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k = magnitude model
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X parabolic format (e == 1):
- X! T = epoch of perihelion
- X! i = inclination, degrees
- X! o = argument of perihelion, degrees
- X! q = perihelion distance, AU
- X! O = longitude of ascending node, degrees
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k = magnitude model
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X fixed format:
- X! RA, hours
- X! Declination, degrees
- X! magnitude
- X! reference epoch
- X! s = angular size, arc minutes, optional
- X @Object
- X Xephem supports two user-defined objects, denoted ObjX and ObjY. These may
- X be fixed objects or objects in elliptical, hyperbolic or parabolic
- X--- 1087,1132 ----
- X For other object types, the remaining fields are defined as follows:
- X
- X elliptical format (e < 1):
- X! i = inclination, degrees
- X! O = longitude of ascending node, degrees
- X! o = argument of perihelion, degrees
- X! a = mean distance (aka semi-major axis), AU
- X! n = mean daily motion, degrees per day (computed from a**3/2 if omitted)
- X! e = eccentricity,
- X! M = mean anomaly (ie, degrees from perihelion),
- X! E = epoch date (ie, time of M),
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k or H/G = magnitude model; select which by preceding the first field
- X! with either a "g" or an "H"; H/G is the default if neither is given.
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X hyperbolic format (e > 1):
- X! T = epoch of perihelion
- X! i = inclination, degrees
- X! O = longitude of ascending node, degrees
- X! o = argument of perihelion, degrees
- X! e = eccentricity,
- X! q = perihelion distance, AU
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k = magnitude model
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X parabolic format (e == 1):
- X! T = epoch of perihelion
- X! i = inclination, degrees
- X! o = argument of perihelion, degrees
- X! q = perihelion distance, AU
- X! O = longitude of ascending node, degrees
- X! D = the equinox year (ie, time of i/O/o).
- X! g/k = magnitude model
- X! s = angular size at 1 AU, arc seconds, optional
- X
- X fixed format:
- X! RA, hours
- X! Declination, degrees
- X! magnitude
- X! reference epoch
- X! s = angular size, arc minutes, optional
- X @Object
- X Xephem supports two user-defined objects, denoted ObjX and ObjY. These may
- X be fixed objects or objects in elliptical, hyperbolic or parabolic
- Xdiff -c v2.4b/xephem.man v2.4e/xephem.man
- X*** v2.4b/xephem.man Tue Jun 1 14:30:11 1993
- X--- v2.4e/xephem.man Wed May 19 14:12:37 1993
- X***************
- X*** 4,9 ****
- X--- 4,11 ----
- X .SH Syntax
- X \fBxephem\fP
- X .SH Description
- X+ .na
- X+ .nh
- X .PP
- X .B Xephem
- X is an interactive astronomical ephemeris program for X Windows. It has built-in
- X***************
- X*** 37,51 ****
- X .B Xephem
- X has information about the Solar system planets and several moons
- X built in. These can be accessed without the need to access an external
- X! database. However, if a database of objects is available then
- X .B xephem
- X! can read this information into memory and use it as well. The database
- X! is read in using the
- X! .I DB...
- X! pulldown. The objects may be inspected in detail, manipulated and assigned
- X! to so-called `user defined objects' X and Y using the
- X! .I ObjX/Y...
- X! pulldown.
- X
- X All of the tabular data that
- X .B xephem
- X--- 39,55 ----
- X .B Xephem
- X has information about the Solar system planets and several moons
- X built in. These can be accessed without the need to access an external
- X! database. In addition, if a database of objects is available then
- X .B xephem
- X! can read this information into memory and use it as well. Database files
- X! are read in using the
- X! .I Data Base
- X! button in the
- X! .I Objects
- X! pulldown. The objects in memory may be inspected in detail,
- X! manipulated and assigned to so-called `user defined objects' X and Y using the
- X! .I ObjX/Y
- X! button in the same pulldown.
- X
- X All of the tabular data that
- X .B xephem
- X***************
- X*** 60,65 ****
- X--- 64,75 ----
- X .I Preferences
- X pulldown.
- X
- X+ The
- X+ .I Files
- X+ pulldown in the main menu allows one to reset the main menu from the initial
- X+ resource settings; toggle whether the general messages menu is display; and
- X+ quit the program.
- X+
- X Finally, the
- X .I Help
- X pulldown provides several categories of assistance applicable to the overall
- X***************
- X*** 85,95 ****
- X code is in xephem.c surrounded by #ifdef WANT_EDITRES.
- X .SH Author
- X .PP
- X! Elwood Downey, currently at ecdowney@pobox.cca.cr.rockwell.com
- X .SH See also
- X .PP
- X! Ephem, the ancestor of xephem suitable for "dumb" 24x80 character displays,
- X including VMS and DOS as well as UNIX.
- X .PP
- X! Ephem and xephem are both on export.lcs.mit.edu; look for contrib/ephem*
- X and contrib/xephem* for the latest releases.
- X--- 95,109 ----
- X code is in xephem.c surrounded by #ifdef WANT_EDITRES.
- X .SH Author
- X .PP
- X! Elwood Downey, currently at ecdowney@pobox.cca.cr.rockwell.com.
- X .SH See also
- X .PP
- X! .B Ephem,
- X! the ancestor of xephem suitable for "dumb" 24x80 character displays,
- X including VMS and DOS as well as UNIX.
- X .PP
- X! .B Ephem
- X! and
- X! .B xephem
- X! are both on export.lcs.mit.edu; look for contrib/ephem*
- X and contrib/xephem* for the latest releases.
- X
- END_OF_FILE
- if test 69363 -ne `wc -c <'xephem.p1'`; then
- echo shar: \"'xephem.p1'\" unpacked with wrong size!
- fi
- # end of 'xephem.p1'
- fi
- echo shar: End of archive.
- exit 0
- exit 0 # Just in case...
- --
- // chris@IMD.Sterling.COM | Send comp.sources.x submissions to:
- \X/ Amiga - The only way to fly! | sources-x@imd.sterling.com
- "It's intuitively obvious to the |
- most casual observer..." | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
-