While it’s currently the start of summer in the Northern Hemisphere, it will inevitably get cold again. If you’re looking for a unique way of heating your workshop this year, you could do worse than build an 8-bit computer with a bunch of 6N3P vacuum tubes. While there are some technical details, you might find it a challenging build. But it is still an impressive sight, and it took 18 months to build a prototype and the final version. You can find the technical details if you want to try your hand. Oh, did we mention it takes about 200 amps? One of the prototype computers plays Pong on a decidedly low-tech display, which you can see below.
The architecture has 8 data bits and 12 address bits. It only provides six instructions, but that keeps the tube count manageable. Each tube has two triodes in one envelope and form a NOR gate which is sufficient to build everything else you need. In addition to tubes, there are reed relays and some NVRAM, a modern conceit.
Operating instructions are to turn it on and wait for the 560 tubes to warm up. Then, to quote the designer, “… I check the fire extinguisher is full, and run the code.” We wonder if one of the six instructions is halt and catch fire. Another quote from the builder is: “It has been a ridiculous amount of soldering and a fantastic amount of fun.” We can imagine.
If the computer seems familiar, we covered the first and second prototypes named ENA and Fred. We’ve also seen tube-base single-board computers.
The earliest stored program computer in the modern sense was not one of the names such as ENIAC or Colossus that you might expect, but the Manchester Baby, an experimental prototype computer built at the University of Manchester in 1948. Its 550 tubes gave it the multi-rack room-filling size common to 1940s machines, but its architecture makes it a comparatively simple processor by the standards of today. So simple in fact, that [Hrvoje Čavrak] has recreated it using ICMP packets as its storage, and a custom packet filter as its processor emulation. It’s a project that’s simultaneously both elegant and gloriously pointless, but as he says, “It’s still better than doing drugs or JavaScript”.
The result simulates the Baby’s combined storage and display tube in a dump of the network traffic, and gives an excellent excuse to read up about its operation. The tiny instruction set brings to mind today’s RISC architectures, but this is illusory as the designers of 1948 would have had less of an eye towards clock cycles than they would have towards the machine working at all in the first place.
In a few museums around the world, there lies the special experience of seeing some of the earliest computers. These room-filling monsters have multiple racks of vacuum tubes that are kept working by the dedication and care of their volunteer maintainers. A visit to the primordial vacuum tube computer, Colossus at Bletchley Park, UK, led [Mike] on the path towards designing an entirely new one. He thinks it’s the first to see the light of day in over five decades. ENA, the Electron tube New Automatic Computer, is the result.
It uses 550 Soviet 6N3P double triodes, and its 8-bit Von Neumann architecture is constructed from the tubes wired up as 5-input NOR gates. ROM is a diode matrix, and RAM comes courtesy of reed relays. The whole thing is assembled as eleven PCBs on a wall-mounted frame, with a console that holds the piece de resistance, a display made from an array of LEDs. A Pong game is in development, meanwhile the machine makes an impressive room heater.
When you write a program for your computer, whether it is a desktop machine, a microcontroller, or a supercomputer, the chances are that you use software tools to help you get the job done. High level languages, compilers, linkers, assemblers, debuggers, and code libraries have become so integrated that in many cases you will barely be aware of their existence. To all intents and purposes this huge toolchain will be the computer. But the first computer programmers had none of these luxuries. They had to hand assemble their own binaries, check them by hand, and debug them by guessing what had happened when they failed.
EDSAC I, 1948, W.Renwick with 5 hole tape reader and Creed teleprinter. Copyright Computer Laboratory, University of Cambridge. Reproduced by permission. [CC BY 2.0 UK]EDSAC (Electronic delay storage automatic calculator) was the first computer operated by the University of Cambridge in the UK and one of the first few computers in the entire world when it was built in the late 1940s. It is the subject of the 1951 film you’ll find embedded below. Originally produced for a conference, the video sports a 1976 introduction and narration from the machine’s creator Professor Maurice Wilkes. It doesn’t take us through the design of the machine itself, instead it concentrates on the workflow required to program it.
The Paper-Heavy Process of Programming EDSAC
To illustrate the programming process, a committee of people who would now call themselves computer scientists, but probably then called themselves mathematicians, breaking a formula into subroutines before the code is laboriously hand assembled. The linking process is performed manually too by the secretary who types the code into a teletype for transfer to a punched tape. When a library function is required she reaches into a filing cabinet for the roll of tape containing it before running it through a tape duplicator to add it to the program. Finally the completed tape is checked and added to a job queue that consists of a row of hooks on the wall. Never complain that your toolchain is unwieldy again!
The original EDSAC was decommissioned in the late 1950s after serving the university and spawning a commercial version, the LEO, which became the first ever computer manufactured for use in commerce. That was not the end of the EDSAC story though, because in this century a team at the National Museum of Computing at Bletchley Park set about recreating EDSAC as an exhibit. And as luck would have it a member of that team was at the recent Electromagnetic Field hacker camp to give a talk about their work which you will also find below.
Building a Faithful Reproduction of EDSAC
Tony Abbey gives us both a history of the machine and a description of its architecture, followed by a run through their efforts in rebuilding it. You may be surprised by some of the unexpected facts from the talk. For instance, while all the tubes used in the EDSAC are still available, their bases are not. Equivalents were sourced from China, but team members had to modify them with dental drills.
They also needed to manufact the 1940s-style tube chassis, and the solution to that problem happened to be just down the road. Bletchley is part of modern-day Milton Keynes, a post-war new town that is also home to another famous name: Marshall amplifiers. Tube amps are built in a surprisingly similar way, so they took on the manufactured challenge. Not all the parts of the new EDSAC are original though. The memory used mercury delay lines in 1949, but for 2018 recreation the computer has a delay line using nickel wire and modern components. Tony admits that even that has caused problems, and there is a simulator using a microcontroller.
[Uniservo] made a video of a tube he’s been trying to acquire for a long time: a Rogers 6047 additron. Never heard of an additron? We hadn’t either. But it was a full binary adder in a single vacuum tube made in Canada around 1950. You can see the video below.
The unique tubes were made for the University of Toronto Electronic Computer (UTEC). A normal tube-based computer would require several tubes to perform an addition, but the additron was a single tube that used beam switching to perform the addition in a single package. [Uniservo] points out how the tube could have revolutionized tube computing, but before it could really appear in real designs, transistors — and later, integrated circuits — would take over.