This document is an assembly language listing for a "Line Printer Service Routine" named LPTSER, dated 8-4-65. It outlines the low-level programming instructions and data structures for controlling a line printer.
Key components and functions described include:
LPTCLR for clearing the buffer, LPTDON for a done flag, LPTERR for an error flag, LPTLOV for line overflow) and special I/O status word assignments.LPTCHR), I/O status (LPTIOS), and buffer pointers (LPTBUF, LPTPTR).LPTINI (initialization), LPTCLS (closing), LPTOUT (output), and ILLINP (input).Routine Implementations: Detailed assembly code for functions such as:
LPTINI): Clears the printer buffer.LPTCLS): Handles printing any remaining buffered data, waits for I/O completion, and outputs carriage return/form feed.LPTOUT): Manages I/O status, checks device state, sets up I/O operations, and saves/restores system registers.LPTINT): Processes printer interrupts, addressing conditions like line overflow, errors, or job completion, and dispatches to appropriate handlers. It also manages buffer states (empty, next buffer, advance buffer).LPTERI, LPTERX, LPTERA, LPTER2): Specific routines for different error conditions, including line overflow, ensuring the system can recover or properly report issues.LPTSET): Initializes internal pointers and word counts for managing the printer's buffer.Symbol Table: A comprehensive list of all defined symbols (variables, routines, and external references) used within the LPTSER routine, detailing their memory addresses and type (internal or external).
In essence, the document provides the foundational assembly code for controlling a line printer, encompassing its configuration, operational procedures, interrupt handling, and error management within a computing system.
Site structure and layout ©2025 Majenko Technologies