Recovering dead KIM-1s

Prior to the start of this semester’s ECE287 class hosted here at M5, we were tasked with checking up on the stack of Corsham KIM-1 clones used in the class. It was found that out of more than a dozen boards, the majority were either not operational, or had severe defects that needed attention.

Corsham KIM-1 board — Memory is shown on the left four seven segment displays, and the data in that memory location is the two on the right.

A little about the KIM-1s before we get to debugging them — KIM stands for keyboard input monitor, and it was an early single-board computer designed by MOS Technologies back in the 70’s, based on their 6502 microprocessor. It became successful due to the low price of the 6502 chip, as well as the ability for expansion on the board.

Corsham Technologies built the Corsham KIM-1 Clone to replicate the look and feel of the original KIM-1. These basic computers offer a perspective into the machine code and Assembly language of the 6502 processor as memory can be appended by address, as shown above.

Keyboard, display, and RAM I/O timer chip on the KIM-1 schematic

Debugging the KIMs was a week-long process of measurements and testing, as well as some guessing as to which ICs commonly die and stop the board from functioning.

Generally, the problem was simple - the seven segment displays wouldn’t light up. The troubleshooting process started with probing the outputs of the 6532 RIOT chip and the 74LS145N, the ICs responsible for sending data and multiplexing through the six displays, respectively. The 74LS145N (line decoder) commonly breaks, as three of the boards were found to work after simply replacing the chip.

Following this, we would then trace the data all the way back to the EEPROMs from which it is fetched -- somewhere along the way, silent or noisy pins give way to an IC or component that needs to be replaced.

Of the KIMs that were fixed, most simply needed a replacement IC. Commonly, the 74LS145N and the user 6532 (RIOT) would be the problem. Other boards had a myriad of issues such as burned resistors, loose power connectors, dead 555 timers, and chipped off SMT ICs that are responsible for shifting logic levels.

A brute-force approach that works well, if in doubt, is to replace every IC one by one and test the board, but it is time consuming. One board remains that has an unknown issue, but otherwise, only new parts are needed to get them all back into working order.

6532 clock signal on a scope

Next
Next

You can turn anything into a speaker!