interactive postscript printers

  • Thread starter Thread starter Allan Adler
  • Start date Start date
A

Allan Adler

According to the 1985 edition of Adobe's Postscript Language Reference Manual
(the red book), "A human user can interact directly with the LaserWriter's
POSTSCRIPT interpreter from a terminal and use the LaserWriter as if it were
a personal computer." It then goes on to explain a little about how to set
the LaserWriter up to use this capability.

That sounds like fun and I would like to try it.

What I would like to know is:
(1) Which postscript printers have this capability?
(2) When using them in interactive mode, and without trying to print anything,
do they give error messages if there isn't any paper or there isn't enough
toner or if there is no toner cartridge, etc.?
(3) How cheaply can I obtain a postscript printer, possibly used, which
I can use in this manner? I don't really care about printing anything
out on it, just about using it as a personal computer, so I don't care
about cost or availability of toner cartridges, etc. However, since
I do want to use it as a computer, I do care about memory.


Ignorantly,
Allan Adler
(e-mail address removed)

****************************************************************************
* *
* Disclaimer: I am a guest and *not* a member of the MIT Artificial *
* Intelligence Lab. My actions and comments do not reflect *
* in any way on MIT. Moreover, I am nowhere near the Boston *
* metropolitan area. *
* *
****************************************************************************
 
Allan Adler said:
According to the 1985 edition of Adobe's Postscript Language Reference Manual
(the red book), "A human user can interact directly with the LaserWriter's
POSTSCRIPT interpreter from a terminal and use the LaserWriter as if it were
a personal computer." It then goes on to explain a little about how to set
the LaserWriter up to use this capability.

That sounds like fun and I would like to try it.

What I would like to know is:
(1) Which postscript printers have this capability?

Some. Usually the communications channel is the problem; most
PostScript printers with serial ports can be used interactively. Maybe
some can run interactively with telnet via Ethernet.
(3) How cheaply can I obtain a postscript printer, possibly used, which
I can use in this manner? I don't really care about printing anything
out on it, just about using it as a personal computer, so I don't care
about cost or availability of toner cartridges, etc. However, since
I do want to use it as a computer, I do care about memory.

You can probably find a 4M cheaply, maybe under $100.

If you just want to write PostScript code, you don't need a printer.
All you really need is a PostScript interpreter that will run on your
computer. Ghostscript is a program that will do this, interactively if
you like, and it's free:

http://www.cs.wisc.edu/~ghost/
 
According to the 1985 edition of Adobe's Postscript Language Reference Manual
(the red book), "A human user can interact directly with the LaserWriter's
POSTSCRIPT interpreter from a terminal and use the LaserWriter as if it were
a personal computer."

I don't find that sentence in my copy, but if it's there, I expect it's in
Appendix D, describing the original Apple LaserWriter.
What I would like to know is:
(1) Which postscript printers have this capability?

Dunno. Apple LaserWriters did.
(2) When using them in interactive mode, and without trying to print anything,
do they give error messages if there isn't any paper or there isn't enough
toner or if there is no toner cartridge, etc.?

Dunno. Doubt it.
(3) How cheaply can I obtain a postscript printer, possibly used, which
I can use in this manner?... However, since I do want to use it as
computer, I do care about memory.

You'd probably be a lot better off using ghostscript for this sort of thing.

--
 
Allan> It then goes on to explain a little about how to set the
Allan> LaserWriter up to use this capability.

Allan> That sounds like fun and I would like to try it.

Allan> What I would like to know is: (1) Which postscript printers
Allan> have this capability?

No idea. The problem is that many PC printers are connected via the
parallel port. The parallel port (traditionally, not the recent ECP,
EPP ones) is a one-directional channel: Only the PC can send data to
the printer. The printer cannot send data back to the PC. It can
only send a limited number of signals to the PC, such as "out of
paper", "error", etc. So, how can you talk interatively to your
printer over this channel?

Some PC printers (pretty uncommon esp. for cheap models) do support
connection via the RS232 (serial) port. In this case, you may be able
to talk with the printer. The serial port is bi-directional. You'll
need a terminal emulator like Telix.


Allan> (2) When using them in interactive mode, and without trying
Allan> to print anything, do they give error messages if there
Allan> isn't any paper or there isn't enough toner or if there is
Allan> no toner cartridge, etc.?

But why should it consider out of paper or lower toner to be errors,
when it's not going to print anything? The behaviour should be
printer-dependent anyway. However, I still ain't convinced that in a
good design, the printer would consider it an error when a resource
it's not using is in shortage. That could be made a _warning_. I'd
consider it a bad design to make this an error.


Allan> (3) How cheaply can I obtain a postscript printer, possibly
Allan> used, which I can use in this manner?

Have you tried e-Bay or something like that?


Allan> I don't really care about printing anything out on it, just
Allan> about using it as a personal computer, so I don't care
Allan> about cost or availability of toner cartridges,
Allan> etc. However, since I do want to use it as a computer, I do
Allan> care about memory.

What an interesting idea! People have written ray-tracers (and many
cool stuffs, even webservers!) in Postscript. Your idea can let us
"recycle" old printers which are being phased out by big companies.
Maybe, we can build clusters out of it and do something useful! :)
 
Some printers allow you to telnet into them (standard telnet port). My
GCC Elite XL allows this. There used to also be a program called
LaserTalk that you can probably still track down. It gave you a GUI of
the stack, other variables, etc. It is Mac only and has the software
equivalent of an old grey beard -- it will only work when booted to 'ol
school OS9 (or earlier) and not in OS X classic mode. Unfortunately it
does not appear that anyone ever updated this tool. You'd think Adobe
would have something like this these days.....
 
Jason> Some printers allow you to telnet into them (standard
Jason> telnet port). My GCC Elite XL allows this.

I've been using HP Laserjets in office for many years. Different
models, but they are all connected to our network via EtherJet. Yes,
you can telnet to them, but that doesn't connect you to the Postscript
interpreter. It only connects you to the printers configuration/setup
program, through which you can change the printer configurations.
More modern ones even have web-servers, and you can point your web
browsers to them. But again, that's just for configuration, not for
talking to the Postscript interpreter.


Jason> There used to also be a program called LaserTalk that you
Jason> can probably still track down. It gave you a GUI of the
Jason> stack, other variables, etc.

Sounds cool! :)


Jason> It is Mac only

:( I don't have a Mac.
 
Allan Adler said:
According to the 1985 edition of Adobe's Postscript Language Reference Manual
(the red book), "A human user can interact directly with the LaserWriter's
POSTSCRIPT interpreter from a terminal and use the LaserWriter as if it were
a personal computer." It then goes on to explain a little about how to set
the LaserWriter up to use this capability.

That sounds like fun and I would like to try it.


You can interact directly with a PostScript printer-like device by
downloading RoPS version 5.3 for Windows from www.rops.org. This is a level
one PS interpreter (like the 1985 LaserWriter) with an interactive console.
(Run the 'executive.ps' sample.) It's free (as in beer).

What it doesn't have is all the machine-specific registers and
characteristics which would give you that true LaserWriter experience I
suspect you are after.
What I would like to know is:
(1) Which postscript printers have this capability?

any PostScript printer with some form of back channel is likely to have this
capability, either via a serial line or a telnet interface. It's the way the
printer communicates status back to the print spooler.
(2) When using them in interactive mode, and without trying to print anything,
do they give error messages if there isn't any paper or there isn't enough
toner or if there is no toner cartridge, etc.?

If you look in your 1985 manual (p282) you'll see that (on an original
LaserWriter) if you send a control-T character over the serial interface
you'll get back a one line status message, such as no paper, cover open,
etc. I've no idea about other flavours of printer.
(3) How cheaply can I obtain a postscript printer, possibly used, which
I can use in this manner? I don't really care about printing anything
out on it, just about using it as a personal computer, so I don't care
about cost or availability of toner cartridges, etc. However, since
I do want to use it as a computer, I do care about memory.

A client I did some programming for in around 1992 had bought a LaserWriter
(when they first came out) on some sort of credit deal for UK-pounds 8000;
he's probably still paying for it.

Try a Google (or whatever) search for "used Apple LaserWriter". There seem
to be a few about for a couple of hundred dollars or so. They may be
relatively cheap because people think they need an Apple system to use
them....
 
Roger> You can interact directly with a PostScript printer-like
Roger> device

What do you mean by that?


Roger> by downloading RoPS version 5.3 for Windows from
Roger> www.rops.org. This is a level one PS interpreter (like the
Roger> 1985 LaserWriter) with an interactive console. (Run the
Roger> 'executive.ps' sample.) It's free (as in beer).

Why not use Ghostscript? It's free, too, and it is available for many
platforms, including Windows, Linux, Solaris, AIX, etc. And it
supports level 2, too. Level 3 support is there, but I'm not sure if
it is complete.
 
LEE Sau Dan said:
Jason> Some printers allow you to telnet into them (standard
Jason> telnet port). My GCC Elite XL allows this.

I've been using HP Laserjets in office for many years. Different
models, but they are all connected to our network via EtherJet. Yes,
you can telnet to them, but that doesn't connect you to the Postscript
interpreter. It only connects you to the printers configuration/setup
program, through which you can change the printer configurations.

Ah, but you can telnet to lots of different ports. I can't remember
which port(s) the interpreter is on, but they have to be there because
some printing methods use a telnet connection.
 
Allan Adler said:
According to the 1985 edition of Adobe's Postscript Language Reference Manual
(the red book), "A human user can interact directly with the LaserWriter's
POSTSCRIPT interpreter from a terminal and use the LaserWriter as if it were
a personal computer." It then goes on to explain a little about how to set
the LaserWriter up to use this capability.

That sounds like fun and I would like to try it.

What I would like to know is:
(1) Which postscript printers have this capability? ....
Ignorantly,
Allan Adler
(e-mail address removed)

I just tried telnetting to port 9100 on a couple of HP LaserJets
sitting around the office, and found that if I send the following two
lines of text:

%
executive

I get, for a LaserJet 4100n:

Copyright (c) Hewlett-Packard Company, 1997
Version 3010.107
PS>

and for a LaserJet 4050n:

Copyright (c) Hewlett-Packard Company, 1997
Version 2014.116
PS>

In addition, if (instead) you paste http://www.rops.org/stuff/dump.ps
into your telnet session you can get a dump of all the internal
dictionaries.
 
LEE Sau Dan said:
Roger> You can interact directly with a PostScript printer-like
Roger> device

What do you mean by that?

I mean you can type commands at a PS> prompt and see their effects on
screen.
Roger> by downloading RoPS version 5.3 for Windows from
Roger> www.rops.org. This is a level one PS interpreter (like the
Roger> 1985 LaserWriter) with an interactive console. (Run the
Roger> 'executive.ps' sample.) It's free (as in beer).

Why not use Ghostscript? It's free, too, and it is available for many
platforms, including Windows, Linux, Solaris, AIX, etc. And it
supports level 2, too. Level 3 support is there, but I'm not sure if
it is complete.

http://bugs.ghostscript.com/show_bug.cgi?id=603689
 
Jason J. Campbell said:
Some printers allow you to telnet into them (standard telnet port). My
GCC Elite XL allows this. There used to also be a program called
LaserTalk that you can probably still track down. It gave you a GUI of
the stack, other variables, etc. It is Mac only and has the software
equivalent of an old grey beard -- it will only work when booted to 'ol
school OS9 (or earlier) and not in OS X classic mode. Unfortunately it
does not appear that anyone ever updated this tool. You'd think Adobe
would have something like this these days.....
My memories of LaserTalk are pretty faded -- but ISTR that it would
only work with a Mac OS earlier than System 7. (OTOH I may be
thinking of some other antediluvian PS-related application.)

--Odysseus
 
Aandi> Ah, but you can telnet to lots of different ports. I can't
Aandi> remember which port(s) the interpreter is on, but they have
Aandi> to be there because some printing methods use a telnet
Aandi> connection.

You mean the LPD port (515)?

No, that port speaks the LPD protocol. You can of course telnet to
it--the telnet client connect to all TCP services. However, when the
other side is not speaking the telnet, you can't do much after the
connection, unless you type something that conforms to that specific
protocol.


The telnet port (23) on HP Laserjets does speak the telnet protocol,
and you can telnet to it. But that only for administering the
printer, not for the Postscript intepreter.
 
Roger> I just tried telnetting to port 9100 on a couple of HP
Roger> LaserJets sitting around the office, and found that if I
Roger> send the following two lines of text:

Roger> % executive

Roger> I get, for a LaserJet 4100n:

Roger> Copyright (c) Hewlett-Packard Company, 1997 Version
Roger> 3010.107
PS>

Wow! Cool! Time for hacking!!! :D
 
LEE Sau Dan said:
Aandi> Ah, but you can telnet to lots of different ports. I can't
Aandi> remember which port(s) the interpreter is on, but they have
Aandi> to be there because some printing methods use a telnet
Aandi> connection.

You mean the LPD port (515)?

No, that port speaks the LPD protocol. You can of course telnet to
it--the telnet client connect to all TCP services. However, when the
other side is not speaking the telnet, you can't do much after the
connection, unless you type something that conforms to that specific
protocol.

HP networked printers with HPNP use port 9100, where a TCP connection is
made, all the data sent through, as it would be on the parallel or serial
port, and the connection is closed. I believe that HP postscript printers
will run interactive mode. I think it is the executive command that does
it. Ghostscript will do it, too, and that is much cheaper than an HP
postscript printer.

-- glen
 
Glen> HP networked printers with HPNP use port 9100, where a TCP
Glen> connection is made, all the data sent through, as it would
Glen> be on the parallel or serial port, and the connection is
Glen> closed. I believe that HP postscript printers will run
Glen> interactive mode. I think it is the executive command that
Glen> does it.

I've tried it on the HP printers in my lab. It's not that
interactive. After the telnet session is opened, I can type in PS
code. But I get completely no feedback, until I signal the end of
data transmission with a Ctrl-D. Then, all the feedback come at once.
And after that, I can issue no more commands. :(

Yet, it's a convenient way to poke into some internals of that PS
interpreters. e.g. I've just got the default matrix (without wasting
paper) and found out what are defined in the initial userdict.


Glen> Ghostscript will do it, too, and that is much cheaper than
Glen> an HP postscript printer.

Certainly! :)
 
I've tried it on the HP printers in my lab. It's not that
interactive. After the telnet session is opened, I can type in PS
code. But I get completely no feedback, until I signal the end of
data transmission with a Ctrl-D. Then, all the feedback come at once.
And after that, I can issue no more commands. :(

Ahh, but did you try "flush"?

--
---------------------------------------------------------------
Brian V. Smith ([email protected]) http://epb.lbl.gov/BVSmith
(remove the Xs above to send me email)
Lawrence Berkeley National Laboratory
I don't speak for LBNL - they don't pay me enough for that.
Check out the xfig site at http://epb.lbl.gov/xfig or http://www.xfig.org
 
Odysseus said:
My memories of LaserTalk are pretty faded -- but ISTR that it would
only work with a Mac OS earlier than System 7. (OTOH I may be
thinking of some other antediluvian PS-related application.)

LaserTalk works fine on OS 9.1, I use it every day to PS mark-up text
files up to 200,000 words.
Also runs in OSX classic mode but is not Apple Scriptable.

The Tinydict PostScript Mark-up
for Self-Printing Books
cappella-archive.com
 
Don't limit yourself to just printers, my Plotter also
has a postscript chip in it.
Executive mode is fun, not to usefull unless you can write
postscript code the way most write C.

I can't remember if it was the blue, or green book, but it suggests
useing this mode to see the postscript code that runs the
printer motors, and gears for convoluted coding examples.

Also ran across a website on printer virus's that tells how to play with
the laserjet display.
Robert
 
na> Don't limit yourself to just printers, my Plotter also has a
na> postscript chip in it. Executive mode is fun, not to usefull
na> unless you can write postscript code the way most write C.

Most people who love Postscript can do that. That's one reason why I
like Postscript.


na> I can't remember if it was the blue, or green book, but it
na> suggests useing this mode to see the postscript code that runs
na> the printer motors, and gears for convoluted coding examples.

So, you mean a "100 100 moveto" will really cause the plotter's arm to
move immediately? That sound terrible and definite non-optimal for a
sequence like: "100{2{rand 600 mod}repeat moveto}bind repeat 72 72
moveto"!

And a "fill" operator will cause the plotter to lay ink on the paper
immediately? What will happen when I later fill the same area after a
"1 setgray"? Has the plotter got some white paint?
 
Back
Top