QBUS CPU ODT

From Computer History Wiki
Revision as of 14:25, 25 July 2024 by Jnc (talk | contribs) (Further reading: +Micro ODT Differences - LSI-11 vs. LSI-11/23)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

ODT (Octal Debugging Technique) on QBUS PDP-11s is effectively their front panel. These CPUs do not have a front panel to control them; instead, as a cost-reduction measure, when the CPU is halted, specialized microcode uses the main serial line as a operating console. There are commands to read and write main memory, registers in the CPU, start the CPU, etc.

The command set is:

  • '/' - open word
  • '<CR>' - close open word
  • '<LF>' - open next word
  • 'G' - start CPU
  • 'P' - proceed CPU after halt

The main serial interface is normally configured so that when the CPU is running, sending a break on the console serial line halts the CPU (using the BHALT line of the standard QBUS). Depending on which interface card is used, some can be set to bootstrap the machine instead.

LSI-11s

The LSI-11 CPUs, using the LSI-11 chip set, have an extended ODT syntax with extra commands:

  • '^' - open previous word
  • '@' - indirect; open word at location given by current word
  • '_' - indexed; open word at location given by current word plus the address of the current word
  • 'M' - maintenance; indicates how the CPU got to ODT
  • 'L' - start microcode PDP-11 Bootstrap Loader

Limitation on LSI-11s

Note that ODT will not function correctly in the LSI-11s unless there is memory on the QBUS (at location 0). Without that, the CPU will sit in a tight loop, trying to read location 0, and ODT will never start. The reason for this restriction is unknown: the KDF11 CPUs and KDJ11 CPUs, which also use ODT, do not have this limitation; e.g. a system consisting only of a KDF11-A CPU and a serial console will run ODT, which will operate as expected.

See also

Further reading

  • Micro ODT Differences - LSI-11 vs. LSI-11/23, MicroNote #050