Internal Memo
ToFrom
ImagingInterest^.paMichael Plass
 Plass.pa
SubjectDate
Peach PD printers October 31, 1984 12:26:44 pm PST
Peach PD printers and how to use them
What is a Peach printer?
A Peach printer is a printer that is running under the control of the Peach experimental printer software. The Peach software is written in Mesa 11 and runs under the Pilot operating system on a Dicentra. The Dicentra (which is basically a stripped-down Dandylion running on a Multibus) may or may not have a disk attached; if it does have one, it is used only as a giant buffer for the page image, and has no file system. Peach printers print PD files, and nothing else.
OK, then what is a PD file?
A PD file is a file in Printer Dependent format. See [Indigo]<PD>Docs>*.press for information on the format of PD files and how to print them on Alto/Slot machines. However, you should actually not need to know anything about PD files, except perhaps that they are a way for an Interpress implementation to get the bits to a printer. Also, if you are interested in making VLSI plots, you need to make PD files directly from ChipNDale, since we don't understand yet how to express overlapping transparent colors in a device-independent way.
What Peach printers are there?
Right now there are two Peach printers. One is a diskless one connected to a Raven that has been modified to run at 384 spots per inch instead of 300; its name is Melba and it can be found in room 2322 of building 35. The other one is CSL's 4-color Versatec plotter. If you used earlier version of the Peach software that used RPC as a protocol, you were used to calling this machine by the name of Belle; however, the Dicentra's real name is Sleepy, and this is what you must call it now. Maybe we can get the name of this machine changed, since Peach printers are supposed to be named after varieties of peaches.
How do I talk to a Peach printer?
To talk to a Peach printer, you use Chat. This means you can use a Peach printer from any environment that can use the Pup/telnet protocol, including Cedar, Tajo, Alto, Lisp, Smalltalk, Vaxc, and even vis DLS over a phone line. You can also talk to a Peach printer using the printer's terminal (usually a glass TTY), if it has one. The peach printer queues the requests that it receives via its Chat connections, and processes them one at a time. The requests specify a full path name, i.e.,
print [Indigo]<Peach>384>TestPattern.pd
and when the printer is ready to print the file, it will retrieve it using the Pup/FTP protocol. If you are running Cedar, you can start up STPServer and have the Peach printer get your PD file directly from your disk. For example, if you had created the file []<>Users>BCDull.pa>Chip.pd on the machine Xyz, you would say
print [Xyz]<Cedar>Users>BCDull.pa>Chip.pd
to the chat tool.
What do I say?
The first thing you do is login, just as if you were chatting to an IFS (if you are chatting from Cedar, the Chat program will login for you). Your user credentials will be saved so the server can use them when it goes to fetch your PD file. Next say Help<CR> to get the list of possible commands. You will probably be able to play it by ear from there, but just for completeness, here are the commands and what they do:
Login <user> <password> [<account>]
Tells the server who you are.
Cancel <request number>
Cancels the indicated request.
CancelReprint
Cancels any reprint requests.
Check <request number>
Tells the status of the indicated request. Note that if the request has finished printing, the status will be "not found".
Help
Gives a list of commands.
ListQueue
Displays the current queue of requests, and tells if printing is suspended.
Messages <string>
The Peach printer keeps a log of messages that may be of interest; they are displayed on the printer's terminal as they are generated. This command may be used to examine all or part of the message log. Only messages containing the string will be shown (sorry, no pattern matching). An empty string will get you everything. Two interesting strings to use are your user name (to see what happened to all your requests), and a request number (e.g., R033), to find out what happened to a particular request.
Print <fileName> <copies> <title>
Makes a print request. On machines like the Versatec, the title string will appear in the title blocks that separate pages.
Reprint
Reprints the current page image.
ResetQueue
Clears out the print queue and the message log. Excessive use of this command may generate peer pressure.
SetLoginMessage <message>
Sets the message people get when they login; say what you will, but remember the message will have your name on it.
Start
Un-suspends the printer.
Stop
Suspends the printer as soon as it finishes the current request.
Wait <request number>
Does not return until the indicated request is completed, either normally or abnormally. Useful for synchronizing the deletion of a PD file.
Quit
Causes the server to close the chat connection. If you login at the printer's terminal, be sure to quit so that the terminal can be used to display messages again.
Do I have to use Chat to print my PD files?
Yes, right now you do. Maybe someone will step forward to write a Cedar interface that goes throught the Chat protocol, or to add an RPC interface for queueing print requests. In any case, when the Interpress server becomes real, it will do the talking to the PD printer, so you won't have to. According to the Chat documentation, it ought to be possible to write a command file for issuing a printing request.