v14i009: Device-independant graphics system, with drivers

Rich Salz rsalz at uunet.uu.net
Tue Mar 29 01:24:52 AEST 1988


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



#! /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 4 (of 24)."
# Wrapped by rsalz at fig.bbn.com on Fri Mar 25 11:46:36 1988
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'Envision_device/envilib/envierase.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Envision_device/envilib/envierase.c'\"
else
echo shar: Extracting \"'Envision_device/envilib/envierase.c'\" \(976 characters\)
sed "s/^X//" >'Envision_device/envilib/envierase.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/envierase.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/erasecom.h"
X#include "envi.h"
extern FILE    *pltout;
X
envierase (command)
X    int             command;
X{
X    switch (command)
X    {
X    case ERASE_START:
X    case ERASE_MIDDLE:
X	envisetmode (REG);
X	putc (ESC, pltout);
X	putc (ENVI_ERASE, pltout);	/* Erase Graphics Screen */
X	break;
X    case ERASE_END:
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 976 -ne `wc -c <'Envision_device/envilib/envierase.c'`; then
    echo shar: \"'Envision_device/envilib/envierase.c'\" unpacked with wrong size!
fi
# end of 'Envision_device/envilib/envierase.c'
fi
if test -f 'Imagen_device/imaglib/imagen.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Imagen_device/imaglib/imagen.h'\"
else
echo shar: Extracting \"'Imagen_device/imaglib/imagen.h'\" \(1084 characters\)
sed "s/^X//" >'Imagen_device/imaglib/imagen.h' <<'END_OF_FILE'
X#define SET_PUSH_MASK	214
X#define PUSH		211
X#define POP		212
X#define SET_HV_SYSTEM	205
X#define CREATE_PATH	230
X#define ENDPAGE		219
X#define SET_PEN		232
X#define BITMAP		235
X#define EOPLOT		255
X#define DRAW_PATH	234
X#define FILL_PATH	233
X#define SET_ABS_V	137
X#define SET_ABS_H	135
X#define CREATE_FAMILY_TABLE	221
X#define SET_ADV_DIRS	206
X#define SET_FAMILY	207
X#define SP		128
X#define SET_SP		210
X#define BGLY    199
X#define SET_TEXTURE  231
X#define SET_REL_V	138
X
X#define WHITE		0
X#define OPAQUE		3
X#define OR		7
X#define BLACK		15
X
X#define PATHLENGTH	175
X
X/*
X * These two macros take the high and low bytes off the end
X * of an integer to make a word that the imagen will understand
X * representing an integer in the range +- 2 to the 14
X */
X#define lob(A) 	((char)((A) & 0xff))
X#define hib(A)	((char)(((A) >> 8) & 0xff))
X
X/*
X * imagen externals
X */
extern int tex;
extern int stripped;
extern int brute_force;
extern int file_created;
extern int ncopies_document;
extern char label[];
extern char scratch_file[];
extern char holdreason[];
extern int lost;
extern int imag_curcolor;
END_OF_FILE
if test 1084 -ne `wc -c <'Imagen_device/imaglib/imagen.h'`; then
    echo shar: \"'Imagen_device/imaglib/imagen.h'\" unpacked with wrong size!
fi
# end of 'Imagen_device/imaglib/imagen.h'
fi
if test -f 'Masscomp_device/gpslib/gpsclose.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Masscomp_device/gpslib/gpsclose.c'\"
else
echo shar: Extracting \"'Masscomp_device/gpslib/gpsclose.c'\" \(874 characters\)
sed "s/^X//" >'Masscomp_device/gpslib/gpsclose.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/gpslib/gpsclose.c
X *
X * Stewart A. Levin (SEP), July 3 1987
X *	Cribbed rasclose.c for gps filter
X */
X
X#include <stdio.h>
X#include "../include/closestat.h"
X#include "../include/err.h"
X#include "../include/extern.h"
X#include "../include/params.h"
X#include "gpspen.h"
X
gpsclose (status)
X    int             status;
X{
X    switch (status)
X    {
X    case CLOSE_NORMAL:
X	end_plot ("");
X	break;
X    case CLOSE_FLUSH:
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 874 -ne `wc -c <'Masscomp_device/gpslib/gpsclose.c'`; then
    echo shar: \"'Masscomp_device/gpslib/gpsclose.c'\" unpacked with wrong size!
fi
# end of 'Masscomp_device/gpslib/gpsclose.c'
fi
if test -f 'Masscomp_device/gpslib/gpsdoc.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Masscomp_device/gpslib/gpsdoc.h'\"
else
echo shar: Extracting \"'Masscomp_device/gpslib/gpsdoc.h'\" \(1067 characters\)
sed "s/^X//" >'Masscomp_device/gpslib/gpsdoc.h' <<'END_OF_FILE'
char *documentation[] = {
X" ",
X"NAME",
X#ifdef SEP
X"    Gpspen - SEPlib vplot filter for Masscomp GPS files",
X#else
X"    gpspen - vplot filter for Masscomp GPS files",
X#endif
X" ",
X"SYNOPSIS",
X#ifdef SEP
X"    Gpspen [options] in=vplot-inputfile OR headerfile on standard in",
X#else 
X"    gpspen [options] [inputfiles]",
X#endif
X" ",
X"This program transforms vplot commands into Masscomp GPS commands",
X"so that the color Versatec (and other Masscomp graphics) may be used.",
X"",
X"OPTIONS",
X"colormult=1 ppi=600 aspect=1.",
X"colormult scales vplot color numbers to raster byte values. The default is",
X"1, but for SEP movies 2 might be more appropriate.",
X"ppi is the internal vplot resolution to use.  The default 600 is harmless",
X"overkill for Versatecs which run at 200 or 300 ppi.  If a lot of area fill",
X"is anticipated, drop this down to the device resolution for speed.",
X"aspect, if changed, chould probably be set to 0.75.",
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 1067 -ne `wc -c <'Masscomp_device/gpslib/gpsdoc.h'`; then
    echo shar: \"'Masscomp_device/gpslib/gpsdoc.h'\" unpacked with wrong size!
fi
# end of 'Masscomp_device/gpslib/gpsdoc.h'
fi
if test -f 'Masscomp_device/gpslib/gpsplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Masscomp_device/gpslib/gpsplot.c'\"
else
echo shar: Extracting \"'Masscomp_device/gpslib/gpsplot.c'\" \(981 characters\)
sed "s/^X//" >'Masscomp_device/gpslib/gpsplot.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/gpslib/gpsplot.c
X *
X * Stewart A. Levin (SEP), July 3 1987
X *	Cribbed enviplot.c for gps filter
X */
X
X#include <stdio.h>
X#include "../include/enum.h"
X#include "gpspen.h"
X
int             lost = YES;	/* 1 means we are lost, zero means we aren't */
X
gpsplot (x, y, drw)	/* efficiently get to the point x,y. */
X    int             x, y, drw;	/* draw 0 means we want to move, not to draw */
X{
float           flx, fly;
X
X    flx = x;
X    fly = y;
X    if (drw == 0)
X    {
X	move (flx, fly);
X    }
X    else
X    {
X	draw (flx, fly);
X    }
X    lost = NO;
X}
END_OF_FILE
if test 981 -ne `wc -c <'Masscomp_device/gpslib/gpsplot.c'`; then
    echo shar: \"'Masscomp_device/gpslib/gpsplot.c'\" unpacked with wrong size!
fi
# end of 'Masscomp_device/gpslib/gpsplot.c'
fi
if test -f 'Printronix_device/lprlib/lprattr.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Printronix_device/lprlib/lprattr.c'\"
else
echo shar: Extracting \"'Printronix_device/lprlib/lprattr.c'\" \(1026 characters\)
sed "s/^X//" >'Printronix_device/lprlib/lprattr.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/lprlib/lprattr.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 <math.h>
X#include "../include/attrcom.h"
X#include "../include/params.h"
X
int             lpr_color = 1;
X
lprattr (command, value, v1, v2, v3)
X    register int    command, value;
X    int             v1, v2, v3;
X{
int             icol;
X
X    switch (command)
X    {
X    case SET_COLOR:
X	if (value == 0)
X	    lpr_color = 0;
X	else
X	    lpr_color = 1;
X	break;
X    default:
X	break;
X    }
X
X    return 0;
X}
END_OF_FILE
if test 1026 -ne `wc -c <'Printronix_device/lprlib/lprattr.c'`; then
    echo shar: \"'Printronix_device/lprlib/lprattr.c'\" unpacked with wrong size!
fi
# end of 'Printronix_device/lprlib/lprattr.c'
fi
if test -f 'RasterTek_device/rteklib/rtekclose.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'RasterTek_device/rteklib/rtekclose.c'\"
else
echo shar: Extracting \"'RasterTek_device/rteklib/rtekclose.c'\" \(926 characters\)
sed "s/^X//" >'RasterTek_device/rteklib/rtekclose.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/rtekclose.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/closestat.h"
X
rtekclose (status)
X    int             status;
X{
X    switch (status)
X    {
X    case CLOSE_DONE:		/* cmdlen = 1 */
X	CHKLEN (1);
X	byte (QUIT);
X	rtek_flsbuf (0);
X	break;
X    case CLOSE_FLUSH:
X    case CLOSE_PAUSE:
X	rtek_flsbuf (0);
X	break;
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 926 -ne `wc -c <'RasterTek_device/rteklib/rtekclose.c'`; then
    echo shar: \"'RasterTek_device/rteklib/rtekclose.c'\" unpacked with wrong size!
fi
# end of 'RasterTek_device/rteklib/rtekclose.c'
fi
if test -f 'RasterTek_device/rteklib/rtekerase.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'RasterTek_device/rteklib/rtekerase.c'\"
else
echo shar: Extracting \"'RasterTek_device/rteklib/rtekerase.c'\" \(1063 characters\)
sed "s/^X//" >'RasterTek_device/rteklib/rtekerase.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/rtekerase.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 25 1988
X *	Shouldn't erase on ERASE_BREAK;
X */
X
X#include "rtekpen.h"
X#include "../include/erasecom.h"
X#include "../include/attrcom.h"
X
extern int      lost;
X
rtekerase (command)
X    int             command;
X{
X    switch (command)
X    {
X    case ERASE_START:
X    case ERASE_MIDDLE: /* cmdlen = 3 */
X	CHKLEN (3);
X	byte (VAL8);
X	byte (0);
X	byte (FLOOD);
X	rtek_flsbuf (0);
X	rtekattributes (SET_COLOR, color, 0, 0, 0);
X	lost = YES;
X	break;
X    }
X}
END_OF_FILE
if test 1063 -ne `wc -c <'RasterTek_device/rteklib/rtekerase.c'`; then
    echo shar: \"'RasterTek_device/rteklib/rtekerase.c'\" unpacked with wrong size!
fi
# end of 'RasterTek_device/rteklib/rtekerase.c'
fi
if test -f 'RasterTek_device/rteklib/rtekgetpoint.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'RasterTek_device/rteklib/rtekgetpoint.c'\"
else
echo shar: Extracting \"'RasterTek_device/rteklib/rtekgetpoint.c'\" \(956 characters\)
sed "s/^X//" >'RasterTek_device/rteklib/rtekgetpoint.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/rtekgetpoint.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
rtekgetpoint (termout, x, y)
X    FILE           *termout;
X    int            *x, *y;
X{
char            buf[4];
X    CHKLEN (2);
X    byte (READCR);
X    byte (2);
X    fflush (rtekfd);
X    read (fileno (rtekfd), buf, 4);
X    *x = (char) buf[1] << 8 + (unsigned char) buf[0];
X    *y = (char) buf[3] << 8 + (unsigned char) buf[2];
X}
END_OF_FILE
if test 956 -ne `wc -c <'RasterTek_device/rteklib/rtekgetpoint.c'`; then
    echo shar: \"'RasterTek_device/rteklib/rtekgetpoint.c'\" unpacked with wrong size!
fi
# end of 'RasterTek_device/rteklib/rtekgetpoint.c'
fi
if test -f 'Regis_device/gigilib/gigierase.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Regis_device/gigilib/gigierase.c'\"
else
echo shar: Extracting \"'Regis_device/gigilib/gigierase.c'\" \(975 characters\)
sed "s/^X//" >'Regis_device/gigilib/gigierase.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/gigierase.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 * Erase the graphics area
X */
X#include <stdio.h>
X#include "gigi.h"
X#include "../include/erasecom.h"
extern FILE    *pltout;
X
gigierase (command)
X    int             command;
X{
X    switch (command)
X    {
X    case ERASE_START:
X    case ERASE_MIDDLE:
X	fprintf (pltout, ";S(E)");
X	lastop = 'S';
X	messagecount = 0;
X	break;
X    case ERASE_END:
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 975 -ne `wc -c <'Regis_device/gigilib/gigierase.c'`; then
    echo shar: \"'Regis_device/gigilib/gigierase.c'\" unpacked with wrong size!
fi
# end of 'Regis_device/gigilib/gigierase.c'
fi
if test -f 'Regis_device/gigilib/gigiopen.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Regis_device/gigilib/gigiopen.c'\"
else
echo shar: Extracting \"'Regis_device/gigilib/gigiopen.c'\" \(1079 characters\)
sed "s/^X//" >'Regis_device/gigilib/gigiopen.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/gigiopen.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 "gigi.h"
X#include "../include/enum.h"
X#include "../include/extern.h"
X
int             lastop;
X
gigiopen ()
X{
X/*
X * physical device size
X */
X    dev_xmax = 383;
X    dev_ymax = 240;
X    dev_xmin = 0;
X    dev_ymin = 0;
X    pixels_per_inch = 38;
X    aspect_ratio = 1.;
X
X/*
X * device capabilities
X */
X    need_end_erase = NO;
X    buffer_output = YES;
X    smart_clip = NO;
X    num_col = 0;
X    lastop = '\0';		/* Flag for "nothing has happened yet" */
X}
END_OF_FILE
if test 1079 -ne `wc -c <'Regis_device/gigilib/gigiopen.c'`; then
    echo shar: \"'Regis_device/gigilib/gigiopen.c'\" unpacked with wrong size!
fi
# end of 'Regis_device/gigilib/gigiopen.c'
fi
if test -f 'Regis_device/gigilib/gigireset.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Regis_device/gigilib/gigireset.c'\"
else
echo shar: Extracting \"'Regis_device/gigilib/gigireset.c'\" \(1043 characters\)
sed "s/^X//" >'Regis_device/gigilib/gigireset.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/gigireset.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 "gigi.h"
extern FILE    *pltout;
X
gigireset ()
X{
X    fprintf (pltout, "%c[2J%c[24;1H%cPpP[0,0];", ESC, ESC, ESC);
X    fprintf (pltout, "@:W (W(VI7A0S0N0M2P1(M2)))@;");
X    /* define temporary writing controls */
X    fprintf (pltout, "S(EI0N0A)[0,0]T(I0A0D0S1)P[0,0]");
X    fflush (pltout);
X    lastop = '$';		/* flag that new plot was reinitialized */
X}
END_OF_FILE
if test 1043 -ne `wc -c <'Regis_device/gigilib/gigireset.c'`; then
    echo shar: \"'Regis_device/gigilib/gigireset.c'\" unpacked with wrong size!
fi
# end of 'Regis_device/gigilib/gigireset.c'
fi
if test -f 'Tek_device/cteklib/ctekcolmap.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/ctekcolmap.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/ctekcolmap.c'\" \(965 characters\)
sed "s/^X//" >'Tek_device/cteklib/ctekcolmap.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/ctekcolmap.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
ctekcolmap (color)
X    int             color;
X{
register int    c;
X
X    switch (color)
X    {
X    case 0:
X	c = 0;
X	break;
X    case 1:
X	c = 4;
X	break;
X    case 2:
X	c = 2;
X	break;
X    case 3:
X	c = 6;
X	break;
X    case 4:
X	c = 3;
X	break;
X    case 5:
X	c = 5;
X	break;
X    case 6:
X	c = 7;
X	break;
X    case 7:
X	c = 1;
X	break;
X    default:
X	c = 1;
X    }
X    return c;
X}
END_OF_FILE
if test 965 -ne `wc -c <'Tek_device/cteklib/ctekcolmap.c'`; then
    echo shar: \"'Tek_device/cteklib/ctekcolmap.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/ctekcolmap.c'
fi
if test -f 'Tek_device/cteklib/ctekerase.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/ctekerase.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/ctekerase.c'\" \(1018 characters\)
sed "s/^X//" >'Tek_device/cteklib/ctekerase.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/ctekerase.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 * Erase the graphics area of the Tek4105
X */
X#include	<stdio.h>
X#include	"ctek.h"
X#include	"../include/erasecom.h"
X#include	"../include/enum.h"
extern FILE    *pltout;
X
ctekerase (command)
X    int             command;
X{
X    switch (command)
X    {
X    case ERASE_START:
X    case ERASE_MIDDLE:
X	cteksetmode (TEK);
X	putc (ESC, pltout);
X	putc (FF, pltout);
X	break;
X    case ERASE_END:
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 1018 -ne `wc -c <'Tek_device/cteklib/ctekerase.c'`; then
    echo shar: \"'Tek_device/cteklib/ctekerase.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/ctekerase.c'
fi
if test -f 'Tek_device/cteklib/cteklinestyle.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/cteklinestyle.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/cteklinestyle.c'\" \(892 characters\)
sed "s/^X//" >'Tek_device/cteklib/cteklinestyle.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/cteklinestyle.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 line style: dash is an integer from 0 to 7.
X * See Tek manual for choice of line styles.
X */
X#include	<stdio.h>
X#include	"ctek.h"
extern FILE    *pltout;
X
cteklinestyle (dash)
X{
X    cteksetmode (TEK);
X    if (dash >= 0 && dash < 8)
X	fprintf (pltout, "%cMV%d", ESC, dash);
X}
END_OF_FILE
if test 892 -ne `wc -c <'Tek_device/cteklib/cteklinestyle.c'`; then
    echo shar: \"'Tek_device/cteklib/cteklinestyle.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/cteklinestyle.c'
fi
if test -f 'Tek_device/cteklib/ctekopen.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/ctekopen.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/ctekopen.c'\" \(1033 characters\)
sed "s/^X//" >'Tek_device/cteklib/ctekopen.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/ctekopen.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 open routine
X */
X#include <stdio.h>
X#include "../include/enum.h"
X#include "../include/extern.h"
X
ctekopen ()
X{
X/*
X * physical device parameters
X */
X    dev_xmax = 479;
X    dev_ymax = 359;
X    dev_xmin = 0;
X    dev_ymin = 0;
X    pixels_per_inch = 52.;
X    aspect_ratio = 1.05;
X    num_col = 8;
X
X/*
X * device capabilities
X */
X    need_end_erase = NO;
X    buffer_output = YES;
X    smart_clip = NO;
X    endpause = YES;
X}
END_OF_FILE
if test 1033 -ne `wc -c <'Tek_device/cteklib/ctekopen.c'`; then
    echo shar: \"'Tek_device/cteklib/ctekopen.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/ctekopen.c'
fi
if test -f 'Tek_device/cteklib/ctekplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/ctekplot.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/ctekplot.c'\" \(1038 characters\)
sed "s/^X//" >'Tek_device/cteklib/ctekplot.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/ctekplot.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 * Move (draw=0) or draw (draw=1) to point (x,y).
X */
X#include	<stdio.h>
X#include	"ctek.h"
X#include	"../include/enum.h"
extern FILE    *pltout;
X
int             lost = 1;	/* used by the genvector routine */
X
X
X/*
X * Move (draw=0) or draw (draw=1) to point (x,y).
X */
ctekplot (x, y, draw)
X    int             x, y, draw;
X{
X
X    if (!draw)
X    {
X	cteksetmode (TEK);
X	lost = 0;
X    }
X    cteksetmode (VECTOR);
X    ctekxypack (x, y);
X}
END_OF_FILE
if test 1038 -ne `wc -c <'Tek_device/cteklib/ctekplot.c'`; then
    echo shar: \"'Tek_device/cteklib/ctekplot.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/ctekplot.c'
fi
if test -f 'Tek_device/cteklib/cteksetcoltab.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/cteklib/cteksetcoltab.c'\"
else
echo shar: Extracting \"'Tek_device/cteklib/cteksetcoltab.c'\" \(929 characters\)
sed "s/^X//" >'Tek_device/cteklib/cteksetcoltab.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/cteksetcoltab.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	"ctek.h"
X
cteksetcoltab (color, v1, v2, v3)
X    int             color, v1, v2, v3;
X{
extern FILE    *pltout;
int             c;
X
X    c = ctekcolmap (color);
X    cteksetmode (TEK);
X    fprintf (pltout, "%cTG14%d", ESC, c);
X    tekipack (v1);
X    tekipack (v2);
X    tekipack (v3);
X    return;
X}
END_OF_FILE
if test 929 -ne `wc -c <'Tek_device/cteklib/cteksetcoltab.c'`; then
    echo shar: \"'Tek_device/cteklib/cteksetcoltab.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/cteklib/cteksetcoltab.c'
fi
if test -f 'Tek_device/teklib/tekerase.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/teklib/tekerase.c'\"
else
echo shar: Extracting \"'Tek_device/teklib/tekerase.c'\" \(1029 characters\)
sed "s/^X//" >'Tek_device/teklib/tekerase.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/tekerase.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 * Erase the graphics area
X */
X#include	<stdio.h>
X#include	"tek.h"
X#include	"../include/erasecom.h"
X#include	"../include/enum.h"
extern FILE    *pltout;
X
tekerase (command)
X    int             command;
X{
X    switch (command)
X    {
X    case ERASE_START:
X    case ERASE_MIDDLE:
X	setmode (ALPHA);
X	putc (ESC, pltout);
X	putc (FF, pltout);
X	messagecount = 0;
X	lost = YES;
X	break;
X    case ERASE_END:
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 1029 -ne `wc -c <'Tek_device/teklib/tekerase.c'`; then
    echo shar: \"'Tek_device/teklib/tekerase.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/teklib/tekerase.c'
fi
if test -f 'Tek_device/teklib/tekplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Tek_device/teklib/tekplot.c'\"
else
echo shar: Extracting \"'Tek_device/teklib/tekplot.c'\" \(900 characters\)
sed "s/^X//" >'Tek_device/teklib/tekplot.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/tekplot.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 * Move (draw=0) or draw (draw=1) to point (x,y).
X */
X#include	<stdio.h>
X#include	"tek.h"
extern FILE    *pltout;
X
int             lost = 1;	/* used by the genvector routine */
X
tekplot (x, y, draw)
X{
X    if (!draw || (tekmode != VECTOR))
X	setmode (VECTOR);
X    tekxypack (x, y);
X    lost = 0;
X}
END_OF_FILE
if test 900 -ne `wc -c <'Tek_device/teklib/tekplot.c'`; then
    echo shar: \"'Tek_device/teklib/tekplot.c'\" unpacked with wrong size!
fi
# end of 'Tek_device/teklib/tekplot.c'
fi
if test -f 'Virtual_device/vplib/vplogmessage.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vplogmessage.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vplogmessage.c'\" \(1053 characters\)
sed "s/^X//" >'Virtual_device/vplib/vplogmessage.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/vplogmessage.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 "../include/enum.h"
X#include "../include/mesgcom.h"
X#include "vp.h"
X
static int      saveitlog;
X
vplogmessage (command, string)
X    int             command;
X    char            string[];
X{
X    switch (command)
X    {
X    case MESG_READY:
X	saveitlog = YES;
X	break;
X    case MESG_MESSAGE:
X	saveitlog = NO;
X	break;
X    case MESG_TEXT:
X	if (saveitlog)
X	    fprintf (stderr, "%s", string);
X	break;
X    default:
X	break;
X    }
X}
END_OF_FILE
if test 1053 -ne `wc -c <'Virtual_device/vplib/vplogmessage.c'`; then
    echo shar: \"'Virtual_device/vplib/vplogmessage.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vplogmessage.c'
fi
if test -f 'Virtual_device/vplib/vpplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vpplot.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vpplot.c'\" \(911 characters\)
sed "s/^X//" >'Virtual_device/vplib/vpplot.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/vpplot.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 <vplot.h>
X#include "../include/enum.h"
X#include "vp.h"
X
int             lost = YES;
X
vpplot (x, y, draw)
X    int             x, y, draw;
X{
X
X    vpsetflag = NO;
X
X    if (draw)
X	vp_draw ((float) x / RPERIN, (float) y / RPERIN);
X    else
X	vp_move ((float) x / RPERIN, (float) y / RPERIN);
X
X    lost = NO;
X}
END_OF_FILE
if test 911 -ne `wc -c <'Virtual_device/vplib/vpplot.c'`; then
    echo shar: \"'Virtual_device/vplib/vpplot.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vpplot.c'
fi
if test -f 'Virtual_device/vplib/vpsepwhere.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Virtual_device/vplib/vpsepwhere.c'\"
else
echo shar: Extracting \"'Virtual_device/vplib/vpsepwhere.c'\" \(875 characters\)
sed "s/^X//" >'Virtual_device/vplib/vpsepwhere.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/vpsepwhere.c
X *
X * Joe Dellinger (SEP), Feb 12 1988
X *	Inserted this sample edit history entry.
X *	Please log any further modifications made to this file:
X */
X
X#ifdef SEP
X/*
X * Override the default places Pen wants to send "out" and "head".
X * Change them back to the normal SEP defaults.
X */
char            sepoutwhere[] = "";
char            sepheadwhere[] = "";
X
X/* Make linker happy that it found it. */
sepwhere ()
X{
X};
X#endif
END_OF_FILE
if test 875 -ne `wc -c <'Virtual_device/vplib/vpsepwhere.c'`; then
    echo shar: \"'Virtual_device/vplib/vpsepwhere.c'\" unpacked with wrong size!
fi
# end of 'Virtual_device/vplib/vpsepwhere.c'
fi
if test -f 'Vplot_Kernel/Hershey/README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/Hershey/README'\"
else
echo shar: Extracting \"'Vplot_Kernel/Hershey/README'\" \(1036 characters\)
sed "s/^X//" >'Vplot_Kernel/Hershey/README' <<'END_OF_FILE'
This directory contains everything you need to create yourself a nice
set of Vplot fonts GIVEN the hershey font set already. Note that the .hmp
files here are somewhat different (better) from the .hmp files that come
with the Hershey fonts. (IE, keep the .oc files, since they contain
what you need, but throw away their .hmp files and use mine instead.)
X
Only "normal" sized fonts are used. If you want small characters, just scale
down the normal-sized ones!
X
Documentation is contained in the beginning lines of all .csh and .c files,
although the "make_vplot.csh" shell should do everything for you.
X
Note that the "romant" font of the Hershey fonts has an error in it. If you
have the "Hershey_Fonts" directory as part of your distribution, you will find
the "fixed" romant.vplot_font file there. Otherwise, read the comments in
make_vplot.csh and fix the error by hand (or do without).
X
The files in this directory are NOT under the Vplot copyright, as
some files contain code from the Hershey Font distribution.
X
X- Joe Dellinger
END_OF_FILE
if test 1036 -ne `wc -c <'Vplot_Kernel/Hershey/README'`; then
    echo shar: \"'Vplot_Kernel/Hershey/README'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/Hershey/README'
fi
if test -f 'Vplot_Kernel/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/Makefile'\"
else
echo shar: Extracting \"'Vplot_Kernel/Makefile'\" \(916 characters\)
sed "s/^X//" >'Vplot_Kernel/Makefile' <<'END_OF_FILE'
all:
X	@echo "Make install to install all graphical stuff"
X
install:
X	echo "You must be superuser to do this!"
X	sleep 1
X#	System-wide include file
X	-cd filters; ln -s `pwd`/include/vplot.h /usr/include/vplot.h
X#	Vplotlib
X	cd lvplot; make install
X#	Install the fonts
X#		This will crash if you don't have the Hershey_Fonts directory.
X#		If you have the short distribution, you'll need to get the
X#		Hershey Fonts yourself, generate the .oc files, and copy
X#		them into the "Hershey" directory. Having done that, you
X#		won't need this next line.
X	cd Hershey_Fonts; csh -xf README_Vplot
X	cd Hershey; csh -xf make_vplot.csh
X	cd ./filters/include/vplotfonts; make
X#	Filters
X	cd filters; csh -f MakeMake; make install
X#	Utilities
X	cd util; make install
X#	Manual Pages
X#		Beware, we keep our manual pages in "man9". Might need to
X#		change "./Documentation/install.csh" for your site.
X	cd Documentation; csh -xf install.csh
END_OF_FILE
if test 916 -ne `wc -c <'Vplot_Kernel/Makefile'`; then
    echo shar: \"'Vplot_Kernel/Makefile'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/Makefile'
fi
if test -f 'Vplot_Kernel/filters/Tests/ellips.f' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/Tests/ellips.f'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/Tests/ellips.f'\" \(1014 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/Tests/ellips.f' <<'END_OF_FILE'
c     draw some ellipses  
c
X	parameter ( ne = 6 )
X	parameter ( nx = 100 , ny = 100 )
c
X	real a(ne) , b(ne)
X	real xco(2*nx) , yco(2*ny)
X	integer col(ne)
X
X	data a/1.,2.,3.,1.,1.,1./
X	data b/1.,1.,1.,2.,3.,4./
X	data col/6,5,4,3,2,1/
X	
X	call vpfile('f.vp')
X	call vperase()
c      .75 = SCREEN_RATIO from vplot.h
X	call vpstretch(-10.,-10.*.75,10.,10.*.75)
X	call vpumove(-10.,-10.*.75)
X	call vpudraw(10.,-10.*.75)
X	call vpudraw(10.,10.*.75)
X	call vpudraw(-10.,10.*.75)
X	call vpudraw(-10.,-10.*.75)
X
X	do 1 ie =1,ne
X	call vpcolor( col(ie) )
X
X	xmin = -a(ie)
X	dx = 2*abs(xmin)/(nx-1)
c
X	call vpumove(xmin,0.)
X	do 10 i = 1,nx
X	x = ( xmin + (i-1)*dx )
X	y = b(ie)*sqrt ( 1. - x*x/( a(ie)**2 ) )
X	xco(i)=x
X	yco(i)=y
X	call vpudraw(x,y)
X10     continue
X
X	call vpumove(xmin,0.)
X	do 20 i = 1,nx
X	x = ( xmin + (i-1)*dx )
X	y = - b(ie)*sqrt ( 1. - x*x/( a(ie)**2 ) )
X	xco(nx+i)=x
X	yco(nx+i)=y
X	call vpudraw(x,y)
X20     continue
X
X	 if ( ie .eq. 1 ) call vpuarea(xco,yco, 2*nx, 1, 4, 4)
X
X1	continue
X
X
X	call vpendplot('f.vp')
X	stop
X	end
END_OF_FILE
if test 1014 -ne `wc -c <'Vplot_Kernel/filters/Tests/ellips.f'`; then
    echo shar: \"'Vplot_Kernel/filters/Tests/ellips.f'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/Tests/ellips.f'
fi
if test -f 'Vplot_Kernel/filters/genlib/known_bugs' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/genlib/known_bugs'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/genlib/known_bugs'\" \(1061 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/genlib/known_bugs' <<'END_OF_FILE'
genhatch.c:
X	Hatch lines may go one pixel outside of polygon boundary. Need to use
X	a smarter clipping algorithm. This isn't too bad, because on
X	high-resolution output devices who cares about one pixel anyway?
X	Genhatch produces a slight (one pixel) discontinuity across
X	device coordinate zero (Since not many devices work with negative
X	coordinates, not much of a problem. But, of course, we have one, the
X	Rastertek.)
X		If you go one pixel too far, then fatten the line, you have a
X		very noticeable problem. -- crk
X
fatvec.c:
X	Very fat tilted lines may leave slight gaps here and there.
X	(If you don't understand what I mean, just try it.)
X	Tilted lines don't fatten to the same width as vertical or horizontal
X	lines.
X
genmarker.c:
X	Use a real circle-drawing algorithm to make perfect circles,
X	instead of using the ho-hum fattened Hershey-font circles.
X
genarea.c, polysubs.c, polyfix.c:
X	Should use linked lists instead of the large static arrays it
X	currently uses. Should take out the awful repeated code to do
X	the preliminary clipping to each edge.
END_OF_FILE
if test 1061 -ne `wc -c <'Vplot_Kernel/filters/genlib/known_bugs'`; then
    echo shar: \"'Vplot_Kernel/filters/genlib/known_bugs'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/genlib/known_bugs'
fi
if test -f 'Vplot_Kernel/filters/loclib/Puthead.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/loclib/Puthead.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/loclib/Puthead.c'\" \(1105 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/loclib/Puthead.c' <<'END_OF_FILE'
X/*
X *
X *  source file:   ./filters/loclib/Puthead.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 19 1987
X *	Added check for hclose_done; Don't write to header if we've
X *	closed the history part.
X */
X
X/*
X *	The standard version of puthead will barf if the header
X *	is closed or if headstream has been changed from the last call.
X *	We need it to be tolerant of these inconsistencies.
X */
X
X#include    <stdio.h>
X#define MIXED    union { char *s; int *i; float *f; double *g; }
X
extern int      hclose_done;
X
X/*
X *	put a line on the header.
X *	the arguments are identical to printf conventions, except 
X *		there is a maximum of nine
X */
X
Puthead (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p)
X    char           *a, *b, *c, *d, *e, *f, *g, *h, *i, *j, *k, *l, *m, *n, *o, *p;
X{
FILE           *file;
extern FILE    *headstream;
X    if (headstream == NULL || hclose_done)
X	return;
X    fprintf (headstream, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p);
X    fflush (headstream);
X}
END_OF_FILE
if test 1105 -ne `wc -c <'Vplot_Kernel/filters/loclib/Puthead.c'`; then
    echo shar: \"'Vplot_Kernel/filters/loclib/Puthead.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/loclib/Puthead.c'
fi
if test -f 'Vplot_Kernel/filters/loclib/file.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/loclib/file.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/loclib/file.c'\" \(959 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/loclib/file.c' <<'END_OF_FILE'
X/*
X *	opens and creates file
X *	arguments:
X *		name	character string containing filename
X *		mode	0 open only
X *			1 create only
X *			2 try open, then create
X *	returns file descriptor
X */
int 
file (name, mode)
X    char           *name;
X    int             mode;
X{
int             filedes, open (), creat ();
X    switch (mode)
X    {
X    case 0:
X	if ((filedes = open (name, 0)) == -1)
X	{
X	    perror ("file()");
X	    err ("file() can't open file %s\n", name);
X	}
X	break;
X    case 2:
X	if ((filedes = open (name, 2)) == -1)
X    case 1:
X	    if ((filedes = creat (name, 0664)) == -1)
X	    {
X		perror ("file()");
X		err ("file() can't create file %s\n", name);
X	    }
X	    else
X	    {
X		if (-1 == close (filedes))
X		{
X		    perror ("file()");
X		    err ("file() unable to close file %s\n", name);
X		}
X		if (-1 == (filedes = open (name, 2)))
X		{
X		    perror ("file()");
X		    err ("file() unable to open file %s\n", name);
X		}
X	    }
X    }
X    return (filedes);
X}
END_OF_FILE
if test 959 -ne `wc -c <'Vplot_Kernel/filters/loclib/file.c'`; then
    echo shar: \"'Vplot_Kernel/filters/loclib/file.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/loclib/file.c'
fi
if test -f 'Vplot_Kernel/filters/loclib/getpar_string_store.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/loclib/getpar_string_store.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/loclib/getpar_string_store.c'\" \(968 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/loclib/getpar_string_store.c' <<'END_OF_FILE'
X/*
X *
X *  source file:   ./filters/loclib/getpar_string_store.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/* Rewrite 3-8-86 stew  Don't invoke parser unless we see par=.  This
X *			leaves the shell's parsed output of the command
X *			line intact, fixing joe's complaint.  Also a
X *			bit faster.
X *	   2-15-88 joe  Should be hash_item "**q", not "*q". Oops.
X */
X#include "fastpar.h"
X#include <stdio.h>
X#include <strings.h>
getpar_string_store(q,qsize,string)
hash_item **q;
int qsize;
register char *string;
X{
X register int tlen, vlen;
X register char *val;
X
X val = index(string,'=');
X if(val == ((char *) NULL)) return;
X tlen = val - string;
X if(tlen <= 0) return;
X val++;
X vlen=strlen(val);
X if(vlen <= 0) return;
X getpar_hash_store(q,qsize,string,val,tlen,vlen);
X if( tlen==3 && 0==bcmp(string,"par",3) ) {
X 	getpar_stack_par(val);
X	getpar_scan(q,qsize);
X	}
X}
END_OF_FILE
if test 968 -ne `wc -c <'Vplot_Kernel/filters/loclib/getpar_string_store.c'`; then
    echo shar: \"'Vplot_Kernel/filters/loclib/getpar_string_store.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/loclib/getpar_string_store.c'
fi
if test -f 'Vplot_Kernel/filters/loclib/known_bugs' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/loclib/known_bugs'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/loclib/known_bugs'\" \(868 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/loclib/known_bugs' <<'END_OF_FILE'
err.c should use VARARGS, but doesn't unless either "SUN" or "ULTRIX" is
defined, since it uses vsprintf. There seems to be no easy portable documented
way to write this routine on systems that don't provide vsprintf! I think
it must be possible with something called "_doprnt", but it seems to be
completely undocumented.
X
I think getpar should work OK, at least as far as the non-sep parts go.
It seems to be consistent within itself, and the one interface to the
outside world, "getpar", is varargs. However I wouldn't be surprised
if this routine gave problems on some C compilers. Someone gave me
a re-write of the routine that was supposed to be kosher for Sun IV's,
but it core dumped on our Convex and Sun III's...
X
Bufpar.c isn't used in vplot, but it is used in many programs often
associated with vplot around Stanford that link to loclib, so I include it.
END_OF_FILE
if test 868 -ne `wc -c <'Vplot_Kernel/filters/loclib/known_bugs'`; then
    echo shar: \"'Vplot_Kernel/filters/loclib/known_bugs'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/loclib/known_bugs'
fi
if test -f 'Vplot_Kernel/filters/utilities/solve.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/utilities/solve.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/utilities/solve.c'\" \(1075 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/utilities/solve.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/solve.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 * compute intersection - floating point version
X */
X
solve (pnot, p1, q1, p2, q2)
X    register int    pnot, p1, q1, p2, q2;
X{
double          invslope;
register int    qnot;
register float  tempf;
X    if (pnot == p1)
X	return (q1);
X    if (pnot == p2)
X	return (q2);
X    if (q1 == q2)
X	return (q1);
X    invslope = (q1 - q2) / ((double) (p1 - p2));
X    tempf = (pnot - p1) * invslope + (double) q1;
X    qnot = (tempf > 0) ? tempf + 0.5 : tempf - 0.5;
X    return (qnot);
X}
END_OF_FILE
if test 1075 -ne `wc -c <'Vplot_Kernel/filters/utilities/solve.c'`; then
    echo shar: \"'Vplot_Kernel/filters/utilities/solve.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/utilities/solve.c'
fi
if test -f 'Vplot_Kernel/filters/utilities/sort.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/filters/utilities/sort.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/filters/utilities/sort.c'\" \(1047 characters\)
sed "s/^X//" >'Vplot_Kernel/filters/utilities/sort.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/sort.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 * sort the elements of vec into ascending order.
X */
sort (vec, n)
X    register int   *vec;
X    int             n;
X{
register int   *above, *below, *last;
register int    temp;
X    last = vec + (n - 1);
X    for (above = vec; above < last; above++)
X    {
X	for (below = above + 1; below <= last; below++)
X	{
X	    if (*above > *below)
X	    {
X		temp = *above;
X		*above = *below;
X		*below = temp;
X	    }
X	}
X    }
X}
END_OF_FILE
if test 1047 -ne `wc -c <'Vplot_Kernel/filters/utilities/sort.c'`; then
    echo shar: \"'Vplot_Kernel/filters/utilities/sort.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/filters/utilities/sort.c'
fi
if test -f 'Vplot_Kernel/lvplot/puth.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/puth.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/puth.c'\" \(926 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/puth.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/puth.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#ifndef FORTRAN
X#include <stdio.h>
X
puth (w, iop)
X    register int    w;
X    register FILE  *iop;
X{
register int    j;
X
X    j = w & 255;		/* low order byte of halfword value */
X    w >>= 8;
X    putc ((char) j, iop);
X    j = w & 255;		/* high order byte of halfword value */
X    putc ((char) j, iop);
X    return (ferror (iop));
X}
X#endif
END_OF_FILE
if test 926 -ne `wc -c <'Vplot_Kernel/lvplot/puth.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/puth.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/puth.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_color.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_color.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_color.c'\" \(906 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_color.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_color.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 COLOR vpcolor_
X#define COL   *col
X
X#else
X
X#define COLOR vp_color
X#define COL   col
X
X#endif
X
COLOR (col)
X    int             COL;
X{
int             c;
X    c = COL;
X    putc (VP_COLOR, vp_pc._pltout);
X    puth (c, vp_pc._pltout);
X}
END_OF_FILE
if test 906 -ne `wc -c <'Vplot_Kernel/lvplot/vp_color.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_color.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_color.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_fat.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_fat.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_fat.c'\" \(922 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_fat.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_fat.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 FAT 	 vpfat_
X#define FATNESS  *fatness
X
X#else
X
X#define FAT 	 vp_fat
X#define FATNESS  fatness
X
X#endif
X
FAT (fatness)
X    int             FATNESS;
X{
int             f;
X    f = FATNESS;
X    putc (VP_FAT, vp_pc._pltout);
X    puth (f, vp_pc._pltout);
X}
END_OF_FILE
if test 922 -ne `wc -c <'Vplot_Kernel/lvplot/vp_fat.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_fat.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_fat.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_filep.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_filep.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_filep.c'\" \(886 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_filep.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_filep.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#ifndef FORTRAN
vp_filep (filepntr)
X    FILE           *filepntr;
X{
X    vp_pc._pltout = filepntr;
X}
X#else
vpfilep_ (filepntr)
X    int            *filepntr;
X{
extern FILE    *fdopen ();
X    vp_filep (fdopen (*filepntr, "w"));
X}
X#endif
END_OF_FILE
if test 886 -ne `wc -c <'Vplot_Kernel/lvplot/vp_filep.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_filep.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_filep.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_pc.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_pc.h'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_pc.h'\" \(952 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_pc.h' <<'END_OF_FILE'
X#include <stdio.h>
X
typedef struct 
X{
X	float _x0, _y0;		/* origin in inches */
X	float _xu0, _yu0;	/* value in user units corresponding to x0,y0 */
X	float _xscl, _yscl;	/* scaling from user units to inches */
X	float _xold, _yold;	/* old pen position (in inches) */
X	float _dpos;		/* position in dash sequence (in inches) */
X	float _ddef[4];		/* definition of current dashes (in inches) */
X	int _dashon;		/* =0 if not dashed line; =1 if dashed line */
X	int _pendown;		/* is pen up or down */
X	FILE *_pltout;		/* output file */
X	int _xjust, _yjust;	/* current x and y text justification */
X	int _font, _prec, _ovly;/* current text font, precision, and overlay */
X} PC;
X
X/*
X * This structure used to be called just plain "pc", but this is disaster
X * on 4.3bsd where the same name is used in the internal FORTRAN routines.
X * You get no warnings about this from the linker, either! You just get
X * random problems all over the place.
X */
X
extern PC vp_pc;
END_OF_FILE
if test 952 -ne `wc -c <'Vplot_Kernel/lvplot/vp_pc.h'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_pc.h'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_pc.h'
fi
if test -f 'Vplot_Kernel/lvplot/vp_scale.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_scale.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_scale.c'\" \(908 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_scale.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_scale.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 SCALE	vpscale_
X#define XSCL	*xscl
X#define YSCL	*yscl
X
X#else
X
X#define SCALE	vp_scale
X#define XSCL	xscl
X#define YSCL	yscl
X
X#endif
X
SCALE (xscl, yscl)
X    float           XSCL, YSCL;
X{
X    vp_pc._xscl = XSCL;
X    vp_pc._yscl = YSCL;
X}
END_OF_FILE
if test 908 -ne `wc -c <'Vplot_Kernel/lvplot/vp_scale.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_scale.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_scale.c'
fi
if test -f 'Vplot_Kernel/lvplot/vp_uplot.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Vplot_Kernel/lvplot/vp_uplot.c'\"
else
echo shar: Extracting \"'Vplot_Kernel/lvplot/vp_uplot.c'\" \(1055 characters\)
sed "s/^X//" >'Vplot_Kernel/lvplot/vp_uplot.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_uplot.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 UPLOT	vpuplot_
X#define X		*x
X#define Y		*y
X#define DOWN	*down
X
X#else
X
X#define UPLOT	vp_uplot
X#define X		x
X#define Y		y
X#define DOWN	down
X
X#endif
X
UPLOT (x, y, down)
X    float           X, Y;
X    int             DOWN;
X{
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, DOWN);
X}
END_OF_FILE
if test 1055 -ne `wc -c <'Vplot_Kernel/lvplot/vp_uplot.c'`; then
    echo shar: \"'Vplot_Kernel/lvplot/vp_uplot.c'\" unpacked with wrong size!
fi
# end of 'Vplot_Kernel/lvplot/vp_uplot.c'
fi
echo shar: End of archive 4 \(of 24\).
cp /dev/null ark4isdone
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