KIM-1 Computing

KIM-1 Projects

  • KIMForth – 6502 FIG-Forth configure for the KIM-1
  • KIMClock
  • KIM-1 Music – under development
  • KIM-1 Software – A collection of KIM-1 software and tools can be found on my KIM-1 Software page.

Many of us remember our first car fondly, the sense of independence and freedom that came with owning your own car. Some of us has similar feelings and attachments to our first computer, the sense of discovery and unlimited possibilities which came with that. For me, it was the KIM-1 around 1976, arguably the first ever personal computer. (To be fair, my Dad got it to learn about the new technology explore its use in automating some measurements. I will have more on that project in the future. In the end he gave the first KIM-1 system to me).  The KIM-1 is a single board microcomputer built around the 6502 microprocessor with a 1 MHz clock featuring 1024 bytes of random access memory, six 7-segment displays, a keypad, 15 digital I/O lines, a built in monitor program (KIM stood for Keyboard Input Monitor) that allowed you to manually examine and edit memory location so that you could enter and run programs along with an interface to allow programs to be stored and loaded from cassette tapes. More details can be found by searching for KIM-1 on the web where links like the ones below are easy to find.

https://en.wikipedia.org/wiki/KIM-1

http://retro.hansotten.nl/6502-sbc/kim-1-manuals-and-software/

https://www.floodgap.com/retrobits/kim-1/

KIM-1 – my first computer!

The 6502 microprocessor was a breakthrough in cost at the time, costing 10’s of dollars instead of hundreds of dollars like the similar 6800 microprocessor. Because of it’s low cost the 6502 enjoyed dominance for a while as the processor used in early arcade games (over 200 games used the 6502 including the first virtual reality game “Battlezone”), gaming systems like Atari and early personal computers like the Commodore 64 and the Apple I and II.

While the basic KIM-1 was an excellent introduction to microprocessors, its limited memory and display capabilities were a challenge. In the late 70’s there was a proliferation of personal microprocessor systems but few standards existed at the time. With the limited selection and budget at the time, I decided to build my own expanded KIM-1 computer system around an S-100 bus backplane to make it easier to add memory and other capabilities. The end result can be seen below along with the tape recorder used to store programs and a parallel ASCII keyboard that connected to a video display card.

Homebrew KIM-1 computer system

The final configuration included the KIM-1 board mounted in the cover, a handmade KIM-1 to S-100 buss interface, two Godbout 8K memory boards that I assembled from kits, a Xitek SCT-100 Video Terminal card and a home-built power supply which can be seen in the internal view of the system.

Internal view of KIM-1 system with two 8K memory boards in the front, a Xitek SCT-100 video card, homebrew KIM-1 to S100 buss interface and homebrew power supply

In addition to the keypad interface, the KIM-1 monitor supported operation with a teletype through a 20ma current loop serial interface. The Xitek SCT-100 was not a video card as we think of them today, but essentially a teletype emulator which only drew power from the S-100 buss and interfaced to the processor thru the serial interface. The ASCII parallel keyboard connected directly to the Xitek card. The Xitek SCT-100 was a huge step up in capability and usability providing 16 lines of 64 characters each with both upper and lower case characters and operated at a blazing 300 baud (30 characters per second). To display the video output from the Xitek card, I hacked a 12” black and white TV so that I could switch the input to the video drive section between the RF receiver and an additional input jack  so I could inject the NTSC video signal generated by the Xitek. Try doing something like that with today’s digital TVs.