Monday, January 31, 2022

Organized the diagnostic card decks that come with the IBM 1130 and archived them online

DIAGNOSTIC PROGRAMS SUPPLIED WITH THE IBM 1130

IBM produced a range of diagnostic programs used to test the 1130 system and its attached peripherals. They are intended for use by the Customer Engineer (CE) who services the hardware but can be run by the owner/user as well. These are documented in four large binders, with the assembly listings and user instructions supplied for each of the decks. In addition, a set of the object modules are delivered on punched card (or paper tape for a readerless system). 

MINIMALIST PROGRAMS

There are a set of seven 'one card' programs. Each is loaded using the Program Load button (boot procedure) and accomplishes some very tiny checkout of the system. Assuming that the machine is healthy enough to access memory and to read a card and begin execution, these can be used to progressively verify the state of the machine prior to running the full function diagnostic programs.

As an example of how little is accomplished per card, here are the capabilities tested by each card:

  1. Tests MDX branch instruction and ability to load accumulator register ACC from IAR
  2. Tests a one word addition and ability to increment index registers
  3. Verifies BSC Z, SRA 1, EOR, LD, STO and data movement between registers
  4. Verifies long format LD, STO, EOR, LDX and A, plus adding pos and neg numbers
  5. Accesses memory locations x0050 to x0FFE
  6. Verifies that CPU interprets simulated Device Status Words (DSW)
  7. Verifies load and add doubleword instructions, then loops on XIO for scope testing
The system also provides a set of single bootable card scope loop program that repeat actions allowing the use of a scope rather than a logic analyzer to see system operation.

PERIPHERAL AND FUNCTION TESTING ROUTINES

Each device or major function has one or more test programs used to validate their proper behavior or in some cases to adjust them to operate well. 

  • Console keyboard and printer functional tests
  • Low range core memory functional tests
  • High range core memory functional tests
  • Billing meter functional test
  • CPU instruction functional test
  • 1132 printer functional test
  • 1442 card reader/punch functional test
  • Internal and 2310 disk drive functional test
  • Interrupt functional test
  • Core storage adjustment program
  • Disk drive adjustment program
  • 1442 reader timing adjustment program
LOADERS AND MONITORS

There are four types of loadable card decks. Single card, basic loader, relocatable loader, and those that load under a monitor. 

The 'one card' diagnostic deck has each card in the format used for loading via the Program Load button. This boot process uses an oddball method of loading the first 80 words of memory with the data on the cards. 

Since a word in the 1130 is 16 bits but a card column is only 12 rows of holes, some bits of the word are either set to zero (three of the bits) or in one case, two bits are loaded from a single row. A part of each such card involves modifying the data in memory to produce the intended final instruction before it is executed - restoring the 3-4 bits that are not loaded properly by the boot process. 

Some fundamental tests are loaded by using the basic loader first, which in turn reads either the CPU functional test or the Interrupt functional test and executes the test. 

A relocatable loader will load a few tests that may be run on a system that isn't fully healthy, thus they minimize the footprint of capability required to get the diagnostic running. 

  • Core storage function tests, low and high range
  • Core storage adjustment program
  • Billing meter function test
The relocatable loader also loads some SCA monitoring programs. Its final and important use is to load either the diagnostic monitor or the DIMAL program. 

DIMAL lets you set up a diagnostic disk cartridge with the routines such that you can run from the disk and operate various functional and adjustment tests. After initializing a blank cartridge, DIMAL is booted using the relocatable loader and followed by all the decks of the function and adjustment tests you want included on the pack. 

The DIMAL process produces call cards and methods of booting specific routines from the diagnostic disk cartridge. One can then run a sequential set of tests, randomly selected tests, or specify individual tests to run. 

The diagnostic monitor is loaded into core using the relocatable loader and then the chosen functional or adjustment programs are loaded by the monitor. It runs and allows the CE or user to select the tests to run, loop them and controls which test to execute. These are all loaded ad-hoc from the card reader, as contrasted to DIMAL which loads tests from a disk cartridge. 

PROGRAMS NOT SHIPPED IF PERIPHERAL NOT INSTALLED ON THE SYSTEM

Since my system did not have these attached, I did not receive card decks for the 1403 printer, 2501 card reader, 1134 paper tape reader, 1054 paper tape punch, Synchronous Communications Adapter (SCA), 1627 plotter or 1231 optical mark reader. The binders include the documentation thus one could resurrect the decks if necessary.

No comments:

Post a Comment