Technical data
3.4.2 Interrupting Busy Printers When a Job Starts
DCPS normally waits for a raw TCP/IP, LAT, or serial printer to be idle
before sending a new job to it. This is especially important in a networked
environment where a printer connected through a DECserver device or other
network terminal server can be shared among DCPS queues, LATSYM queues,
Windows and UNIX hosts, etc.
Prior to version V1.2, DCPS used an aggressive synchronization sequence to
gain control of a printer’s PostScript interpreter. This scheme worked well
in an all-DCPS environment, but in a multi-host environment it sometimes
caused print jobs from other systems to terminate prematurely.
If you rely on DCPS’s earlier behavior to abort errant PostScript jobs on
one queue by starting a job on another queue, you can define the following
system-wide logical to restore the more aggressive behavior:
$ DEFINE/SYSTEM/EXECUTIVE DCPS$queuename_INTERRUPT_WHEN_BUSY 1
3.4.3 Suppressing PostScript Synchronization When a Job Starts
DCPS begins a job on a raw TCP/IP, LAT, or serial printer by synchronizing
with its PostScript interpreter to ensure that the interpreter is ready to accept
commands. However, some PostScript printers are not always in a state
where they can recognize the synchronization control characters. In particular,
some printers that support additional printer languages like HP PCL do not
correctly respond to this sequence under certain circumstances. For example,
the DEClaser 3500, when in PS/PCL sensing mode, inadvertently switches to
PCL mode when DCPS sends a Ctrl/T character to its serial port. The printer,
then out of the PostScript mode, does not respond, and the print job gets stuck
in the ‘‘starting’’ state.
You can define a logical to cause the DCPS symbiont to avoid using its usual
synchronization sequence for printers that use a raw TCP/IP, LAT, or serial
connection. The logical has no effect when using printers connected via other
means. Refer to Chapter 10 for printer-specific recommendations.
To disable the synchronization sequence for a print queue, use the following
command:
$ DEFINE/SYSTEM/EXECUTIVE DCPS$queuename_NO_SYNC 1
The absence of the synchronization step is not generally a problem for most
modern serially-connected printers because such printers use flow control to
hold off data when the interpreter is not ready to accept data. However, the
printer is more vulnerable to printing ‘‘garbage’’ or losing jobs if communication
parameters, such as baud rate and stop bits, are not set correctly. Depending
3–12 Creating and Modifying Print Queues