HP Laserjet not working under SCO Unix

Dave Armbrust dma at pcssc.UUCP
Fri Oct 5 11:47:39 AEST 1990


Under SCO UNIX 3.2 there seems to be major problem with using raster
graphics on a HP Laserjet printer.  This is a major problem for
our software firm.  If the problem can not be worked around we will
not be able to market SCO Unix to our customers.   All systems
we sell include HP lasersjets.

What happens is that when a file is sent to the laserjet it causes
a major slow down.  I sent a file that was 5K in size including the
raster graphics.  I takes 10 MINUTES to print the file.  Once the page
was finally printed it contained garbage where the graphics should
have appeared.  When I remove the raster graphics from the file
everything works fine.

The problem still occurs regardless if I use the SCO supplied
hpjet model file or not.  The problem also occurs if I cat the file
directly to the port (/dev/lp0).

The problem may be the binary 8 bit data being sent through the parallel
printer driver.  The data contained in the byte stream is virtually
random and any values between the value of 0x00 and 0xFF is valid.
Therefore any combinations of bytes could be sent.  Both the characters
0x00 and 0xFF is common in the byte steam that is being sent.

The files also print fine using the same printer etc.. under DOS (7 seconds).
The files print fine using the same printer etc.. under SCO Xenix (11 seconds).
The files do at times seem to printer slower under SCO Xenix then it should
but the speed under SCO Xenix is marketable.  The speed, disregarding the
garbage, under SCO UNIX is not.  The problem is not limited to one machine
as we can duplicate the problem at our site when using raster data with our
laserjet.  The problem does seem to be limited to (SCO?) UNIX.
The problem occurs both with laserjet series II and laserjet series III.

When talking to SCO on previous slow parallel printer problems with
HP laserjet their response was.  "Internally we only use serial
interfaces for HP laserjets".

For those of you that are not familiar with raster graphics on the
laserjet I will explain what it consists of.

To tell the printer that you want to start raster graphics at the
current page position the following escape sequence is sent for 300
dots per inch resolution.  The \033 indicates the escape character.

   \033*t300R\033*r1A

Then for each line of graphics the following is sent.  The

    \033*b#W[raster data] 

     # = Number of bytes in the line of data

     [raster data] =
     The bits of raster data (1's and 0's) sent to the printer
     describe single dots to be printed on the page.  The most
     significant bit (bit 7) of the first byte of data corresponds to the
     first pixel within that line.  A one indicates that the dot is to be
     printed, and a zero indicates that the dot should not be printed.

The following escape sequence informs the printer that all raster
graphics data has been transferred to the printer:

     \033*rB

I prefer not to use a serial interface unless this is the only
way to solve the problem.  A parallel port should be faster
then serial.  Also a parallel port does not have the problem
of print jobs going off into 'never-never' land when the
printer is not turned on.

All ideas on this problem with be a great help.

If anyone has been able to print 'raster graphics' under SCO Unix on
a HP Laserjet please let me know as then I will at least know I am
not kicking a 'dead horse'.

Dave Armbrust               |     uunet!pcssc!dma
PC Software Systems         |     dma at pcssc.com
2121 Cornell Street         |     Phone: (813)365-1162
Sarasota, FL 34237          |     

Closing the barn door when a dead gift horse is in
mid-stream won't make him drink.



More information about the Comp.unix.sysv386 mailing list