Sunday, May 15, 2022

More restoration of keyboard, building and installing the tool to load memory

TESTED ALL CONTACTS ON KEYBOARD

I hooked up the ohmmeter to all the contacts of the keyboard and sequentially checked the resistance of each set of points when they were closed. Any that weren't low enough were cleaned again. The goal of this work is to ensure that they keyboard properly encodes any keypress to the correct word data - Hollerith in the left most 12 bits. 

Bits 12, 13 and 14 are used to encode three control characters that don't have Hollerith codings - End of Field, Backspace, and Erase Field. Traditionally the 'device driver' software that controls reading data from the keyboard will use EOF to end the entry and pass the results to the calling program. The other two allow some editing of the entered data before it is presented to the program.

There is a Rest KB button that is a simple switch directly back to the device controller logic. It restores the keyboard, raising any depressed key and resetting any pending interrupt. Another simple switch informs the device controller that any key has been pressed and the permutation unit therefore has encoded the data value. This triggers an interrupt where the 'device driver' software issues a read to pick up that word. 

I use quotes around 'device driver' because the IBM 1130 does not use an operating system. It has a limited function monitor program but often what we think of as a device driver is partly a choice of a subroutine (or user written code) that is part of the user program and handles part or all of the device interaction. 

The monitor is mainly involved in handling the interrupt and transferring control to an interrupt handler for the device responsible for any bits that are 1 in the status word. That small part of the device driver is usually part of the monitor and not linked to the user program.

One of the switches was really stubbornly oxidized. Regular spray deoxidizer and 20 minutes of burnishing didn't drop it much below 1K ohms. Since this provides the +12V through the permutation contacts to produce the data word corresponding to any keystroke, it had to be much, much better than that.

I have some high strength deoxidizer drops that I applied and, finally, in concert with quite a bit more burnishing, I got the contacts to essentially zero ohms when they touched. The keyboard is now electrically ready for use.

Keyboard restored and ready to use

There was one keycap that had broken off - fortunately it was a dead key that doesn't actually produce any codes, but it left an unsightly hole. Fortunately, I have one spare key cap for an 1130. It happens to be the 0 key, not a blank cap, but I installed it since it will look better than the gap. 

WIRED CONSOLE ENTRY SWITCHES TO RELAY BOARDS 2 AND 3

The sixteen toggle switches across the face of the console printer are the Console Entry Switches (CES). These connect the +12V supply through a 470 ohm resistor when the switch is on (up for 1). No connection is made when the switch is in its down (0) position. 

A wire is added to each switch to connect our own +12V to make it a 1. This takes two 8 position relay boards to activate the 16 CES switches. Since the 470 ohm resistor is part of the wiring of the toggle switches, when we want to activate a line we need our own 470 ohm resistor to +12. That is provided on a small board inside the cabinet.

I cut wire segments and carefully laced them up in wire looms before installing. By the end of the day I had them soldered into the console entry switches and the loom routed down under the tabletop to where the relays sit.

Wire loom soldered in place - mine is white, IBM's yellow

I drilled the holes and mounted the three relay boards securely. Next up is the connection of the loom from the CES, connection to the resistor board, and hookup of the resistor board to a source of +12V.

Relays mounted but wires not yet connected

3 comments:

  1. Maybe I should be afraid to ask, but what is your "high strength deoxidizer"?

    ReplyDelete
    Replies
    1. I was tempted to respond with bogus answers such as:
      - chisel
      - sulphuric acid
      - plasma torch

      However, here is the actual answer. I applied DeOxit 100 which is a 100% concentration of the deoxidizer rather than the 5% that is supplied in the usual spray bottles.

      Delete
    2. Thanks for the (actual) info. I would like to see a plasma torch in action though -

      Delete