The IMSAI 8080 was my first computer. I bought a kit in 1977 and had a great time building it. It had 4k of RAM, no video monitor, no keyboard, and ran at 2 MHz, so the applications were not obvious. However, I learned to program in 8080 assembly language using the switches on the front panel.
At that time, one of my interests was receiving, decoding, and generating images from weather satellites. The first application for the IMSAI was to sample a subset of the decoded data during the 15–20 minute pass and then do a fast readout from memory on a modified black-and-white television. The A/D–D/A had 4 bits, resulting in images with 16 gray-tone levels. Of the 4k bytes of memory, 256 bytes were assigned to the assembly program and the rest to pixel data, with two pixels per byte.
Below is an example that was captured from the black-and-white tube using a Polaroid camera, showing the southern parts of Norway and Sweden. Although there are only 6k pixels in the image, the preview enabled me to immediately determine whether it was worthwhile to continue the time-consuming task of processing the recorded raw data at full resolution in the darkroom.
Later, the IMSAI 8080 system was expanded with more memory, a video monitor, a keyboard, and a BASIC interpreter, but I never implemented the CP/M operating system. Since the system was still working when I retired, it was an obvious decision to start a CP/M project.
Today, the IMSAI 8080 system has CP/M, 64k of memory, an RTC, and one SD card partitioned as four hard drives, each with 4 MB. Below is an image of the prototype board.
The next step for this project is to add another SD card and do a proper layout of the PCB.