As may of you know know I am a vintage computer enthusiast. Sometimes this means hunting down and restoring actual vintage hardware, and in other cases that means building a clone. My personal “Holy Grail” is the MOS KIM-1 computer.

The Commodore MOS KIM-1

The KIM-1 is Commodore’s first entry into the computer market. When they were forced by Motorola to withdraw the 6800 pin-compatible 6501 processor by Motorola’s legal arm, they switched the pinout, and slapped the label 6502 on their chip. Since the 6502 was no longer compatible with existing 6800 boards, they had to produce something quickly in order to interest hardware engineers, and the KIM-1 single board computer was the result. It was an instant (read: affordable) hit, and it set the stage for Commodore’s future successes: the PET, the Vic-20, the C64, the 128, and finally the Amiga.

While this unit is on my most-wanted list, I’ve resigned myself to the fact that I will never actually own one. It’s not that they unobtainable. They show up regularly on ebay, but the pricing is just… unrealistic, and while I could scrimp and save up enough to buy one, I can’t justify spending that sort of money on a hobby trophy.

Happily, however, the unit is popular and has been cloned. I’ve been burning off Covid-induced stress by building hardware, and have recently completed two such clones.

The Corsham Technology KIM Clone … notice the cool blue LEDS…

The first clone I put together is from Corsham Technology, and is a rather faithful reproduction of the original system with a few modern additions. Don’t look too closely at the picture above as I have on resistor inserted with its color code reading backwards compared to all the rest, and I am working hard to ignore the error!

The unit comes fully assembled or as a bare board and programmed eproms (my choice). First, I’d like to say right off the bat that the board quality is exquisite. It’s really well done (even though the resistor hole spacing is just a smidge smaller than I’d like), and everything is labeled, so there’s no trouble populating the board.

The board comes with a thumb drive including the BOM and manual. The build instructions are on the web. I sourced most of my parts from Mouser and Digi-key with the notable exception of the 6532 RIOT chips which came from Arcadeshop. I did pay the extra $25 for the keyboard kit, but that’s clearly an optional extra as I could have just sourced the bits from one of the suppliers above.

The build was easy, but be aware that there are errors in both the BOM and the building instructions. Generally of the sort calling for a part that doesn’t actually exist on the current rev of the board. Once I realized what the issue was, it was no problem as the board, as I mentioned, is well-labelled . Bob, the owner/designer, is currently going through chemo, so I suspect he has higher priority issues to deal with than chasing down a few documentation errors. Once he’s recovered, I’ll send him my list of corrections.

USB Connectivity

One of the additions to the board is USB connectivity for terminal access (not power). As the parts are surface mount, the come pre-mounted for which I am thankful. While I can hand solder these parts, my eyes no longer seem to care for the activity.

Expansion Ports

In addition, the edge connectors of the original KIM board have been replaced by eminently more practical pin headers. I actually did buy the expansion motherboard, but haven’t put it together yet, but all standard KIM expansion capabilities are supported with the exception of the cassette drive which was omitted to save room in the ROM (because who uses cassettes these days). Bob does have an SD storage option available which uses a custom shield on an Arduino Mega. It’s cheap and probably something I will invest in in the future.

Connecting to the KIM

Once assembled you can connect to your KIM clone with a standard USB-A cable (9600/8N1), and you are popped into the KIM Monitor. If you hit X, you are shunted into the extended monitor (made possible be excluding the cassette code) and are given access to extended functionality (in this case running a mem test).

Using the terminal is fine, but half the fun of the KIM is interacting via the keyboard and LEDs. Jim Butterfield’s Lunar Lander is included in the ROM to get you started smashing buttons, and you can see me initiating the game in the video above (shot cleverly in portrait mode as it appears I am old now). The goal is to control the descent of your lander and make it safely to the ground without running out of fuel.

A Safe Landing

It doesn’t always work out though…

The Other Kind of Landing

Now that this is completed, I am struggling with whether to build a “suitbox” case for authenticity or a shadowbox case, so that it can hang on the wall when I’m not using it. I’m leaning towards the shadow box as the board is just so pretty…

While this is just a “bare board” and does require some leg work to gather the components to assemble the “kit”, if you have some experience behind a soldering iron, you’ll have no problems putting this together, and it is a really well-done bit of kit. I can share the parts numbers I ordered from Mouser/digi-key if you need them. The oscillator took me a bit to figure out as I am from the ham radio side of building, and if you want an oscillator, you match crystals and build one. After puzzling through the nomenclature, though, I figured out what I needed. If you are looking for a fairly authentic KIM experience, this is the board for you.

Assembled Kim Uno
A Pocket-Sized Kim

The other KIM I built isn’t so much a clone as an emulator. The KIM-Uno from Obsolescence Guaranteed is, essentially, a fancy arduino shield running a KIM emulator. In this case, it uses the arduino nano, and the entire kit can be picked up for less than $20 bucks in kit form or $42 assembled.

When I stumbled across the unit, he was between production runs and out of stock. However, he supplies gerbers and full build instructions, so I just had some boards made at Seeed Studio, ordered all the needed bits from Mouser, and was good to go. There are just a handful of parts aside from the keyboard switches, so I’m putting this one into the anyone can build category.

Serial Connection

Connecting to the unit via the Nano gives you standard KIM access, and hitting Tab will send you into Monitor mode.

The Kim Monitor

If you’re dead set on terminal interaction, they have included MicroChess in the ROM, so feel free to give that a go before doing anything more intense.

I’m Really More of a Battle Chess Fan…
Multiple Power options

While the unit can be powered directly from the nano’s usb cable, the board does include multiple power options. In the above pic, you can see that I’ve got it wired to run straight from a 9v battery (God bless the low power requirements of the nano). On the left of the board, there is also the option for a 5V connection, but in the pocket, I think the 9V works best.

So, Yeah… My Printer Came with Red Filament…

There is also an stl available on Thingiverse for a handy carrying case. Here is my unit with the lid on. You can get an idea of the overall size from my mouse shown in the upper left. You can also see that there is a slot in the case for easy access to the nano serial connections. I’ve really got to get that case sanded as it’s looking a bit rough…

Overall this is a very quick build, but an enjoyable unit, it you are just looking to be a tourist in the world of KIM. It also doubles as a calculator, so how much more impressive would it be to whip this out of your pocket rather than your phone the next time you need to figure tax?!? And at that cost, how can you go wrong?!? Order a kit!

If you’d rather build out of your junk box, are stateside, and want a board, I do have a couple left as the minimum order at Seeed is 5. I actually got the LEDs and switches from Amazon, but they’re common parts available at all the usual retailers.

With that, I will go back to dreaming of the day I am rummaging through some old warehouse and stumble across an authentic KIM-1. Until then, these two will keep my 6502 button-mashing needs sated…