The document comprises the technical memorandum and program specification for the XAP-6 assembler, a symbolic assembly program designed to run on the PDP-6 to assemble programs for the PDP-X.
Key details include:
- Functionality: XAP-6 processes source programs in two passes, is device-independent, and provides relocatable binary object code suitable for linking and execution.
- Requirements: It requires a 16K PDP-6 system running the PDP-6 Time-Sharing Monitor and a minimum configuration of a paper tape reader, paper tape punch, and console teletype.
- Language Features: The assembler supports mnemonic machine instruction codes, pseudo-ops, direct assignments, forward references, single/double precision integers, floating-point numbers, binary shifting, and expression evaluation using arithmetic and boolean operators.
- Assembler Directives: The document outlines various pseudo-ops for controlling assembly, including
LOC and RELOC for address modes, EOPDEF for user-defined opcodes, INTERN/EXTERN for subroutine linkages, and conditional assembly (IF.../ENDC).
- Operational Procedures: It details command language usage, error recovery, switch settings, and the structure of assembly output listings and symbol tables.
- Design Goals: The assembler is written in a modular form to facilitate maintainability and ensure compatibility with the eventual PDP-X assembler (XAP).