Description
CARDIAC (CARDboard Illustrative Aid to Computation) is a learning aid to understand how a computer operates, created more than 50 years ago by David Hagelbarger and Saul Fingerman for Bell Labs. Building it is easy and can either be done by hand, or with a CNC knife if you have access to one (this saves time and gives an outstanding result).
Features
- Anyone can build it with just a printer, paper and scissors or a cutting knife!
- 3 sheets of paper
- 10 instructions
- 100 memory cells (using a pencil)
- High resolution vectorized graphics
- Original colour scheme
- Cutting files for CNC knife available
- Learn how a computer really works and how a program is executed.
Development
I wanted to build a CARDIAC myself but was disappointed in the quality of the black and white scans available. There are high resolution recreated versions, but the ones I found lacked the beautiful aesthetics of the original. Recreating a good looking vectorized version seemed like a great challenge that could hopefully be used by others besides me.
Instead of outlining existing scans I recreated everything from scratch. This allowed me to fit the design on three pieces of A4 or letter paper, while maximizing the computer size (memory and CPU are on separate sheets). If you look closely you will notice that the slides are reversed from the original, since this felt more natural to me. After creating all slides and panels in cad (Rhino3d), I did a few iterations with printed samples. Once everything was working properly, I switched program to Illustrator to finetune the graphics, using similar colours and fonts as the original. I added bleed for the cutting and even spent energy on recreating the ladybug graphic and vectorizing the original ell logo from that time.
The artwork is available in two versions, one with lines for manual cutting and one without lines for CNC cutting. The CNC version has pass-marks to auto align the printed graphics with the cutting path (tested on a silhouette cameo and A4 paper)
Programming the CARDIAC
The original scanned manual explains in a good way how the computer works and describes everything from input devices (punch cards) to output devices (high speed printers). It’s a fascinating read that explains how a computer worked 50 years ago, and even though a lot has changed, the basics of a program is still the same.
Manual: https://archive.org/details/CardiacCardboardIllustrativeAidToComputation
To better understand the computer, I wrote a small program that is included in the artwork. Running this program is a good start for all users. Can you figure out what it does?
Before using the cardiac I only had a vague understanding of what bootstrapping a computer really meant. After writing my first program the brilliance of the concept is now clearer than ever (luckily computers don’t get bored…)
Assembly
Building the computer is very easy, just print, cut and put the slides together. I added numbers to avoid placing them in the wrong order. If you cut it by hand, I recommend that you skip cutting the round holes for the program (sheet 2), since this is a tedious task and you can easily replace moving the bug between holes with moving a small stone or mark current position with a pencil and eraser.
If you build it and appreciate the work, I would be happy if you shared your experience in the comments below. You can also share your programs to allow other to use them
Bill of Materials (BOM)
- 3x sheets of A4 paper (preferably a bit thicker ~120g/m2)
- 1x printer (preferably colour laser)
- 1x cutting knife or 1x computer controlled knife (I used Silhouette Cameo)
I actually used CARDIAC in an elective class I could take in high school (junior.) It was my first exposure to computing. That would be in 1971. In 1974, I actually designed and built my own working 8-bit computer using 7400 series parts from Texas Instruments (lots of wire-wrapping, learning, more wire wrapping, frustration, etc.) A year later I bought an Altair 8800 and my wire-wrapped computer went into the attic.
This is great to see!! I’ll be trying to build one of these for my grandchildren. I need to work out the right thickness of card-stock to use and probably will want to laminate the surface. I’d like it to last. Beyond that, I think this is sufficiently self-explanatory that I should be able to succeed well.
Thanks so very much for the effort you’ve applied here.
I had a lot of tiny holes to cut out with an Exacto knife. But I completed it, last Saturday, and it works quite well. There are some details in doing this manually, due to how downward pressure of an Exacto knife affects the hole edges. (Some smoothing pressure afterwards improves the result, but not perfectly.)
The manual construction process has taught me well the added value you’ve included with the DXF files. I wasn’t able to use them. But I know their value, now more than before. So thanks for that, too. I can hope that I’ll one day make use of them. (I do have several 3D printers and I can convert one of them to laser engraving when I get the time.)
Hi Jon
I’m glad that it worked out. The holes for the memory cells are definitely mundane without CNC – good work! Just cutting a small slit will also work…
Have you tried the included example code? (this was the first time I learned how to boot strap a computer ;)
Drexel university has lots of source examples as well as a simulator for CARDIAC. And I most definitely remember the bootstrapping method from CARDIAC. In fact, breaking through that idea with CARDIAC made my later use of computers (PDP-8, IBM 1130, etc) so much easier to understand. In many cases, I would key in a short bootstrap by hand which might, for example, read in a short paper tape, which would then read in a few key sectors on a disk, which would then read up a larger bunch of code that would implement a file system, which would then bootstrap the O/S.