v04i070: JetRoff Source Code (01 of 7)

root2 at pcrat.UUCP root2 at pcrat.UUCP
Sun Sep 18 09:03:37 AEST 1988


Posting-number: Volume 4, Issue 70
Submitted-by: "A. Nonymous" <root2 at pcrat.UUCP>
Archive-name: jetroff/src/Part01

[WARNING:  This package is Shareware.  It is also a prime example of the
reason why I accept shareware while r$ doesn't.  ++bsa]

#! /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 1 (of 7)."
# Contents:  Copyright Credits MANIFEST README Register.mm bm bm/README
#   bm/error.c bm/makefile bsd bsd/README bsd/makefile bsd/memory.h
#   bsd/memset.c bsd/string.h bsd/vfprintf.c bsd/vprintf.c djet
#   djet/draw.h djet/error.c djet/paths.h djet/stubs.c
#   djet/tmac.jetroff doc doc/400mpairs.d doc/400wpairs.d
#   doc/fontcfg.1 doc/jetcheck.1 doc/jetroff_bm.1 doc/makeDESC.1
#   doc/makefile doc/mkfont.1 doc/pcr32P.jbm doc/sfp2pk.1
#   doc/sword.clp font font/devjet font/devjet/ascii7.code
#   font/devjet/mathit.code font/devjet/mathtrf.code
#   font/devjet/roman0.code font/devjet/roman2.code
#   font/devjet/roman2i.code font/makefile font/mkfont
#   font/mkfont/Makefile font/mkfont/dev.h font/mkfont/font.h
#   font/mkfont/strsave.c
# Wrapped by rick at pcroe on Sat Aug 27 13:00:55 1988
PATH=/bin:/usr/bin:/usr/ucb:/usr/lbin:$PATH ; export PATH
if test -f 'Copyright' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Copyright'\"
else
echo shar: Extracting \"'Copyright'\" \(357 characters\)
sed "s/^X//" >'Copyright' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
END_OF_FILE
if test 357 -ne `wc -c <'Copyright'`; then
    echo shar: \"'Copyright'\" unpacked with wrong size!
fi
# end of 'Copyright'
fi
if test -f 'Credits' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Credits'\"
else
echo shar: Extracting \"'Credits'\" \(681 characters\)
sed "s/^X//" >'Credits' <<'END_OF_FILE'
XThe fonts found in font/devjet/pk/ were generated from Donald Knuth's
XMetafont descriptions of the Computer Modern family of typefaces.
XThese fonts are in the public domain, as far as I know.  Volumes C
Xand E of his Computers & Typesetting series are worth owning.
X
XThe troff font description compiler found in font/mkfont/ was supplied
Xby Duane H. Hesser.  The "mkfont" program is in the public domain.
X
XEverything else was written from scratch by Rick Richardson of PC
XResearch, Inc. and is distributed as Shareware under the restrictions
Xlisted in the Copyright and License files.
X
XRick Richardson
XPC Research, Inc.
X94 Apple Orchard Drive
XTinton Falls, NJ   07724
X
XAugust, 1988
END_OF_FILE
if test 681 -ne `wc -c <'Credits'`; then
    echo shar: \"'Credits'\" unpacked with wrong size!
fi
# end of 'Credits'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(3486 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X Copyright                  1	
X Credits                    1	
X Fonts                      3	
X License                    3	
X MANIFEST                   1	This shipping list
X README                     1	
X Register.mm                1	
X bm                         1	
X bm/README                  1	
X bm/error.c                 1	
X bm/hp2jetbm.c              3	
X bm/jetbm.c                 2	
X bm/makefile                1	
X bm/map.c                   6	
X bm/myreopen.c              3	
X bm/pcpaint.c               6	
X bm/pcx.c                   5	
X bm/unittestC.sh            2	
X bm/unittestM.sh            2	
X bm/unittestR.sh            3	
X bsd                        1	
X bsd/README                 1	
X bsd/getopt.c               2	
X bsd/getopt1.c              2	
X bsd/jetroffBSD.sh          3	
X bsd/jetusageBSD.sh         2	
X bsd/makefile               1	
X bsd/memory.h               1	
X bsd/memset.c               1	
X bsd/string.h               1	
X bsd/vfprintf.c             1	
X bsd/vprintf.c              1	
X djet                       1	
X djet/Porting               7	
X djet/arc.c                 3	
X djet/bitmap.c              3	
X djet/convert.c             4	
X djet/device.c              4	
X djet/dlj.h                 3	
X djet/draw.c                5	
X djet/draw.h                1	
X djet/error.c               1	
X djet/jetbackup.c           6	
X djet/jetcheck.c            2	
X djet/jetroff.sh            4	
X djet/jetroff_bm.c          4	
X djet/line.c                2	
X djet/lj.h                  2	
X djet/main.c                3	
X djet/makefile              3	
X djet/out.c                 3	
X djet/paths.h               1	
X djet/pk16.c                7	
X djet/spline.c              2	
X djet/stubs.c               1	
X djet/tmac.jetroff          1	
X djet/verify.c              3	
X doc                        1	
X doc/400mpairs.d            1	
X doc/400wpairs.d            1	
X doc/BM.5                   5	
X doc/djet.1                 4	
X doc/djet.1.spec            2	
X doc/djet.mm                3	
X doc/fontcfg.1              1	
X doc/fontlist.5             4	
X doc/jetbackup.1            2	
X doc/jetbm.1                2	
X doc/jetcheck.1             1	
X doc/jetroff.1              4	
X doc/jetroff_bm.1           1	
X doc/makeDESC.1             1	
X doc/makefile               1	
X doc/mkfont.1               1	
X doc/monster.clp            2	(Binary)
X doc/pcpaint.1              2	
X doc/pcr32P.jbm             1	(Binary)
X doc/pcx.1                  2	
X doc/sfp2pk.1               1	
X doc/sword.clp              1	(Binary)
X font                       1	
X font/devjet                1	
X font/devjet/ascii7.code    1	
X font/devjet/fontcfg.sh     2	
X font/devjet/fontlist       4	
X font/devjet/makeDESC.c     7	
X font/devjet/makefile       2	
X font/devjet/mathit.code    1	
X font/devjet/mathsy.code    2	
X font/devjet/mathtrf.code   1	
X font/devjet/roman0.code    1	
X font/devjet/roman2.code    1	
X font/devjet/roman2i.code   1	
X font/devjet/sfp2pk.c       6	
X font/makefile              1	
X font/mkfont                1	
X font/mkfont/Makefile       1	
X font/mkfont/README         2	
X font/mkfont/dev.h          1	
X font/mkfont/font.h         1	
X font/mkfont/makedesc.c     5	
X font/mkfont/mkfont.1       2	
X font/mkfont/mkfont.c       5	
X font/mkfont/nextword.c     2	
X font/mkfont/rdfont.c       5	
X font/mkfont/readdesc.c     4	
X font/mkfont/strsave.c      1	
X makefile                   2	
END_OF_FILE
if test 3486 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(4512 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X
X
X
X
X
X
X
X				 JetRoff
X		  Device Independent Troff Postprocessor
X				   for
X		      HP LaserJet Series II Printers
X
X			   Shareware Version 1.1
X
X
X       1.  INTRODUCTION
X
X       This is the Shareware distribution of JetRoff, a	device
X       independent troff (ditroff) postprocessor.  JetRoff converts
X       ditroff output for printing on an HP LaserJet Series II
X       printer.	 JetRoff has not been tested on	the older HP laser
X       printers.
X
X
X       2.  REQUIREMENTS
X
X       JetRoff requires	the following:
X
X	  - Documenters	Workbench version 2.0 (DWB 2.0)
X
X	  - Three Megabytes of disk space
X
X	  - UNIX operating system
X
X       At this time, JetRoff is	known to run on	80386 and 80286
X       hardware, under UNIX System V.2 and V.3.
X
X
X       3.  FEATURES
X
X       The complete JetRoff distribution has the following
X       features:
X
X	  - Converts ditroff documents for printing on the HP.
X
X	  - Supports special characters	and drawing commands for
X	    grap, pic, tbl, and	eqn preprocessors.
X
X	  - Has	R, I, B, CW, S,	SI, ST,	H, HI, HB, and HD fonts, in
X	    sizes 4-40
X
X	  - Can	use HP compatible Soft Fonts.
X
X	  - Automatically downloads glyphs as needed.
X
X	  - Can	print in landscape or portrait orientations.
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X	  - Can	print multiple logical pages per physical page.
X
X	  - Can	print manual pages on both sides of legal paper	for
X	    four pages per sheet.
X
X	  - Can	include	PC Paint Plus, PC Paintbrush, and JetRoff
X	    bitmaps in documents via a simple macro.  Users can
X	    define other bitmap	formats.
X
X	  - Uses Automatic Adaptive Rasterization to handle complex
X	    pic	diagrams without causing HP's infamous ``21
X	    ERROR''.
X
X
X       4.  INSTALLATION
X
X	 1.  Read the ``Copyright'' and	``License'' agreements in
X	     this directory.
X
X	 2.  Look through the makefiles	and adjust CFLAGS and
X	     LFLAGS as needed for your compiler.  Typically, just
X	     move the set that applies to you after the	ones that
X	     don't.  Change BIN	if you don't want the programs in
X	     the normal	places.	 I wouldn't advise changing the
X	     path for the font libraries ``/usr/lib/font/devjet'',
X	     since troff itself	uses some of this information.
X
X	 3.  Edit ``djet/jetroff.sh'' and set the correct options
X	     so	that your ``lp'' spooler sends its output to your
X	     printer without converting	NL to CR/NL.  On our
X	     system, this option is ``-otroff''.  You might also
X	     have to change the	name which refers to DWB 2.0 troff
X	     (sometimes	called ditroff).
X
X	 4.  If	you do not have	the extended font set for JetRoff,
X	     you must also edit	``font/devjet/fontlist'' and
X	     comment out the H,	HI, HB,	and HD lines.
X
X	 5.  If	you are	a BSD site, go to the root of the source
X	     tree and type ``make bsd''.  This attempts	to build
X	     stuff that	is missing from	BSD and	is needed by
X	     JetRoff.  You had best take a look	at the README
X	     there.
X
X	 6.  Go	to the root of the source tree and type	``make
X	     install''.	 If you'd rather build JetRoff piece by
X	     piece, you	need to	visit directories djet,	bm,
X	     font/mkfont, and font/devjet.
X
X	 7.  cd	to ``doc'', and	type ``make man''.  If your shell
X	     is	too old	to grok	the ``jetroff''	script,	do this:
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X		tbl *.[15] | troff -mjetroff -man -Tjet | djet | lp -otroff
X
X	     (Remember,	the ``-otroff''	depends	on your	local
X	     printer configuration).
X
X	 8.  If	you had	to make	any changes to JetRoff to get it to
X	     work on your computer, send the changes to
X	     uunet!pcrat!jetroff.
X
X	 9.  Go	to the root of the source tree and type	``jetroff
X	     -mm Register.mm''.	 Fill out the form and mail it to:
X
X		  PC Research, Inc.
X		  JetRoff Shareware
X		  94 Apple Orchard Drive
X		  Tinton Falls,	NJ   07724
X
X	10.  Remember that if you give someone a copy of the
X	     JetRoff source code, you must give	it to them without
X	     your changes added	in.  Give them the original source
X	     and a ``patch'' file.
X
X
X       5.  MORE	FONTS
X
X       If you have some	packed format font files, or have converted
X       some HP style Soft Font files to	the packed format, and you
X       want to add them	to JetRoff, follow this	procedure:
X
X	 1.  Make sure that you	follow our naming convention, which
X	     is	that the typeface name is followed by the point
X	     size and suffixed with ``.300pk''.
X
X	 2.  Put the font files	in /usr/lib/font/devjet/pk.
X
X	 3.  cd	/usr/lib/font/devjet.
X
X	 4.  Edit fontlist, and	add the	info about your	font.
X
X	 5.  Run ``fontcfg''.  That's it.
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
END_OF_FILE
if test 4512 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
if test -f 'Register.mm' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'Register.mm'\"
else
echo shar: Extracting \"'Register.mm'\" \(1153 characters\)
sed "s/^X//" >'Register.mm' <<'END_OF_FILE'
X'\"
X'\"
X'\"	JetRoff Registration form
X'\"	Print me with jetroff and mail
X'\"
X'\"	This actually looks better if B is HB or HD
X'\"
X.PH "'''"
X.DS C
X'\"	This looks better if B is HB
X.ft B
X.S 20
XJetRoff \(tm User Registration Form
X
X.ft P
X.S 6
XReturn to:
X.S 10
XPC Research, Inc.
XJetRoff Shareware
X94 Apple Orchard Drive
XTinton Falls, NJ   07724
X.DE
X
X
XIf you would like to contribute and register your copy of JetRoff,
Xplease complete this form.  The suggested contribution, per computer
Xon which you use JetRoff, is $50.00 for an individual and $100.00
Xfor a business (US Dollars).  Write to us for site licensing or
Xresale information.
X
XI have read the JetRoff Licensing agreement and agree to the terms
Xand conditions stated in it.
X
X
X'\"	This looks better if B is HD
X.ft B
X.ta .75i
XSigned	\l'4i'
X
XName	\l'4i'
X
XCompany	\l'4i'
X
XAddress	\l'4i'
X
X	\l'4i'
X
X	\l'4i'
X
XPhone	\l'4i'
X
X
X
X.ta 1.5i
XComputer	\l'3.25i'
X
XOperating system	\l'3.25i'
X
XI got my copy from	\l'3.25i'
X
X
X
X
X.ta 3i
X1)  Contribution	\l'1i'
X
X2)  Number of Registrations	\l'1i'
X
X3)  1) \(mu 2) \(eq Total Contribution	\l'1i'
X
X4)  NJ Resident Sales Tax	\l'1i'
X
X5)  3) \(pl 4) \(eq Total Enclosed	\l'1i'
END_OF_FILE
if test 1153 -ne `wc -c <'Register.mm'`; then
    echo shar: \"'Register.mm'\" unpacked with wrong size!
fi
# end of 'Register.mm'
fi
if test ! -d 'bm' ; then
    echo shar: Creating directory \"'bm'\"
    mkdir 'bm'
fi
if test -f 'bm/README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bm/README'\"
else
echo shar: Extracting \"'bm/README'\" \(248 characters\)
sed "s/^X//" >'bm/README' <<'END_OF_FILE'
XTo make your own bitmap converter, use the functions found in:
X
X	map.c error.c myreopen.c
X
Xas the skeleton.  Put your specific stuff in xyzzy.c and link with
Xthe above.  The three bitmap readers already here will be a good
Xguide.
X
X-Rick Richardson
END_OF_FILE
if test 248 -ne `wc -c <'bm/README'`; then
    echo shar: \"'bm/README'\" unpacked with wrong size!
fi
# end of 'bm/README'
fi
if test -f 'bm/error.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bm/error.c'\"
else
echo shar: Extracting \"'bm/error.c'\" \(1040 characters\)
sed "s/^X//" >'bm/error.c' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
X
X/*
X * $Id: error.c,v 1.1 88/08/26 23:26:20 rick Exp $
X *
X * $Log:	error.c,v $
X * Revision 1.1  88/08/26  23:26:20  rick
X * Initial revision
X * 
X */
X#ifndef lint
Xstatic char rcsid[] = "$Id: error.c,v 1.1 88/08/26 23:26:20 rick Exp $";
X#endif
X
X#include <stdio.h>
X#include <varargs.h>
X
Xextern char	*argv0;
X
X/* VARARGS */
Xerror(va_alist)
Xva_dcl
X{
X	va_list	args;
X	int	fatal;
X	char	*fmt;
X	void	exit();
X
X	va_start(args);
X#	ifdef lint
X		fatal = 0;
X		fmt = "";
X#	else
X		fatal = va_arg(args, int);
X		fmt = va_arg(args, char *);
X#	endif
X	(void) fprintf(stderr, "%s: ", argv0);
X	(void) vfprintf(stderr, fmt, args);
X	va_end(args);
X	(void) putc('\n', stderr);
X	if (fatal)
X		(void) exit(fatal);
X}
END_OF_FILE
if test 1040 -ne `wc -c <'bm/error.c'`; then
    echo shar: \"'bm/error.c'\" unpacked with wrong size!
fi
# end of 'bm/error.c'
fi
if test -f 'bm/makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bm/makefile'\"
else
echo shar: Extracting \"'bm/makefile'\" \(995 characters\)
sed "s/^X//" >'bm/makefile' <<'END_OF_FILE'
X#
X# $Id: makefile,v 1.1 88/08/26 23:26:22 rick Exp $
X#
X#	Build bitmap readers
X#
XCOMOBJ=	map.o error.o myreopen.o
XCOMSRC=	map.c error.c myreopen.c
XBIN=	/usr/local/bin
XBIN=	/usr/bin
XPROGS=	pcpaint pcx jetbm hp2jetbm
XSTD=	"-DSTD=\"lib/bitmaps\""
X
X#	For BSD
XCFLAGS=-O -I../bsd $(STD)
XLFLAGS=../bsd/bsd.a
X
X#	For AT&T 286 SGS:
XCFLAGS= -O -Ml $(STD) -DERR_SEG_OVERWRITE
XLFLAGS=
X
X#	For Normal UNIX SYstem V.3:
XCFLAGS= -O $(STD)
XLFLAGS=
X
Xall:	$(PROGS)
X
Xpcpaint: pcpaint.o $(COMOBJ)
X	$(CC) $(CFLAGS) pcpaint.o $(COMOBJ) $(LFLAGS) -o $@
X
Xpcx: pcx.o $(COMOBJ)
X	$(CC) $(CFLAGS) pcx.o $(COMOBJ) $(LFLAGS) -o $@
X
Xjetbm: jetbm.o $(COMOBJ)
X	$(CC) $(CFLAGS) jetbm.o $(COMOBJ) $(LFLAGS) -o $@
X
Xhp2jetbm: hp2jetbm.c
X	$(CC) $(CFLAGS) hp2jetbm.c $(LFLAGS) -o $@
X
Xinstall: all
X	cp $(PROGS) $(BIN)
X
Xlint:
X	lint	$(STD) pcpaint.c $(COMSRC) >pcpaint.out
X	lint	$(STD) pcx.c $(COMSRC) >pcx.out
X	lint	$(STD) jetbm.c $(COMSRC) >jetbm.out
X	lint	hp2jetbm.c >hp2jetbm.out
X
Xclean:
X	rm -f *.o *.out
X
Xclobber: clean
X	rm -f $(PROGS)
END_OF_FILE
if test 995 -ne `wc -c <'bm/makefile'`; then
    echo shar: \"'bm/makefile'\" unpacked with wrong size!
fi
# end of 'bm/makefile'
fi
if test ! -d 'bsd' ; then
    echo shar: Creating directory \"'bsd'\"
    mkdir 'bsd'
fi
if test -f 'bsd/README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/README'\"
else
echo shar: Extracting \"'bsd/README'\" \(988 characters\)
sed "s/^X//" >'bsd/README' <<'END_OF_FILE'
XThis directory contains stuff I found missing from BSD when I
Xported JetRoff to a BSD system.  I can't swear that this will
Xwork on all other BSD systems.
X
XRather than clutter up perfectly good System V source code, I've
Xprovided a simulation of the things from System V that are needed.
X
XThe vfprintf and vfprintf simulations worry me, since _doprnt is
Xnot documented...
X
XThe BSD Bourne shell is some ancient relic, hence there are
Xtwo shell files here that replace the one shell file used under
XSystem V.  These seeem to work, but are likely to be out of
Xsync with the one in djet.
X
XI swiped the getopt stuff from Rich $alz, and hacked a little.
XIf you want the original (and man page), it's in volume 7 of
Xcomp.sources.unix.  Hence, getopt.c and getopt1.c are in the
Xpublic domain.  Everything else comes under the Shareware license.
X
XDo a make install if you need the getopt and jetroff shells
Xin this directory.  Remember, the shell will need a little
Xsite specific tweaking.
X
X-Rick
END_OF_FILE
if test 988 -ne `wc -c <'bsd/README'`; then
    echo shar: \"'bsd/README'\" unpacked with wrong size!
fi
# end of 'bsd/README'
fi
if test -f 'bsd/makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/makefile'\"
else
echo shar: Extracting \"'bsd/makefile'\" \(526 characters\)
sed "s/^X//" >'bsd/makefile' <<'END_OF_FILE'
X#
X#	Missing stuff for BSD
X#
X#	do "make all" before building JetRoff
X#	if you don't have getopt(1), do "make install" as well
X#
XBIN=/usr/local/bin
XBIN=/usr/bin
XINDEX=-DINDEX=strchr
XINDEX=
XCFLAGS=-O $(INDEX)
XOBJ=getopt.o memset.o vprintf.o vfprintf.o
XAR=ar
X
Xall:	bsd.a getopt
X
Xbsd.a:	$(OBJ)
X	$(AR) uv bsd.a $(OBJ)
X
Xgetopt:	getopt1.c bsd.a
X	$(CC) $(CFLAGS) getopt1.c bsd.a -o $@
X
Xinstall: all
X	cp getopt $(BIN)
X	cp jetroffBSD.sh $(BIN)/jetroff
X	cp jetusageBSD.sh $(BIN)/jetusage
X
Xclean:
X	-rm -f *.o
X
Xclobber: clean
X	-rm -f bsd.a
END_OF_FILE
if test 526 -ne `wc -c <'bsd/makefile'`; then
    echo shar: \"'bsd/makefile'\" unpacked with wrong size!
fi
# end of 'bsd/makefile'
fi
if test -f 'bsd/memory.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/memory.h'\"
else
echo shar: Extracting \"'bsd/memory.h'\" \(109 characters\)
sed "s/^X//" >'bsd/memory.h' <<'END_OF_FILE'
X#define	memcpy(d, s, l)	bcopy(s, d, l)
X
X#define	lobyte(x)	( (x) & 255 )
X#define	hibyte(x)	( ((x)>>8) & 255 )
END_OF_FILE
if test 109 -ne `wc -c <'bsd/memory.h'`; then
    echo shar: \"'bsd/memory.h'\" unpacked with wrong size!
fi
# end of 'bsd/memory.h'
fi
if test -f 'bsd/memset.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/memset.c'\"
else
echo shar: Extracting \"'bsd/memset.c'\" \(94 characters\)
sed "s/^X//" >'bsd/memset.c' <<'END_OF_FILE'
Xmemset(d, c, l)
Xregister char	*d;
Xregister char c;
Xregister int l;
X{
X	while (l--) *d++ = c;
X}
END_OF_FILE
if test 94 -ne `wc -c <'bsd/memset.c'`; then
    echo shar: \"'bsd/memset.c'\" unpacked with wrong size!
fi
# end of 'bsd/memset.c'
fi
if test -f 'bsd/string.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/string.h'\"
else
echo shar: Extracting \"'bsd/string.h'\" \(66 characters\)
sed "s/^X//" >'bsd/string.h' <<'END_OF_FILE'
X#include <strings.h>
X
X#define	strchr	index
X#define	strrchr	rindex
END_OF_FILE
if test 66 -ne `wc -c <'bsd/string.h'`; then
    echo shar: \"'bsd/string.h'\" unpacked with wrong size!
fi
# end of 'bsd/string.h'
fi
if test -f 'bsd/vfprintf.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/vfprintf.c'\"
else
echo shar: Extracting \"'bsd/vfprintf.c'\" \(123 characters\)
sed "s/^X//" >'bsd/vfprintf.c' <<'END_OF_FILE'
X#include <stdio.h>
X#include <varargs.h>
X
Xvfprintf(fp, fmt, ap)
XFILE	*fp;
Xchar	*fmt;
Xva_list	ap;
X{
X	_doprnt(fmt, ap, fp);
X}
END_OF_FILE
if test 123 -ne `wc -c <'bsd/vfprintf.c'`; then
    echo shar: \"'bsd/vfprintf.c'\" unpacked with wrong size!
fi
# end of 'bsd/vfprintf.c'
fi
if test -f 'bsd/vprintf.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'bsd/vprintf.c'\"
else
echo shar: Extracting \"'bsd/vprintf.c'\" \(112 characters\)
sed "s/^X//" >'bsd/vprintf.c' <<'END_OF_FILE'
X#include <stdio.h>
X#include <varargs.h>
X
Xvprintf(fmt, ap)
Xchar	*fmt;
Xva_list	ap;
X{
X	_doprnt(fmt, ap, stdout);
X}
END_OF_FILE
if test 112 -ne `wc -c <'bsd/vprintf.c'`; then
    echo shar: \"'bsd/vprintf.c'\" unpacked with wrong size!
fi
# end of 'bsd/vprintf.c'
fi
if test ! -d 'djet' ; then
    echo shar: Creating directory \"'djet'\"
    mkdir 'djet'
fi
if test -f 'djet/draw.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'djet/draw.h'\"
else
echo shar: Extracting \"'djet/draw.h'\" \(644 characters\)
sed "s/^X//" >'djet/draw.h' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
X
X/*
X * $Id: draw.h,v 1.1 88/08/26 23:10:55 rick Exp $
X *
X * $Log:	draw.h,v $
X * Revision 1.1  88/08/26  23:10:55  rick
X * Initial revision
X * 
X */
X
X/*
X *	paper size
X */
X
X#define	XPIXELS	(14*300)
X#define	YPIXELS	(14*300)
X#define	XBYTES	(XPIXELS/8)
X
X/* extern char	bm[YPIXELS][XBYTES]; */
END_OF_FILE
if test 644 -ne `wc -c <'djet/draw.h'`; then
    echo shar: \"'djet/draw.h'\" unpacked with wrong size!
fi
# end of 'djet/draw.h'
fi
if test -f 'djet/error.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'djet/error.c'\"
else
echo shar: Extracting \"'djet/error.c'\" \(1132 characters\)
sed "s/^X//" >'djet/error.c' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
X
X/*
X * $Id: error.c,v 1.1 88/08/26 23:10:56 rick Exp $
X *
X * $Log:	error.c,v $
X * Revision 1.1  88/08/26  23:10:56  rick
X * Initial revision
X * 
X */
X#ifndef lint
Xstatic char rcsid[] = "@(#) $Id: error.c,v 1.1 88/08/26 23:10:56 rick Exp $";
X#endif
X
X#include <stdio.h>
X#include <varargs.h>
X
Xextern void	exit();
X
Xextern char	*argv0;		/* argv0 = argv[0]; */
X
X/* VARARGS */
Xerror(va_alist)
Xva_dcl
X{
X	va_list		args;
X	register int	fatal;
X	register char	*fmt;
X
X	va_start(args);
X#	if lint			/* Lint bitches here, don't know why */
X		fatal = 0;
X		fmt = "";
X#	else
X		fatal = va_arg(args, int);	
X		fmt = va_arg(args, char *);
X#	endif
X	(void) fprintf(stderr, "%s: ", argv0);
X	(void) vfprintf(stderr, fmt, args);
X	va_end(args);
X	(void) putc('\n', stderr);
X	if (fatal)
X		exit(fatal&255);
X}
END_OF_FILE
if test 1132 -ne `wc -c <'djet/error.c'`; then
    echo shar: \"'djet/error.c'\" unpacked with wrong size!
fi
# end of 'djet/error.c'
fi
if test -f 'djet/paths.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'djet/paths.h'\"
else
echo shar: Extracting \"'djet/paths.h'\" \(773 characters\)
sed "s/^X//" >'djet/paths.h' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
X
X/*
X * $Id: paths.h,v 1.1 88/08/26 23:11:04 rick Exp $
X *
X * $Log:	paths.h,v $
X * Revision 1.1  88/08/26  23:11:04  rick
X * Initial revision
X * 
X */
X
X#define	FONTDIR		"/usr/lib/font/devjet"
X#define	RASTDIR		"/usr/lib/font/devjet/pk"
X#define	FONTENV		"JETFONTDIR"	/* Environment name for overriding */
X#define	RASTENV		"JETRASTDIR"	/* Environment name for overriding */
X
Xextern char	FontDir[];
Xextern char	RastDir[];
END_OF_FILE
if test 773 -ne `wc -c <'djet/paths.h'`; then
    echo shar: \"'djet/paths.h'\" unpacked with wrong size!
fi
# end of 'djet/paths.h'
fi
if test -f 'djet/stubs.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'djet/stubs.c'\"
else
echo shar: Extracting \"'djet/stubs.c'\" \(1027 characters\)
sed "s/^X//" >'djet/stubs.c' <<'END_OF_FILE'
X/*c
X *	JetRoff - DWB 2.0 postprocessor for HP LaserJet Series II
X *
X *	Copyright (c) 1988 PC Research, Inc.  All Rights Reserved.
X *
X *	This source code is supplied to you under the terms of the
X *	contents of the "License" agreement found with this source
X *	distribution.  You must read the "License" before you use
X *	this source code in any way.
X *
Xc*/
X
X/*
X *	Stubs for no graphics version
X */
X
X/*
X * $Id: stubs.c,v 1.1 88/08/26 23:11:07 rick Exp $
X *
X * $Log:	stubs.c,v $
X * Revision 1.1  88/08/26  23:11:07  rick
X * Initial revision
X * 
X */
X#ifndef lint
Xstatic char rcsid[] = "@(#) $Id: stubs.c,v 1.1 88/08/26 23:11:07 rick Exp $";
X#endif
X
X#include <stdio.h>
Xstatic int	first = 1;
X
Xdraw_init() { stripped(); }
Xdraw_output() { stripped(); }
Xdraw_arc() { stripped(); }
Xdraw_spline() { stripped(); }
Xdraw_line() { stripped(); }
Xdraw_circle() { stripped(); }
Xdraw_ellipse() { stripped(); }
Xbitmap() { stripped(); }
X
Xstripped()
X{
X	if (first)
X	{
X		(void) fprintf(stderr, "djet: small version, no drawing\n");
X		first = 0;
X	}
X}
END_OF_FILE
if test 1027 -ne `wc -c <'djet/stubs.c'`; then
    echo shar: \"'djet/stubs.c'\" unpacked with wrong size!
fi
# end of 'djet/stubs.c'
fi
if test -f 'djet/tmac.jetroff' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'djet/tmac.jetroff'\"
else
echo shar: Extracting \"'djet/tmac.jetroff'\" \(874 characters\)
sed "s/^X//" >'djet/tmac.jetroff' <<'END_OF_FILE'
X'\"	
X'\"	Copyright (c) 1988 PC Research, Inc.   All Rights Reserved.
X'\"	
X'\"	.BM filename type resolution justification
X'\"		filename is name of bitmap containing file
X'\"		type is the name of the filter for this type bitmap
X'\"		resolution is 300, 150, 100, or 75
X'\"		justification is L, R, C, LJ, or RJ
X'\"	.k	width of text on current line
X'\"	.d	current vertical place
X'\"	.i	current indent
X'\"	.o	current page offset
X'\"	.l	current line length
X'\"	.v	current vertical spacing
X'\"	.z	current diversion name
X'\"	
X'\"	$Id: tmac.jetroff,v 1.1 88/08/26 23:11:08 rick Exp $
X'\"	$Log:	tmac.jetroff,v $
X'\"	Revision 1.1  88/08/26  23:11:08  rick
X'\"	Initial revision
X'\"	
X'\"	
X'\"	
X.nr ## 0 1
X.de BM
X.sy jetroff_bm "\\$1" "\\$2" "\\$3" "\\$4" \\n(.k \\n(.d \\n(.i \\n(.o \
X	\\n(.l \\n(.v "\\n(.z" >/tmp/jet\\n+(##.\n($$
X.so /tmp/jet\\n(##.\n($$
X.sy rm /tmp/jet\\n(##.\n($$
X..
END_OF_FILE
if test 874 -ne `wc -c <'djet/tmac.jetroff'`; then
    echo shar: \"'djet/tmac.jetroff'\" unpacked with wrong size!
fi
# end of 'djet/tmac.jetroff'
fi
if test ! -d 'doc' ; then
    echo shar: Creating directory \"'doc'\"
    mkdir 'doc'
fi
if test -f 'doc/400mpairs.d' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/400mpairs.d'\"
else
echo shar: Extracting \"'doc/400mpairs.d'\" \(201 characters\)
sed "s/^X//" >'doc/400mpairs.d' <<'END_OF_FILE'
X1896	54.2
X1900	49.4
X1904	49.2
X1908	50
X1912	48.2
X1920	49.6
X1924	47.6
X1928	47.8
X1932	46.2
X1936	46.5
X1948	46.2
X1952	45.9
X1956	46.7
X1960	44.9
X1964	45.1
X1968	43.8
X1972	44.66
X1976	44.26
X1980	44.6
X1984	44.27
END_OF_FILE
if test 201 -ne `wc -c <'doc/400mpairs.d'`; then
    echo shar: \"'doc/400mpairs.d'\" unpacked with wrong size!
fi
# end of 'doc/400mpairs.d'
fi
if test -f 'doc/400wpairs.d' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/400wpairs.d'\"
else
echo shar: Extracting \"'doc/400wpairs.d'\" \(60 characters\)
sed "s/^X//" >'doc/400wpairs.d' <<'END_OF_FILE'
X1964	52
X1968	52
X1972	51.08
X1976	49.29
X1980	48.88
X1984	48.83
END_OF_FILE
if test 60 -ne `wc -c <'doc/400wpairs.d'`; then
    echo shar: \"'doc/400wpairs.d'\" unpacked with wrong size!
fi
# end of 'doc/400wpairs.d'
fi
if test -f 'doc/fontcfg.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/fontcfg.1'\"
else
echo shar: Extracting \"'doc/fontcfg.1'\" \(694 characters\)
sed "s/^X//" >'doc/fontcfg.1' <<'END_OF_FILE'
X.TH fontcfg 1 "PC Research, Inc." "JetRoff"
X.SH NAME
Xfontcfg \- Run makeDESC and mkfont as needed to configure fonts for JetRoff
X.SH SYNOPSIS
X\fBcd /usr/lib/font/devjet
X.br
Xfontcfg\fR
X.SH DESCRIPTION
X\fIfontcfg\fP is a shell(1) program which runs \fImakeDESC\fP(1) and
X\fImkfont\fP(1) as needed in order to configure \fItroff\fP(1) and JetRoff
Xto use the set of fonts described in \fIfontlist\fP(5) and whose bitmaps
Xare located in subdirectory \fBpk\fP.
X.PP
X\fIfontcfg\fP should be run after you have created or loaded bitmaps you are
Xgoing to use in subdirectory \fBpk\fP, and edited \fBfontlist\fP
Xfor your configuration.
X.SH SEE ALSO
Xsfp2pk(1), mkfont(1), makeDESC(1), fontlist(5), font(5)
END_OF_FILE
if test 694 -ne `wc -c <'doc/fontcfg.1'`; then
    echo shar: \"'doc/fontcfg.1'\" unpacked with wrong size!
fi
# end of 'doc/fontcfg.1'
fi
if test -f 'doc/jetcheck.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/jetcheck.1'\"
else
echo shar: Extracting \"'doc/jetcheck.1'\" \(483 characters\)
sed "s/^X//" >'doc/jetcheck.1' <<'END_OF_FILE'
X.TH jetcheck 1 "PC Research, Inc." "JetRoff"
X.SH NAME
Xjetcheck \- Scan troff document for preprocessor usage.
X.SH SYNOPSIS
X\fBjetcheck \fIfiles\fR ...
X.SH DESCRIPTION
X\fIjetcheck\fP scans \fItroff\fP(1) \fIfiles\fP for usage
Xof  the various preprocessors (\fItbl\fP(1),
X\fIeqn\fP(1), \fIgrap\fP(1), and \fIpic\fP(1)).
X.PP
X\fIjetcheck\fP writes a single line to standard output indicating
Xwhich preprocessors are needed by the \fIfiles\fP.
X.SH SEE ALSO
Xtroff(1), djet(1), jetcheck(1)
END_OF_FILE
if test 483 -ne `wc -c <'doc/jetcheck.1'`; then
    echo shar: \"'doc/jetcheck.1'\" unpacked with wrong size!
fi
# end of 'doc/jetcheck.1'
fi
if test -f 'doc/jetroff_bm.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/jetroff_bm.1'\"
else
echo shar: Extracting \"'doc/jetroff_bm.1'\" \(637 characters\)
sed "s/^X//" >'doc/jetroff_bm.1' <<'END_OF_FILE'
X.TH jetroff_bm 1 "PC Research, Inc." "JetRoff"
X.SH NAME
Xjetroff_bm \- Cobble up troff commands for bitmap inclusion
X.SH SYNOPSIS
X\fBjetroff_bm \fIfile type res just curx cury indent offset ll vs diversion
X.SH DESCRIPTION
X\fIjetroff_bm\fP
Xis called by the \fB.BM\fP macro.  It uses the
Xinformation in its arguments to cobble together a sequence of \fItroff\fP(1)
Xcommands to include the bitmap in \fIfile\fP in a document.  The
X\fItroff\fP(1) commands are written to standard output.
X.P
X.SH BUGS
XThe internal workings of
X\fIjetroff_bm\fP are mysterious; so is \fItroff\fP(1).
X.SH SEE ALSO
Xjetroff(1), .BM(5), jetbm(1), pcpaint(1), pcx(1)
END_OF_FILE
if test 637 -ne `wc -c <'doc/jetroff_bm.1'`; then
    echo shar: \"'doc/jetroff_bm.1'\" unpacked with wrong size!
fi
# end of 'doc/jetroff_bm.1'
fi
if test -f 'doc/makeDESC.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/makeDESC.1'\"
else
echo shar: Extracting \"'doc/makeDESC.1'\" \(1133 characters\)
sed "s/^X//" >'doc/makeDESC.1' <<'END_OF_FILE'
X.TH makeDESC 1 "PC Research, Inc." "JetRoff"
X.SH NAME
XmakeDESC \- Create font description files for troff and JetRoff
X.SH SYNOPSIS
X\fBcd /usr/lib/font/devjet
X.br
XmakeDESC\fR
X.SH DESCRIPTION
X\fImakeDESC\fP reads the descriptions of fonts found in \fBfontlist\fP,
Xexamines the packed format font files found in subdirectory \fBpk\fP,
Xand creates output files such as \fBDESC\fP, \fBR\fP, \fBI\fP,
Xetc. which are then used by the
X\fImkfont\fP(1) program to produce encoded versions of these files
Xwhich can be digested by \fItroff\fP(1) and \fIdjet\fP(1).
X.PP
X\fImakeDESC\fP automates a procedure that was previously painful:
Xthe construction of \fIfont\fP(5) format files.  These files included
Xwidth and kerning information for each character in the font.
XThat information is readily determined by examining the binary font
Xfiles themselves.  The short \fBfontlist\fP file contains all the
Xinformation that is needed by makeDESC.
X.PP
XThe output files from \fImakeDESC\fP include \fBDESC\fP, and a set
Xof other one or two letter files as described in \fBfontlist\fP.
X.SH SEE ALSO
Xsfp2pk(1), mkfont(1), fontcfg(1), fontlist(5), font(5)
END_OF_FILE
if test 1133 -ne `wc -c <'doc/makeDESC.1'`; then
    echo shar: \"'doc/makeDESC.1'\" unpacked with wrong size!
fi
# end of 'doc/makeDESC.1'
fi
if test -f 'doc/makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/makefile'\"
else
echo shar: Extracting \"'doc/makefile'\" \(510 characters\)
sed "s/^X//" >'doc/makefile' <<'END_OF_FILE'
XFILES=	djet.1 fontcfg.1 jetbackup.1 jetcheck.1 jetroff.1 jetroff_bm.1 \
X	makeDESC.1 mkfont.1 pcpaint.1 pcx.1 sfp2pk.1 fontlist.5 BM.5
X
X# Normal computers with no problems with floating point
XFPBUG=
X# 386/ix bug with multiple procs and 80287, run with temp files
XFPBUG=-P
X
Xall:	boiler man
X
Xman:
X	jetroff -man $(FPBUG) $(FILES)
X
Xmanual:
X	jetroff -l2:14 -rs1 -manual $(FPBUG) $(FILES)
X
Xbackup:
X	jetroff -rs1 -manual -l1:14i -d- $(FPBUG) $(FILES) | jetbackup -b | lp -otroff
X
Xboiler:
X	jetroff -mm $(FPBUG) djet.mm
END_OF_FILE
if test 510 -ne `wc -c <'doc/makefile'`; then
    echo shar: \"'doc/makefile'\" unpacked with wrong size!
fi
# end of 'doc/makefile'
fi
if test -f 'doc/mkfont.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/mkfont.1'\"
else
echo shar: Extracting \"'doc/mkfont.1'\" \(732 characters\)
sed "s/^X//" >'doc/mkfont.1' <<'END_OF_FILE'
X.TH mkfont 1 "" "JetRoff"
X.SH NAME
Xmkfont \- Compile font description files for troff and JetRoff
X.SH SYNOPSIS
X\fBcd /usr/lib/font/devjet
X.br
Xmkfont DESC
X.br
Xmkfont DESC \fIExtraFont\fR
X.SH DESCRIPTION
X\fImkfont\fP converts font description files to the binary format used
Xby \fItroff\fP(1) and \fIdjet\fP(1).  The first form of the command
Xcreates \fBDESC.out\fP from \fBDESC\fP and \fB*.out\fP
Xfiles for all ``preloaded'' fonts
Xlisted in \fBDESC\fP.
X.PP
XThe second form of the command produces just the \fIExtraFont.out\fP file
Xfrom \fIExtraFont\fP.
X.SH SEE ALSO
Xsfp2pk(1), makeDESC(1), fontcfg(1), fontlist(5), font(5)
X.SH AUTHOR
XThis program was graciously contributed to the public domain by
XDuane H. Hesser (dhh at teltone.com).
END_OF_FILE
if test 732 -ne `wc -c <'doc/mkfont.1'`; then
    echo shar: \"'doc/mkfont.1'\" unpacked with wrong size!
fi
# end of 'doc/mkfont.1'
fi
if test -f 'doc/pcr32P.jbm' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/pcr32P.jbm'\"
else
echo shar: Extracting \"'doc/pcr32P.jbm'\" \(392 characters\)
sed "s/^X//" <<'END_OF_FILE' | uudecode
Xbegin 644 xYzZy
XM'YV08  (!"$0P#]^ O$57,BPH<%_@!Y =$BQX+]_P/[\@U>Q(KX?X/P-4-C1
XMX<=P'#L&R,>/91Q\^1A='!:N4:!&@+(U:L2H8 ";@6[:E/EO4+A\\/+%ZY<O
XM$$*! 6(!:G S5B"9_ :$RW3S9B:>/ANU[,<SIL( *4N:%"B2) !LSP!5Y(8-
XB&$F-:;UAZ[AM+TF)<@5FVUL1&S9N;MV^?<9)K>/'D",_!BB2
X 
Xend
END_OF_FILE
chmod +rw xYzZy; uncompress <xYzZy >doc/pcr32P.jbm; rm xYzZy
if test 392 -ne `wc -c <'doc/pcr32P.jbm'`; then
    echo shar: \"'doc/pcr32P.jbm'\" unpacked with wrong size!
fi
# end of 'doc/pcr32P.jbm'
fi
if test -f 'doc/sfp2pk.1' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/sfp2pk.1'\"
else
echo shar: Extracting \"'doc/sfp2pk.1'\" \(1086 characters\)
sed "s/^X//" >'doc/sfp2pk.1' <<'END_OF_FILE'
X.TH sfp2pk 1 "PC Research, Inc." "JetRoff"
X.SH NAME
Xsfp2pk \- Convert HP Soft Font format to MetaFont Packed Font Format
X.SH SYNOPSIS
X\fBsfp2pk [-b -oCODE] \fI<SoftFont.sfp >MetaFont.300pk\fR
X.SH DESCRIPTION
X\fIsfp2pk\fP converts a Hewlett Packard Soft Font format font file
Xinto the packed font file format used by Metafont and JetRoff.
X.PP
XThis conversion makes a Soft Font available for use by JetRoff, and
Xtypically reduces the size of the font file by 50%. After conversion
Xof a set of Soft Font's, you must modify the \fIfontlist\fP(5) and
Xrun \fIfontcfg\fP(1) in order to notify \fItroff\fP that the font is
Xavailable.
X.PP
XThis program operates as a filter.  The filename extensions shown
Xin the SYNOPSIS are recommended.  The \fB-b\fP option forces the
Xpacked file output to be stored in bitmap format, rather than the
Xcompressed format.  The \fB-oCODE\fP option converts only the character
Xnumber CODE.
X.SH EXAMPLE
X.RS
X.ft CW
X$ cd /usr/lib/font/devjet
X$ sfp2pk <rock40.sfp >pk/rock40.300pk
X$ rm rock40.sfp
X.ft P
X.RE
X.SH SEE ALSO
XmakeDESC(1), mkfont(1), fontcfg(1), fontlist(5)
END_OF_FILE
if test 1086 -ne `wc -c <'doc/sfp2pk.1'`; then
    echo shar: \"'doc/sfp2pk.1'\" unpacked with wrong size!
fi
# end of 'doc/sfp2pk.1'
fi
if test -f 'doc/sword.clp' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'doc/sword.clp'\"
else
echo shar: Extracting \"'doc/sword.clp'\" \(847 characters\)
sed "s/^X//" <<'END_OF_FILE' | uudecode
Xbegin 644 xYzZy
XM'YV03P;X J &@$&#_P(0( ! 1P   : 0L "@ )6) "I4P5BE"A "%0!TE!BR
XMX\60&C>&+-#Q(P6((T&*K'*Q  !4!!YD[+ at 0@ "<.EEZ/*@ *,PJ4 ZJ $4 
XMPDPJ!U4!:KJSBD$!J at A$J- at 20%&M1Y,N)2#A*0"I9*MB)3"!:Q4E.-L&Z*@"
XM%X&7-%7YNYM1RJI_4]L64/+J'SBV$%7\^H>/KZIS__:V%; JWS_ :16\\O?'
XM<%K%_SXQ3JOJ,N2]6[%^^&<9L].B!R)W/NQT:8#+HAL[E0J@\^F</E497-UZ
XMJ at .OJ S&YNSYN )0!F^''NT<T$'?D1$3OSRU[/+9::7G1HQ=,H#MF+W+]EQ6
XM_.BVY;6SYI[V.WN(N-_W_O>[+?KN -AW6'OY-08??]GY-U]Z :XW('[3&;A?
XM?^<M"*" !!@ @ \P"(#   $ ,D!/[C6F81CX/,#' X, \\!4#,6GX1_,\& .
XM#\$ P@,P/?U'@$T^&("!,1CDB &/#-DWE8;F#%DD($>2F-]A-AW at B)-&\F at 3
XM=E0"P $/6 (3I4W;-693#/@,F4 X[(S9(&=F G ".#DX<\ @O#2@)82?[&63
XM3C at 0 B(&!RPYH9\ >   ##TY0, !%5H&HY=P0- 3#X^^^<>D#^"#0$]P$(# 
XH?I\<QM  R!!P7&SG'!;2'_DT%M(!_N"!T1^>8'2 .01< ("M $CQ$$]P
X 
Xend
END_OF_FILE
chmod +rw xYzZy; uncompress <xYzZy >doc/sword.clp; rm xYzZy
if test 847 -ne `wc -c <'doc/sword.clp'`; then
    echo shar: \"'doc/sword.clp'\" unpacked with wrong size!
fi
# end of 'doc/sword.clp'
fi
if test ! -d 'font' ; then
    echo shar: Creating directory \"'font'\"
    mkdir 'font'
fi
if test ! -d 'font/devjet' ; then
    echo shar: Creating directory \"'font/devjet'\"
    mkdir 'font/devjet'
fi
if test -f 'font/devjet/ascii7.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/ascii7.code'\"
else
echo shar: Extracting \"'font/devjet/ascii7.code'\" \(1092 characters\)
sed "s/^X//" >'font/devjet/ascii7.code' <<'END_OF_FILE'
X/*
X * $Id: ascii7.code,v 1.1 88/08/27 00:00:00 rick Exp $
X *
X * $Log:	ascii7.code,v $
X * Revision 1.1  88/08/27  00:00:00  rick
X * Initial revision
X * 
X */
X
X/*
X *	ASCII 7-bit code table for makeDESC
X *	Note that only the stuff between quotes is parsed, so
X *	this table was just lifted from some C code.
X *	The ## entries mean the code doesn't exist in the font.
X */
Xchar	*ascii7[128] =
X{
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X
X	"##", "!", "\"", "#", "$", "%", "&", "'",
X	"(", ")", "*", "pl+", ",", "hy-", ".", "/",
X	"0", "1", "2", "3", "4", "5", "6", "7",
X	"8", "9", ":", ";", "<", "eq=", ">", "?",
X
X	"@", "A", "B", "C", "D", "E", "F", "G",
X	"H", "I", "J", "K", "L", "M", "N", "O",
X	"P", "Q", "R", "S", "T", "U", "V", "W",
X	"X", "Y", "Z", "[", "\\", "]", "^", "_",
X
X	"`", "a", "b", "c", "d", "e", "f", "g",
X	"h", "i", "j", "k", "l", "m", "n", "o",
X	"p", "q", "r", "s", "t", "u", "v", "w",
X	"x", "y", "z", "{", "|", "}", "~", "##"
X};
END_OF_FILE
if test 1092 -ne `wc -c <'font/devjet/ascii7.code'`; then
    echo shar: \"'font/devjet/ascii7.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/ascii7.code'
fi
if test -f 'font/devjet/mathit.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/mathit.code'\"
else
echo shar: Extracting \"'font/devjet/mathit.code'\" \(1018 characters\)
sed "s/^X//" >'font/devjet/mathit.code' <<'END_OF_FILE'
X/*
X * $Id: mathit.code,v 1.1 88/08/27 00:00:05 rick Exp $
X *
X * $Log:	mathit.code,v $
X * Revision 1.1  88/08/27  00:00:05  rick
X * Initial revision
X * 
X */
X
Xchar	*mathit[128] =
X{
X/*	 0     1     2     3     4     5     6     7	*/
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "*a", "*b", "*g", "*d", "*e",
X	"*z", "*y", "*h", "*i", "*k", "*l", "*m", "*n",
X	"*c", "*p", "*r", "*s", "*t", "*u", "*f", "*x",
X
X	"*q", "*w", "xe", "xh", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "rh", "lh",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "<", "##", ">", "##",
X
X	"pd", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X
X	"Sl", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "cs",
X};
END_OF_FILE
if test 1018 -ne `wc -c <'font/devjet/mathit.code'`; then
    echo shar: \"'font/devjet/mathit.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/mathit.code'
fi
if test -f 'font/devjet/mathtrf.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/mathtrf.code'\"
else
echo shar: Extracting \"'font/devjet/mathtrf.code'\" \(1017 characters\)
sed "s/^X//" >'font/devjet/mathtrf.code' <<'END_OF_FILE'
X/*
X * $Id: mathtrf.code,v 1.1 88/08/27 00:00:07 rick Exp $
X *
X * $Log:	mathtrf.code,v $
X * Revision 1.1  88/08/27  00:00:07  rick
X * Initial revision
X * 
X */
X
Xchar	*mathtrf[128] =
X{
X/*	 0     1     2     3     4     5     6     7	*/
X	"##", "lt", "lb", "rt", "rb", "lk", "rk", "bv",
X	"lf", "rf", "lc", "rc", "sr", "rn", "ul", "ru",
X	"br", "co", "sq", "bx", "tm", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "<", "##", ">", "##",
X
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "\\", "##", "##", "##",
X
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X	"##", "##", "##", "{", "|", "}", "pC", "Pc"
X};
END_OF_FILE
if test 1017 -ne `wc -c <'font/devjet/mathtrf.code'`; then
    echo shar: \"'font/devjet/mathtrf.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/mathtrf.code'
fi
if test -f 'font/devjet/roman0.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/roman0.code'\"
else
echo shar: Extracting \"'font/devjet/roman0.code'\" \(882 characters\)
sed "s/^X//" >'font/devjet/roman0.code' <<'END_OF_FILE'
X/*
X * $Id: roman0.code,v 1.1 88/08/27 00:00:07 rick Exp $
X *
X * $Log:	roman0.code,v $
X * Revision 1.1  88/08/27  00:00:07  rick
X * Initial revision
X * 
X */
X
Xchar	*roman0[128] =
X{
X	"*G", "*D", "*H", "*L", "*C", "*P", "*S", "*U",
X	"*F", "*Q", "*W", "##", "##", "##", "##", "##",
X	"##", "##", "##", "fm", "##", "##", "##", "de",
X	"##", "##", "##", "##", "##", "##", "##", "##",
X
X	"vs", "!", "\"", "#", "$", "%", "&", "'",
X	"(", ")", "*", "pl+", ",", "hy-", ".", "/",
X	"0", "1", "2", "3", "4", "5", "6", "7",
X	"8", "9", ":", ";", "<", "eq=", ">", "?",
X
X	"@", "A", "B", "C", "D", "E", "F", "G",
X	"H", "I", "J", "K", "L", "M", "N", "O",
X	"P", "Q", "R", "S", "T", "U", "V", "W",
X	"X", "Y", "Z", "[", "\\", "]", "^", "_",
X
X	"`", "a", "b", "c", "d", "e", "f", "g",
X	"h", "i", "j", "k", "l", "m", "n", "o",
X	"p", "q", "r", "s", "t", "u", "v", "w",
X	"x", "y", "z", "{", "|", "}", "~", "##"
X};
END_OF_FILE
if test 882 -ne `wc -c <'font/devjet/roman0.code'`; then
    echo shar: \"'font/devjet/roman0.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/roman0.code'
fi
if test -f 'font/devjet/roman2.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/roman2.code'\"
else
echo shar: Extracting \"'font/devjet/roman2.code'\" \(893 characters\)
sed "s/^X//" >'font/devjet/roman2.code' <<'END_OF_FILE'
X/*
X * $Id: roman2.code,v 1.1 88/08/27 00:00:08 rick Exp $
X *
X * $Log:	roman2.code,v $
X * Revision 1.1  88/08/27  00:00:08  rick
X * Initial revision
X * 
X */
X
Xchar	*roman2[128] =
X{
X	"*G", "*D", "*H", "*L", "*C", "*P", "*S", "*U",
X	"*F", "*Q", "*W", "ff", "fi", "fl", "Fi", "Fl",
X	"##", "##", "ga", "aafm", "##", "hc", "##", "de",
X	"cd", "##", "##", "##", "##", "##", "##", "##",
X
X	"##", "!", "\"", "#", "$", "%", "&", "'",
X	"(", ")", "*", "pl+", ",", "hy-", ".", "/",
X	"0", "1", "2", "3", "4", "5", "6", "7",
X	"8", "9", ":", ";", "##", "eq=", "##", "?",
X
X	"@", "A", "B", "C", "D", "E", "F", "G",
X	"H", "I", "J", "K", "L", "M", "N", "O",
X	"P", "Q", "R", "S", "T", "U", "V", "W",
X	"X", "Y", "Z", "[", "##", "]", "^", "##",
X
X	"`", "a", "b", "c", "d", "e", "f", "g",
X	"h", "i", "j", "k", "l", "m", "n", "o",
X	"p", "q", "r", "s", "t", "u", "v", "w",
X	"x", "y", "z", "en\\-", "em", "##", "~", "##"
X};
END_OF_FILE
if test 893 -ne `wc -c <'font/devjet/roman2.code'`; then
    echo shar: \"'font/devjet/roman2.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/roman2.code'
fi
if test -f 'font/devjet/roman2i.code' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/devjet/roman2i.code'\"
else
echo shar: Extracting \"'font/devjet/roman2i.code'\" \(987 characters\)
sed "s/^X//" >'font/devjet/roman2i.code' <<'END_OF_FILE'
X/*
X * $Id: roman2i.code,v 1.1 88/08/27 00:00:09 rick Exp $
X *
X * $Log:	roman2i.code,v $
X * Revision 1.1  88/08/27  00:00:09  rick
X * Initial revision
X * 
X */
X
Xchar	*roman2i[128] =
X{	/* Italic version, same as roman, but no plus or equals
X	 * because they look like shit.
X	 */
X	"*G", "*D", "*H", "*L", "*C", "*P", "*S", "*U",
X	"*F", "*Q", "*W", "ff", "fi", "fl", "Fi", "Fl",
X	"##", "##", "ga", "aafm", "##", "hc", "##", "de",
X	"cd", "##", "##", "##", "##", "##", "##", "##",
X
X	"##", "!", "\"", "#", "ps", "%", "&", "'",
X	"(", ")", "*", "+", ",", "hy-", ".", "/",
X	"0", "1", "2", "3", "4", "5", "6", "7",
X	"8", "9", ":", ";", "##", "=", "##", "?",
X
X	"@", "A", "B", "C", "D", "E", "F", "G",
X	"H", "I", "J", "K", "L", "M", "N", "O",
X	"P", "Q", "R", "S", "T", "U", "V", "W",
X	"X", "Y", "Z", "[", "##", "]", "^", "##",
X
X	"`", "a", "b", "c", "d", "e", "f", "g",
X	"h", "i", "j", "k", "l", "m", "n", "o",
X	"p", "q", "r", "s", "t", "u", "v", "w",
X	"x", "y", "z", "en\\-", "em", "##", "~", "##"
X};
END_OF_FILE
if test 987 -ne `wc -c <'font/devjet/roman2i.code'`; then
    echo shar: \"'font/devjet/roman2i.code'\" unpacked with wrong size!
fi
# end of 'font/devjet/roman2i.code'
fi
if test -f 'font/makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/makefile'\"
else
echo shar: Extracting \"'font/makefile'\" \(326 characters\)
sed "s/^X//" >'font/makefile' <<'END_OF_FILE'
X#
X#	JetRoff fonts
X#
X#	If you have the Metafont descriptions in "mf",
X#	it'll try to go down their and build the rasters!
X#	Takes 18 hours on an 80386, so feel lucky if you
X#	already have the .300pk files in devjet/pk.
X#
Xall install clean clobber:
X	if [ -d mf ]; then cd mf; make $@; fi
X	cd mkfont; make $@
X	cd devjet; make $@
END_OF_FILE
if test 326 -ne `wc -c <'font/makefile'`; then
    echo shar: \"'font/makefile'\" unpacked with wrong size!
fi
# end of 'font/makefile'
fi
if test ! -d 'font/mkfont' ; then
    echo shar: Creating directory \"'font/mkfont'\"
    mkdir 'font/mkfont'
fi
if test -f 'font/mkfont/Makefile' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/mkfont/Makefile'\"
else
echo shar: Extracting \"'font/mkfont/Makefile'\" \(797 characters\)
sed "s/^X//" >'font/mkfont/Makefile' <<'END_OF_FILE'
X#
X# $Id: Makefile,v 1.1 88/08/26 23:44:28 rick Exp $
X#
X#	Build troff decription file compiler/decompiler
X#
XFONTDIR=/usr/lib/font/devjet
X
X#	For BSD
XCFLAGS=-O
X
X#	For System V
XCFLAGS=-DSYS5 -O
X
XRDSRC=	readdesc.c rdfont.c strsave.c
XRDOBJ=	readdesc.o rdfont.o strsave.o
XMKSRC=	makedesc.c mkfont.c nextword.c strsave.c
XMKOBJ=	makedesc.o mkfont.o nextword.o strsave.o
X
X
Xall: mkfont rdfont
X
Xmkfont:	${MKOBJ}
X	$(CC) $(CFLAGS) ${MKOBJ} -o $@
X
Xrdfont:	${RDOBJ}
X	$(CC) $(CFLAGS) ${RDOBJ} -o $@
X
Xrdfont.o:	rdfont.c font.h
Xreaddesc.o:	readdesc.c  dev.h
X
Xmkfont.o:	mkfont.c font.h
Xmakedesc.o:	makedesc.c  dev.h
X
Xclean:
X	-rm -f *.o
X
Xlint:
X	lint -phbvac dev.h font.h ${MKSRC} > lint.mkfont
X	lint -phbvac dev.h font.h ${RDSRC} > lint.rdfont
X
Xinstall: all
X	cp mkfont $(FONTDIR)
X
Xclobber: clean
X	-rm -f mkfont rdfont
END_OF_FILE
if test 797 -ne `wc -c <'font/mkfont/Makefile'`; then
    echo shar: \"'font/mkfont/Makefile'\" unpacked with wrong size!
fi
# end of 'font/mkfont/Makefile'
fi
if test -f 'font/mkfont/dev.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/mkfont/dev.h'\"
else
echo shar: Extracting \"'font/mkfont/dev.h'\" \(406 characters\)
sed "s/^X//" >'font/mkfont/dev.h' <<'END_OF_FILE'
X/*
X * $Id: dev.h,v 1.1 87/10/23 19:08:07 sysad Exp $
X */
X
X/*
X * $Log:	dev.h,v $
X * Revision 1.1  87/10/23  19:08:07  sysad
X * Initial revision
X * 
X * 
X */
X
X struct dev {
X	unsigned short filesize;
X	short res;
X	short hor;
X	short vert;
X	short unitwidth;
X	short nfonts;
X	short nsizes;
X	short sizescale;
X	short paperwidth;
X	short paperlength;
X	short nchtab;
X	short lchname;
X	short biggestfont;
X	short spare;
X};
END_OF_FILE
if test 406 -ne `wc -c <'font/mkfont/dev.h'`; then
    echo shar: \"'font/mkfont/dev.h'\" unpacked with wrong size!
fi
# end of 'font/mkfont/dev.h'
fi
if test -f 'font/mkfont/font.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/mkfont/font.h'\"
else
echo shar: Extracting \"'font/mkfont/font.h'\" \(365 characters\)
sed "s/^X//" >'font/mkfont/font.h' <<'END_OF_FILE'
X/*
X * $Id: font.h,v 1.1 87/10/23 19:08:08 sysad Exp $
X */
X
X/*
X * $Log:	font.h,v $
X * Revision 1.1  87/10/23  19:08:08  sysad
X * Initial revision
X * 
X * 
X */
X
Xstruct Font {
X	char nwfont;
X	char specfont;
X	char ligfont;
X	char pad;
X	char namefont[10];
X	char intname[10];
X};
X
X#define	LIG_FF	01
X#define	LIG_FI	02
X#define	LIG_FL	04
X#define	LIG_FFI	010
X#define	LIG_FFL	020
END_OF_FILE
if test 365 -ne `wc -c <'font/mkfont/font.h'`; then
    echo shar: \"'font/mkfont/font.h'\" unpacked with wrong size!
fi
# end of 'font/mkfont/font.h'
fi
if test -f 'font/mkfont/strsave.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'font/mkfont/strsave.c'\"
else
echo shar: Extracting \"'font/mkfont/strsave.c'\" \(954 characters\)
sed "s/^X//" >'font/mkfont/strsave.c' <<'END_OF_FILE'
X#ifndef lint
Xstatic char rcsid[] = "$Id: strsave.c,v 1.1 87/10/23 19:08:15 sysad Exp $";
X#endif
X
X/*
X * $Log:	strsave.c,v $
X * Revision 1.1  87/10/23  19:08:15  sysad
X * Initial revision
X * 
X * 
X */
X
X/*                                                                    */
X/* save a copy of the string 'string' some place.                     */
X/*                                                                    */
X
X#define	NULL	(char *)0
X#define NOWORD	"(null)"
Xchar *TOOMUCH = "savestr; too much space allocated\n";
X
Xchar *
Xsavestr(str)
Xchar *str;
X{
X	char *place,*save,*calloc();
X	char *tmp;
X	int i,j;
X
X	if( (i = strlen(str)) <= 0 )
X	{
X		save = "garbage";
X		i = 7;
X	}
X	else save = str;
X	if((place = calloc(1,i+1)) == NULL ) 
X	{
X		/* dont' want or need stdio */
X		write(2,TOOMUCH,sizeof(TOOMUCH));
X		exit(1);
X	}
X	tmp = place;
X	i++;	/* room for the null byte */
X	j = 0;
X	while ( (j++ < i) &&  *save )
X		 *tmp++ = *save++;
X	*tmp = 0;
X	return(place);
X}
END_OF_FILE
if test 954 -ne `wc -c <'font/mkfont/strsave.c'`; then
    echo shar: \"'font/mkfont/strsave.c'\" unpacked with wrong size!
fi
# end of 'font/mkfont/strsave.c'
fi
echo shar: End of archive 1 \(of 7\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 3 4 5 6 7 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 7 archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0



More information about the Comp.sources.misc mailing list