NCR 7167 Owner's Manual page 186

Two station pos printer release 1.0
Hide thumbs Also See for 7167:
Table of Contents

Advertisement

7167 Owner's Manual
In this case the sequence will also be handled correctly as the graphics data it is intended
to be when the graphics command is executed from the buffer.
Third, care must be taken not to insert a Real Time command into the data sequence of
another command that consists of two or more bytes.
In this case the printer will use the real time command sequence bytes instead of the other
command's parameter bytes when finally executing that other command from the buffer;
the other command will NOT be executed correctly.
These three situations generally preclude use of standard DOS drivers for the serial
communication ports when using real time commands.
Moving Data Through the Buffer
Another consideration is that an application should take care not to let the buffer fill up
with real time commands when the printer is busy at the RS-232C interface. A busy
condition at the RS-232C interface can be determined by bit 3 of the response to 1D 05 or
1D 04 1 or 10 04 1. The reason for a particular busy condition can be determined by other
responses to 1D 04 n or 10 04 n.
Although the printer responds to Real Time commands when it is busy, it will place them
into the buffer behind any other data there, and flush them out in the order in which they
were received. When the printer is busy due simply to buffer full (that is, it can't print data
as fast as it can receive it), then data continues to be processed out of the buffer at
approximately print speed and the Real Time commands will eventually get flushed out.
When the printer is busy due to an error condition, then data stops being processed out of
the buffer until the condition clears one way or another. In either case, but more quickly in
the case of an error condition, the buffer can fill with real time commands.
When the DLE sequences are being used, the last byte stored when the buffer fills up
could be the DLE code, with no room for the subsequent EOT or ENQ. When this lone
DLE byte is finally processed out of the buffer it will be interpreted as a Clear Printer
command.
Similarly, when the GS sequences are being used, the last byte stored when the buffer fills
up could be the GS code, with no room for the subsequent EOT or ETX or ENQ. When this
lone GS byte is finally processed out of the buffer it will use the next byte, whatever it is,
as the second byte in its GS sequence.
To guard against this situation, an application should determine the cause of a busy
condition and take appropriate action or pace further real time commands to avoid filling
the buffer. There are a minimum of 256 bytes available in the printer's buffer when it goes
busy.
164
November 2002
Chapter 6: Commands

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents