Back in the 70’s when computers were fairly expensive and out of reach for most people, [David Hagelbarger] of Bell Laboratories designed CARDIAC: CARDboard Illustrative Aid to Computation. CARDIAC was designed as an educational tool to give people without access to computers the ability to learn how computers work.
The CARDIAC computer is a single-accumulator single-address machine, which means that instructions operate on the accumulator alone, or on the accumulator and a memory location. The machine implements 10 instructions, each of which is assigned a 3-digit decimal opcode. The instruction set architecture includes instructions common to simple Von Neumann processors, such as load, store, add/subtract, and conditional branch.
Operating the computer is fairly simple–the cardboard slides guide you through the operation of the ALU and instruction decoder, and the flow chart shows you which stage to go to next. The program counter is represented by a cardboard ladybug which is manually moved through the program memory after each instruction completes.
Even though the CARDIAC is dated and very simplistic, it is still a useful tool to teach how microprocessors work. Although modern processors include multi-stage pipelines, finely-tuned branch predictors, and numerous other improvements, the basic principles of operation remain the same.
Feeling adventurous? Print out your own CARDIAC clone and try writing your first cardboard computer program.
[via Reddit]


The old mechanical controller functioned like a player piano. A rotating drum with ridges actuate different cycles in the washing machine. Some of the cycles weren’t working properly so [hydronucleus] ripped them out. With the help of a schematic posted on the washing machine itself, the cycles were able to be programmed into the Arduino.



