[comp.sys.masscomp] HP Laserjet II Help Sought

bcx@eeg.UUCP (05/01/87)

We recently purchased an HP laserjet II for use on our 5700. It took
mere minutes to get it up and running as a high-quality line printer
(using the lp interface "HPLjet" from dbw@ariel.UUCP (DAVE B. WOOD) via
USENET net.sources). I only needed to make one modification, which was
to change the line:

	stty opost -tabs ixon <&1
to:
	stty opost onlcr -tabs ixon <&1

I am currently trying to adapt the nroff terminal description file
("nroff table for HP Laserjet and Font J Cartridge" from sherm@wucs.UUCP 
(THE MAN) via USENET net.sources), to run on a masscomp. The problems
I have encountered thus far are myriad:

1. The document supplied with the 5700 ("Writing NROFF Terminal Descriptions,
   by Eric Allman) is incorrect on two counts:

   a. It appears that the masscomp version of nroff _does_ use the *iton
      and *itoff members of struct term:

	char *bdoff;	/* string to turn boldface off */
	char *iton;	/* string to turn itallic on   */
	char *itoff; 	/* string to turn itallic off  */

  b. The instructions to produce a description file:

	cc -c tabterm.c
	strip tabterm.o
	cp tabterm.o /usr/lib/term/tabterm

     do not work. Instead I have had to use the "table/elbat" programs
     (from bnr-vpa!bruce (Bruce Townsend) again via USENET), to produce
     an acceptable file.
[mod: The document supplied by masscomp does not apply to the nroff supplied
by masscomp -- sigh -- sob]

2. The masscomp nroff has an artificial limit on the size of a terminal
   description file. Anything over ~1850 bytes causes nroff to print
   "terminal file too big" and exit. (UCB 4.2 has no such limit).
   Needless to say, the hp laserjet II requires some _very_ long
   escape sequences to produce the special characters.

3. As a work-around to the problem in 2 above, I striped the long
   escape sequences from the file and created a post-nroff filter
   to produce them. Since I needed an otherwise unused character
   to signal the special characters to the filter, I used \026.
   Unfortunately, masscomp nroff _strips_ control characters from
   the description file strings. I also tried \001, \0036 and \177!

4. Frustration with 3 led me to signal special characters to the filter
   by using _printable_ characters. ("|" and "~", doubling either
   for a print-thru). This worked (somewhat) but led me to:

   a. Masscomp nroff refuses to output the *twinit string (I need
      this to get the printer to use the J font cartridge) or the
      *twrest string (to restore the printer).

   b. Phantom characters are produced, specifically "||1", and
      I have no idea where they are produced.

As of this writing, I have still not gotten the HP laserjet II to
work with masscomp's nroff.

As a side note, the original description file works just fine
under UCB 4.2 nroff.

PS. (excuse the pun)
The device-independant troff supplied with the 5700 lacks the makedev
program. But I won't even begin a troff font/DESC file until I get
character widths from HP.

[I think the intention was to supply all the troff tools with sp-09,
the laser printer support package...Why? I don't know... sob]