Win98/HP Printer problem. Partially Solved.

Darrin M. Gorski dgorski at
Thu Jul 15 21:41:36 GMT 1999

On Fri, 16 Jul 1999, Kevin Everets wrote:

> ^L^[E^[%-12345X
> The ^L seems to be required to push out the last page, but the rest of it
> appears to make an extra blank page print. Very strange. This code isn't
> generated by Ghostscript when the users print out Postscript stuff.

^L is a formfeed
^[ is an escape, (which I'll write as [ESC] to ease reading)
[ESC]E is a PCL RESET command
[ESC]%-12345X is a PJL prefix (usually followed by a command), for

[ESC]%-12345X at PJL EOJ

is a PJL end of job command, which tells the printer to prepare for
the next job;

[ESC]%-12345X at PJL ENTER LANGUAGE = PostScript

is a PJL language switch command (to PS, obviously).

PJL (Printer Job Language) is primarily helpful with HP printers which
have multiple personalities (i.e. PCL and PS).

Anyway, it looks to me like the entire job is not making it to samba, as
the PJL command is missing.

I would suggest printing to a file on the Win98 client and look to see if
there is more PJL code in the file the client actually created. Then
you'll need to figure out where it's gone to.

> To get around the little extra page problem, I just popped a filter into
> the printcap file which runs sed and removes the extra garbage.

You may wish to *ADD* '@PJL EOJ', instead of using sed to remove the
'extra garbage'. I'm not sure if it matters, however. I would at least
leave the PCL Reset ([ESC]E), as this can prevent the printer from being
left in a strange state. I suppose that's what the PJL EOJ is for too...


"I have no special gift. I am only passionately curious." - A. Einstein

Darrin M. Gorski, Research Computer Systems Network Support
Scientific Research Laboratories, Ford Motor Company
Internet: dgorski at | Tel/Fax: +1 (313) 248-3753

More information about the samba mailing list