Xerox 820-II Word Processing Applications And Reference Manual page 189

Hide thumbs Also See for 820-II:
Table of Contents

Advertisement

13.5.4
Printer Drivers
Code for four distinct printer drivers is provided, and thus accessible to user
modification. Location CSWTCH, described above, determines which driver is
called.
Driver Entry Points: Word Processing must be able to input from the printer
as well as output to the printer when a "Communications protocol" (as required
for daisy wheel and similar printers at 1200 baud) is in use.
Also, Word
Processing's performance improves when a "printer busy test" is available to
determine whether the printer is ready to accept an output character. Thus,
each driver has three entry points, defined as follows:
Printer Busy Test: This entry should return the carry flag set
(1)
if the
printer is NOT ready to accept a character; the carry flag should be
returned clear (0) if the printer is ready to accept a character or if the
busy test is not implemented.
If
this entry is implemented, HA VBSY
(above) should be non-zero;
if
not implemented, HA VBSY should be
o.
Print Character:
This entry should output the character in the A
register to the printer.
If
HA VBSY is non-zero, this entry is not called
until the printer busy test entry returns the carry flag clear.
Input Character From Printer: This entry need be implemented only if a
communications protocol (Section 13.2) requiring input from the printer
is to be used.
This entry should return the carry flag set
(1)
if no
character has been received from the printer since last called, or return
the character in the A register and the carry flag clear
(0)
if a character
has been received.
Specific descriptions of the printer drivers follows.
CP/M List Device Driver: The "Print character' entry point to this driver is
implemented to make the appropriate operating system call to print the
character. The "Printer busy" and "Input character from printer' entries are
not implemented, as standard CP/M provides no system calls for these
purposes; space is provided at LIBSY and LISINP respectively for patching in
JMP instructions to user-installed subroutines for these purposes. See the end
of Section 13.5.3 with regard to finding space into which to patch added
subroutines.
If you add a "Printer busy test" routine, patch HA VBSY to a non-zero value.
If
you use a communications protocol with the List output driver, you must
code and patch in an "Input character from printer" routine, and put a JMP to
it at LISINP.
*Note: Xerox
820-11
CP/M list driver is designed to support both printer busy
and receive character available function internally.
REFERENCE
13-25

Advertisement

Table of Contents
loading

Table of Contents