Moving Data Through The Buffer - NCR 7158 Owner's Manual

Thermal receipt and impact printer
Table of Contents

Advertisement

7-102 Chapter 7: Programming Guide

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.

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents