v14i010: Device-independant graphics system, with drivers

Rich Salz rsalz at uunet.uu.net
Tue Mar 29 01:26:13 AEST 1988


Submitted-by: Joe Dellinger <joe at hanauma.STANFORD.EDU>
Posting-number: Volume 14, Issue 10
Archive-name: vplot/part05

#! /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 5 (of 24)."
# Wrapped by rsalz at fig.bbn.com on Fri Mar 25 11:46:43 1988
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'Envision_device/envilib/enviopen.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Envision_device/envilib/enviopen.c'\"
else
echo shar: Extracting \"'Envision_device/envilib/enviopen.c'\" \(1277 characters\)
sed "s/^X//" >'Envision_device/envilib/enviopen.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/envilib/enviopen.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include "../include/enum.h"
X#include "../include/extern.h"
X
X
extern int      want_bell;
extern char     wstype[];
extern int      vecarea ();
int             version;
X
enviopen ()
X{
char            bell[10];
X
X    version = 220;
X
X/*
X * physical device size that can be different on different models
X */
X    dev_ymax = 479;
X
X/*
X * device capabilities
X */
X    need_end_erase = NO;
X    buffer_output = YES;
X    smart_clip = NO;
X
X    if (!strcmp (wstype, "envi215"))
X    {
X	version = 215;
X	dev_ymax = 407;
X	dev.area = vecarea;	/* 215's can't fill properly */
X    }
X    getpar ("bell", "s", bell);
X    if (bell[0] == 'n')
X	want_bell = 0;
X    endpause = YES;
X}
END_OF_FILE
if test 1277 -ne `wc -c <'Envision_device/envilib/enviopen.c'`; then
    echo shar: \"'Envision_device/envilib/enviopen.c'\" unpacked with wrong size!
fi
# end of 'Envision_device/envilib/enviopen.c'
fi
if test -f 'Imagen_device/imaglib/imagattr.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Imagen_device/imaglib/imagattr.c'\"
else
echo shar: Extracting \"'Imagen_device/imaglib/imagattr.c'\" \(1210 characters\)
sed "s/^X//" >'Imagen_device/imaglib/imagattr.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/imaglib/imagattr.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include "../include/attrcom.h"
X#include "../include/params.h"
X#include "imagen.h"
X
int             imag_curcolor = BLACK;
X
imagattributes (command, value, v1, v2, v3)
X    register int    command, value;
X    int             v1, v2, v3;
X{
int             new_imag_curcolor;
X
X    switch (command)
X    {
X    case SET_COLOR:
X	if (value > 0)
X	    new_imag_curcolor = BLACK;
X	else
X	    new_imag_curcolor = WHITE;
X
X	if (new_imag_curcolor != imag_curcolor)
X	{
X	    endpath (DRAW_PATH, imag_curcolor);
X	    imag_curcolor = new_imag_curcolor;
X	}
X	break;
X    default:
X	break;
X    }
X
X    return 0;
X}
END_OF_FILE
if test 1210 -ne `wc -c <'Imagen_device/imaglib/imagattr.c'`; then
    echo shar: \"'Imagen_device/imaglib/imagattr.c'\" unpacked with wrong size!
fi
# end of 'Imagen_device/imaglib/imagattr.c'
fi
if test -f 'RasterTek_device/rteklib/rtekarea.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'RasterTek_device/rteklib/rtekarea.c'\"
else
echo shar: Extracting \"'RasterTek_device/rteklib/rtekarea.c'\" \(1141 characters\)
sed "s/^X//" >'RasterTek_device/rteklib/rtekarea.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/rteklib/rtekarea.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/* not used because POLYGON command defective */
X#include "rtekpen.h"
X#include "../include/vertex.h"
X
rtekarea (npts, head)
X    int             npts;
X    struct vertex  *head;
X{
int             i, x, y;
X
X    x = head->x;
X    y = head->y;
X/*
X	rtekplot (x,y,0);
X*/
X    CHKLEN (8 + npts << 2);	/* cmdlen = 8+npts*4 */
X    byte (PRMFIL);
X    byte (1);
X    byte (POLYGN);
X    byte (1);
X    word (npts);
X    for (i = 0; i < npts; i++)
X    {
X	word (head->x - x);
X	word (head->y - y);
X	head = head->next;
X    }
X    byte (PRMFIL);
X    byte (0);
X}
END_OF_FILE
if test 1141 -ne `wc -c <'RasterTek_device/rteklib/rtekarea.c'`; then
    echo shar: \"'RasterTek_device/rteklib/rtekarea.c'\" unpacked with wrong size!
fi
# end of 'RasterTek_device/rteklib/rtekarea.c'
fi
if test -f 'RasterTek_device/rteklib/rtekattr.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'RasterTek_device/rteklib/rtekattr.c'\"
else
echo shar: Extracting \"'RasterTek_device/rteklib/rtekattr.c'\" \(1165 characters\)
sed "s/^X//" >'RasterTek_device/rteklib/rtekattr.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/rteklib/rtekattr.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include "rtekpen.h"
X#include "../include/attrcom.h"
X
int             color = 7;
X
rtekattributes (command, v, v1, v2, v3)
X    int             command, v, v1, v2, v3;
X{
X    switch (command)
X    {
X    case SET_COLOR:		/* cmdlen = 2 */
X	CHKLEN (2);
X	color = v;
X	byte (VAL8);
X	byte (v);
X	break;
X    case SET_COLOR_TABLE:	/* cmdlen = 5 */
X	CHKLEN (5);
X	byte (LUT8);
X	byte (v);
X	byte (v1);
X	byte (v2);
X	byte (v3);
X	break;
X    case SET_WINDOW:		/* cmdlen = 9 */
X	CHKLEN (9);
X	byte (WINDOW);
X	word (v);
X	word (v1);
X	word (v2);
X	word (v3);
X	break;
X    }
X
X    return 0;
X}
END_OF_FILE
if test 1165 -ne `wc -c <'RasterTek_device/rteklib/rtekattr.c'`; then
    echo shar: \"'RasterTek_device/rteklib/rtekattr.c'\" unpacked with wrong size!
fi
# end of 'RasterTek_device/rteklib/rtekattr.c'
fi
if test -f 'Regis_device/gigilib/gigigetpoint.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Regis_device/gigilib/gigigetpoint.c'\"
else
echo shar: Extracting \"'Regis_device/gigilib/gigigetpoint.c'\" \(1212 characters\)
sed "s/^X//" >'Regis_device/gigilib/gigigetpoint.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/gigilib/gigigetpoint.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X
extern FILE    *pltout;
X
extern int      dev_xmax, dev_ymax, dev_xmin, dev_ymin;
extern int      lost;	/* used by genvector */
X
gigigetpoint (termout, x, y)
X    FILE           *termout;
X    int            *x, *y;
X{
int             itemp;
char            temp[10];
X
X    fflush (pltout);
X    fprintf (pltout, "r(p(i))");
X    fflush (pltout);
X    fscanf (termout, "%[^0123456789]%d,%d]%*c", temp, y, x);
X
X/* Undo the GIGI's perverse coordinate system */
X    *x = *x / 2;
X    *y = *y / 2;
X
X    itemp = *y;
X    *y = dev_ymin + dev_ymax - *x;
X    *x = itemp;
X    lost = 1;
X    return (0);
X}
END_OF_FILE
if test 1212 -ne `wc -c <'Regis_device/gigilib/gigigetpoint.c'`; then
    echo shar: \"'Regis_device/gigilib/gigigetpoint.c'\" unpacked with wrong size!
fi
# end of 'Regis_device/gigilib/gigigetpoint.c'
fi
if test -f 'Regis_device/gigilib/gigipoly.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Regis_device/gigilib/gigipoly.c'\"
else
echo shar: Extracting \"'Regis_device/gigilib/gigipoly.c'\" \(1254 characters\)
sed "s/^X//" >'Regis_device/gigilib/gigipoly.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/gigilib/gigipoly.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X * Joe Dellinger Feb 16 1988
X *	Fixed bug in call to gigiplot
X */
X
X#include <stdio.h>
X#include "gigi.h"
extern FILE    *pltout;
X
int             in_a_poly = 0;
k_device/cteklib/ctekreset.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/cteklib/ctekreset.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/* 
X * Put the terminal into standard configuration.
X */
X#include <stdio.h>
X#include "../include/attrcom.h"
X#include "../include/params.h"
X#include "ctek.h"
X
extern FILE    *pltout;
extern int      dev_xmax, dev_ymax, dev_xmin, dev_ymin;
X
ctekreset ()
X{
X    /*
X     * Set the graphics window. 
X     */
X    cteksetmode (TEK);
X    fprintf (pltout, "%cRW", ESC);
X    ctekxypack (dev_xmin, dev_ymin);
X    ctekxypack (dev_xmax, dev_ymax);
X
X    /*
X     * Turn off dashed lines. Set color to default color (usually white, but
X     * controlled by color table). 
X     */
X    cteklinestyle (0);
X    ctekattributes (SET_COLOR, DEFAULT_COLOR, 0, 0, 0);
X}
END_OF_FILE
if test 1248 -ne `wc -c <'Tek_device/cteklib/ctekreset.c'`; then
    echo shar: \"'Tek_device/cteklib/ctekreset.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/ctekreset.c'
fi
if test -f 'Tek_device/teklib/setmode.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/teklib/setmode.c'\"
else
echo shar: Extracting \"'Tek_device/teklib/setmode.c'\" \(1241 characters\)
sed "s/^X//" >'Tek_device/teklib/setmode.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/teklib/setmode.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/*
X * set and record new Tek mode
X *
X * N.B. we always issue a change to VECTOR when asked since this
X *		is how a move is implemented when we are in VECTOR mode
X *		already
X */
X#include	<stdio.h>
X#include	"tek.h"
extern FILE    *pltout;
X
int             tekmode = ALPHA;
X
setmode (mode)
X    int             mode;
X{
X    switch (mode)
X    {
X    case VECTOR:
X	putc (GS, pltout);
X	tekmode = VECTOR;
X	break;
X    case ALPHA:
X	if (tekmode != ALPHA)
X	{
X	    lost = 1;
X	    putc (US, pltout);
X	    tekmode = ALPHA;
X	}
X	break;
X    case POINT:
X	if (tekmode != POINT)
X	{
X	    lost = 1;
X	    putc (FS, pltout);
X	    tekmode = POINT;
X	}
X	break;
X    }
X}
END_OF_FILE
if test 1241 -ne `wc -c <'Tek_device/teklib/setmode.c'`; then
    echo shar: \"'Tek_device/teklib/setmode.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/teklib/setmode.c'
fi
if test -f 'Virtual_device/raslib/rasattr.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/raslib/rasattr.c'\"
else
echo shar: Extracting \"'Virtual_device/raslib/rasattr.c'\" \(1212 characters\)
sed "s/^X//" >'Virtual_device/raslib/rasattr.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/raslib/rasattr.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/*
X * control graphics attributes
X */
X#include <stdio.h>
X#include "../include/attrcom.h"
X#include "raspen.h"
extern FILE    *pltout;
extern int      color_mult;
X
int             color_table[NCOLOR][3], rascolor;
X
rasattr (command, value, v1, v2, v3)
X    register int    command, value;
X    int             v1, v2, v3;
X{
X    switch (command)
X    {
X    case SET_COLOR:
X	rascolor = color_mult * value;
X	break;
X    case SET_COLOR_TABLE:
X	color_table[value * color_mult][0] = v1;
X	color_table[value * color_mult][1] = v2;
X	color_table[value * color_mult][2] = v3;
X	break;
X    default:
X	break;
X    }
X
X    return 0;
X}
END_OF_FILE
if test 1212 -ne `wc -c <'Virtual_device/raslib/rasattr.c'`; then
    echo shar: \"'Virtual_device/raslib/rasattr.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/raslib/rasattr.c'
fi
if test -f 'Virtual_device/raslib/rasdoc.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/raslib/rasdoc.h'\"
else
echo shar: Extracting \"'Virtual_device/raslib/rasdoc.h'\" \(1267 characters\)
sed "s/^X//" >'Virtual_device/raslib/rasdoc.h' <<'END_OF_FILE'
char *documentation[] = {
X" ",
X"NAME",
X#ifdef SEP
X"    Raspen - SEPlib vplot filter for Movie files",
X#else
X"    raspen - vplot filter for Movie files (SEPlib version is preferred!)",
X#endif
X" ",
X"SYNOPSIS",
X#ifdef SEP
X"    Raspen [options] in=vplot-inputfile OR headerfile on standard in",
X#else 
X"    raspen [options] [inputfiles]",
X#endif
X" ",
X"This program creates Movie files for such things as plate tectonic movies,",
X"or any movies based on any Vplot graphics.",
X"This program supports EVERYTHING in Vplot to the FULL extent!",
X"",
X"OPTIONS",
X"n1=1024 n2=768 aspect=1.",
X"n1 and n2 control the size of the created output raster file, with one",
X"page for each frame in the input file.",
X"colormult scales vplot color numbers to raster byte values. The default is",
X"2, but for plate tectonic movies 1 might be more appropriate.",
X"colfile=colfile gives name of color table file for color=T option of movie.",
X"If or=y then colors are OR'd as they are drawn. IE, color 3 and color 6 will",
X"create color 7 where they overwrite. colormult should be a power of 2",
X"in order for this option to work. (note 1 is a power of 2)",
X"",
X#include "../include/gendoc.h"
X" ",
X"SEE ALSO",
X"    man pen"
X};
int	doclength = { sizeof documentation/sizeof documentation[0] };
END_OF_FILE
if test 1267 -ne `wc -c <'Virtual_device/raslib/rasdoc.h'`; then
    echo shar: \"'Virtual_device/raslib/rasdoc.h'\" unpacked with wrong size!
fi
# end of 'Virtual_device/raslib/rasdoc.h'
fi
if test -f 'Virtual_device/raslib/rasreset.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/raslib/rasreset.c'\"
else
echo shar: Extracting \"'Virtual_device/raslib/rasreset.c'\" \(1241 characters\)
sed "s/^X//" >'Virtual_device/raslib/rasreset.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/raslib/rasreset.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include "raspen.h"
X#include "../include/params.h"
extern int      color_table[NCOLOR][3], rascolor;
extern int      color_mult;
X
rasreset ()
X{
int             value;
X    zap ();
X    for (value = 0; value < NCOLOR; value++)
X    {
X	color_table[value][0] = -1;
X    }
X    for (value = 0; value < 8; value++)
X    {
X	color_table[value * color_mult][0] = MAX_GUN * ((value & 2) / 2);
X	color_table[value * color_mult][1] = MAX_GUN * ((value & 4) / 4);
X	color_table[value * color_mult][2] = MAX_GUN * ((value & 1) / 1);
X    }
X}
X
X/*
X * Zero image
X */
zap ()
X{
char           *p;
X    for (p = image; p < &image[dev_xmax * dev_ymax]; p++)
X	*p = 0;
X}
END_OF_FILE
if test 1241 -ne `wc -c <'Virtual_device/raslib/rasreset.c'`; then
    echo shar: \"'Virtual_device/raslib/rasreset.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/raslib/rasreset.c'
fi
if test -f 'Virtual_device/vplib/vplogvector.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vplogvector.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vplogvector.c'\" \(1137 characters\)
sed "s/^X//" >'Virtual_device/vplib/vplogvector.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/vplib/vplogvector.c
X *
X * Joe Dellinger (SEP), Jan 10 1988
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include "vp.h"
X
extern int      vpxmax, vpxmin, vpymax, vpymin;
X
vplogvector (x1, y1, x2, y2, nfat, vpdashon)
X    int             x1, y1, x2, y2;
X    int             nfat, vpdashon;
X{
X    if (clip (&x1, &y1, &x2, &y2))
X	return;
X
X    if (x1 > vpxmax)
X	vpxmax = x1;
X    if (x1 < vpxmin)
X	vpxmin = x1;
X
X    if (y1 > vpymax)
X	vpymax = y1;
X    if (y1 < vpymin)
X	vpymin = y1;
X
X    if (x2 > vpxmax)
X	vpxmax = x2;
X    if (x2 < vpxmin)
X	vpxmin = x2;
X
X    if (y2 > vpymax)
X	vpymax = y2;
X    if (y2 < vpymin)
X	vpymin = y2;
X}
END_OF_FILE
if test 1137 -ne `wc -c <'Virtual_device/vplib/vplogvector.c'`; then
    echo shar: \"'Virtual_device/vplib/vplogvector.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vplogvector.c'
fi
if test -f 'Virtual_device/vplib/vpmarker.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vpmarker.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vpmarker.c'\" \(1312 characters\)
sed "s/^X//" >'Virtual_device/vplib/vpmarker.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/vplib/vpmarker.c
X *
X * Joe Dellinger (SEP), Dec 19 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "../include/round.h"
X#include "../include/enum.h"
X#include "vp.h"
X
vpmarker (npts, type, size, pvec)
X    int             npts, type, size;
X    int            *pvec;
X{
float          *xp;
float          *yp;
int             ii;
X
X    vpsetflag = NO;
X    lost = YES;
X
X    xp = (float *) malloc ((unsigned) (npts * sizeof (float)));
X    yp = (float *) malloc ((unsigned) (npts * sizeof (float)));
X
X    for (ii = 0; ii < npts; ii++)
X    {
X	xp[ii] = (float) pvec[2 * ii] / RPERIN;
X	yp[ii] = (float) pvec[2 * ii + 1] / RPERIN;
X    }
X
X    size = ROUND (size * TXPERIN / RPERIN);
X
X    vp_pmark (npts, type, size, xp, yp);
X
X    free ((char *) xp);
X    free ((char *) yp);
X
X}
END_OF_FILE
if test 1312 -ne `wc -c <'Virtual_device/vplib/vpmarker.c'`; then
    echo shar: \"'Virtual_device/vplib/vpmarker.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vpmarker.c'
fi
if test -f 'Virtual_device/vplib/vpmessage.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vpmessage.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vpmessage.c'\" \(1281 characters\)
sed "s/^X//" >'Virtual_device/vplib/vpmessage.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/vplib/vpmessage.c
X *
X * Joe Dellinger (SEP), Dec 19 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include "../include/enum.h"
X#include "../include/mesgcom.h"
X#include "vp.h"
X
static int      saveit;
static char     savestring[80 * 24];
X
vpmessage (command, string)
X    int             command;
X    char            string[];
X{
X    switch (command)
X    {
X    case MESG_READY:
X	saveit = NO;
X	break;
X    case MESG_MESSAGE:
X	saveit = YES;
X	strcpy (savestring, "");
X	break;
X    case MESG_DONE:
X	if (saveit && !vpdumb)
X	{
X	    vp_message (savestring);
X	}
X	break;
X    case MESG_TEXT:
X
X	if (saveit)
X	{
X	    if (strcmp (string, CRLF) != 0)
X		(void) strcat (savestring, string);
X	}
X	else
X	{
X	    fprintf (stderr, "%s", string);
X	}
X
X	break;
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 1281 -ne `wc -c <'Virtual_device/vplib/vpmessage.c'`; then
    echo shar: \"'Virtual_device/vplib/vpmessage.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vpmessage.c'
fi
if test -f 'Virtual_device/vplib/vpraster.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vpraster.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vpraster.c'\" \(1189 characters\)
sed "s/^X//" >'Virtual_device/vplib/vpraster.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X * 
X *  source file:   ./filters/vplib/vpraster.c
X *
X * Joe Dellinger (SEP), Dec 19 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "../include/enum.h"
X#include "vp.h"
X
vpraster (xpix, ypix, xmin, ymin, xmax, ymax, raster_block, orient, dither_it)
X    int             xpix, ypix, xmin, ymin, xmax, ymax, orient, dither_it;
X    unsigned char  *raster_block;
X{
float           temp1, temp2;
X
X    vpsetflag = NO;
X    lost = YES;
X
X    temp1 = (float) xmax / RPERIN;
X    temp2 = (float) ymax / RPERIN;
X
X    vp_raster (raster_block, vpblast, (vpbit > 0), vpbit, xpix, ypix,
X	       (float) xmin / RPERIN, (float) ymin / RPERIN,
X	       0., &temp1, &temp2,
X	       orient, NO);
X}
END_OF_FILE
if test 1189 -ne `wc -c <'Virtual_device/vplib/vpraster.c'`; then
    echo shar: \"'Virtual_device/vplib/vpraster.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vpraster.c'
fi
if test -f 'Vplot_Kernel/Documentation/known_bugs' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/Documentation/known_bugs'\"
else
echo shar: Extracting \"'Vplot_Kernel/Documentation/known_bugs'\" \(1190 characters\)
sed "s/^X//" >'Vplot_Kernel/Documentation/known_bugs' <<'END_OF_FILE'
Each directory should contain a "known_bugs" file.
If anyone wants to fix any of them for me, be my guest. If you fix
any bugs or add any useful enhancements to the original distribution,
please let me know. Well-debugged device drivers for new devices should
be posted, but make sure that it passes "All_tests" first.
X
X	- Joe Dellinger
X	  Dept of Geophysics
X	  Stanford University
X	  Stanford CA 94305
X
Comments about bugs in documentation:
X
X	I don't KNOW of any, but I expect they're there. Of course,
X	since nobody reads the documentation anyway, it doesn't matter.
X	I really despise troff and so didn't use it to make vplothacker.doc
X	on purpose.
X
General comments about bugs in device drivers:
X
X	Different devices were supported by different people. Many people
X	are content to write code that "mostly" works, and can NOT be coerced
X	into finishing the job. I am distributing such code as well, even
X	though it isn't perfect. I have tried to mention all such problems
X	that I know of in the corresponding "known_bugs" files.
X	There are probably also some things "hard_wired" into some of the
X	device-dependent makefiles that shouldn't be.
X
X*Sigh*
X
X>> So what do you want for free?! <<
END_OF_FILE
if test 1190 -ne `wc -c <'Vplot_Kernel/Documentation/known_bugs'`; then
    echo shar: \"'Vplot_Kernel/Documentation/known_bugs'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/Documentation/known_bugs'
fi
if test -f 'Vplot_Kernel/filters/Tests/TEST_limit' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/Tests/TEST_limit'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/Tests/TEST_limit'\" \(1196 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/Tests/TEST_limit' <<'END_OF_FILE'
X#plas: Inches used in this file
e
S s
z
Test of fitting Vplot's window to the screen
z
X
c 1
f 1.
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
c 4
f .5
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
c 2
f .25
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
c 0
f .05
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
s 1
X.5  .5
c 7
f 0
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
s 2
X0. .5
X0. .5
c 7
f .05
m 0 0
d 0 10.24
d 13.653333 10.24
d 13.653333 0
d 0 0
s 0
c 7
m 6.826 7.12
J 2 0
f .02
T .3 0
Center of multi-colored border\n\
shows edges of standard vplot\n\
window. Center of dotted stripe\n\
should show AT the screen's\n\
edge on 3 sides.
m 1.5 5.12
J 2 3
f .02
T .3 90
X\F15 \v146 \F-1 10.24 Inches This Way \F15 \v144 \F-1 
m 6.8266666 1.5
J 2 3
f .02
T .3 0
X\F15 \v146 \F-1 13.65 Inches This Way \F15 \v144 \F-1 
z
This will draw a "picture frame" around the edge of Vplot's standard
z
X3 by 4 window. The central dotted line shows the exact edge of the
z
window. This should show just on the edge of your screen on 3 sides.
z
The sizes given will only be true scale if size=absolute,
z
but then the plot is not constrained to fit to the screen.
z
X
END_OF_FILE
if test 1196 -ne `wc -c <'Vplot_Kernel/filters/Tests/TEST_limit'`; then
    echo shar: \"'Vplot_Kernel/filters/Tests/TEST_limit'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/Tests/TEST_limit'
fi
if test -f 'Vplot_Kernel/filters/Tests/markertest.f' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/Tests/markertest.f'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/Tests/markertest.f'\" \(1145 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/Tests/markertest.f' <<'END_OF_FILE'
c==============================================================
c	FORTRAN routine displaying polymarkers
c==============================================================
c
X	dimension xpoly(20),ypoly(20)
X	integer marktype(8),color(8)
X	integer   out
X	data marktype /2, 3, 4, 5, 20, 21, 22, 23/
X	data color /0, 1, 2, 3, 4, 5, 6, 7/
c
c  set vplot output file
c
X	call vpfile('out.vp')
c
c  choose standard style for vplot
c
X	call vpstyle(STANDARD)
c
c  set user window
c
X	xmin = 0.
X	ymin = 0.
X	xmax = 100.
X	ymax = 100.
X	call vpstretch(xmin,ymin,xmax,ymax)
X
X
X	ncol   	= 4
X	nrow	= 8
X	dcol	= (xmax-xmin)/(ncol+1)
X	drow	= (ymax-ymin)/(nrow+1)
X	isiz	= 2
X	icolor  = 0
c
c  compute positions of markers
c
X	do irow = 1,nrow
X	   ix = 0
X	   iy = 0
X	   ypos = ymin + drow*irow
c
c  set marker type,color and size
c
X	   ityp = ityp+1
X	   mtype= marktype(ityp)
X	   icolor = icolor+1
X	   isiz = isiz+2
X	   do icol =1,ncol
X		ix = ix+1
X		iy = iy+1
X		xpoly(ix) = xmin + dcol*icol
X		ypoly(iy) = ypos
X	   end do
c
c  display markers
c
X	   call vpcolor(color(icolor))
X	   call vpupmark(ncol,mtype,isiz,xpoly,ypoly)
X	end do
c
c  end of session
c
X	call vpendplot()
X	end
X
X
END_OF_FILE
if test 1145 -ne `wc -c <'Vplot_Kernel/filters/Tests/markertest.f'`; then
    echo shar: \"'Vplot_Kernel/filters/Tests/markertest.f'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/Tests/markertest.f'
fi
if test -f 'Vplot_Kernel/filters/Tests/texttest.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/Tests/texttest.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/Tests/texttest.c'\" \(1170 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/Tests/texttest.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/Tests/texttest.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include <math.h>
X
X#define NP 7
X
main ()
X{
float           xp, yp;
int             i;
X
X/*
X * Set up where you want the vplot output to go.
X */
X    vp_filep (stdout);
X
X/*
X * Decide what "style" plot this is to be.
X */
X    vp_style (STANDARD);
X
X/*
X * text
X */
X    for (i = 0; i < NP; i++)
X    {
X	xp = 1. + (7. / NP) * i;
X	yp = xp;
X	vp_color (i + 1);
X	vp_tfont (i * 2, STRING, OVLY_NORMAL);
X	vp_text (xp, yp, 15, 0, "This is a test...");
X/*	vp_utext(xp,yp,15,0,"This is a test..."); */
X    }
X
X/*
X * Finish up
X */
X    vp_endplot ();
X}
END_OF_FILE
if test 1170 -ne `wc -c <'Vplot_Kernel/filters/Tests/texttest.c'`; then
    echo shar: \"'Vplot_Kernel/filters/Tests/texttest.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/Tests/texttest.c'
fi
if test -f 'Vplot_Kernel/filters/genlib/gen_do_dovplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/genlib/gen_do_dovplot.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/genlib/gen_do_dovplot.c'\" \(1209 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/genlib/gen_do_dovplot.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/genlib/gen_do_dovplot.c
X *
X * Joe Dellinger (SEP), Feb 24 1988
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <strings.h>
X#include "../include/params.h"
X#include "../include/extern.h"
X
X/*
X * Call dovplot, cycling through the input plot files.
X */
X
gen_do_dovplot (nn, inpltin, innames)
X    int             nn;
X    FILE          **inpltin;
X    char            innames[][MAXFLEN + 1];
X{
int             ii;
X
X    for (ii = 0; ii < nn; ii++)
X    {
X/*
X * Set things up for dovplot.
X * The "-5" is to leave room for dovplot to add a little onto the
X * end of pltname if it wants.
X */
X	pltin = inpltin[ii];
X	strncpy (pltname, innames[ii], MAXFLEN - 5);
X	dovplot ();
X	fclose (pltin);
X    }
X}
END_OF_FILE
if test 1209 -ne `wc -c <'Vplot_Kernel/filters/genlib/gen_do_dovplot.c'`; then
    echo shar: \"'Vplot_Kernel/filters/genlib/gen_do_dovplot.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/genlib/gen_do_dovplot.c'
fi
if test -f 'Vplot_Kernel/filters/genlib/geninteract.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/genlib/geninteract.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/genlib/geninteract.c'\" \(1203 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/genlib/geninteract.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/genlib/geninteract.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X * Joe Dellinger Feb 22 1988
X *	Created INT_PAUSE.
X */
X
X/*
X * For most devices, this can be the interact routine.
X * This routine will work if the terminal control during plotting
X * is the same place as standard input.
X */
X
X/*
X * Get a string from the user.
X */
X
X#include <stdio.h>
X#include "../include/intcom.h"
X
geninteract (what, controltty, string)
X    int             what;
X    FILE           *controltty;
X    char           *string;
X{
X    switch (what)
X    {
X    case INT_PAUSE:
X    case INT_F_PAUSE:
X    case INT_GET_STRING:
X	fgets (string, 79, controltty);
X	break;
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 1203 -ne `wc -c <'Vplot_Kernel/filters/genlib/geninteract.c'`; then
    echo shar: \"'Vplot_Kernel/filters/genlib/geninteract.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/genlib/geninteract.c'
fi
if test -f 'Vplot_Kernel/filters/genlib/genmessage.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/genlib/genmessage.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/genlib/genmessage.c'\" \(1262 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/genlib/genmessage.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/genlib/genmessage.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/*
X * Device independent subroutine to handle message operations
X */
X#include	<stdio.h>
X#include	"../include/mesgcom.h"
X#include	"../include/enum.h"
X
genmessage (command, string)
X    int             command;
X    char            string[];
X{
X
X    switch (command)
X    {
X    case MESG_HOME:
X    case MESG_READY:
X	fflush (stderr);
X	break;
X    case MESG_TEXT:
X	fprintf (stderr, "%s", string);
X	break;
X    case MESG_HIGHLIGHT_ON:
X	/* Beep at them to get their attention */
X	fprintf (stderr, "\07\07");
X	break;
X    case MESG_ON:
X    case MESG_OFF:
X    case MESG_ERASE:
X    case MESG_HIGHLIGHT_OFF:
X    case MESG_DONE:
X    default:
X	fflush (stderr);
X	break;
X    }
X}
END_OF_FILE
if test 1262 -ne `wc -c <'Vplot_Kernel/filters/genlib/genmessage.c'`; then
    echo shar: \"'Vplot_Kernel/filters/genlib/genmessage.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/genlib/genmessage.c'
fi
if test -f 'Vplot_Kernel/filters/include/erasecom.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/include/erasecom.h'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/include/erasecom.h'\" \(1157 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/include/erasecom.h' <<'END_OF_FILE'
X/*
X * command passed to dev.erase()
X */
X#define ERASE_START		0
X#define ERASE_MIDDLE		1
X#define ERASE_END		2
X#define ERASE_BREAK		3
X
X/*
X * Types of erases: (Who would believe that there are 4 kinds?)
X *
X * An erase really has two parts; you END one frame of a plot and BEGIN
X * another. For some devices you have to be careful to separate these
X * two different parts.
X *
X * ERASE_START is an erase which occurs before anything has been drawn.
X *
X * ERASE_MIDDLE is the typical case. You are both erasing something
X * 	that is already there, and also preparing for another plot that
X *	is coming.
X *
X * ERASE_END is a terminal erase, with nothing more to be drawn afterwards.
X *
X * ERASE_BREAK is like ERASE_MIDDLE, except that the picture shouldn't
X *	actually be cleared. The purpose of the Break command in Vplot
X *	is to allow saving of snapshots of a plot in progress. (An example
X *	of the proper use of ERASE_BREAK is in the filter Raspen.)
X *
X * For most screen devices, ERASE_START and ERASE_MIDDLE will just be regular
X * erases, and ERASE_END and ERASE_BREAK will be ignored.
X *
X * Hardcopy devices may use ERASE_MIDDLE and ERASE_END instead.
X */
END_OF_FILE
if test 1157 -ne `wc -c <'Vplot_Kernel/filters/include/erasecom.h'`; then
    echo shar: \"'Vplot_Kernel/filters/include/erasecom.h'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/include/erasecom.h'
fi
if test -f 'Vplot_Kernel/filters/include/vplotfonts/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/include/vplotfonts/Makefile'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/include/vplotfonts/Makefile'\" \(1089 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/include/vplotfonts/Makefile' <<'END_OF_FILE'
X# This makefile makes all the packed format fonts used by gentext
X# from the editable form produced by hertovplot.
X#
X# This makefile is NOT run by the makefile in .../vplot/filters.
X# You'll need to run this one yourself first.
X#
X# Makefont won't compile on Suns using software floating point
X# code.  CFLAGS must select the appropriate floating-point chip
X# specification:
X
X#CFLAGS = -O -f68881
CFLAGS = -O
ALL = pen.bin romanc.bin romans.bin cyrilc.bin gothgbt.bin gothgrt.bin gothitt.bin greekc.bin greeks.bin italicc.bin italict.bin math.bin misc.bin romand.bin romant.bin scriptc.bin scripts.bin
X
all: makefont $(ALL)
X
X.SUFFIXES: .vplot_font .bin .include
X
makefont: makefont.c
X	cc $(CFLAGS) -o makefont makefont.c
X
clean:
X	rm -f makefont *.o *_check *_dim *_addr *_widthl *_widthr *_symbol \
X		*_svec *_lig *.bin *.include
X
X.vplot_font.bin:	makefont
X	makefont $* < $*.vplot_font > $*.include
X	cat $*_check $*_header $*_dim $*_addr $*_widthl \
X		$*_widthr $*_symbol $*_svec $*_lig > \
X		$*.bin
X	rm -f $*_check $*_header $*_dim $*_addr $*_widthl \
X		$*_widthr $*_symbol $*_svec $*_lig
END_OF_FILE
if test 1089 -ne `wc -c <'Vplot_Kernel/filters/include/vplotfonts/Makefile'`; then
    echo shar: \"'Vplot_Kernel/filters/include/vplotfonts/Makefile'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/include/vplotfonts/Makefile'
fi
if test -f 'Vplot_Kernel/filters/utilities/dupside.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/utilities/dupside.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/utilities/dupside.c'\" \(1253 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/utilities/dupside.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./filters/utilities/dupside.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X/*
X * VPLOT filter utility routine
X * Determine if other sides in the polygon are
X * identical to the side specified by the
X * vertices v and v->b.
X */
X#include "../include/vertex.h"
X
dupside (base)
X    register struct vertex *base;
X{
register struct vertex *v;
register int    x1, x2, y1, y2;
X
X    x1 = base->x;
X    x2 = base->last->x;
X    y1 = base->y;
X    y2 = base->last->y;
X    v = base->next;
X    do
X    {
X	if (x1 == v->x && y1 == v->y && x2 == v->last->x && y2 == v->last->y)
X	    return (1);
X	if (x2 == v->x && y2 == v->y && x1 == v->last->x && y1 == v->last->y)
X	    return (1);
X	v = v->next;
X    }
X    while (v != base);
X    return (0);
X}
END_OF_FILE
if test 1253 -ne `wc -c <'Vplot_Kernel/filters/utilities/dupside.c'`; then
    echo shar: \"'Vplot_Kernel/filters/utilities/dupside.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/utilities/dupside.c'
fi
if test -f 'Vplot_Kernel/lvplot/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/Makefile'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/Makefile'\" \(1316 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/Makefile' <<'END_OF_FILE'
L = /usr/lib/libvplot.a
CFLAGS = -I../filters/include -g
FFLAGS = -g
X
X# Beware when editing files with user-unit equivalents! You should touch
X# the user-unit version as well if it includes the file you edited!
X
OFILES = vp_area.o vp_break.o vp_clip.o vp_color.o vp_dash.o vp_draw.o\
X	    vp_endplt.o vp_erase.o vp_fat.o vp_message.o vp_move.o\
X	    vp_orig.o vp_plot.o vp_pmark.o vp_scale.o vp_style.o\
X	    vp_text.o vp_gtext.o vp_uarea.o vp_uclip.o vp_udraw.o\
X	    vp_umove.o vp_uorig.o vp_uplot.o vp_upmark.o vp_utext.o\
X	    vp_ugtext.o vp_file.o\
X	    vp_filep.o vp_unit.o vp_where.o\
X	    vp_tjust.o vp_tfont.o vp_purge.o vp_penup.o\
X	    vp_upendn.o vp_pendn.o geth.o puth.o\
X	    vp_uarrow.o vp_arrow.o vp_raster.o vp_uraster.o\
X	    vp_coltab.o vp_pline.o vp_upline.o vp_fill.o vp_ufill.o\
X	    vp_patload.o vp_hatchload.o vp_stretch.o vp_setdash.o\
X	    vp_bgroup.o vp_egroup.o\
X	    vptext.o vpgtext.o vputext.o vpugtext.o vpfile.o vpmessage.o\
X	    vpbgroup.o
X
libvplot.a: $(OFILES)
X	rm -f *_.o
X	ranlib libvplot.a
X
install: libvplot.a
X	-mv -f $(L) $(L).old
X	install -c libvplot.a $(L)
X	ranlib $(L)
X
X.SUFFIXES:
X.SUFFIXES: .o .c .f
X.c.o:
X	cc -c ${CFLAGS} $*.c
X	cp $*.c $*_.c
X	cc -c ${CFLAGS} -DFORTRAN $*_.c
X	rm -f $*_.c
X	ar crv libvplot.a $*.o $*_.o
X.f.o:
X	f77 -c ${FFLAGS} $*.f
X	ar crv libvplot.a $*.o
END_OF_FILE
if test 1316 -ne `wc -c <'Vplot_Kernel/lvplot/Makefile'`; then
    echo shar: \"'Vplot_Kernel/lvplot/Makefile'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/Makefile'
fi
if test -f 'Vplot_Kernel/lvplot/vp_clip.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_clip.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_clip.c'\" \(1326 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_clip.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_clip.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X * Joe Dellinger Jan 14 1988
X *	Do rounding.
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "round.h"
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#define CLIP vpclip_
X#define XMIN *xmin
X#define YMIN *ymin
X#define XMAX *xmax
X#define YMAX *ymax
X
X#else
X
X#define CLIP vp_clip
X#define XMIN xmin
X#define YMIN ymin
X#define XMAX xmax
X#define YMAX ymax
X
X#endif
X
CLIP (xmin, ymin, xmax, ymax)
X    float           XMIN, YMIN, XMAX, YMAX;
X{
int             ix, iy;
X
X    putc (VP_WINDOW, vp_pc._pltout);
X    ix = ROUND (XMIN * RPERIN);
X    puth (ix, vp_pc._pltout);
X    iy = ROUND (YMIN * RPERIN);
X    puth (iy, vp_pc._pltout);
X    ix = ROUND (XMAX * RPERIN);
X    puth (ix, vp_pc._pltout);
X    iy = ROUND (YMAX * RPERIN);
X    puth (iy, vp_pc._pltout);
X}
END_OF_FILE
if test 1326 -ne `wc -c <'Vplot_Kernel/lvplot/vp_clip.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_clip.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_clip.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_draw.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_draw.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_draw.c'\" \(1241 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_draw.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_draw.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#ifndef UUU
X#define DRAW vpdraw_
X#define X *x
X#define Y *y
X#else UUU
X#define UDRAW	vpudraw_
X#define X		*x
X#define Y		*y
X#endif UUU
X
X#else
X
X#ifndef UUU
X#define DRAW vp_draw
X#define X x
X#define Y y
X#else UUU
X#define UDRAW	vp_udraw
X#define X		x
X#define Y		y
X#endif UUU
X
X#endif
X
X#ifndef UUU
DRAW (x, y)
X#else UUU
UDRAW (x, y)
X#endif UUU
X    float           X, Y;
X{
X#ifndef UUU
X    vp_plot (X, Y, 1);
X#else UUU
float           xp, yp;
X    xp = vp_pc._x0 + (X - vp_pc._xu0) * vp_pc._xscl;
X    yp = vp_pc._y0 + (Y - vp_pc._yu0) * vp_pc._yscl;
X    vp_plot (xp, yp, 1);
X#endif UUU
X}
END_OF_FILE
if test 1241 -ne `wc -c <'Vplot_Kernel/lvplot/vp_draw.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_draw.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_draw.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_move.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_move.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_move.c'\" \(1241 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_move.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_move.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#ifndef UUU
X#define MOVE vpmove_
X#define X *x
X#define Y *y
X#else UUU
X#define UMOVE	vpumove_
X#define X		*x
X#define Y		*y
X#endif UUU
X
X#else
X
X#ifndef UUU
X#define MOVE vp_move
X#define X x
X#define Y y
X#else UUU
X#define UMOVE	vp_umove
X#define X		x
X#define Y		y
X#endif UUU
X
X#endif
X
X#ifndef UUU
MOVE (x, y)
X#else UUU
UMOVE (x, y)
X#endif UUU
X    float           X, Y;
X{
X#ifndef UUU
X    vp_plot (X, Y, 0);
X#else UUU
float           xp, yp;
X    xp = vp_pc._x0 + (X - vp_pc._xu0) * vp_pc._xscl;
X    yp = vp_pc._y0 + (Y - vp_pc._yu0) * vp_pc._yscl;
X    vp_plot (xp, yp, 0);
X#endif UUU
X}
END_OF_FILE
if test 1241 -ne `wc -c <'Vplot_Kernel/lvplot/vp_move.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_move.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_move.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_orig.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_orig.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_orig.c'\" \(1213 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_orig.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_orig.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#ifndef UUU
X#define ORIG	vporig_
X#define X0		*x0
X#define Y0		*y0
X#else UUU
X#define UORIG	vpuorig_
X#define XU0		*xu0
X#define YU0		*yu0
X#endif UUU
X
X#else
X
X#ifndef UUU
X#define ORIG	vp_orig
X#define X0		x0
X#define Y0		y0
X#else UUU
X#define UORIG	vp_uorig
X#define XU0		xu0
X#define YU0		yu0
X#endif UUU
X
X#endif
X
X#ifndef UUU
ORIG (x0, y0)
X    float           X0, Y0;
X#else UUU
UORIG (xu0, yu0)
X    float           XU0, YU0;
X#endif UUU
X{
X#ifndef UUU
X    vp_pc._x0 = X0;
X    vp_pc._y0 = Y0;
X#else UUU
X    vp_pc._xu0 = XU0;
X    vp_pc._yu0 = YU0;
X#endif UUU
X}
END_OF_FILE
if test 1213 -ne `wc -c <'Vplot_Kernel/lvplot/vp_orig.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_orig.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_orig.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_pendn.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_pendn.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_pendn.c'\" \(1151 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_pendn.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_pendn.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <vplot.h>
X#include "vp_pc.h"
X
X/* go to location (x,y) and then put the pen down */
X#ifdef FORTRAN
X
X#ifndef UUU
X#define PENDN vppendn_
X#else UUU
X#define UPENDN vpupendn_
X#endif UUU
X#define X *x
X#define Y *y
X
X#else
X
X#ifndef UUU
X#define PENDN vp_pendn
X#else UUU
X#define UPENDN vp_upendn
X#endif UUU
X#define X x
X#define Y y
X
X#endif
X
X#ifndef UUU
PENDN (x, y)
X#else UUU
UPENDN (x, y)
X#endif UUU
X    float           X, Y;
X{
X#ifndef UUU
X    vp_plot (X, Y, vp_pc._pendown);
X#else UUU
X    vp_uplot (X, Y, vp_pc._pendown);
X#endif UUU
X    vp_pc._pendown = 1;
X}
END_OF_FILE
if test 1151 -ne `wc -c <'Vplot_Kernel/lvplot/vp_pendn.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_pendn.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_pendn.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_stretch.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_stretch.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_stretch.c'\" \(1300 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_stretch.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_stretch.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#define STRETCH	vpstretch_
X#define XMIN	*xmin
X#define YMIN	*ymin
X#define XMAX	*xmax
X#define YMAX	*ymax
X
X#else
X
X#define STRETCH	vp_stretch
X#define XMIN	xmin
X#define YMIN	ymin
X#define XMAX	xmax
X#define YMAX	ymax
X
X#endif
X
extern int      cur_style;
X
STRETCH (xmin, ymin, xmax, ymax)
X    float           XMIN, YMIN, XMAX, YMAX;
X{
X
X    vp_uorig (XMIN, YMIN);
X    vp_orig (0., 0.);
X
X    if (cur_style == ROTATED)
X    {
X	vp_scale (ROTATED_HEIGHT / (XMAX - XMIN), (ROTATED_HEIGHT / SCREEN_RATIO) / (YMAX - YMIN));
X    }
X    else
X    {
X	vp_scale ((STANDARD_HEIGHT / SCREEN_RATIO) / (XMAX - XMIN), STANDARD_HEIGHT / (YMAX - YMIN));
X    }
X}
END_OF_FILE
if test 1300 -ne `wc -c <'Vplot_Kernel/lvplot/vp_stretch.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_stretch.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_stretch.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_style.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_style.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_style.c'\" \(1161 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_style.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_style.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X#include "params.h"
X
X#ifdef FORTRAN
X
X#define VPSTYLE	vpstyle_
X#define ST		*st
X
X#else
X
X#define VPSTYLE	vp_style
X#define ST		st
X
X#endif
X
int             cur_style = STYLE;	/* default; set in "params.h" */
X
VPSTYLE (st)
X    int             ST;
X{
X
X    cur_style = ST;
X    putc (VP_SETSTYLE, vp_pc._pltout);
X    switch (ST)
X    {
X    case ROTATED:
X	putc ('r', vp_pc._pltout);
X	break;
X    case ABSOLUTE:
X	putc ('a', vp_pc._pltout);
X	break;
X    case STANDARD:
X    default:
X	putc ('s', vp_pc._pltout);
X	break;
X    }
X}
END_OF_FILE
if test 1161 -ne `wc -c <'Vplot_Kernel/lvplot/vp_style.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_style.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_style.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_tjust.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_tjust.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_tjust.c'\" \(1199 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_tjust.c' <<'END_OF_FILE'
X/*
X * Copyright 1987 the Board of Trustees of the Leland Stanford Junior
X * University. Official permission to use this software is included in
X * the documentation. It authorizes you to use this file for any
X * non-commercial purpose, provided that this copyright notice is not
X * removed and that any modifications made to this file are commented
X * and dated in the style of my example below.
X */
X
X/*
X *
X *  source file:   ./lvplot/vp_tjust.c
X *
X * Joe Dellinger (SEP), June 11 1987
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X *
X * Joe Dellinger, Dec 7 1987
X *	If the person calls vp_tjust, write the command out.
X *	Don't bother trying to second guess them!!!
X */
X
X#include <stdio.h>
X#include <vplot.h>
X#include "vp_pc.h"
X
X#ifdef FORTRAN
X
X#define XJUST	*xjust
X#define YJUST   *yjust
X#define TJUST   vptjust_
X
X#else
X
X#define XJUST	xjust
X#define YJUST   yjust
X#define TJUST   vp_tjust
X
X#endif
X
TJUST (xjust, yjust)
X    int             XJUST, YJUST;
X{
X    vp_pc._xjust = XJUST;
X    vp_pc._yjust = YJUST;
X
X    putc (VP_TXALIGN, vp_pc._pltout);
X    puth (vp_pc._xjust, vp_pc._pltout);
X    puth (vp_pc._yjust, vp_pc._pltout);
X
X    return;
X}
END_OF_FILE
if test 1199 -ne `wc -c <'Vplot_Kernel/lvplot/vp_tjust.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_tjust.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_tjust.c'
fi
echo shar: End of archive 5 \(of 24\).
cp /dev/null ark5isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 24 archives.
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
-- 
Please send comp.sources.unix-related mail to rsalz at uunet.uu.net.



More information about the Comp.sources.unix mailing list