Official Patch 7 for Psroff 2.0 
Author Message
 Official Patch 7 for Psroff 2.0

Archive-name: psroff2.0/patch.07

    This is official patch 07 for Psroff 2.0.
    Please apply it by:
        cd <psroff source directory>
        patch -N -p < <this file>

The important changes are:
    - The mailing list has been discontinued due to lack of interest.
      Patches will go out cross-posted to alt.sources, comp.sources.bugs,
      comp.text and comp.lang.postscript.  If you do not get ANY of these
      newsgroups, drop me a line, and I'll put you in an informal mailing
      list for patch notices.  The README has been altered to reflect
      this.
    - Some mention is made regarding installing as root on systems
      where you've arranged a restrictive umask in the README.
      "make fixperms" will repair these problems on the places where
      the makefiles aren't careful enough with file creation.
      If, after an install, psroff fails with can't find file
      errors, it's worth while doing a fixperms and see if it
      fixes it.
    - The support for page length settings was a little off, so I
      implemented a bit more, and made sure that the manual page
      was consistent with it.
    - Since I've moved, FAXing the test page won't do you any good.
      testtab.m.S has been updated to tell you where to surface-mail
      test sheets.  README's contact information has been updated.

Note: I'm a bit stalled because I have no direct access to a printer
that psroff can drive, so development on new stuff is suspended.
I do have a printer, but doing a psroff driver for a Diablo 1550 doesn't
seem like a really good idea or a lot of fun.

./makeincl.S            LIBDIR stuff
./utils.c               stdio.h's missing popen defn
./man/troff2ps.1.S      page length stuff corrected
./README                future directions/contact info changed/fixperm
./Makefile              permissions (fixperms) stuff
./widths/Makefile       permissions
./utils/Makefile        permissions
./utils/pktype.c        slight output format improvement
./tests/testtab.m.S     address for mailing tests.
./defs.h                PL7
./lj.c                  stdio.h's missing popen defn
./pk.c                  stdio.h's missing popen defn
./troff2.c              stdio.h's missing popen defn/page length stuff
*** /tmp/PATCHold/./makeincl.S  Mon Jan 21 01:42:28 1991
--- ./makeincl.S        Mon Jan 21 01:42:29 1991
***************
*** 1,6 ****
! #     Makefile overrides 2.1 90/07/18
  CC    = %%CC%%
! CFLAGS        = %%CCFLAGS%% '-DLIBDIR="%%LIBDIR%%"' -I../
  FONTDIR = %%FONTDIR%%
  LIBDIR        = %%LIBDIR%%
  LIBFLAGS = %%LIBFLAGS%%
--- 1,6 ----
! #     Makefile overrides 2.2 90/12/15
  CC    = %%CC%%
! CFLAGS        = %%CCFLAGS%% -I../
  FONTDIR = %%FONTDIR%%
  LIBDIR        = %%LIBDIR%%
  LIBFLAGS = %%LIBFLAGS%%
*** /tmp/PATCHold/./utils.c     Mon Jan 21 01:42:41 1991
--- ./utils.c   Mon Jan 21 01:42:45 1991
***************
*** 15,21 ****

  #ifndef       lint
  static char SCCSid[] =

  #endif

  #ifndef       HEADERSIZE
--- 15,21 ----

  #ifndef       lint
  static char SCCSid[] =

  #endif

  #ifndef       HEADERSIZE
***************
*** 101,106 ****
--- 101,107 ----

  char nodename[25];
  getnodename() {
+     FILE *popen();
      FILE *uuname;
      if ((uuname = popen(NODECMD, "r")) == NULL)
        strcpy(nodename, "<noname>");
*** /tmp/PATCHold/./man/troff2ps.1.S    Mon Jan 21 01:43:05 1991
--- ./man/troff2ps.1.S  Mon Jan 21 01:43:07 1991
***************
*** 1,4 ****
! .\"Copyright 1988 by Chris Lewis 2.4 90/12/04
  .TH TROFF2PS 1 local
  .SH NAME
  troff2ps, troff2lj, troff2xx \- convert troff output to Postscript, HP etc.
--- 1,4 ----
! .\"Copyright 1988 by Chris Lewis 2.5 91/01/18
  .TH TROFF2PS 1 local
  .SH NAME
  troff2ps, troff2lj, troff2xx \- convert troff output to Postscript, HP etc.
***************
*** 41,53 ****
  .BI -l length
  option is used to tell the software how long the pages are on the printer.
  The default value is 11 inches.
! Length should be written as if you were issuing a ".pl"
  .I troff
  command; eg: troff scaling should be used.
! For example: "-l11i", "-l4752u", "-l792p" specify a page length of
  11 inches in inches,
  .I troff
! units and points respectively.
  .P
  The
  .BI -T xx
--- 41,55 ----
  .BI -l length
  option is used to tell the software how long the pages are on the printer.
  The default value is 11 inches.
! Length should be written as if you were issuing a ``.pl''
  .I troff
  command; eg: troff scaling should be used.
! For example: ``-l11i'', ``-l4752u'', ``-l792p'' and ``-l66P''
! specify a page length of
  11 inches in inches,
  .I troff
! units, points and Picas respectively.
! Centimetres (``c'') are also supported, but ``v'', ``m'' and ``n'' are not.
  .P
  The
  .BI -T xx
*** /tmp/PATCHold/./README      Mon Jan 21 01:43:28 1991
--- ./README    Mon Jan 21 01:43:36 1991
***************
*** 1,4 ****
!               PSROFF RELEASE 2.0 PL5 README 2.4 90/12/14

                        May 14, 1990
                        Chris Lewis
--- 1,4 ----
!               PSROFF RELEASE 2.0 PL5 README 2.6 91/01/21

                        May 14, 1990
                        Chris Lewis
***************
*** 11,18 ****
        or, you can simply patch yours to this level - contact me for
        patch 5.

!       Please see the end of this file for my contact information
!       and for enrollment in the psroff mailing list.

  Please read this document, especially any new patches (if any) near
  the end before reconfiguring.  If you have difficulties, read the
--- 11,17 ----
        or, you can simply patch yours to this level - contact me for
        patch 5.

!       Please see the end of this file for my contact information.

  Please read this document, especially any new patches (if any) near
  the end before reconfiguring.  If you have difficulties, read the
***************
*** 65,75 ****
  psroff (version 1.0) was posted in comp.sources.unix in October 1989.
  This version is a lot better.

! If you send me your name and e-mail address, I'll put you on the psroff
! mailing list, and you'll get express delivery of any small patches (see
! CONTACT INFO at end of this README).  Patches are also shipped out through
! comp.sources.unix and/or comp.sources.bugs, but the latency can be rather
! high at times.  A current list of FTP-access sites can be obtained by
  sending me mail.

  Credit/copyright where credit's due:
--- 64,74 ----
  psroff (version 1.0) was posted in comp.sources.unix in October 1989.
  This version is a lot better.

! Please note: I have discontinued the mailing list, because nothing
! ever went out on it.
!
! Patches are shipped out through comp.sources.bugs and alt.sources.
! A current list of FTP and UUCP access sites can be obtained by
  sending me mail.

  Credit/copyright where credit's due:
***************
*** 377,382 ****
--- 376,392 ----
          says something {*filter*} about non-numeric character in file,
          "may be non-ASCII".

+       - NOTE: during installs as root, the makefiles attempt to be
+         carefull about the modes of the files it creats.  HOWEVER,
+         some people do insist on "umask 077" for root, and I've
+         probably not fixed everything.  If psroff doesn't work
+         after an install, I suggest that you check root's umask,
+         and ensure that it's 002 or 022 before invoking any
+         of the makefile install entries.  If you forget, you
+         can invoke:
+               make fixperms
+         on the upper level makefile.
+
        - type "make unpackljfonts"  This will uudecode the font
          files I've supplied and remove the .UU files.  This
          step is unneccessary if you're not using Laserjets,
***************
*** 452,458 ****
        - edit lib/psrofflib.S according to the instructions you find.
          Take special note of -T/-F handling for troff (trofftype) -
          check out your troff manual page!  Suns and Ultrix want
!         trofftype='-F/usr/lib/font/$width/ftXX'.

        - If you're going to be driving HP Laserjets without a Postscript
          cartridge:
--- 462,470 ----
        - edit lib/psrofflib.S according to the instructions you find.
          Take special note of -T/-F handling for troff (trofftype) -
          check out your troff manual page!  Suns and Ultrix want
!         trofftype='-F/usr/lib/font/$width/ftXX'.  If you're running
!         postscript, you may want to eventually add the -Z option
!         to the entry to make your printer REALLY run fast.

        - If you're going to be driving HP Laserjets without a Postscript
          cartridge:
***************
*** 530,536 ****

          "TEST" is generated via make to include some information about
          your configuration to help me diagnose your problems.
!
        - If you have problems, read the TROUBLE file which describes
          some trouble-shooting.

--- 542,548 ----

          "TEST" is generated via make to include some information about
          your configuration to help me diagnose your problems.
!      
        - If you have problems, read the TROUBLE file which describes
          some trouble-shooting.

***************
*** 646,682 ****

  Future directions:

  You may have noticed a compile flag called "OPT" which is defined in
  the distributed version of defs.h.  If enabled (via -Z/W), this enables the
! experimental optimizer that I'm working on.  It works well with Postscript
! output, but not with laserjet unless the fonts you use are VERY good.
! It's disabled by default.  The optimizer does two things: it emits as many
! characters as it can as one print directive, rather than one CAT code
! per print.  On postscript and HPLJ's this is a BIG win (printer execution
! speeds 3 or more times faster), but it won't work with ditroff.  The
! optimizer requires access to the CAT troff width tables, and if troff2ps
! can't find them, it simply doesn't optimize.  The other thing the optimizer
! does is enable a new backend transmission feature (\(bs\(bs<directive>\(bs)
! which will ultimately *replace* the ".tm M<directive>" feature.  Once
! this occurs, troff stderr can unmerged with stdout, psfig will work better,
! and special directives will no longer require breaks.  And, I might
! be able to emulate \X better, and maybe even (gasp) \D and friends.
!
! The intent is, that when I'm satisfied with the optimizer, possibly after
! some patching), I can either ship a patch that explicitly makes it default,
! or tell you to do it manually in the patch preamble.  Stay tuned.

! CONTACT INFO:

      Chris Lewis
      Elegant Communications Inc.
!     481 University Avenue, Suite 602
!     Toronto, Ontario, Canada
!     Voice Phone: Canada (416)-595-5425
!     FAX: Canada (416)-595-5439
      Userid's for e-mail contact:
!       Psroff enquiries/help/mailing list enrollment: psroff-request
        Non-psroff mail only: clewis
!     UUCP routing: {uunet!attcan,utzoo}!lsuc!eci386!<userid>


--- 658,692 ----

  Future directions:

+ They are two-fold: replacing the ".tm/.sR" mechanism for communication
+ with the backend.  There is a new method, using a FSA to recognize
+ a special sequence of bell symbols (see catconv).  I haven't converted
+ over to it, because under some not-yet-understood situations, it
+ doesn't work.  Once this works PROPERLY, a number of enhancements
+ will be made to make CAT troff behave more like ditroff, support
+ for psfig, pic etc.
+
  You may have noticed a compile flag called "OPT" which is defined in
  the distributed version of defs.h.  If enabled (via -Z/W), this enables the
! optimizer.  It works well with Postscript output, but not with laserjet
! unless the fonts you use are VERY good.  It's disabled by default.  The
! optimizer does two things: it emits as many characters as it can as one
! print directive, rather than one CAT code per print.  On postscript and
! HPLJ's this is a BIG win (printer execution speeds 3 or more times faster),
! but it won't work with ditroff.  The optimizer requires access to the CAT
! troff width tables, and if troff2ps can't find them, it simply doesn't
! optimize.

! CONTACT INFO (note that I've moved):

      Chris Lewis
      Elegant Communications Inc.
!     Box 13215, Kanata PO
!     Kanata, Ontario, K2K 1X4
!     Voice Phone: Canada (613) 832-0541
      Userid's for e-mail contact:
!       Psroff enquiries/help: psroff-request
        Non-psroff mail only: clewis
!     UUCP routing: uunet!mitel!cunews!latour!ecicrl!<userid>


*** /tmp/PATCHold/./Makefile    Mon Jan 21 01:44:06 1991
--- ./Makefile  Mon Jan 21 01:44:09 1991
***************
*** 16,28 ****
  #     Note:           This is a System V Makefile, so you may
  #                     have some problems making a few of the items.
  #

  #     Use s5make on Ultrix and Sun!

  #     Set to where you want the user-interfaces to go
! BINDIR        = /usr/lbin
! #BINDIR       = /usr/tmp/bin

  #     Testing type (default postscript (ps)):
  #     Use lj for laserjet.
--- 16,27 ----
  #     Note:           This is a System V Makefile, so you may
  #                     have some problems making a few of the items.
  #

  #     Use s5make on Ultrix and Sun!

  #     Set to where you want the user-interfaces to go
! BINDIR        = /usr/local/bin

  #     Testing type (default postscript (ps)):
  #     Use lj for laserjet.
***************
*** 32,38 ****
  #     This *must* be a directory all by itself with no other stuff
  #     in it.
  LIBDIR        = /usr/lib/troff2
- #LIBDIR = /usr/tmp/troff2

  #     Directory for Laserjet fonts.
  LJF   = $(LIBDIR)/lib/lj
--- 31,36 ----
***************
*** 42,61 ****

  #     Where your real macros are
  RTMACDIR = /usr/lib/tmac
- #RTMACDIR = /usr/tmp/tmac

  #     upper level man directory, with subdirectories man1, man2 etc.
  MANDIR        = /usr/man/l_man
- #MANDIR       = /usr/tmp/man

  #     Change this at your peril - your troff *must* support -F!
  #     (font width files (ft??) are placed under FONTDIR/<width>/ft??)
  #     (see lib/psrofflib.S)
  FONTDIR       = /usr/lib/font
- #FONTDIR = /usr/tmp/font

! #     Comment this out if you don't have shared libraries ala 386/ix
! LIBFLAGS = -lc_s

  #     Bourne shell.  *All* Bourne shells with the exception of extremely
  #     braindamaged ones (such as Ultrix or vanilla BSD) will work fine.
--- 40,56 ----

  #     Where your real macros are
  RTMACDIR = /usr/lib/tmac

  #     upper level man directory, with subdirectories man1, man2 etc.
  MANDIR        = /usr/man/l_man

  #     Change this at your peril - your troff *must* support -F!
  #     (font width files (ft??) are placed under FONTDIR/<width>/ft??)
  #     (see lib/psrofflib.S)
  FONTDIR       = /usr/lib/font

! #     Set this to -lc_s if you have 386/ix style shared libraries
! LIBFLAGS =

  #     Bourne shell.  *All* Bourne shells with the exception of extremely
  #     braindamaged ones (such as Ultrix or vanilla BSD) will work fine.
***************
*** 166,171 ****
--- 161,169 ----

  BACKENDS = lj.o pk.o pkc.o ps.o dt.o

+ DEFINES       = '-DLIBDIR="$(LIBDIR)/lib"' '-DFONTDIR="$(FONTDIR)"'\
+       '-DLJF="$(LJF)"' $(CCFLAGS)
+
  #     Creation of sedscript for parameterization.

  SEDSCRIPT =   "sed -e 's;%%LIBDIR%%;$(LIBDIR);g' \
***************
*** 183,193 ****
                     -e 's^%%IGNORESH%%^$(IGNORESH)^' \
                     -e 's;%%RTMACDIR%%;$(RTMACDIR);g'"

- DEFINES       = '-DLIBDIR="$(LIBDIR)/lib"' '-DFONTDIR="$(FONTDIR)"'\
-       '-DLJF="$(LJF)"' $(CCFLAGS)
  CFLAGS        = $(DEFINES)

-
  all:  troff2ps subst.done makeincl psroff README TROUBLE LASERFONTS submakes

  subst.done:   sedscript
--- 181,188 ----
***************
*** 250,260 ****
--- 245,257 ----
        if [ "$$files" != 'fonts.lj/*.pk' ] ; \
        then \
            cp fonts.lj/*.pk $(LJF) ; \
+           chmod 644 $(LJF)/* ; \
        fi
        $(IGNORESH) files=`echo fonts.lj/*.sfp` ; \
        if [ "$$files" != 'fonts.lj/*.sfp' ] ; \
        then \
            cp fonts.lj/*.sfp $(LJF) ; \
+           chmod 644 $(LJF)/* ; \
        fi
        $(IGNORESH) test -z "$(PKFONTS)" -o ! -d "$(NEWFONTS)" \
            || cp $(NEWFONTS)/* $(LJF)
***************
*** 282,287 ****
--- 279,285 ----
        rm -f $(LIBDIR)/troff2ps.old
        -cp $(LIBDIR)/troff2ps $(LIBDIR)/troff2ps.old
        cp troff2ps $(LIBDIR)/troff2ps
+       chmod 755 $(LIBDIR)/troff2ps $(BINDIR)/psroff
        cd lib ; $(MAKE) install
        cd adapters ; $(MAKE) install
        cd man ; $(MAKE) install
***************
*** 415,417 ****
--- 413,419 ----
        else \
            echo "IGNORESH set correctly" ; \
        fi
+
+ fixperms:
+       find $(LIBDIR) -type f -exec chmod +r '{}' ';'
+       find $(LIBDIR) $(FONTDIR) -type d -exec chmod +rx '{}' ';'
*** /tmp/PATCHold/./widths/Makefile     Mon Jan 21 01:44:32 1991
--- ./widths/Makefile   Mon Jan 21 01:44:35 1991
***************
*** 1,4 ****
! #2.6 90/12/13
  SCRIPTS       = gfnttab
  TD    = testdir
  PSW   = \
--- 1,4 ----
! #2.8 91/01/18
  SCRIPTS       = gfnttab
  TD    = testdir
  PSW   = \
***************
*** 26,31 ****
--- 26,32 ----
        do \
            echo "Processing $$i" ; \
            ./gfnttab $$i >> gfnttab.log ; \
+           chmod 644 $$i/* ; \
        done

  subst.done:   ../makeincl ../sedscript
***************
*** 194,200 ****
                continue ; \
            fi ; \
            echo "Installing $$base widths" ; \
!           mv width$$base/ft* $(FONTDIR)/$$base ; \
        done

  cmp:
--- 195,201 ----
                continue ; \
            fi ; \
            echo "Installing $$base widths" ; \
!           cp width$$base/ft* $(FONTDIR)/$$base ; \
        done

  cmp:
***************
*** 237,243 ****
        rm -f gfnttab.log pk2dit.log pk2sep.log pk2dit.err pk2sep.err

  dit2catwid.o: ../defs.h
-       $(CC) -c $(CFLAGS) '-DFONTDIR="$(FONTDIR)"' dit2catwid.c

  ../cattab.o:  ../defs.h

--- 238,243 ----
*** /tmp/PATCHold/./utils/Makefile      Mon Jan 21 01:44:56 1991
--- ./utils/Makefile    Mon Jan 21 01:44:58 1991
***************
*** 1,4 ****
! #     Copyright 14:22:49 Chris Lewis
  SCRIPTS       = psdtwd showfont mkenctab calcfonts catconv
  PROGRAMS = hpinterp psxlate pk2sfp pk2ditwid pktype dumpft pk2ps lj2ps
  MAPS = maps/S.cmtrf \
--- 1,4 ----
! #     Copyright 03:46:16 Chris Lewis
  SCRIPTS       = psdtwd showfont mkenctab calcfonts catconv
  PROGRAMS = hpinterp psxlate pk2sfp pk2ditwid pktype dumpft pk2ps lj2ps
  MAPS = maps/S.cmtrf \
***************
*** 62,68 ****
            $(LIBFLAGS)

  dumpft:       dumpft.o ../cattab.o
!       $(CC) -o dumpft dumpft.o ../cattab.o $(LIBFLAGS)

  clean:
        rm -f *.o $(SCRIPTS) $(PROGRAMS) ljtab.c *.D *.sfp diagnostics
--- 62,68 ----
            $(LIBFLAGS)

  dumpft:       dumpft.o ../cattab.o
!       $(CC) $(CFLAGS) -o dumpft dumpft.o ../cattab.o $(LIBFLAGS)

  clean:
        rm -f *.o $(SCRIPTS) $(PROGRAMS) ljtab.c *.D *.sfp diagnostics
*** /tmp/PATCHold/./utils/pktype.c      Mon Jan 21 01:45:17 1991
--- ./utils/pktype.c    Mon Jan 21 01:45:20 1991
***************
*** 1,4 ****
! /*    Copyright 1985, 1986, 1987, 1988 16:49:49 Chris Lewis
                All Rights Reserved

      Permission to copy and further distribute is freely given provided
--- 1,4 ----
! /*    Copyright 1985, 1986, 1987, 1988 01:41:15 Chris Lewis
                All Rights Reserved

      Permission to copy and further distribute is freely given provided
***************
*** 13,19 ****

  #ifndef       lint
  static char SCCSID[] =

  #endif
  #include "defs.h"
  #include "pk.h"
--- 13,19 ----

  #ifndef       lint
  static char SCCSID[] =

  #endif
  #include "defs.h"
  #include "pk.h"
***************
*** 161,167 ****
            pc->pkc_char, pc->pkc_pl);
        fprintf(diagFile, "  Flag byte: %d\n", pc->pkc_flag);
        fprintf(diagFile, "  Dynamic packing variable: %d\n", pc->pkc_dyn_f);
!       fprintf(diagFile, "  TFM width: %d, dx: %d", pc->pkc_tfm, pc->pkc_dx);
        if (pc->pkc_dy)
            fprintf(diagFile, " dy: %d\n", pc->pkc_dy);
        else
--- 161,168 ----
            pc->pkc_char, pc->pkc_pl);
        fprintf(diagFile, "  Flag byte: %d\n", pc->pkc_flag);
        fprintf(diagFile, "  Dynamic packing variable: %d\n", pc->pkc_dyn_f);
!       fprintf(diagFile, "  TFM width: %d, dx: %d, delta x: %d", pc->pkc_tfm,
!           pc->pkc_dx, pc->pkc_dx * 4 / pow2(16));
        if (pc->pkc_dy)
            fprintf(diagFile, " dy: %d\n", pc->pkc_dy);
        else
*** /tmp/PATCHold/./tests/testtab.m.S   Mon Jan 21 01:45:36 1991
--- ./tests/testtab.m.S Mon Jan 21 01:45:38 1991
***************
*** 1,4 ****
! .\" 2.1 90/07/18
  .po .25i
  .in 0
  .fp 1 R
--- 1,4 ----
! .\" 2.2 91/01/01
  .po .25i
  .in 0
  .fp 1 R
***************
*** 8,17 ****
  .ps 12
  .vs 14
  .sp |.3i
! .ce 3
! PSROFF TEST SHEET (2.1)
  .br
! Please fill out and FAX to (416) 595-5439
  .br
  \*(2d
  .ps 10
--- 8,19 ----
  .ps 12
  .vs 14
  .sp |.3i
! .ce 4
! PSROFF TEST SHEET (2.2)
  .br
! Please fill out and mail to: BOX 13215
! .br
! Kanata PO, Kanata, Ontario, Canada K2K 1X4
  .br
  \*(2d
  .ps 10
*** /tmp/PATCHold/./defs.h      Mon Jan 21 01:45:48 1991
--- ./defs.h    Mon Jan 21 01:45:50 1991
***************
*** 1,4 ****
! /*    Copyright 1988, 1989 23:46:55 Chris Lewis
                All Rights Reserved

      Permission to copy and further distribute is freely given provided
--- 1,4 ----
! /*    Copyright 1988, 1989 03:44:30 Chris Lewis
                All Rights Reserved

      Permission to copy and further distribute is freely given provided
***************
*** 6,18 ****
      sold for profit.

        Project:        Generic Troff drivers
!       Module:         defs.h 2.12 90/12/14 23:46:55
        Author:         Chris Lewis
        Specs:          Main header file - contains some customization
   */

  /*    Official Release and Patch level:       */

  #ifndef       LIBDIR
  /*    Don't touch this */
--- 6,18 ----
      sold for profit.

        Project:        Generic Troff drivers
!       Module:         defs.h 2.13 91/01/18 03:44:30
        Author:         Chris Lewis
        Specs:          Main header file - contains some customization
   */

  /*    Official Release and Patch level:       */

  #ifndef       LIBDIR
  /*    Don't touch this */
***************
*** 55,64 ****

        - If HEADERSIZE defined, use that many bytes as a prefix to the
          compiled font width table.  HEADERSIZE 0 is the correct definition
!         for Xenix and most System V Troffs.  HEADERSIZE=32 works for Ultrix.
!         HEADERSIZE=0 works properly for Suns (I think).
        - If COFF is defined instead, use a COFF header on the beginning of
!         the file.  I personally know of no machine that supports these.
        - If neither are defined, use a BSD/V7 style a.out.h header, this
          is appropriate for V7 and BSD troffs
        - If you are running RISC/Ultrix (Mips box? from DEC) define
--- 55,65 ----

        - If HEADERSIZE defined, use that many bytes as a prefix to the
          compiled font width table.  HEADERSIZE 0 is the correct definition
!         for Xenix and most System V [o]troffs.  HEADERSIZE=32 works for Ultrix
!         (except RISC, see below).  HEADERSIZE=32 works properly for most Suns.
        - If COFF is defined instead, use a COFF header on the beginning of
!         the file.  I personally know of no machine that supports these, tho,
!         there's unconfirmed rumours that Apollo systems might.
        - If neither are defined, use a BSD/V7 style a.out.h header, this
          is appropriate for V7 and BSD troffs
        - If you are running RISC/Ultrix (Mips box? from DEC) define
*** /tmp/PATCHold/./lj.c        Mon Jan 21 01:46:02 1991
--- ./lj.c      Mon Jan 21 01:46:05 1991
***************
*** 35,41 ****

  #ifndef       lint
  static char SCCSid[] =

  #endif

  struct troff2befont ljStdFont[108] = {
--- 35,41 ----

  #ifndef       lint
  static char SCCSid[] =

  #endif

  struct troff2befont ljStdFont[108] = {
***************
*** 431,436 ****
--- 431,437 ----
  int font, selpoints, fontcode;
  char *sequence; {
      int points, pointidx;
+     extern FILE *popen();
      register char *pf, *p;
      register struct pkp *pk;
  #if   !defined(INCR) && defined(PK)
*** /tmp/PATCHold/./pk.c        Mon Jan 21 01:46:31 1991
--- ./pk.c      Mon Jan 21 01:46:36 1991
***************
*** 7,13 ****
  #ifdef        PK

  #ifndef lint

  #endif

  #define       DRAW
--- 7,13 ----
  #ifdef        PK

  #ifndef lint

  #endif

  #define       DRAW
***************
*** 742,747 ****
--- 742,748 ----
  pk_read(file, fontcode)
  char *file; int fontcode; {
      register struct pkp *p;
+     extern FILE *popen();
      register struct pkc *pc, **pcp;
  #ifdef        COMPRESS
      int compressed = 0;
*** /tmp/PATCHold/./troff2.c    Mon Jan 21 01:47:07 1991
--- ./troff2.c  Mon Jan 21 01:47:10 1991
***************
*** 15,21 ****

  #ifndef       lint
  static char SCCSid[] =

  #endif

  #define       ESC     0x80
--- 15,21 ----

  #ifndef       lint
  static char SCCSid[] =

  #endif

  #define       ESC     0x80
***************
*** 611,618 ****
                case 'c':
                    retval *= TROFFRESOLUTION * 50. / 127.;
                    break;
                case 'P':
!                   retval *= 72.;
                    break;
            }
            break;
--- 611,621 ----
                case 'c':
                    retval *= TROFFRESOLUTION * 50. / 127.;
                    break;
+               case 'p':
+                   retval *= 6.;       /* points */
+                   break;
                case 'P':
!                   retval *= 72.;      /* Picas */
                    break;
            }
            break;
***************
*** 657,662 ****
--- 660,666 ----
            case 'S': {

                    register FILE *fin;
+                   extern FILE *popen();
                    register int rc, n;
                    char buf[BUFSIZ];
                    DBP((D_SPEC,"SYSTEM: %s\n", string+1));
--

UUCP: uunet!mitel!cunews!latour!ecicrl!clewis




Fri, 09 Jul 1993 15:18:17 GMT  
 
 [ 1 post ] 

 Relevant Pages 

1. Official Patch 9 for Psroff 3.0 (emergency patch)

2. Official Patch 16 for Psroff 3.0

3. Official Patch 13 for psroff 3.0 posted

4. Official Patch 10 for Psroff 3.0 has

5. Official Patch 8 for Psroff 3.0

6. Official Patch 7 for Psroff 3.0

7. Official Psroff Patch 5 - whoopsie

8. Official Patch 5 for Psroff 3.0

9. Official Psroff Patch 3

10. Psroff 2.0 Patch 6 (Supports RISC Ultrix!)

11. Psroff 2.0, Patch 5

12. Psroff 3.0 patch 17 posted to comp.sources.bugs,alt.sources

 

 
Powered by phpBB® Forum Software