Bidirectional PDP-7 DECtape Subroutines

Order Number: DIGITAL-7-22A-1

This document details the Bidirectional PDP-7 DECtape Subroutines, a software package designed for efficient, variable-length record transfers to and from DECtape on a PDP-7 computer. The subroutines aim to minimize DECtape access time and enable program overlap with data transfers by leveraging program interrupt or automatic priority interrupt facilities.

Key features include:

  • Bidirectional Capability: Allows data transfer in either direction depending on the tape's current position, though data is always presented as if written/read in the forward direction.
  • Compatibility: Mostly compatible with earlier unidirectional subroutines (Digital-7-22-I/O), allowing data written by either set to be read by the other.
  • Variable-Length Transfers: Supports transferring any number of words, not just integral blocks. Non-integral blocks are handled by filling with zeros during writing or verifying checksums during reading.
  • Efficient Resource Use: Minimizes tape turnarounds by calculating the optimal search direction based on current tape position.
  • Program Overlap: Returns control to the main program during searching and data transfer, allowing concurrent processing. A "done" indicator (MMDONE) tracks transfer completion.

The subroutines require a standard DECtape format (1100g usable blocks of 400g words) and occupy approximately 604g memory locations within the first 8K. They interface with 555/TU55 DECtape drives and 550/550A DECtape controls on a PDP-7. The document provides detailed instructions for loading, calling sequences (JMS MMRDS for read, JMS MMWRS for write), handling program and automatic priority interrupts, and interpreting various error codes. Flowcharts illustrate the operational logic for read, write, and search routines.

DIGITAL-7-22A-1
January 1966
26 pages
Quality

Original
0.9MB

Site structure and layout ©2025 Majenko Technologies