[comp.sources.misc] v12i003: Starchart 3.2 update to 3.2.1 part 3/4

ccount@ATHENA.MIT.EDU (04/14/90)

Posting-number: Volume 12, Issue 3
Submitted-by: ccount@ATHENA.MIT.EDU
Archive-name: starchart2/part03

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 3 (of 4)."
# Contents:  stch_pch.ac
# Wrapped by ccount@e40-008-10 on Wed Apr  4 19:12:08 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'stch_pch.ac' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'stch_pch.ac'\"
else
echo shar: Extracting \"'stch_pch.ac'\" \(45933 characters\)
sed "s/^X//" >'stch_pch.ac' <<'END_OF_FILE'
X+ 	    ddx += alpha4;
X+ 	    e_xdyu();
X+ 	} else
X+ 	    e_yu();
X+ 	d += ddy;
X+ 	dy++;
X+ 	betady += beta;
X+ 	ddy += beta4;
X+     } while (alphadx > betady);
X+ 
X+     d = beta2 * ((long) dy * (dy + 1)) + alpha2 * ((long) dx * (dx - 2) + 1)
X+ 	+ beta * (1 - alpha2);
X+     ddx = alpha2 * (3 - (dx << 1));
X+     ddy = beta4 * (1 + dy);
X+ 
X+     do {
X+ 	if (d <= 0) {
X+ 	    d += ddy;
X+ 	    ddy += beta4;
X+ 	    dy++;
X+ 	    e_xdyu();
X+ 	} else
X+ 	    e_xd();
X+ 	d += ddx;
X+ 	ddx += alpha4;
X+ 	dx--;
X+     } while (dx > 0);
X+ }
X+ 
X+ fillelip(x, y, irx, iry, c)
X+     int             x, y, irx, iry;
X+     unsigned        c;
X+ {
X+ 
X+ beta = (long) irx *(long) irx;
X+ alpha = (long) iry *(long) iry;
X+ 
X+     if (alpha == 0L)
X+ 	alpha = 1L;
X+     if (beta == 0L)
X+ 	beta = 1L;
X+ 
X+     dy = 0;
X+     dx = irx;
X+     alpha2 = alpha << 1;
X+     alpha4 = alpha2 << 1;
X+     beta2 = beta << 1;
X+     beta4 = beta2 << 1;
X+     alphadx = alpha * dx;
X+     betady = 0;
X+     ddx = alpha4 * (1 - dx);
X+     ddy = beta2 * 3;
X+ 
X+     d = alpha2 * ((long) (dx - 1) * dx) + alpha + beta2 * (1 - alpha);
X+     rectfill(x - dx, y, x + dx, y, c);
X+ 
X+     do {
X+ 	if (d >= 0) {
X+ 	    d += ddx;
X+ 	    dx--;
X+ 	    alphadx -= alpha;
X+ 	    ddx += alpha4;
X+ 	}
X+ 	d += ddy;
X+ 	dy++;
X+ 	betady += beta;
X+ 	ddy += beta4;
X+ 	rectfill(x - dx, y + dy, x + dx, y + dy, c);
X+ 	rectfill(x - dx, y - dy, x + dx, y - dy, c);
X+     } while (alphadx > betady);
X+ 
X+     d = beta2 * ((long) dy * (dy + 1)) + alpha2 * ((long) dx * (dx - 2) + 1)
X+ 	+ beta * (1 - alpha2);
X+     ddx = alpha2 * (3 - (dx << 1));
X+     ddy = beta4 * (1 + dy);
X+ 
X+     do {
X+ 	dx--;
X+ 	if (d <= 0) {
X+ 	    d += ddy;
X+ 	    ddy += beta4;
X+ 	    dy++;
X+ 	    rectfill(x - dx, y + dy, x + dx, y + dy, c);
X+ 	    rectfill(x - dx, y - dy, x + dx, y - dy, c);
X+ 	}
X+ 	d += ddx;
X+ 	ddx += alpha4;
X+     } while (dx > 0);
X+ }
Xdiff -r -c ../../starchart3.2/starchart/starimages.c ./starimages.c
X*** ../../starchart3.2/starchart/starimages.c	Wed Apr  4 18:28:52 1990
X--- ./starimages.c	Wed Apr  4 18:31:47 1990
X***************
X*** 9,20 ****
X  **
X  ** Modified for 3.0 by Craig Counterman Jan, 1989
X   *
X!  * Copyright (c) 1990 by Steve Kennedy and Craig Counterman.
X!  * All rights reserved.
X   *
X!  * This software may be redistributed freely, not sold.
X!  * This copyright notice and disclaimer of warranty must remain
X!  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X--- 9,24 ----
X  **
X  ** Modified for 3.0 by Craig Counterman Jan, 1989
X   *
X!  * Copyright (c) 1990 by Alan W. Paeth, Steve Kennedy and Craig Counterman.
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X***************
X*** 22,28 ****
X   *
X   */
X  
X! static char rcsid[]="$Header: starimages.c,v 2.11 90/03/10 15:34:34 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 26,32 ----
X   *
X   */
X  
X! static char rcsid[]="$Header: starimages.c,v 2.12 90/04/03 00:33:19 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
Xdiff -r -c ../../starchart3.2/starchart/starlaser.c ./starlaser.c
X*** ../../starchart3.2/starchart/starlaser.c	Wed Apr  4 18:28:53 1990
X--- ./starlaser.c	Wed Apr  4 18:31:49 1990
X***************
X*** 19,28 ****
X   */
X  /*
X   ! Modified for 3.0 January 1989 by Craig Counterman
X-  !                                  (email: ccount@royal.mit.edu)
X   */
X  
X! static char rcsid[]="$Header: starlaser.c,v 2.4 90/03/10 15:34:47 ccount Exp $";
X  
X  /*
X  ** This code is intended for ALL Laserjet family printers.
X--- 19,27 ----
X   */
X  /*
X   ! Modified for 3.0 January 1989 by Craig Counterman
X   */
X  
X! static char rcsid[]="$Header: starlaser.c,v 2.6 90/04/03 00:33:33 ccount Exp $";
X  
X  /*
X  ** This code is intended for ALL Laserjet family printers.
X***************
X*** 297,302 ****
X--- 296,302 ----
X      break;
X    case 'M':
X      break;
X+   case 'C':
X    case 'R':
X    case 'N':
X    case 'S':
Xdiff -r -c ../../starchart3.2/starchart/starm2.c ./starm2.c
X*** ../../starchart3.2/starchart/starm2.c	Wed Apr  4 18:28:54 1990
X--- ./starm2.c	Wed Apr  4 18:31:50 1990
X***************
X*** 2,15 ****
X   * starm2.c, more routines formerly in starchart.c/starmain.c
X   *		revision 3.1 August, 1989 
X   *
X!  * Portions Copyright (c) 1987 by Alan Paeth (awpaeth@watcgl)
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X-  * This software may be redistributed freely, not sold.
X-  * This copyright notice and disclaimer of warranty must remain
X-  *    unchanged. 
X-  *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X--- 2,17 ----
X   * starm2.c, more routines formerly in starchart.c/starmain.c
X   *		revision 3.1 August, 1989 
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X***************
X*** 17,23 ****
X   */
X  
X  
X! static char rcsid[]="$Header: starm2.c,v 1.13 90/03/08 20:20:37 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 19,25 ----
X   */
X  
X  
X! static char rcsid[]="$Header: starm2.c,v 1.15 90/04/03 00:33:40 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 331,362 ****
X    if (min) sprintf(str, "%s%02dm", str, min);
X  }
X  
X  chartragrid(win)
X       mapwindow *win;
X  {
X    double glonc, glatc, glon;
X!   double olon, olat;
X    int xloc, yloc, xloc2, yloc2;
X    double tlat1, tlon1, tlat2, tlon2;
X  
X    if (!win->draw_ragrid) return;
X    
X    cur_function = GRID_RA;
X  
X!   for (glonc = 0.0; glonc <= 360.0; glonc += win->ra_step) {
X      glon = glonc + win->ra_strt;
X      if (glon < 0.0) glon += 360.0;
X      if (glon > 360.0) glon -= 360.0;
X      olon = glon;
X!     olat = glatc = -90.0;
X!     for (glatc = -90.0; glatc <= 90.0; glatc += 10.0) {
X!       if (clipr_xform(olat, olon, glatc, glon,
X  		      &xloc, &yloc, &xloc2, &yloc2, TRUE,
X  		      &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DOTTED, TRUE, 0);
X        }
X-       olat = glatc;
X      }
X    }
X  }
X--- 333,366 ----
X    if (min) sprintf(str, "%s%02dm", str, min);
X  }
X  
X+ 
X+ #define ANGSKIP 10.0
X  chartragrid(win)
X       mapwindow *win;
X  {
X    double glonc, glatc, glon;
X!   double olon;
X    int xloc, yloc, xloc2, yloc2;
X    double tlat1, tlon1, tlat2, tlon2;
X  
X    if (!win->draw_ragrid) return;
X+ 
X+   if(win->ra_step < 0 ) win->ra_step = - win->ra_step;
X    
X    cur_function = GRID_RA;
X  
X!   for (glonc = 0.0; glonc < 360.0; glonc += win->ra_step) {
X      glon = glonc + win->ra_strt;
X      if (glon < 0.0) glon += 360.0;
X      if (glon > 360.0) glon -= 360.0;
X      olon = glon;
X!     for (glatc = -90.0 + ANGSKIP; glatc <= 90.0; glatc += ANGSKIP) {
X!       if (clipr_xform(glatc - ANGSKIP, olon, glatc, glon,
X  		      &xloc, &yloc, &xloc2, &yloc2, TRUE,
X  		      &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DOTTED, TRUE, 0);
X        }
X      }
X    }
X  }
X***************
X*** 364,410 ****
X  chartdecgrid(win)
X       mapwindow *win;
X  {
X!   double glonc, glatc, glat;
X!   double olon, olat;
X    int xloc, yloc, xloc2, yloc2;
X    double tlat1, tlon1, tlat2, tlon2;  
X!   
X    if (!win->draw_decgrid) return;
X!   
X    cur_function = GRID_DEC;
X!   
X!   for (glatc = 0; glatc <= 90.0; glatc += win->dec_step) {
X!     glat = glatc + win->dec_strt;
X!     if (glat < 0.0) glat = 0.0;
X!     if (glat > 90.0) glat = 90.0;
X!     olat = glat;
X!     olon = glonc = 0.0;
X!     for (glonc = 0.0; glonc <= 360.0; glonc += 10.0) {
X!       if (clipr_xform(olat, olon, glat, glonc,
X  		      &xloc, &yloc, &xloc2, &yloc2, FALSE,
X  		      &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DOTTED, FALSE, 0);
X        }
X-       olon = glonc;
X      }
X!   }
X!   for (glatc = 0; glatc >= -90.0; glatc -= win->dec_step) {
X!     glat = glatc + win->dec_strt;
X!     if (glat < -90.0) glat = -90.0;
X!     if (glat > 0.0) glat = 0.0;
X!     olat = glat;
X!     olon = glonc = 0.0;
X!     for (glonc = 0.0; glonc <= 360.0; glonc += 10.0) {
X!       if (clipr_xform(olat, olon, glat, glonc,
X! 		      &xloc, &yloc, &xloc2, &yloc2, FALSE,
X! 		      &tlat1, &tlon1, &tlat2, &tlon2)) {
X! 	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X! 		      xloc, yloc, xloc2, yloc2, DOTTED, FALSE, 0);
X!       }
X!       olon = glonc;
X!     }
X!   }
X  }
X  
X  
X--- 368,399 ----
X  chartdecgrid(win)
X       mapwindow *win;
X  {
X!   double glonc, glatc;
X!   double olat;
X    int xloc, yloc, xloc2, yloc2;
X    double tlat1, tlon1, tlat2, tlon2;  
X! 
X    if (!win->draw_decgrid) return;
X! 
X    cur_function = GRID_DEC;
X! 
X!   if (win->dec_step < 0) win->dec_step = - win->dec_step;
X! 
X!   glatc = win->dec_strt;
X!   /* search down to find southernmost line */
X!   while ((olat =  glatc - win->dec_step) > -90.0) glatc = olat; 
X! 
X!   while (glatc < 90.0) {
X!     for (glonc = ANGSKIP; glonc <= 360.0; glonc += ANGSKIP) {
X!       if (clipr_xform(glatc, glonc - ANGSKIP, glatc, glonc,
X  		      &xloc, &yloc, &xloc2, &yloc2, FALSE,
X  		      &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DOTTED, FALSE, 0);
X        }
X      }
X!     glatc += win->dec_step;
X!   };
X  }
X  
X  
X***************
X*** 430,436 ****
X      lon = DATAN2((coseps*DSIN(i)), (DCOS(i)));
X      if (lon < 0.0) lon += 360.0; /* Eliminate discontinuity at -180 */
X      if (clipr_xform(olat, olon, lat, lon,
X! 		    &xloc, &yloc, &xloc2, &yloc2, FALSE,
X  		    &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DASHED, TRUE, 0);
X--- 419,425 ----
X      lon = DATAN2((coseps*DSIN(i)), (DCOS(i)));
X      if (lon < 0.0) lon += 360.0; /* Eliminate discontinuity at -180 */
X      if (clipr_xform(olat, olon, lat, lon,
X! 		    &xloc, &yloc, &xloc2, &yloc2, TRUE,
X  		    &tlat1, &tlon1, &tlat2, &tlon2)) {
X  	drawcurveline(tlat1, tlon1, tlat2, tlon2,
X  		      xloc, yloc, xloc2, yloc2, DASHED, TRUE, 0);
Xdiff -r -c ../../starchart3.2/starchart/starmain.c ./starmain.c
X*** ../../starchart3.2/starchart/starmain.c	Wed Apr  4 18:28:55 1990
X--- ./starmain.c	Wed Apr  4 18:31:51 1990
X***************
X*** 3,18 ****
X   * starchart.c -- version 2, September 1987
X   *		revision 2.1 December, 1987
X   *		revision 3.2 February 1990
X!  * contact Craig Counterman, email: ccount@athena.mit.edu
X   *
X!  * Portions Copyright (c) 1987 by Alan Paeth (awpaeth@watcgl)
X   *
X-  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X-  *
X-  * This software may be redistributed freely, not sold.
X-  * This copyright notice and disclaimer of warranty must remain
X-  *    unchanged. 
X-  *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X--- 3,18 ----
X   * starchart.c -- version 2, September 1987
X   *		revision 2.1 December, 1987
X   *		revision 3.2 February 1990
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X***************
X*** 19,25 ****
X   *
X   * DISCLAIMER OF WARRANTY
X   * ----------------------
X!  * The author  disclaims all warranties  with regard to  this software to
X   * the   extent  permitted  by applicable   law,  including all   implied
X   * warranties  of merchantability  and  fitness. In  no event shall   the
X   * author be liable for any special, indirect or consequential damages or
X--- 19,25 ----
X   *
X   * DISCLAIMER OF WARRANTY
X   * ----------------------
X!  * The authors disclaim  all warranties  with regard to  this software to
X   * the   extent  permitted  by applicable   law,  including all   implied
X   * warranties  of merchantability  and  fitness. In  no event shall   the
X   * author be liable for any special, indirect or consequential damages or
X***************
X*** 39,45 ****
X   !
X   */
X  
X! static char rcsid[]="$Header: starmain.c,v 2.15 90/03/10 15:31:37 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 39,45 ----
X   !
X   */
X  
X! static char rcsid[]="$Header: starmain.c,v 2.17 90/04/03 00:33:49 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 133,139 ****
X--- 133,147 ----
X  #define RCFILE	"./.starrc"
X  #endif
X  
X+ /* For msdos, make error file */
X+ #ifdef MSDOS
X+   err_out = fopen("star.err","w");
X+ #endif
X  
X+ 
X+ 
X+ 
X+ 
X  /* arguments */
X  int g_argc;
X  char **g_argv;
X***************
X*** 197,204 ****
X  /* read file function indirection to allow for use of alternate file readers */
X  int readstar();
X  int buf_readstar();
X! /* Macintosh MPW currently doesn't support buf_readstar */
X! #ifndef macintosh
X  int (*readfile)() = buf_readstar;
X  #else
X  int (*readfile)() = readstar;
X--- 205,213 ----
X  /* read file function indirection to allow for use of alternate file readers */
X  int readstar();
X  int buf_readstar();
X! /* Macintosh MPW currently doesn't support buf_readstar,
X!    others also might not */
X! #ifndef NO_BUF_READSTAR
X  int (*readfile)() = buf_readstar;
X  #else
X  int (*readfile)() = readstar;
X***************
X*** 297,303 ****
X--- 306,326 ----
X    numlayers = 9;
X    
X    /* Read .starrc or other rc file */
X+ #ifdef USE_ENV_RC
X+   if (!rc_read(rcfile)) {
X+     /* default file doesn't exist, look for STARRC environment
X+      * variable.
X+      */
X+     char *aux_rcfile, *getenv();
X+ 
X+     aux_rcfile = getenv("STARRC");
X+     if (NULL != aux_rcfile) {
X+       rc_read(aux_rcfile);
X+     }
X+   }
X+ #else
X    if (!rc_read(rcfile));
X+ #endif
X    /* couldn't open rcfile, but that's OK */
X    
X    /* Read command line: may override .starrc */
Xdiff -r -c ../../starchart3.2/starchart/starpost.c ./starpost.c
X*** ../../starchart3.2/starchart/starpost.c	Wed Apr  4 18:28:56 1990
X--- ./starpost.c	Wed Apr  4 18:31:52 1990
X***************
X*** 4,10 ****
X  
X  /*
X   ! patched December, 1987 by Alan Paeth (awpaeth@watcgl),
X!  ! based on revisions by Craig Counterman (email: ccount@athena.mit.edu)
X   !
X   ! [1] "bigmaster" chart layout now added
X   ! [2] extensive rework and subclassing of non-stellar objects, e.g.
X--- 4,10 ----
X  
X  /*
X   ! patched December, 1987 by Alan Paeth (awpaeth@watcgl),
X!  ! based on revisions by Craig Counterman
X   !
X   ! [1] "bigmaster" chart layout now added
X   ! [2] extensive rework and subclassing of non-stellar objects, e.g.
X***************
X*** 18,31 ****
X   *   8 x 11 inch field, in units of 1/ResPT th of a point
X   *   offset 1/4 inch = 18*ResPT
X   *
X!  * Portions Copyright (c) 1987 by Alan Paeth (awpaeth@watcgl)
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X-  * This software may be redistributed freely, not sold.
X-  * This copyright notice and disclaimer of warranty must remain
X-  *    unchanged. 
X-  *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X--- 18,33 ----
X   *   8 x 11 inch field, in units of 1/ResPT th of a point
X   *   offset 1/4 inch = 18*ResPT
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X***************
X*** 33,39 ****
X   */
X  
X  
X! static char rcsid[]="$Header: starpost.c,v 2.19 90/03/09 19:13:30 ccount Exp $";
X  #include <stdio.h>
X  #include <math.h>
X  #ifndef SYSV
X--- 35,41 ----
X   */
X  
X  
X! static char rcsid[]="$Header: starpost.c,v 2.22 90/04/03 00:34:02 ccount Exp $";
X  #include <stdio.h>
X  #include <math.h>
X  #ifndef SYSV
X***************
X*** 244,254 ****
X  /* h & v tick text controls */
X  int htick_lim = 1*ResPT;
X  int htext_lim = 36*ResPT;
X! int htext_xoff = 4*ResPT;
X  int htext_yoff = 10*ResPT;
X  int vtick_lim = 1*ResPT;
X  int vtext_lim = 10*ResPT;
X! int vtext_xoff = 14*ResPT;
X  int vtext_yoff = 0*ResPT;
X  
X  /* Scale multiplier, minimum,
X--- 246,256 ----
X  /* h & v tick text controls */
X  int htick_lim = 1*ResPT;
X  int htext_lim = 36*ResPT;
X! int htext_xoff = 0*ResPT;
X  int htext_yoff = 10*ResPT;
X  int vtick_lim = 1*ResPT;
X  int vtext_lim = 10*ResPT;
X! int vtext_xoff = 9*ResPT;
X  int vtext_yoff = 0*ResPT;
X  
X  /* Scale multiplier, minimum,
X***************
X*** 421,427 ****
X  /* Open the device */
X  D_open()
X  {
X!   int i, j;
X    double young_size;
X  
X    if (filname[0] != '\0') {
X--- 423,429 ----
X  /* Open the device */
X  D_open()
X  {
X!   int i, j, k;
X    double young_size;
X  
X    if (filname[0] != '\0') {
X***************
X*** 455,460 ****
X--- 457,466 ----
X  out("%%EndProlog");
X  out("%%Page: 0 1");
X  out("%");
X+ /* Added for 3.2.1, thanks Holger Zessel */
X+ out("% create additional user dictionary");
X+ out("1000 dict begin");
X+ out("%");
X  out("% alias moveto/drawto");
X  out("%");
X  out("/mt {moveto} def");				/* move to */
X***************
X*** 639,646 ****
X  	  fprintf(outf, "/sv_%02d {%d v} def\n", - (i*10 + j), mag10sizes[k]);
X  	} else {
X  	  fprintf(outf, "/ss%02d {%d s} def\n", i*10 + j, mag10sizes[k]);
X! 	  fprintf(outf, "/sd%02d {%d v} def\n", i*10 + j, mag10sizes[k]);
X! 	  fprintf(outf, "/sv%02d {%d d} def\n", i*10 + j, mag10sizes[k]);
X  	}
X  	k++;
X        }
X--- 645,652 ----
X  	  fprintf(outf, "/sv_%02d {%d v} def\n", - (i*10 + j), mag10sizes[k]);
X  	} else {
X  	  fprintf(outf, "/ss%02d {%d s} def\n", i*10 + j, mag10sizes[k]);
X! 	  fprintf(outf, "/sd%02d {%d d} def\n", i*10 + j, mag10sizes[k]);
X! 	  fprintf(outf, "/sv%02d {%d v} def\n", i*10 + j, mag10sizes[k]);
X  	}
X  	k++;
X        }
X***************
X*** 762,771 ****
X  out("    moveto sze sze rmoveto nsze 2 mul nsze 2 mul rlineto");
X  out("    sze 2 mul 0 rmoveto nsze 2 mul sze 2 mul rlineto stroke } def");
X  /* Comet takes x y size position-angle: x y size position-angle comet - */
X! out("/comet { 2 div dup /sze exch def neg /nsze exch def /phase exch def");
X  out("    moveto gsave currentpoint translate sze dup scale");
X  out("    .1 setlinewidth");
X! out("    90 phase sub rotate stdsh0 newpath 0 0 .3 0 360 arc stroke");
X  out("    0 .3 moveto 1 .5 lineto 0 -.3 moveto 1 -.5 lineto");
X  out("    .3 0 moveto 1.2 0 lineto");
X  out("    stroke grestore } def");
X--- 768,777 ----
X  out("    moveto sze sze rmoveto nsze 2 mul nsze 2 mul rlineto");
X  out("    sze 2 mul 0 rmoveto nsze 2 mul sze 2 mul rlineto stroke } def");
X  /* Comet takes x y size position-angle: x y size position-angle comet - */
X! out("/comet {/phase exch def 2 div dup /sze exch def neg /nsze exch def ");
X  out("    moveto gsave currentpoint translate sze dup scale");
X  out("    .1 setlinewidth");
X! out("    90 phase sub neg rotate stdsh0 newpath 0 0 .3 0 360 arc stroke");
X  out("    0 .3 moveto 1 .5 lineto 0 -.3 moveto 1 -.5 lineto");
X  out("    .3 0 moveto 1.2 0 lineto");
X  out("    stroke grestore } def");
X***************
X*** 862,867 ****
X--- 868,875 ----
X  /* Close the device */
X  D_close()
X  {
X+   out("end");
X+   out("% end matches the dict begin after Prolog");
X    out("showpage");
X    out("%");
X    out("%%Trailer");
X***************
X*** 1074,1080 ****
X  {
X    int colr;
X    int class, subclass;
X!   static char *table = "OBAFGKMRNSrgbycpow";
X    static int super_spectra[][10] = {
X      /*         0   1   2   3   4   5   6   7   8   9   */
X      /* O */ { 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
X--- 1082,1088 ----
X  {
X    int colr;
X    int class, subclass;
X!   static char *table = "OBAFGKMCRNSrgbycpow";
X    static int super_spectra[][10] = {
X      /*         0   1   2   3   4   5   6   7   8   9   */
X      /* O */ { 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
X***************
X*** 1084,1089 ****
X--- 1092,1098 ----
X      /* G */ { 15, 15, 15, 15, 15, 16, 16, 16, 16, 16 },
X      /* K */ { 17, 17, 18, 18, 18, 19, 19, 19, 19, 19 },
X      /* M */ { 20, 20, 21, 22, 23, 24, 25, 26, 26, 26 },
X+     /* C */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* R */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* N */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* S */ { 30, 30, 30, 30, 31, 31, 31, 31, 31, 31 },
X***************
X*** 1588,1598 ****
X      {
X      case 'A': fprintf(outf, "%d %d %d asteroid\n", x, y, diam); break;
X      case 'C':
X!       phase = 45.0;
X        n = sscanf(comment_str, "%lf", &phase);
X        fprintf(outf, "%%phase %f\n", phase);
X        if (cur_win->invert) phase = 180 - phase;
X!       fprintf(outf, "%d %d %f %d comet\n", x, y, phase, diam);
X        break;
X  
X      case 'S': fprintf(outf, "%d %d %d sun\n", x, y, diam); break;
X--- 1597,1607 ----
X      {
X      case 'A': fprintf(outf, "%d %d %d asteroid\n", x, y, diam); break;
X      case 'C':
X!       phase = 135.0;
X        n = sscanf(comment_str, "%lf", &phase);
X        fprintf(outf, "%%phase %f\n", phase);
X        if (cur_win->invert) phase = 180 - phase;
X!       fprintf(outf, "%d %d %d %f comet\n", x, y, diam, phase);
X        break;
X  
X      case 'S': fprintf(outf, "%d %d %d sun\n", x, y, diam); break;
Xdiff -r -c ../../starchart3.2/starchart/starsample.c ./starsample.c
X*** ../../starchart3.2/starchart/starsample.c	Wed Apr  4 18:28:57 1990
X--- ./starsample.c	Wed Apr  4 18:31:53 1990
X***************
X*** 5,15 ****
X  /*
X   * Produced for starchart 3.0 by Craig Counterman Jan, 1989
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X!  * This software may be redistributed freely, not sold.
X!  * This copyright notice and disclaimer of warranty must remain
X!  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X--- 5,19 ----
X  /*
X   * Produced for starchart 3.0 by Craig Counterman Jan, 1989
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X***************
X*** 17,23 ****
X   *
X   */
X  
X! static char rcsid[]="$Header: starsample.c,v 2.3 90/02/19 17:56:56 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 21,27 ----
X   *
X   */
X  
X! static char rcsid[]="$Header: starsample.c,v 2.5 90/04/03 00:34:23 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 227,232 ****
X--- 231,237 ----
X      break;
X    case 'M':
X      break;
X+   case 'C':
X    case 'R':
X    case 'N':
X    case 'S':
Xdiff -r -c ../../starchart3.2/starchart/starst.c ./starst.c
X*** ../../starchart3.2/starchart/starst.c	Wed Apr  4 18:28:59 1990
X--- ./starst.c	Wed Apr  4 18:31:54 1990
X***************
X*** 4,11 ****
X  
X  /*
X   * Modified from 2.1 to starchart 3.0.  Holger Zessel, Nov 1989
X   */
X! static char rcsid[]="$Header: starst.c,v 1.1 90/03/08 20:14:37 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 4,28 ----
X  
X  /*
X   * Modified from 2.1 to starchart 3.0.  Holger Zessel, Nov 1989
X+  * Copyright (c) March 1990 by Holger Zessel. All rights reserved.
X+  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X+  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X+  *
X+  * All rights reserved. Redistribution granted for non-commercial
X+  * non-profit use only. Disclaimer: users of this work understand that
X+  * (a) the authors' cannot undertake to support this software (b) users
X+  * agree to acknowledge the use of the software in any published work
X+  * arising from its application and (c) any subsequent redistribution of
X+  * this work retains this warranty placard. 
X+  *
X+  * No representation is made about the suitability of this
X+  * software for any purpose.  It is provided "as is" without express or
X+  * implied warranty, to the extent permitted by applicable law.
X+ 
X+ 
X+ 
X   */
X! static char rcsid[]="$Header: starst.c,v 1.3 90/04/03 00:36:15 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 32,37 ****
X--- 49,56 ----
X  int vdihandle_save;
X  int device=1; /* GDOS-Outputdevice */
X  
X+ long _stksize = 60000L; /* this should be enough I hope */
X+ 
X  #define TRUE 1
X  #ifdef NULL
X  #undef NULL
X***************
X*** 386,391 ****
X--- 405,411 ----
X      break;
X    case 'M':
X      break;
X+   case 'C':
X    case 'R':
X    case 'N':
X    case 'S':
Xdiff -r -c ../../starchart3.2/starchart/starsunv.c ./starsunv.c
X*** ../../starchart3.2/starchart/starsunv.c	Wed Apr  4 18:29:01 1990
X--- ./starsunv.c	Wed Apr  4 18:31:55 1990
X***************
X*** 4,14 ****
X   * Driver creates sunview window and draws starchart information inside.
X   *
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X!  * This software may be redistributed freely, not sold.
X!  * This copyright notice and disclaimer of warranty must remain
X!  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X--- 4,18 ----
X   * Driver creates sunview window and draws starchart information inside.
X   *
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X***************
X*** 17,23 ****
X   */
X  
X  
X! static char rcsid[]="$Header: starsunv.c,v 1.8 90/02/19 17:57:03 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 21,27 ----
X   */
X  
X  
X! static char rcsid[]="$Header: starsunv.c,v 1.10 90/04/03 00:34:30 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 661,667 ****
X  {
X    int colr;
X    int class, subclass;
X!   static char *table = "OBAFGKMRNSrgbycpow";
X    static int spectra[10] = {
X      BLUE_WHITE, BLUE, WHITE, WHITE, YELLOW, ORANGE, RED, RED, RED};
X  
X--- 665,671 ----
X  {
X    int colr;
X    int class, subclass;
X!   static char *table = "OBAFGKMCRNSrgbycpow";
X    static int spectra[10] = {
X      BLUE_WHITE, BLUE, WHITE, WHITE, YELLOW, ORANGE, RED, RED, RED};
X  
X***************
X*** 674,679 ****
X--- 678,684 ----
X      /* G */ { 15, 15, 15, 15, 15, 16, 16, 16, 16, 16 },
X      /* K */ { 17, 17, 18, 18, 18, 19, 19, 19, 19, 19 },
X      /* M */ { 20, 20, 21, 22, 23, 24, 25, 26, 26, 26 },
X+     /* C */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* R */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* N */ { 27, 27, 27, 28, 28, 28, 28, 28, 29, 30 },
X      /* S */ { 30, 30, 30, 30, 31, 31, 31, 31, 31, 31 },
Xdiff -r -c ../../starchart3.2/starchart/starsupp.c ./starsupp.c
X*** ../../starchart3.2/starchart/starsupp.c	Wed Apr  4 18:29:02 1990
X--- ./starsupp.c	Wed Apr  4 18:31:56 1990
X***************
X*** 4,16 ****
X   *		revision 2.1 December, 1987
X   *		revision 3.0beta January, 1989 
X   *
X!  * Portions Copyright (c) 1987 by Alan Paeth (awpaeth@watcgl)
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X-  * This software may be redistributed freely, not sold.
X-  * This copyright notice and disclaimer of warranty must remain
X-  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X--- 4,19 ----
X   *		revision 2.1 December, 1987
X   *		revision 3.0beta January, 1989 
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X***************
X*** 28,34 ****
X   !
X   */
X  
X! static char rcsid[]="$Header: starsupp.c,v 2.13 90/03/10 15:31:51 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 31,37 ----
X   !
X   */
X  
X! static char rcsid[]="$Header: starsupp.c,v 2.15 90/04/03 00:34:40 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 247,258 ****
X       double lat, lon;
X       int *xloc, *yloc, *inregion;
X  {
X!   double theta, rac_l;
X    double denom;
X    double Dcoslat, Dsinlat, Dcosrac_l, Dsinrac_l;
X    /* Dcoslat, Dsinlat: of object latitude in degrees = phi
X       Dcosrac_l, Dsinrac_l: of object ra - longditude of center = d(lambda) */
X  
X    switch (xfs_proj_mode) {
X    case SANSONS:
X   /*
X--- 250,263 ----
X       double lat, lon;
X       int *xloc, *yloc, *inregion;
X  {
X!   double theta, actheta, rac_l;
X    double denom;
X    double Dcoslat, Dsinlat, Dcosrac_l, Dsinrac_l;
X    /* Dcoslat, Dsinlat: of object latitude in degrees = phi
X       Dcosrac_l, Dsinrac_l: of object ra - longditude of center = d(lambda) */
X+   double xlocd, ylocd;  /* double precision for xloc and yloc */
X  
X+ 
X    switch (xfs_proj_mode) {
X    case SANSONS:
X   /*
X***************
X*** 288,294 ****
X      Dcoslat = DCOS(lat);
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X!     theta = acos(sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l);
X  
X      *inregion = (theta <= chart_scale);
X      if (*inregion) {
X--- 293,302 ----
X      Dcoslat = DCOS(lat);
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X!     actheta = sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l;
X!     if (actheta > 1.0) theta = 0.0;
X!     else if (actheta < -1.0) theta = 3.14159265358979323846;
X!     else theta = acos(actheta);
X  
X      *inregion = (theta <= chart_scale);
X      if (*inregion) {
X***************
X*** 306,321 ****
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X  
X!     theta = acos(sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l);
X  
X      if (theta <= 1.57) { /* avoid wrapping */
X        denom = (sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l)	/ xfs_scale;
X!       *yloc = xf_ycen +
X  	(int)xfs_inv*
X  	 (cos_dlcen * Dsinlat - sin_dlcen * Dcoslat * Dcosrac_l) / denom + 0.5;
X!       *xloc = xf_xcen - Dcoslat * Dsinrac_l / denom + 0.5;
X!       *inregion = ((*xloc >= xf_w_left) && (*xloc <= xf_w_right)
X! 		   && (*yloc <= xf_w_top) && (*yloc >= xf_w_bot));
X      } else *inregion = FALSE;
X      break;
X    case ORTHOGR:
X--- 314,332 ----
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X  
X!     actheta = sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l;
X!     if (actheta > 1.0) theta = 0.0;
X!     else if (actheta < -1.0) theta = 3.14159265358979323846;
X!     else theta = acos(actheta);
X  
X      if (theta <= 1.57) { /* avoid wrapping */
X        denom = (sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l)	/ xfs_scale;
X!       *yloc = ylocd = xf_ycen +
X  	(int)xfs_inv*
X  	 (cos_dlcen * Dsinlat - sin_dlcen * Dcoslat * Dcosrac_l) / denom + 0.5;
X!       *xloc = xlocd = xf_xcen - Dcoslat * Dsinrac_l / denom + 0.5;
X!       *inregion = ((xlocd >= xf_w_left) && (xlocd <= xf_w_right)
X! 		   && (ylocd <= xf_w_top) && (ylocd >= xf_w_bot));
X      } else *inregion = FALSE;
X      break;
X    case ORTHOGR:
X***************
X*** 325,339 ****
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X  
X!     theta = acos(sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l);
X  
X      if (theta <= 1.57) { /* avoid wrapping */
X!       *yloc = xf_ycen +
X  	(int)xfs_inv * xfs_scale
X  	  * (cos_dlcen * Dsinlat - sin_dlcen * Dcoslat * Dcosrac_l);
X!       *xloc = xf_xcen - xfs_scale * Dcoslat * Dsinrac_l;
X!       *inregion = ((*xloc >= xf_w_left) && (*xloc <= xf_w_right)
X! 		   && (*yloc <= xf_w_top) && (*yloc >= xf_w_bot));
X      } else *inregion = FALSE;
X      break;
X    case RECTANGULAR:
X--- 336,353 ----
X      Dcosrac_l = DCOS(rac_l);
X      Dsinrac_l = DSIN(rac_l);
X  
X!     actheta = sin_dlcen*Dsinlat + cos_dlcen*Dcoslat*Dcosrac_l;
X!     if (actheta > 1.0) theta = 0.0;
X!     else if (actheta < -1.0) theta = 3.14159265358979323846;
X!     else theta = acos(actheta);
X  
X      if (theta <= 1.57) { /* avoid wrapping */
X!       *yloc = ylocd = xf_ycen +
X  	(int)xfs_inv * xfs_scale
X  	  * (cos_dlcen * Dsinlat - sin_dlcen * Dcoslat * Dcosrac_l);
X!       *xloc = xlocd = xf_xcen - xfs_scale * Dcoslat * Dsinrac_l;
X!       *inregion = ((xlocd >= xf_w_left) && (xlocd <= xf_w_right)
X! 		   && (ylocd <= xf_w_top) && (ylocd >= xf_w_bot));
X      } else *inregion = FALSE;
X      break;
X    case RECTANGULAR:
X***************
X*** 340,349 ****
X      if ((xf_west < 0.0) && (lon>(xf_west+360.0))) lon -= 360.0;
X      if ((xf_east > 360.0) && (lon<(xf_east-360.0))) lon += 360.0;
X  
X!     *yloc = xf_ycen + (int)xfs_inv * xfs_scale * (lat - xfs_dl_cen);
X!     *xloc = xf_xcen + xfs_scale * (xfs_ra_cen - lon);
X!     *inregion = ((*xloc >= xf_w_left) && (*xloc <= xf_w_right)
X! 		 && (*yloc <= xf_w_top) && (*yloc >= xf_w_bot));
X      break;
X    default:
X      break;
X--- 354,363 ----
X      if ((xf_west < 0.0) && (lon>(xf_west+360.0))) lon -= 360.0;
X      if ((xf_east > 360.0) && (lon<(xf_east-360.0))) lon += 360.0;
X  
X!     *yloc = ylocd = xf_ycen + (int)xfs_inv * xfs_scale * (lat - xfs_dl_cen);
X!     *xloc = xlocd = xf_xcen + xfs_scale * (xfs_ra_cen - lon);
X!     *inregion = ((xlocd >= xf_w_left) && (xlocd <= xf_w_right)
X! 		 && (ylocd <= xf_w_top) && (ylocd >= xf_w_bot));
X      break;
X    default:
X      break;
Xdiff -r -c ../../starchart3.2/starchart/startek.c ./startek.c
X*** ../../starchart3.2/starchart/startek.c	Wed Apr  4 18:29:03 1990
X--- ./startek.c	Wed Apr  4 18:31:57 1990
X***************
X*** 13,24 ****
X   */
X  /*
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X!  * This software may be redistributed freely, not sold.
X!  * This copyright notice and disclaimer of warranty must remain
X!  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X--- 13,29 ----
X   */
X  /*
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X+  *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X   * implied warranty, to the extent permitted by applicable law.
X***************
X*** 25,31 ****
X   *
X   */
X  
X! static char rcsid[]="$Header: startek.c,v 2.5 90/03/10 15:34:53 ccount Exp $";
X  
X  
X  #include <stdio.h>
X--- 30,36 ----
X   *
X   */
X  
X! static char rcsid[]="$Header: startek.c,v 2.7 90/04/03 00:35:02 ccount Exp $";
X  
X  
X  #include <stdio.h>
X***************
X*** 296,301 ****
X--- 301,307 ----
X      break;
X    case 'M':
X      break;
X+   case 'C':
X    case 'R':
X    case 'N':
X    case 'S':
Xdiff -r -c ../../starchart3.2/starchart/staruplot.c ./staruplot.c
X*** ../../starchart3.2/starchart/staruplot.c	Wed Apr  4 18:29:06 1990
X--- ./staruplot.c	Wed Apr  4 18:32:00 1990
X***************
X*** 8,18 ****
X  /*
X   * Produced for starchart 3.0 by Craig Counterman Jan, 1989
X   *
X!  * Copyright (c) 1990 by Craig Counterman. All rights reserved.
X   *
X!  * This software may be redistributed freely, not sold.
X!  * This copyright notice and disclaimer of warranty must remain
X!  *    unchanged. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X--- 8,22 ----
X  /*
X   * Produced for starchart 3.0 by Craig Counterman Jan, 1989
X   *
X!  * StarChart Version 3.2 copyright (c) March 1990 by Craig Counterman 
X!  * original StarChart Software Suite copyright (c) 1987 by Alan Paeth
X   *
X!  * All rights reserved. Redistribution granted for non-commercial
X!  * non-profit use only. Disclaimer: users of this work understand that
X!  * (a) the authors' cannot undertake to support this software (b) users
X!  * agree to acknowledge the use of the software in any published work
X!  * arising from its application and (c) any subsequent redistribution of
X!  * this work retains this warranty placard. 
X   *
X   * No representation is made about the suitability of this
X   * software for any purpose.  It is provided "as is" without express or
X***************
X*** 21,27 ****
X   */
X  
X  
X! static char rcsid[]="$Header: staruplot.c,v 2.2 90/02/19 17:57:49 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X--- 25,31 ----
X   */
X  
X  
X! static char rcsid[]="$Header: staruplot.c,v 2.4 90/04/03 00:35:07 ccount Exp $";
X  
X  #include <stdio.h>
X  #include <math.h>
X***************
X*** 30,36 ****
X  #else
X  #include <string.h>
X  #endif
X! 
X  #include "star3.h"
X  
X  /* Externs */
X--- 34,40 ----
X  #else
X  #include <string.h>
X  #endif
X! #include <ctype.h>
X  #include "star3.h"
X  
X  /* Externs */
X***************
X*** 326,331 ****
X--- 330,336 ----
X      break;
X    case 'M':
X      break;
X+   case 'C':
X    case 'R':
X    case 'N':
X    case 'S':
Xdiff -r -c ../../starchart3.2/starchart/svgagraf.asm ./svgagraf.asm
X*** ../../starchart3.2/starchart/svgagraf.asm	Wed Apr  4 18:29:06 1990
X--- ./svgagraf.asm	Wed Apr  4 18:32:01 1990
X***************
X*** 0 ****
X--- 1,1059 ----
X+ ;Written by J. D. McDonald
X+ ;This file is public domain.
X+ 
X+   LARGE equ 1
X+ 
X+ ifdef SMALL
X+   NEARDATA equ 1
X+   NEARCODE equ 1
X+ endif
X+ 
X+ ifdef COMPACT
X+    FARDATA equ 1
X+   NEARCODE equ 1
X+ endif
X+ 
X+ ifdef MEDIUM
X+   NEARDATA equ 1
X+    FARCODE equ 1
X+ endif
X+ 
X+ ifdef LARGE
X+    FARDATA equ 1
X+    FARCODE equ 1
X+ endif
X+ 
X+ 
X+ ifdef NEARCODE
X+   argbase equ 0
X+ endif
X+ 
X+ ifdef FARCODE
X+   argbase equ 2
X+ endif
X+ 
X+ cseg	macro moduleName
X+ 	ifdef FARCODE
X+ 	  moduleName&_TEXT segment byte public 'CODE'
X+ 	  assume cs: moduleName&_TEXT
X+ 	else
X+ 	  _TEXT segment byte public 'CODE'
X+ 	  assume cs: _TEXT
X+ 	endif
X+ 	endm
X+ 
X+ endcs	macro moduleName
X+ 	ifdef FARCODE
X+ 	  moduleName&_TEXT ends
X+ 	else
X+ 	  _TEXT ends
X+ 	endif
X+ 	endm
X+ 
X+ pBegin	macro pName
X+ 	ifdef FARCODE
X+ 	  pName proc far
X+ 	else
X+ 	  pName proc near
X+ 	endif
X+         public pName
X+ 	endm
X+ 
X+ pEnd	macro pName
X+ 	pName endp
X+ 	endm
X+ 
X+ 
X+ 
X+ _DATA   segment  word public 'DATA'
X+ first8  dw       0
X+ first14 dw       0
X+ drawseg dw      0A000h
X+ maxseg  dw      28000
X+ maxline dw      350
X+ xwidth  dw      80
X+ maxscreen dw    640
X+ mmaxscreen  dw  639
X+ xwidthm dw      79
X+ _DATA   ends
X+ CONST   segment  word public 'CONST'
X+ ate     dw       8
X+ fourt   dw       14
X+ eighty  dw       80
X+ btab    db       80h,40h,20h,10h,8h,4h,2h,1h
X+ left    db       255,127,63,31,15,7,3,1
X+ right   db       128,192,224,240,248,252,254,255
X+ CONST   ends
X+ _BSS    segment  word public 'BSS'
X+ es8       dw        ?
X+ bp8       dw        ?
X+ es14      dw        ?
X+ bp14      dw        ?
X+ leftbit   db        ?
X+ rightbit  db        ?
X+ lefttop   dw        ?
X+ leftbot   dw        ?
X+ righttop  dw        ?
X+ rightbot  dw        ?
X+ ysave     dw        ?
X+ leftx     dw        ?
X+ rightx    dw        ?
X+ xx0       dw        ?
X+ yy0       dw        ?
X+ xx1       dw        ?
X+ yy1       dw        ?
X+ xc10      dw        ?
X+ xc20      dw        ?
X+ xc11      dw        ?
X+ xc21      dw        ?
X+ lowyb     dw        ?
X+ del_y     dw        ?
X+ del_x     dw        ?
X+ _BSS      ends
X+ DGROUP  GROUP    CONST, _BSS, _DATA
X+          assume   ds: DGROUP, ss: DGROUP, es:  DGROUP
X+ cseg    _egagraf
X+ 
X+ pBegin  _symbol
X+ ;  symbol(ix,iy,height,icol,&isym) plots a single 8xheight character
X+ ;  matrix pointed to by isym at ix, iy in color icol.
X+ ;  ix, iy and icol are integers
X+         push    bp
X+         mov     bp,sp
X+         push    di
X+         push    si
X+ ifdef NEARDATA
X+         mov     si, word ptr [bp+argbase+12]   ;pick up address of table
X+         mov     bx,ds                          ;containing symbol to plot
X+         mov     es,bx
X+ endif
X+ ifdef FARDATA
X+         les     si,[bp+argbase+12]
X+ endif
X+         mov     bx,word ptr [bp+argbase+8]      ;height
X+         mov     ax,word ptr [bp+argbase+4]      ;this is x
X+         mov     dx,ax                ;break x into byte # and bit in byte
X+         and     dx,7
X+         mov     cl,3
X+         sar     ax,cl
X+         mov     [bp+argbase+8],ax    ;byte #
X+         mov     [bp+argbase+4],dx    ;leftmost bit used
X+         mov     dx,drawseg       ; segment of display buffer
X+         mov     cx,xwidth
X+         push    ds
X+         mov     ax,es
X+         mov     es,dx
X+         mov     ds,ax
X+         jmp     commonl
X+ 
X+ pEnd _symbol
X+ 
X+ 
X+ pBegin _slettr
X+ ;  slettr(ix,iy,ichr,icol) plots a single 8-high IBM character ichr at x,y in
X+ ;  color icol.   all are integers
X+         push    bp
X+         mov     bp,sp
X+         push    di
X+         push    si
X+         cmp     first8,0        ;get address of bios table of characters
X+         jne     sec8
X+         inc     first8
X+         mov     ah, 011h
X+         mov     al, 030h
X+         mov     bh, 03
X+         push    bp
X+         int     010h
X+         mov     ax,es
X+         mov     es8,ax
X+         mov     bp8,bp
X+         pop     bp
X+ sec8:
X+         xor     ax,ax
X+         mov     al,byte ptr [bp+argbase+8]   ;this is the character
X+         mov     cl,3
X+         shl     ax,cl
X+         add     ax,bp8
X+         mov     si,ax
X+         mov     ax,word ptr [bp+argbase+4]
X+         mov     dx,ax
X+         and     dx,7
X+         mov     cl,3
X+         sar     ax,cl
X+         mov     [bp+argbase+8],ax
X+         mov     [bp+argbase+4],dx
X+         mov     ax,drawseg
X+         mov     es,ax
X+         mov     cx,xwidth
X+         push    ds
X+         mov     ax,es8
X+         mov     ds,ax
X+         mov     bx,8
X+         jmp     commonl
X+ 
X+ pEnd _slettr
X+ 
X+ 
X+ pBegin _llettr
X+ ; llettr(ix,iy,ichr,icol) plots a single IBM 14-high character ichr at x,y in
X+ ; color icol.   all are integers
X+         push    bp
X+         mov     bp,sp
X+         push    di
X+         push    si
END_OF_FILE
if test 45933 -ne `wc -c <'stch_pch.ac'`; then
    echo shar: \"'stch_pch.ac'\" unpacked with wrong size!
fi
# end of 'stch_pch.ac'
fi
echo shar: End of archive 3 \(of 4\).
cp /dev/null ark3isdone
MISSING=""
for I in 1 2 3 4 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 4 archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0