AMP PgmgMan

Order Number: XX-01B71-95

This document is the AMP (Aidex Machine-language Programming) Manual, created by Theodore Strollo at the Air Force Cambridge Research Laboratories (AFCRL) in March 1963 for the DX-1 (Experimental Dynamic Processor). AMP is the assembler component of the larger ASYS programming system, designed to provide flexible and user-friendly programming languages with robust error diagnostics.

The manual details AMP's two-pass assembly process. Source programs are structured with a location field (for defining tags/symbols) and a variable field (containing symbolic expressions with operation codes, symbols, numbers, literals, qualifiers, and comments). AMP recognizes DX-1 specific operation codes and allows numeric interpretation in either octal (default) or decimal mode, controllable by qualifiers.

Key features and functionalities include:

  1. Relocation and Linkage: AMP handles program relocation to prevent memory overlaps and enables communication between separately assembled programs. This is achieved through "internal system symbols" (declared via entry pseudo-op or single quote) and "external system symbols" (declared via extern pseudo-op or overbar).
  2. Pseudo-Operations (Pseudo-Ops): These commands control the assembly process rather than generating machine code. Categories include:
    • Storage Allocation: bss reserves blocks of memory, and org sets the absolute origin of a program.
    • Data Generation: oct and dec assemble numbers, while bci and str pack BCD characters into core locations.
    • Assembly Control: dup allows repeating blocks of code multiple times, and end marks the termination of the source input.
    • Defining Symbols: equ defines fixed symbol values, set allows redefinition of symbols, and xsy expunges existing symbol definitions.
    • Macros: macro and xmacro define reusable sequences of instructions (prototypes) that can be parameterized with dummy arguments. Macros support nesting and conditional assembly, using iff for conditional inclusion/exclusion of lines based on argument values, and irp for iterating instructions based on argument lists.
  3. Assembly Listings and Error Diagnostics: AMP generates optional assembly listings that display the source code, assembled octal words, and line numbers. It provides a comprehensive set of error flags (e.g., for format, linkage, relocation, multiple definitions, literals, numbers, and operation code issues), attempting to continue assembly after non-fatal errors.
  4. Usage on DX-1 Installation: The manual explains how to run AMP in conjunction with the ASYS-1 monitor, outlining the necessary magnetic tape units and detailing how sense switches can be used to control the type of output generated (e.g., assembly listings on punch/typewriter/magnetic tape, or symbol table dumps).

Appendices provide detailed tables of AMP's operation codes, pseudo-ops, system macros, and error flags for quick reference.

XX-01B71-95
March 1963
54 pages
Quality

Original
1.7MB

Site structure and layout ©2025 Majenko Technologies