With the introduction of the 6502 microprocessor, MOS released the world's first single board computer in 1976. Marketed under the cute acronym KIM (short for Keyboard Input Monitor after its resident firmware), it was distributed under the Commodore label after that company acquired MOS that same year.
It was primarily intended as a trainer and development system to acquaint engineers with the new CPU in industrial applications such as data acquisition, monitoring, and process control (employing it as what is now commonly referred to as an embedded system).
Designed by Chuck Peddle, the man responsible for the 6502 and, later, the Commodore PET, it became one of the first personal computers within reach of hobbyists. Apart from pioneering the single board computer, it also holds the distinction of being of the first microcomputer chess platform. Peter Jennings' Microchess ran on the KIM-1 in just 1K of RAM!
A complete microcomputer, baby! KIM-1 ad from 1976 [click to enlarge]. |
The KIM-1 is a first generation single board microcomputer strictly for hardcore computists und for ze ekspertz only! It is totally devoid of any frills. For $245 you got a 6502 with two 6530s RRIOTs (RAM-ROM-I/O-timer arrays), 1K of RAM, a hex keypad, six 7-segment LEDs, and an onboard tape interface -- who needs more?
If you did want more, you could hook the KIM up to a teletype via a current loop serial interface for alphanumeric I/O. An expansion connector allowed adding memory, while the application connector provided programmable I/O lines (hence its popularity in process control and acquisition). Some KIM users came up with innovative uses for these connectors: in a BYTE magazine article from 1977, computer music pioneer Hal Chamberlin describes how to hook up the KIM's application connector with a D/A converter and program it to produce music.
Programming the basic KIM-1 is an exercise in ascesis: there is no firmware resident BASIC or assembler (although that became an option if you had a TTY and memory expansion). You have to wrestle with pure machine language! Unlike previous machines such as the Altair 8800 where you had to twiddle individual bits with switches, the KIM at least offers the luxury of compact hexadecimal I/O via its keypad and LED readout (four address digits + two data digits). To top that off, there's even a single stepping function to aid in debugging your programs. What fun, eh? :^)
The KIM came with 3 manuals: the user manual which gives you an overview and tells you how to set the baby up; the hardware manual which covers system timing and material relevant to developing your own expansion boards (which was pretty much expected of computer hobbyists in those days!); and the programming manual which covers 6502 machine language.
The KIM did not come with a power supply -- you had to supply your own. Failing that, you could build the one recommended in the user manual yourself! Needless to say, if you own a KIM, you better be handy with a soldering iron, voltmeter, and oscilloscope. :^)
What makes the KIM-1 so fascinating is the fact that you're working on a bare board populated with the very components you're programming -- it does away with the abstraction of a fancy package sitting on your desk with all the innards hidden away. You can literally see and touch the hardware under your control (the latter of course isn't a good idea while the system is in operation, and there were cases available for protection). The KIM's sheer simplicity allows you to focus on the fundamentals of machine language and digital circuit design, with no bells and whistles (or silly icons and GUIs, for that matter) to distract you. I'd love to see a Generation Clicker[tm] on a KIM-1! :^)
My KIM-1 is a revision F board from 1977 (bearing the Commodore label) which I got off auction from the States. It's mounted between two acrylic panels for protection with a cutout for the keypad. It worked for one day when I received it... and then it died! Checking it with a scope, I noticed the 6502 didn't clock anymore, so I replaced it. That didn't help; the LEDs flickered once upon powerup, then stayed off, with no response from the keypad. Further checking revealed that one (or both) of the 6530s responsible for scanning the LEDs and keypad had also failed. Unlike the 6502, the 6530 is a custom chip that hasn't been available for over 20 years, so there's no chance in hell of reviving the unit. I still hope to one day get my hands on another working unit. Alas, KIMs are rare and not cheap to come by these days.
Dec. 2007 update: seven years on and I finally acquired a second KIM-1 -- but don't ask about the price! This is a revision G from 1979, and it works. Well, almost: the 556 timer IC to debounce the RS (reset) key has failed, so currently I have to manually short the RST line to GND! But I have a spare 556 sitting round waiting to be soldered in when I have the time...
Year of introduction | 1976 |
---|---|
Retail price | $245 (1976) |
CPU | MOS 6502 at 1.0 MHz |
RAM | 1K |
ROM | 2K with system monitor |
Display | Six digit hexadecimal LED |
Audio | None |
I/O | Application and expansion connector with: 16 user programmable I/O lines, cassette in/out TTY serial interface |
Storage | Audio cassette |
Keyboard | Hexadecimal keypad |
Operating system | Proprietary |
Rarity | Rare |
Verdict | Classic 6502 trainer, highly collectible! |