dis340

Order Number: XX-434BE-A0

This document describes the DIS340 (Type 340 Display Service Routines), an assembly language program written in MACRO.V36 for Digital Equipment Corporation in 1969. The routines are designed to handle interrupts from the display data channel, process user-supplied command pointer lists, and output sections of data using the BLKO command.

Key Features and Functionality:

  • Conditional Assembly: The code is designed to support either a Type 30 or Type 340 display, based on a conditional T30 switch. The DIS340 title explicitly refers to the Type 340 version.
  • Interrupt Handling: The routines are primarily driven by display data channel interrupts.
  • Command Pointer List Interpretation: Users provide instructions via a command pointer list, which dictates how data sections are to be output. This list includes specific formats for indicating the end of the list, the address of the next section, and the number of words to output.
  • Address Validation: All addresses specified in the command list are rigorously checked to ensure they fall within the user's memory area before any memory references are made, enhancing system stability.
  • Core Routines:
    • DISOUT: The main output handler, which activates the display, sets up internal pointers for data transfer, and prepares for interrupt handling.
    • DISNXT: Interprets the user's command list to set up the next display data block (BLKO), performing memory protection checks and determining subsequent actions (e.g., end of list, more data).
    • DISFIN: Handles the completion of a display data block (when BLKO pointer reaches zero), manages interrupt dismissal, and coordinates the transfer of subsequent data.
    • DISINI: Used for releasing, closing, and handling illegal conditions, effectively deactivating the display system and its associated interrupt handlers.
    • OVT2: Activated when the user's command list runs out, it manages display restarts (if a clock period has expired via DISBEG) and releases jobs waiting for I/O.
    • PENINT: Handles non-data interrupts from the display channel, validating the interrupt and dispatching control as appropriate.
    • CLOK: The clock interrupt handler, which checks if the display is still active and initiates a restart (DISBEG) if it's idle.
    • DISREG: Disables the display, resets its state, attempts to re-enable/restart it based on the command list, and manages clock queue requests.
    • DISIN: Provides rudimentary handling for light pen input (UUO), returning the last recorded pen coordinates.
    • ADRER: An error handler for memory protection violations discovered by DISNXT, closing the display and reporting the error to the monitor.

In essence, the DIS340 routines provide a robust, interrupt-driven framework for managing data output to a Type 340 (or Type 30) display, including command list processing, error handling, and display state control.

XX-434BE-A0
April 2002
20 pages
Quality

Original
0.5MB

Site structure and layout ©2025 Majenko Technologies