Ram Layout; Print Control Firmware; Starting The Printing Operation - DEC LA 120 Technical Manual

Table of Contents

Advertisement

4.3.3 RAM Layout
The LA120 has 2K bytes of RAM; The first lK is used for the input buffer, a circular queue used to
store characters received from the USART or that have been echoed locally. The next page (where a
page is 256 bytes starting on a mUltiple of 256) contains several small buffers, the stack, and the tab bit
maps. The page after that contains all non-volatile parameters and other variables. Thus, after an
initial LXI H,FOOONE is performed, usually only a MVI L,LOW FOOTWO is needed to reference a
second variable.
RAM locations are all written to zero at power-up time. If a location needs to be initialized to another
value, its initial value is contained in a list processed by a RAM initialization routine.
4.4 PRINT CONTROL FIRMWARE
One of the more complicated operations in the LA 120 firmware is the starting of the print operation
after a carriage return or tab. The DC305 chip will only begin the printing operation after it has been
given a print start command. This command will be executed at the next point at which printing can
legitimately be started. This section deals largely with the routines for ensuring that the print start
occurs under the proper conditions and at the proper point. In addition, a description of the control of
print speed to limit component heating is included at the end of the section.
4.4.1
Starting the Printing Operation
The task of starting the print operation is handled in two steps. The first step is to prepare the DC305
to begin printing. This is done once for every print start. On the next and subsequent ticks, tests are run
to see whether the carriage has arrived at the proper location to begin printing and that it is traveling at
the proper speed. These tests are repeated until printing begins.
The forward printing process begins by obtaining the first character to be printed from the line buffer
and loading its dots into the dot buffer. The first four sets of dots are then loaded into the FIFO of the
DC305 chip and the dot interrupt is enabled and the carriage is started on the approach to the starting
point of the print string.
The reverse printing process begins the same as that previously described, except that all operations are
for backward printing. The right-most character in the line is loaded into the dot buffer.
Print start is enabled by a print start command that is stored by the DC305 chip and printing begins
when the print head wires cross the boundary of the intercharacter space in either direction. To initiate
a forward print start properly, the command must be given before the impact point crosses from the
intercharacter space of the previous character into the cell of the character to be printed.
As a practical matter, the print start command is given only when the impact point is in the Safe Print
Start Zone and the carriage is moving in the proper direction. The Safe Print Start Zone begins three
transitions to the right of the left-hand cell boundary of the previous character and ends three transi-
tions to the left of the intercharacter space of the same character cell as shown in Figure 4-4.
4-13

Advertisement

Table of Contents
loading

Table of Contents