IMSAI 8080 Restoration
The system is in overall good condition. It does not have the original IMSAI backplane installed, and has a second power supply behind the backplane. A wire harness connected to the second power supply looks like it is for an external 8" diskette drive.
We removed all of the boards from the system, reformed the capacitors in the power supplies, and then plugged it in to see if the power supplies would provide a reasonable voltage. The outputs were about +10V, and +/-18V. That should be OK. The console had some LEDs lit, and would respond to key presses.
We installed the Cromemco ZPU and tried the console switches. The LEDs were flickering when the system was powered on, so it looks like there is some life in the CPU. It also looks like some of the Address/Data switches affect the address lines when they should not. We will need to do some debugging on the console and CPU.
We tried unsuccessfully to deposit and examine memory. We should try the RAM boards in one of the Altairs to see if they work, and try some of the other S-100 RAM boards that have.
We reseated all of the ICs on the CPU board. It changed the behavior, but not to the correct behavior.
On the front panel:
If you hold RESET, all ADDRESS LEDs are on, DATA bits 0, 1, 6, and 7 are on, WO\ is on.
With the CPU cable disconnected and RESET held, all ADDRESS and DATA LEDs are on.
With the CPU cable rotated 180 degrees and RESET held, all ADDRESS and DATA bits 0, 1, 6, and 7 are on.
With the CPU cable rotated 180 degrees and EXAMINE or EXAMINE NEXT pressed none of the DATA LEDs are on.
ICs 13, 14, 26, & 27 on the CPU board drive the J1 connector. We removed the 4x 74367 ICs, cleaned the black oxide on the leads, and reinstalled them. Now the DATA LEDs look like they are working correctly. This likely means that we need to remove an clean all of the ICs on the CPU board and put some DeOxit on the contacts in the sockets.
We found an STL file for the front panel paddles on Thingverse. The plan is to move the three blue switches from EXAMINE, RESET, and SINGLE STEP to ADDRESS/DATA 7, 6, and 5, and them put the printed handles in the EXAMINE, RESET, and SINGLE STEP locations. We printed two front panel paddles on two different 3D printers. Both handles had problems with the pivot that fits into the metal bracket on the front panel, and the part of the paddle that fits over the stub on the switch. We will look for three molded front panel paddles. Red ones are available from IMSAI, but no blue ones.
We cleaned the leads on all of the socketed ICs on the Cromemco ZPU board. Most of the ICs were silver plated TI parts from 1977. See the image below for the black chip leads.
We found that pin 1 of the SN7474 IC30 was missing. We have not studied the schematic enough to understand what that chip does. We replaced it with a new SN7474. During cleaning pin 6 of the SN7474 IC19 fell off. We replaced it with a new SN7474. We cleaned ICs 17-43. We will do the rest next Saturday.
We continued cleaning the chip leads. We need to do ICs 3-16.
We noticed that there are a mix of sockets on the ZPU board. The low profile TI sockets contact the ends of the leads, and the taller TI sockets contact the sides of the leads. We only cleaned the sides of the IC pins, so we will need to clean the ends of the IC leads for all the low profile sockets.
After cleaning all of the IC leads and reinstalling the ZPU board the front panel us unresponsive. The RUN LED is on and will not go off after a STOP or RESET switch press. Data bits 0, 1, 6, & 7 stay on during RESET. IC26 on the ZPU drives those signals. We swapped ICs 27 & 27, but there was no change in the behavior. We swapped ICs 13 & 39, but there was no change in the behavior.
We removed all of the 74367 buffer ICs and all of the data LEDs are off. We put ICs 14 & 27 in, and all of the data LEDs are off. We put ICs 13 & 26 in, and all of the data LEDs are off. We put ICs 12 & 25 in, and all of the data LEDs are off. We put ICs 24 & 37 in, and all of the data LEDs are off. We put ICs 36 & 41 in, and all of the data LEDs are on, but LEDs 2-5 go off during a RESET. We took IC41 out and there was no change. We took IC36 out and all of the data LEDs are off. We put ICs 36 & 41 in, and all of the data LEDs are on, but lets 2-5 go off during a RESET. We put ICs 40 & 41 in, and all of the data LEDs are on, but lets 2-5 go off during a RESET. We took ICs 40 & 41 out. We put ICs 11 & 23 in, and all of the data LEDs are on, but all LEDs go off during a RESET. The RUN/STOP buttons actually work! We put IC 40 in, and all of the data LEDs are on, but LEDs 2-5 go off during a RESET. We took IC40 out. We put IC41 in, and all of the data LEDs are on, but all LEDs go off during a RESET.
At this point ICs 36 & 40 are the only ones left out. ICs 36 & 40 drive state signals. We reinstalled IC36, and all of the data LEDs are on, but LEDs 2-5 go off during a RESET. We removed IC36. We reinstalled IC40, and all of the data LEDs are on, but LEDs 2-5 go off during a RESET. We reinstalled ICs 36 & 40 and will do some more debugging, maybe on the front panel.
We disassembled the front panel to clean and repair it. We were surprised to see that the nomenclature for the front panel was a sheet of photographic film. Clever design!
We moved the three blue paddles from the right section of the front panel to the middle section where the paddles were missing. We installed one of our yellow 3D printed paddles to replace the now missing blue paddles. The PLA plastic is a little softer than the molded plastic so the switch actuation feels a little squishy. We ordered three replacement NKK P/N M2018TYW01-HA switches from Digikey. These have black paddles, but are otherwise the same.
We removed the front panel from the backplane, cleaned the gold fingers a little, and reinstalled the front panel. We can EXAMINE and DEPOSIT memory now!
We toggled in two little programs from the IMSAI manual. These programs read the PROGRAMMED INPUT switches on the front panel and write that pattern to the PROGRAMMED OUTPUT LEDs on the front panel. It actually works!
We decided to look at the PIO 4 board because it has LEDs on output port #0 so it should be easy to debug. We looked at the jumpering and it looks like the board's base address is 0x2C. Executing an OUT instruction with an address of 0x2c does nothing to the LEDs. Studying the really blurry schematic, the PCB, and tracing signals with the 'scope revealed that the I/O address is 0xE0. Writing to port 0xE0 does change the state of the LEDs.
We went shopping in our warehouse for parts to build out the IMSAI. We found a Cromemco rack mounted system that was partially disassembled and not in very good condition, so we removed the boards and 5 1/4" diskette drives. We also picked a JMR dual-8" diskette drive chassis. and a Lobo dual-8" diskette drive chassis.
We removed the two IMS Associates 4k and installed a Memory Merchants 64k static RAM board. We did a examine-deposit-examine sequence and found that 60k of RAM works OK.
One of the boards we got from the Cromemco system was am 8k ByteSaver with a single EPROM installed. The EPROM has a label that says ZM1.4 (E000), so it contains the Cromemco Z80 Monitor. The ByteSaver is jumpered for a base address of E000. We need to change the configuration of the RAM board so that only 56k is enabled to leave room for the Cromemco Monitor EPROM. We should be able configure the CPU to start at address 0xE000 on power on and run the monitor. Unfortunately the ByteSaver isn't working, so that will be another repair project. Another possibility would be to copy the monitor from the 2708 EPROM to a 2716 EPROM and plug it into one of the sockets of the RAM board. The Cromemco monitor also needs a a TU-ART parallel/serial board for the serial console, which we just happen to have. We will have to decide if we want to use all of the Cromemco boards, or find a different monitor that will will work with the IMSAI serial and parallel boards.
We ordered some replacement front panel switch/paddle assemblies from Digikey. We will use the handles to replace the blue handles that we moved to the address positions.
For next time:
Fix the Bytesaver or program the Cromemco Monitor into a 2716
Find out what we need to boot from a Cromemco Floppy Diskette controller
Make some ribbon cables to go from the card edge connector on the TU-ART to a DB25 connector.
Reform the capacitors in the power supplies. (Done 8/18/21)
Remove all of the boards from the system and measure the power supply output. (Done 8/18/21)
Clean the card edge connectors in the backplane and the finger edge connectors on all of the boards. (Done 9/4/21)
If the power supply output is OK, reinstall the boards and see if there is any life in the system. (Done 8/18/21)
Rewire the serial cables with card edge connectors and crimp on DB-25 connectors and ribbon cables.
Replace the 2x 4k SRAM boards with boards totaling about 64k.
Find 3x replacement blue paddles for the front panel
Add a diskette controller and 2x 8" diskette drives, and see if we can get CP/M running.