Go Down

Topic: KENBAK-uino (Arduino emulation of the KENBAK-1) (Read 6333 times) previous topic - next topic

kiwimew

This is an Arduino-based emulation of the KENBAK-1 http://en.wikipedia.org/wiki/Kenbak-1, considered by some to be the first "personal computer", first advertised for sale in the September 1971 issue of Scientific American.



The KENBAK-uino by funnypolynomial, on Flickr


Core Memory by funnypolynomial, on Flickr


Assembled -- Top by funnypolynomial, on Flickr



Scientific American by funnypolynomial, on Flickr


I'd been thinking for a while that emulating an old-school switches-and-lamps computer would be a fun Arduino project, but had stalled looking at things like the Altair 8800 with its 30+ lights and 20+ switches.  However, when I stumbled upon the Kenbak I thought it was something I could pull off as my first real Arduino project.  Naturally I called it the KENBAK-uino
This is the end-product, it can be programmed via the buttons on the front panel and show outputs on the LEDs.  It's a faithful emulation of the original CPU but with a few enhancements thrown in like pre-loaded sample programs and access to a real time clock.
See the set on flickr with more photos and a couple of videos http://www.flickr.com/photos/funnypolynomial/sets/72157627738613990/.
Get the Sketch from here:http://www.funnypolynomial.com/software/arduino/kenbak.html.
// TODO: sig

robtillaart

Never heard of KENBAK until today,

Do you have a movie (youtube) that shows how it works?

Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

cr0sh

#2
Sep 24, 2011, 11:06 am Last Edit: Sep 24, 2011, 11:08 am by cr0sh Reason: 1
Awesome job! :)

Do you happen have the files and other info for the case/panel/switches used (so it can be replicated like your original)?
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

kiwimew

There are a couple of videos of the KENBAK-uino at the end of my flickr set, http://www.flickr.com/photos/funnypolynomial/sets/72157627738613990/
The first one shows me entering a simple program on the front panel, the second shows the sample programs I include in the sketch.
The only youtube video I've found of the original is this http://youtu.be/lxsdL_OWumw.


Here in New Zealand, I used these buttons http://www.jaycar.co.nz/productView.asp?ID=SP0603 and this case http://www.jaycar.co.nz/productView.asp?ID=HB5970.  I've attached a PDF of the faceplate and drilling guide.
// TODO: sig

draythomp

Nice job.  The thing I remember most about those days was how hard those things were to program.  I really love it when cassette tapes came around.

How are you folks getting those incredibly nice front panels?
Trying to keep my house under control http://www.desert-home.com/

kiwimew

Oh yeah, programming it is not easy!  But it is quite a sense of achievement



Faceplate by funnypolynomial, on Flickr


The enclosure came with a black plastic front panel which sat in a slot in the case.  I used thinner white plastic and had intended to laser-print the labels on an Overhead Projector transparency, but it kept smudging, so instead I printed it on heavy acid-free paper.  The design of the front panel was done by writing custom PostScript code.  Small bolts ran through the paper and plastic backing to the front-panel PCB.  The paper+plastic sandwich slid into the slot in the case.



Assembled -- Front by funnypolynomial, on Flickr
// TODO: sig

cr0sh

Here in New Zealand, I used these buttons http://www.jaycar.co.nz/productView.asp?ID=SP0603 and this case http://www.jaycar.co.nz/productView.asp?ID=HB5970.  I've attached a PDF of the faceplate and drilling guide.


Thank you for posting that; its really a great looking project - heck, it deserves to be a kit! It would complement the "mini-Altair" emulation kit that's out there (which uses a PIC processor, IIRC)...

:)
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

draythomp

That was so clever.  Good job.  On the transparencies, I once tried that, but I had the same problem as you.  Additionally I had the letters try to flake off when they were touched and it just wouldn't cooperate with me.  What I finally ended up doing was reversing the lettering so that when I turned it over, it read correctly.  Then I mounted it backwards to the panel I was using.  It looked really cool for a few months and the darn transparency started to turn yellow.  I understand they have that problem fixed now and it could work.  Haven't tried it though.

Next question, how did you punch those perfect holes in it.  I could understand a hole punch, but you have different size holes there.

In case you haven't noticed, I'm stealing your ideas.
Trying to keep my house under control http://www.desert-home.com/

kiwimew

Thanks for your kind words.  I'd love to see some other KENBAK-uino's out there.  :)
I was also going to do the "reverse" trick on transparency, but couldn't get past the smudging (especially after punching 33 holes, that's a lot of handling).  I'll keep an eye on my test pieces and see if they yellow, for future reference.
I used a "Revolving Punch Plier" like this http://www.handscraftstore.com/shop/show_single_product.php?prod=1060 (but thankfully a cheaper model).  The secret is to put a few extra layers of sacrificial paper behind the work-piece, a single piece of paper won't punch very well.  And then it was a matter of carefully placing the punch over the faint circles I rendered on the front panel.
// TODO: sig

draythomp

revolving punch plier.....I didn't even know such a thing existed.  One day, we should all get together and share ideas about making projects look nice.  Things like bezels for LCD displays, lettering, drilling holes, etc.  The newbies would love it and us folk that have tried a thousand ideas just to have one work would save a bunch of time.

Thank you very much.
Trying to keep my house under control http://www.desert-home.com/

robtillaart

I mailed John Blankenbaker yesterday the original creator of the KENDAK this thread ( - http://www.kenbak-1.net/ - )

From his reply "... I have often wondered how much physically smaller the Kenbak-1 computer could have been made using modern technology. The limitation is in the switches and lights, not in the logic."

I think he is 100% right,
Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

TonyD

@kiwimew
Great project, well done.

I've always wanted a KenBak-1 for my retro computer collection, now I can :-)

kiwimew

John B told me he encourages the K-uino.

BTW, some of my original captions on flickr were wrong: September 1971 is FORTY years ago not thirty!
No, I don't know how I screwed that up but I was in a slight hurry to post before the end of September.
// TODO: sig

cr0sh


revolving punch plier.....I didn't even know such a thing existed.  One day, we should all get together and share ideas about making projects look nice.  Things like bezels for LCD displays, lettering, drilling holes, etc.  The newbies would love it and us folk that have tried a thousand ideas just to have one work would save a bunch of time.

Thank you very much.


There's also a tool out there called a "chassis punch", which has hard steel anvils in various shapes to punch different sized holes thru various materials (thin sheet metal, typically). You can find a set via Harbor Freight and other places (also used to punch holes in the old days on metal car dashboards). I've yet to find a set, though, that has square punches (back in the day, these were typical - not sure what happened to the square ones).
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

kiwimew

// TODO: sig

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy