Microsoft KB Archive/24751

Problems Printing to a Serial Device

PSS ID Number: Q24751 Article last modified on 11-02-1994

3.x 4.00 5.00 5.50 6.00

MS-DOS

Question:

At random intervals while printing to a serial interface printer, the error message “Printer not ready” flashes briefly on the screen. This message is followed by the message “Enter Y to continue or ESC to cancel.” By pressing Y each time, I eventually can finish the printing. Is this a problem with Word or my printer?

Response:

The problem most likely is the result of bad communication between your printer and its serial port. If you specify COM1: in the “setup:” field under the Print Options menu, Word configures itself for serial communication.

When Word is informed that it is printing to a serial device, it establishes a “communication timing window.” This window is, in effect, a timer that is reset each time the computer and printer talk to each other. If the window is allowed to time-out, the message “Printer not ready” is generated. Word then seeks confirmation before continuing to print. Therefore, failure to finish printing the entire document without interruption can be blamed on the printer, the computer, Word, or any combination of these elements.

Word’s serial communication timing window can be circumvented by setting the “setup:” field under the Print Options menu to LPT1: and using the DOS MODE command to redirect output to the serial port. The object is to fool Word into thinking that it is printing to a parallel device instead of to a serial device so that it will not set up the communications timer, and slight discrepancies in device response times will be ignored.

The MODE command is

MODE LPTn:=COMx:

where n = the number of the line printer and x = the communications port.

A second workaround to the establishment of the timing window when printing to a serial device is to modify the printer driver using the MakePRD utility. MakePRD is explained beginning on page 73 of the “Printer Information for Microsoft Word” version 3.00 manual (page 75 in version 4.00, page 209 in version 5.00, and page 303 in version 5.50 manuals).

Once the driver is converted to text, look at the header portion of the driver, specifically the “SerialInterface:” flag. The third line of the header contains the field and appears as follows:

SerialInterface:40960

If your printer’s serial interface flag is the number 40960, you can change it to 45056. The SerialInterface: flag now will appear as follows:

SerialInterface:45056

Word still will print to the serial device using the XON-XOFF error checking protocol, but it will set an infinite time-out for the timing window. The drawback to this method is that printers with a low data transmission rate, or DTR, (such as the LaserJet II) may take a long time to complete a print job with the SerialInterface: flag set to 45056.

KBCategory: kbprint kberrmsg KBSubcategory: Additional reference words: ============================================================================= Copyright Microsoft Corporation 1994.