• Please review our updated Terms and Rules here

Kenbak-1 50th Anniversary this year

Richard L

Mar 25, 2017
I'm a little surprised there hasn't been discussion of the Kenbak-1 50th anniversary so far, maybe there will be as we get closer to September (the date of the Scientific American issue in 1971 with the advertisement). I had been wanting to build a replica using the period-correct parts I've been collecting, but I never got any response when I tried contacting Grant Stockley and it looks like there hasn't been any activity on his forum since 2017. So, my Pandemic Project has been to make my own homebrew replica which is just about done now. Anyone else doing something similar?
Very well done....
Did you remake the PCB and would you be willing to share the layout files ? Was contemplating a similar setup and this would speed up things no end....
Yes it took LOTS of patience and time to recreate the boards. I'm holding onto my files for now.
One nice thing about having this now is I can try some upgrades with other vintage parts I have, maybe a little more memory or an interface to an I/O peripheral. I don't have anything to support punched cards which the front slot was originally intended for, but I do have paper tape hardware to try out. Good motivation to restore my Remex punch. May also try replacing the 74xx TTL with 74Fxx.
It would indeed be easy enough to add some papertape-based input to the Kenbak, your could hang it into the keyboard connection and would not even need to touch the Kenbak board. The whole state of a Kenbak is less than a meter worth of punched tape...
I didn't want to drill any more holes or slots in the case so I dug up some nice vintage Cinch connectors that fit the existing front slot holes pretty well, and put them together so I could plug in an interface card inside and a cable to the peripheral on the outside. The Remex documentation describes the circuits I need to add to interface the paper tape reader to the computer, which I'll then hang onto the keys as you say.
I finished the basic structure of the interface card (and added another underneath since there was room). Also finished the cable - it's based on something I found in a lot of old hardware from a Texas Instruments auction years ago. I need to have both data and control lines for the Remex paper tape reader, and I think I can do it with some vintage Signetics latches using existing Kenbak instructions such as "Skip if 0/1".
It's looking like I don't need the extra latch hardware, just open-collector gates hung on the switches and a simple program should be enough. Manipulating the output register should provide the control I/O. Also, I'm working on similarly adding a bank of C1101A SRAM which could be addressed with the Index mode (enabled with the Carry bit). So 512 bytes available instead of 256 - woo hoo!
I'm going to need -9V and +5V for the C1101A chips so I thought about trying to stuff more voltage regulator parts in the case too, but decided to build a small external power supply instead. To try to stay consistent with the period I'm investigating the zener plus series pass transistor approach. My prototype seems to work OK so I'll get that built up then resume my investigations on integrating the memory into the Kenbak.
I need direct access to the Write Time (WT) and Overflow (OV) signals, plus I needed to make a slight logic modification to the WT signal used by the 1404 shift registers, so I made up a daughterboard that plugs into the appropriate locations. My replica is already all socketed so no mods to the motherboard are needed.
I haven't worked on the memory expansion or paper tape reader interface yet, but I did spend some time making a user-interface extension that should make it a little easier to enter and verify programs. Trying to stay with the older chips, this turned out to be a more complicated project that I thought it would be (probably way too over-engineered as well). In any case it was fun, it looks cool, and it works. I'm able to work directly in the octal digits, and see the memory location at the same time as the data. The switch hung off the side auto-clears before storing the contents of the scratchpad displayed in the upper right to the Kenbak's memory.


  • KenbakUI_1.jpg
    232.5 KB · Views: 22
  • KenbakUI_2.jpg
    143.8 KB · Views: 23
Are you planning to offer bare PCB's ? ( or release the gerber files... )

More Kenbak replica's does mean more activity in the "Kenbak field..."

I have a very limited number of extra PCBs. I splurged on the production and hired a small company here in the US to make a micro batch for me from a surplus piece of vintage double-sided copper laminate, finished in the old-style HASL rather than immersion tin. It wasn't cheap but I got the retro look I wanted. I also had a batch of boards made for the replica power supply, along with black anodized heat sinks. I can put a set of these on eBay for someone to get started on their own replica. I don't plan to release the Gerbers.
First I created some drawings of the case using Fusion 360, making my best guess at the measurements, and took those to a local sheet metal shop who cut and bent a couple of steel tops/bottoms for me cheaply. I did the finishing and painting of one pair after I got them home. I did the same thing with the two aluminum side handles but those were not so cheap. If I want more of those I will likely try making them myself next time on my Shopsmith. The front panel was interesting - the cutting, drilling and smoothing was not too difficult (but time consuming), but I had to teach myself how to silkscreen to get everything printed on it. That took many attempts before I got it looking decent.
Richard L:
This is super cool. I just now saw your posts (5 years later) but if you are still online, give us a little update on your project. I assume from the fact you were keeping the GERBER files private that you have plans of making and selling these reproductions, but now 5 years later I haven't seen any reproductions you made online. What's the status of your project?
Any updates at all?
I have been spending time on and off trying to get more memory into my replica, but have not been able to figure out how to integrate an expansion into the existing serial architecture. I used a program called "Digital" to simulate the Kenbak down to the gate level so I could try various approaches by modifying the original design, but nothing has worked. When I get time to get back on this, I'll probably have to settle with hanging more memory on the existing I/O (lights and switches) like I did for the user-interface extension.
Cool idea Richard!

Only one person, ever claimed to successfully expanded the memory of a Kenbak-1 computer past 256 bytes. That's "Tom Crosley" who purchased his Kenbak-1 after seeing it advertised in Scientific American magazine. He later sold his computer via eBay to Erik Klein in 2004 (story on https://www.kenbak.com/provenancedetails#h.bwkx9g84fvcz).

If you read at the Amateur Computer Society newsletter (https://archive.computerhistory.org/resources/access/text/2012/03/102654910-05-01-acc.pdf) and search for the word "kenbak" you can find all the Kenbak-1 related articles, and Tom's letters. In June 1974 (one month before the "Mark-8 Minicomputer" made the front page of "Radio Electronics" magazine) Tom wrote the following:

"To the basic Kenbak-l, so far have added interrupt system plus real-time clock (1 second interrupt); am just completing a full duplex TTY controller (at first I used serial I/O for the TTY); am adding a paging register to select one of (initially) 16 128-word pages (only in effect tor addresses 204-376; the lower addresses -- and all registers in memory -- will be available independent of the page register), Am making use of the "don't care" bits of the NOP instruction to add 15 I/O instructions which will be single word (data set up in registers)."

If you read that closely, it sounds like he's still working on it, but it doesn't sound fully worked out. I emailed him several months ago, and he says he did get the memory expansion working, but even if he did, he describes a very hard way to do it.

If I were to make a memory expansion, I would just page in and out locations (octal) 200-377 so that locations 000-177 always stay constant and available for the "core" of the program. For the page register, I'd select memory location 177 (octal) to be the page register, and anything written to that location, selects a new page for upper-level memory. I'd monitor the L-register (which is the current "location" of the byte circulating out and in of the serial memory, and when the L register is 177 (all bits high) shift that memory byte into a 8-bit "shift" register, with a parallel output. The parallel output of that shift register will then go into a DEMUX chip, and select different memory banks. So I think you can do this with only a few chips, and a handful of 1404a shift registers.

That way you don't have to construct any "new op-code" you simply write to location 177 when you want to select a new memory page, and the 128 bytes from 200-377 will automatically be changed out. You may need a few MUX or DEMUX chips to handle recirculation of the serial memory output into the input when that memory bank is not selected, but when it is selected, the regular recirculation data through the computer would be used.

Would that make any sense? Is that anything similar to how you had planned to expand memory?

- Thomas (a bit of a Kenbak-1 nut, I guess.)