H200/H2000 Startup Procedures

Clearing Memory

While the original hardware contained "core memory" which retains it's contents when the power is off, it was common practice to manually clear memory before starting operations. One reason for this was that parity errors were known to arise after a power cycle, and these errors might appear at any character and interrupt a job. It is also the case that programs which were "careless" about initializing memory might be exposed to issues that do not appear if memory has been cleared (particularly punctuation bits). Here are a couple procedures for clearing memory to a known-state. These procedures are presented using the console typewriter "control mode", but could also be performed using the full frontpanel.

  1. This program performs an LCA instruction, but instruction is entered such that it overwrites itself and never finds a word-mark. Thus, the instruction extraction phase completes but the execut phase does not. After allowing the instruction to run "about 10 seconds", the STOP+INITIALIZE buttons are pressed (Shift+STOP on the simulator) to terminate execution. Note that the simulator, when running "unthrottled", will clear memory in much less than 10 seconds. Memory is filled backward, starting at 0000002 and immediately overwriting the instructions and then wrapping around to high memory.

    Note, when using the console control mode, the console will enter the blank spaces between parameters, and also will return the carriage for commands that have a defined end. The steps are:

    1. Press INITIALIZE.
    2. Enter "A 00 0000000" on the console.
    3. Enter "115 115 015 015" and press Return on the console.
    4. Enter "A 77 0000000" on the console.
    5. Enter "A 74 0000003" on the console.
    6. Enter "A 70 0000002" on the console.
    7. Press (address mode) 4 (so all memory will be cleared).
    8. Press RUN (let run for "about 10 seconds").
    9. Press STOP+INITIALIZE (Shift+STOP).

    Memory contents can be checked by entering "A 00 0000000" and then pressing (or holding down) the TYPE button and observing the stream of "015 015 015 ..." values being printed. Press Return when done using TYPE.

    Note that the last character of the program, "015" (the blank character), may be changed to any character value to fill memory with that character value.

    The address mode setting determines how much of memory will be cleared. In the default 2-char mode only the first 4K will be cleared.

    For reference, the program being entered is essentially (in EasyCoder form):

  2. This program performs an EXM instruction with variant to copy both data and punctuation, left-to-right, until a word-mark. Similar to the previous example, no word-mark is ever found and so the instruction execution phase does not end naturally. Memory is filled forward, starting at 0000001 and immediately overwriting the instructions and eventually wrapping around from high memory to low.

    1. Press INITIALIZE.
    2. Enter "A 00 0000000" on the console.
    3. Enter "025 140 077 110 110" and press Return on the console.
    4. Enter "A 77 0000001" on the console.
    5. Enter "A 74 0000000" on the console.
    6. Enter "A 70 0000001" on the console.
    7. Press (address mode) 4 (so all memory will be cleared).
    8. Press RUN (let run for "about 10 seconds").
    9. Press STOP+INITIALIZE (Shift+STOP).

    Similar to the previous example, memory contents may be checked using the described procedure. In this case, memory will be filled with "025".

    Note that the first character of the program, "025" (the 'E' character), may be changed to any character value to fill memory with that character value.

    The address mode setting determines how much of memory will be cleared. In the default 2-char mode only the first 4K will be cleared.

    For reference, the program being entered is essentially (in EasyCoder form):