[comp.lang.postscript] TranScript/Ethernet filter incompatibility

dmccart@cadedn.intel.com (D. J. McCarthy ~) (05/12/89)

	We have (or soon will have) a bunch of PostScript printers hooked up
to an Ethernet adapter (a Network Printer Controller from Xyplex).  We also
have a copy of TranScript 2.1.  The NPC is on the same network as a bunch of
VMS and Unix boxes.  Basically all I'm worried about is printing from Unix
over the net through the NPC to the printers.

	The NPC has its own filter script that is in the 'of' position in
/etc/printcap.  It also adds two more entries in printcap that set the
Ethernet address of the NPC and the port number off the NPC that the printer
is connected to.

	TranScript, as far as I can tell, wants to bind a printer to a
specific serial port off the Unix box it's attached to.  Pscomm, from the
documentation, sends straight to a serial port.  I want it to go through
pscomm, then have it go through the NPC filter, *then* go to the serial port
that's the Ethernet's attached to.

	In short, how can I get pscomm to send its output to a file instead
of to a port?  I know this is more a Unix question than a PostScript question,
but I'm hoping Glenn Reid will have some idea of what to do!

	Thanks -
_____
D. J. McCarthy
dmccart@cadev4.intel.com

greid@adobe.com (Glenn Reid) (05/13/89)

In article <4106@mipos3.intel.com> dmccart@cadev4.UUCP (D. J. McCarthy ~) writes:
>	In short, how can I get pscomm to send its output to a file instead
>of to a port?  I know this is more a Unix question than a PostScript question,
>but I'm hoping Glenn Reid will have some idea of what to do!

Sigh.  I guess Glenn Reid can't let this one go by, since you have
mentioned me explicitly :-)  Hopefully I have some idea of what to do.
Here's goes.

>	The NPC has its own filter script that is in the 'of' position in
>/etc/printcap.  It also adds two more entries in printcap that set the
>Ethernet address of the NPC and the port number off the NPC that the printer
>is connected to.
>
>	TranScript, as far as I can tell, wants to bind a printer to a
>specific serial port off the Unix box it's attached to.  Pscomm, from the
>documentation, sends straight to a serial port.  I want it to go through
>pscomm, then have it go through the NPC filter, *then* go to the serial port
>that's the Ethernet's attached to.

Well, TranScript is lots of things, actually.  The part that you are
interested in, the "pscomm" program, has "comm" as its most important
attribute.  That is, it is a communication program, not a true filter.
Its only purpose is to establish serial communications with a
PostScript printer, send the input file as a job, follow it with ^D as
the end-of-file indication for the serial port, collect messages that
come back from the printer, issue occasional status requests to make
sure the printer is still there, and otherwise supervise the actual
device.

If pscomm were to write its output to a file, its input and output
would be identical.

I think what you really need to do is to hack the spooling mechanism to
put your NPC filter in place of "pscomm", but to leave the rest of
TranScript intact.  The /etc/printcap file has entries to invoke
specific programs for specific purposes.  The one marked 'of' (output
filter), takes the file from the spooler and feeds it to the printer.

TranScript does have some spooling-related features that you have to
investigate.  It is able to recognize conforming PS files and feed them
to a page-reversal filter before printing.  It can recognize pure text
files (as were traditionally sent to "lpr") and feed them through a
simple text-to-postscript translator.  Etc.  I don't know offhand if
those checks are made in pscomm or elsewhere, but you might have to
emulate those features yourself if you wanted to replace pscomm.  You'd
probably have to write your own program to invoke in front of your NPC
filter to do this.

You say:
>documentation, sends straight to a serial port.  I want it to go through
>pscomm, then have it go through the NPC filter, *then* go to the serial port
>that's the Ethernet's attached to.

If the reason you want it to go through pscomm first is for these extra
features, then you may have some work to do.  If not, you can dispense
with pscomm altogether (I think).

I hope this helps somewhat.

Glenn Reid
Adobe Systems