Thread View: comp.lang.postscript
4 messages
4 total messages
Started by Justin Ridge
Tue, 05 Jan 1993 06:00
Cancelling jobs being processed (Q)
Author: Justin Ridge
Date: Tue, 05 Jan 1993 06:00
Date: Tue, 05 Jan 1993 06:00
12 lines
827 bytes
827 bytes
Hi... a question for anyone: Is it possible to cancel a job which is being processed in a PS printer - specifically, in a Apple LaserWriter IINT/NTX/f/g? That is, send a command to the printer which will remove the job that the printer is presently working on, when: a) the job is in the process of being downloaded or b) when it has been downloaded and is being drawn by the LW. Thanks for any advice, Regards, Justin Ridge.
Re: Cancelling jobs being processed (Q)
Author: M.C.Wheadon
Date: Wed, 06 Jan 1993 11:20
Date: Wed, 06 Jan 1993 11:20
20 lines
1120 bytes
1120 bytes
In article <justin.726213640@tasman> justin@tasman.cc.utas.edu.au (Justin Ridge) writes: >Is it possible to cancel a job which is being processed in a PS printer - >specifically, in a Apple LaserWriter IINT/NTX/f/g? >That is, send a command to the printer which will remove the job that >the printer is presently working on, when: >a) the job is in the process of being downloaded >or >b) when it has been downloaded and is being drawn by the LW. Yes - send a control C to abort the job. The LaserWriter will then say: ^C %%[ Flushing: rest of job (to end-of-file) will be ignored ]%% so you will then need to send a control D. Cheers, bUrt
Re: Cancelling jobs being processed (Q)
Author: Stephen Zisk
Date: Wed, 06 Jan 1993 15:03
Date: Wed, 06 Jan 1993 15:03
39 lines
2682 bytes
2682 bytes
In article <justin.726213640@tasman>, justin@tasman.cc.utas.edu.au (Justin Ridge) wrote: > Is it possible to cancel a job which is being processed in a PS > printer - specifically, in a Apple LaserWriter IINT/NTX/f/g? For any PostScript printer data stream there is an "interrupt" command. On serial and parallel streams, emit a ^C character. On Appletalk, I do not know the command, but you could look it up in Inside Appletalk. The effect of the command depends on the state of the printer job. If the printer has already received and acknowledged the end-of-job, the interrupt will not typically work, but will be interpreted as if it was part of the next job. This means, for instance, that a job which sets /#copies to 1000, does some simple drawing and a showpage, then ends, cannot usually be interrupted once the end-of-job has been processed. I say "usually" and "typically" because this behavior is not well defined in the Red Book, and various clone implementations may behave differently. (This is not meant as a slam against clones, just an observation that they may choose to do things differently). If the cancel was received before end-of-job, the behavior is much more complex. Typically, it will be processed when the interpreter next looks for input. This may occur ahead of characters received earlier, due to buffer scanning. The interrupt will generate a PostScript interrupt error, causing execution of the interrupt procedure in errordict. This will typically cause an error message to be printed and the rest of the job to be flushed. If the printer has multiple pages in process or a sofware page pipeline, some arbitrary number of pages may be printed after the interrupt. Additionally, if the job has issued a read command against the input, has set up an appropriate stopped contex, or has redefined the interrupt procedure, it may be resistant to interrupts. Stephen Zisk (zisk@adobe.com) Disclaimer: These are my personal views Adobe Systems Incorporated and do not represent the position of Eastern Regional Office Adobe Systems Incorporated. 24 New England Exec. Park Burlington, MA 01803 They pay me but they don't muzzle me!
Re: Cancelling jobs being processed (Q)
Author: Joel Sacks
Date: Wed, 06 Jan 1993 16:05
Date: Wed, 06 Jan 1993 16:05
38 lines
2790 bytes
2790 bytes
In article <1993Jan6.150357.22690@adobe.com> zisk@adobe.com (Stephen Zisk) writes: In article <justin.726213640@tasman>, justin@tasman.cc.utas.edu.au (Justin Ridge) wrote: > Is it possible to cancel a job which is being processed in a PS > printer - specifically, in a Apple LaserWriter IINT/NTX/f/g? For any PostScript printer data stream there is an "interrupt" command. On serial and parallel streams, emit a ^C character. On Appletalk, I do not know the command, but you could look it up in Inside Appletalk. The effect of the command depends on the state of the printer job. Actually, there is unfortunately no such command on AppleTalk. The protocol you talk to the printer with (PAP, Printer Access Protocol) does not have a Cancel notion. The "Cancel" button on your Macintosh only stops the flow of data to the printer. This usually works if you interrupt a job before it's gotten too far along, because the printer will go to read data and get EOF instead. The EOF can be in the middle of an image, in the middle of an operator name, or wherever, but will generally cause some sort of error, and the job will abort. You'll never see the error, because the Macintosh will have already closed the connection and won't be listening for it. However, back to your real question, how to stop the interpreter on a LaserWriter. Even though you can't generate the interrupt over the communication channel itself (in the AppleTalk case), if you have physical access you can interrupt the job by changing the switch position for a few seconds, and then changing it back. This can have anti-social consequences, if you switch the printer from LocalTalk to serial mode, say, because running serial line levels on a LocalTalk wire will freeze the network. It's probably safest to disconnect the communication channels before fussing with the switch. Finally, even using the switch may not be enough, because as mentioned earlier, the printer may have some pages queued up via copypage, and the interrupt will not do anything to them. -- Joel Sacks sacks@mv.us.adobe.com Adobe Systems Inc. ...!decwrl!adobe!sacks
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads