$Id: README,v 2.3 89/12/11 09:25:07 jta Exp $

     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation; either version 1, or any later version.

     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     file "License" for more details.

     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

What we have here
*****************

dr_lib.c :
----------

dr_lib.c is a collection of simple device level graphics drawing
subroutines.  dr_lib.c has several output choises: it will produce HPGL
directly, produce plot(3) code, and use gl_plot(3) library to support EGA,
CGA, HERCULES, IBM graphics printer, Laserjet, etc.  gl_plot was posted in
comp.sources.unix some time ago, and it is made by umix!m-net!dtlewis!lewis,
the rest is made by me.  There is a compile time scwith (see Makefile) to
include code generation for gl_plot().  If you want to include gl_plot()
code, make sure your gl_plot() library works in your system.

I once made a quick port of gl_lib to 386 UNIX (Enix), but I have no longer
acces to that system.  My current system is Interactive SVr3.2, and it was
not so easy to port gl_lib here.  I also have X now, and that has Tektronix
emulation.   That is why I implemented the standard *NIX plot(3) library
interface into dr_lib.c (*NIX has also tplot(1)), so this is my current
method to get plots onto screen.


draw.c :
--------

draw.c is intended to be a "front-end" for dr_lib routines.  draw.c makes
use of line and text drawing and pen movement routines to build x-y pictures
with axes, labels, text etc.  Nothing will prevent you from making your own
main program to call directly functions in dr_lib.c, if you like.  Real
[nt]roff-able man page is also included in this kit (draw.1), hope it is up
to date.


kiero.c :
---------

kiero.c is a fancy demo program that will produce data into its stdout, to
be processed further by draw.  It will also put enough definitions, so that
you can pipe its stdout directly to draw.


Compiling and Installing :
--------------------------

1) Edit the Makefile to suit your system.  Then say 'make'.  This version of
   draw is developed under Interactive 386/ix SysV 3.2.  draw was born veery
   looong time ago started under BSD 4.x, has also been compiled under
   MosseDos (MSC x), and even VMS.  Porting to these systems should be quite
   easy, send the diffs to me if there is something special.

2) draw will use enviroment variable DRAWDEV to decide what kind of device
   it should work for.  Default value is `ega' for gl_plot() subroutine
   package.  That, again will use GLMODE to choose between EGA, CGA, VGA
   etc.  I have:
	DRAWDEV=plot;	export DRAWDEV	# my default is to pipe to tplot(1)
	GLMODE=256;	export GLMODE	# but specifying -tega, I get it to
					# my Epson FX-80...
	PLOTDEV=lp;	export PLOTDEV	# ... which is /dev/lp
   in my .profile 



To do :
-------

- Real support for X.

- Suggestions ?


   I would like to hear a) experiences in porting this package into
   different systems, b) bugs & new features, so that I can fix and
   include them in next version, if it ever will be made.

	jta@sah.vtt.fi	voice: +358 0 4566425

	Juha Takala
	VTT/SAH
	PL 34
	02151 Espoo
	Finland


