This document describes the SCNSRF (Scanner and Console Teletype Service Routine), a comprehensive low-level software component designed for managing input/output (I/O) operations for teletype (TTY) and scanner devices within a Digital Equipment Corporation (DEC) system, dating back to 1969.
The routine is structured into the following key areas:
SCNINI): Sets up the operating environment, clears I/O flags, and initializes Device Data Blocks (DDBs) for all TTYs and scanners.PUTR, TAKR, PCTR, FCTR) to manage character storage, retrieval, and track available buffer space efficiently.DOTIN, GETCHR, TTEDIT): Routines to get characters from input buffers, handle various special characters (e.g., control codes like Control-C, rubout, line breaks) and their corresponding actions, perform keyboard editing (like backspace and line deletion), and manage echoes to the console.DDTOUT, PUTCHO, OUTCHR): Routines to place characters into output buffers, handle device-specific output actions (e.g., carriage return, line feed, tab, form feed), and manage special character outputs that might trigger specific device behaviors.CTYINT, RECINT, XMTINT): Dedicated interrupt service routines manage asynchronous I/O events for console TTYs, general keyboard receivers, and data transmitters. These routines are critical for real-time processing of input, echoes, and managing the state of the system during I/O.SPCTAB) defines system-wide actions for a wide range of ASCII control characters, dictating how the routine responds to various inputs.The SCNSRF provides a UUO (User Unimplemented Operation) interface, allowing higher-level system components to invoke complex I/O functions through a dispatch table. The document details the low-level implementation, including memory addresses and specific instruction sequences, making it a technical specification likely intended for system programmers and device driver developers.
Site structure and layout ©2025 Majenko Technologies