Hackaday Prize Entry: You Can Do Anything With A Bunch Of NANDs

Every few years, someone on the Internet builds a truly homebrew CPU. Not one built with a 6502, Z80, or a CPU from the 80s, either: one built completely out of 74-series logic chips or discrete transistor. We’re lucky enough to have [Alexander] document his build on Hackaday.io, and even luckier to have him enter it into this year’s Hackaday Prize. It’s an 8-bit computer built completely out of NAND gates.

Computers are just logic, and with enough NAND gates, you can do anything. That’s exactly what [Alex] is doing with this computer. It’s built entirely out of 74F00 chips – a ‘fast’ version of the ubiquitous quad 2-input NAND chip. The architecture of this computer borrows from the best CPUs of the 70s and 80s. The ALU is only four bits, like the Z80, but also uses the 6502 technique where the borrow is an inverted carry. It’s a small instruction set, a 2-stage pipeline, and should be able to compute one million instructions per second.

Designing a CPU is one thing, and thanks to Logisim, this is already done. Constructing a CPU is another matter entirely. For this, [Alex] is going for a module and backplane approach, where the ALU is constructed of a few identical modules tied together into a gigantic motherboard. [Alex] isn’t stopping at a CPU, either: he has a 16-byte ROM that’s programmed by plugging diodes into holes.

It’s an amazingly ambitious project, and for entering this project into the 2016 Hackaday Prize, [Alex] already netted himself $1000 and a trip to the final round of competition.

The HackadayPrize2016 is Sponsored by:

Kestrel Computer Project

Many successful large-scale projects don’t start out large: they start with a small working core and grow out from there. Building a completely open-source personal computer is not a weekend project. This is as much a retelling of events as it is background information leading up to a request for help. You’ll discover that quite a lot of hard work has already been put forth towards the creation of a completely open personal computer.

When I noticed the Kestrel Computer Project had been submitted via the Hackaday tips line I quickly tracked down and contacted [Samuel] and asked a swarm of questions with the excitement of a giddy schoolgirl. Throughout our email conversation I discovered that [Samuel] had largely kept the project under the radar because he enjoyed working on it in his down time as a hobby. Now that the project is approaching the need for hardware design, I posed a question to [Samuel]: “Do you want me to write a short article summarizing years of your work on Kestrel Project?” But before he could reply to that question I followed it up with another: “Better yet [Samuel], how about we tell a more thorough history of the Kestrel Project and ask the Hackaday community for some help bringing the project home!?”
Continue reading “Kestrel Computer Project”

A $5 Graphics Card For Homebrew Computers

While not very popular, building a homebrew computer can be a fun and rewarding process. Most of the time, though, the video capabilities of these computers is as bare bones as it can get – running headless, connected to a terminal. While this is an accurate reproduction of the homebrew computers of the 1970s and 80s, there’s a lot to be said about a DIY computer with an HDMI-out port.

[spencer] built a Z-80-based homebrew computer a few years ago, and while connecting it to a terminal was sufficient, it was a build that could use a little more pizzazz. How did he manage to stuff a terminal in a tiny project box? With everyone’s favorite five dollar computer, the Raspberry Pi Zero.

The computer [spencer] built already had serial inputs, outputs, power, and ground rails – basically, a serial port. The Raspberry Pi also has TX and RX pins available on the 40-pin header, and with a stupidly simple board that [spencer] whipped up in KiCad, he could plug a Pi into the backplane of his homebrew computer. A few setup scripts, and a few seconds after turning this computer on [spencer] could mash a keyboard and wail away on some old school BASIC.

This isn’t a use case that is the sole domain of the Pi Zero. A Parallax Propeller chip makes for a great video terminal with inputs for PS/2 keyboards and mice. A largish AVR, with the requisite NTSC video library, also makes for a great video interface for a homebrew computer. The Pi Zero is only five dollars, though.


The Raspberry Pi Zero contest is presented by Hackaday and Adafruit. Prizes include Raspberry Pi Zeros from Adafruit and gift cards to The Hackaday Store!
See All the Entries

Hacking the Leapfrog TV to Play Doom

In a few hours, millions of fresh-faced children will be tearing open presents like the Leap TV, a Wii for the pre-school crowd that has a number of educational games. And, once they get bored with them, what could be more educational than fighting your way through a horde of demons to save the earth? Yup, [mick] has hacked the Leap TV console to play Doom. After some poking around he discovered that the Leap TV is built around a quad-core nxp4330q arm7-A processor, with 1GB of RAM and 16GB of flash memory, while the controller links to the main console using Bluetooth LE. That’s more than enough to run Doom on (in fact… too much), so he whipped out his handy compiler and got Doom and SDL running with only a few minor code changes.

This isn’t [Mick]s first such hack: he previously hacked the V-Tech InnoTab, a cheap tablet for kids, which persuaded the manufacturers to release the full source code for the tablet. Will Leapfrog follow suit? That remains to be seen, but in the meantime, [Mick]s work gives us some insight into the internals of this device.

Continue reading “Hacking the Leapfrog TV to Play Doom”

Hacking the Digital and Social System

When you live in a totalitarian, controlled and “happy” society, and you want to be a hacker, you have to hack the social system first. Being just an engineer doesn’t cut it, you have to be a hypocrite, dissident and a smuggler at the same time. That’s the motto of my personal story, which starts in Yugoslavia, and ends in Serbia. No, I didn’t move, I’m still in Belgrade, only the political borders have changed.

Half a century ago, when I was in elementary school, I discovered the magical world of HAM radio. I became a member of two amateur radio clubs, passed all exams and got my licence and callsign, which was YU1OPC. I was delighted, but after five years, the party was over. What happened? Well, one day the police paid a visit to all registered owners of CB Band equipment and simply took that equipment away. No one knows why they did it, but it was probably off the books, as we never got any written confirmation, and no one ever saw their equipment again.

Continue reading “Hacking the Digital and Social System”

The Biohacking Movement and Open Source Insulin

In March of 2014, I knew my eight year old daughter was sick. Once borderline overweight, she was now skeletally thin and fading away from us. A pre-dawn ambulance ride to the hospital gave us the devastating news – our daughter had Type 1 diabetes, and would be dependent on insulin injections for the rest of her life.

This news hit me particularly hard. I’ve always been a preparedness-minded kind of guy, and I’ve worked to free myself and my family from as many of the systems of support as possible. As I sat in the dark of the Pediatric ICU watching my daughter slowly come back to us, I contemplated how tied to the medical system I had just become. She was going to need a constant supply of expensive insulin, doled out by a medical insurance system that doesn’t understand that a 90-day supply of life-saving medicine is a joke to a guy who stocks a year supply of toilet paper. Plus I had recently read an apocalyptic novel where a father watches his 12-year old diabetic daughter slip into a coma as the last of her now-unobtainable insulin went bad in an off-grid world. I swore to myself that I’d never let this happen, and set about trying to find ways to make my own insulin, just in case.

Continue reading “The Biohacking Movement and Open Source Insulin”

Discrete Transistor Computer Is Not Discreet

Every few years, we hear about someone building a computer from first principles. This doesn’t mean getting a 6502 or Z80, wiring it up, and running BASIC. I’m talking about builds from the ground up, starting with logic chips or even just transistors.

[James Newman]’s 16-bit CPU built from transistors is something he’s been working on for a little under a year now, and it’s shaping up to be one of the most impressive computer builds since the days of Cray and Control Data Corporation.

The 10,000 foot view of this computer is a machine with a 16-bit data bus, a 16-bit address bus, all built out of individual circuit boards containing single OR, AND, XOR gates, decoders, multiplexers, and registers.  These modules are laid out on 2×1.5 meter frames, each of them containing a schematic of the computer printed out with a plotter. The individual circuit modules sit right on top of this schematic, and if you have enough time on your hands, you can trace out every signal in this computer.

The architecture of the computer is more or less the same as any 16-bit processor. Three are four general purpose registers, a 16 bit program counter, a stack pointer, and a status register. [James] already has an assembler and simulator, and the instruction set is more or less what you would expect from a basic microprocessor, although this thing does have division and multiplication instructions.

The first three ‘frames’ of this computer, containing the general purpose registers, the state and status registers, and the ALU, are already complete. Those circuits are mounted on towering frames made of aluminum extrusion. [James] already has 32 bytes of memory wired up, with each individual bit having its own LED. This RAM display will be used for the Game of Life simulation once everything is working.

While this build may seem utterly impractical, it’s not too different from a few notable and historical computers. The fastest computer in the world from 1964 to ’69 was built from individual transistors, and had even wider busses and more registers. The CDC6600 was capable of running at around 10MHz, many times faster than the estimated maximum speed of [James]’ computer – 25kHz. Still, building a computer on this scale is an amazing accomplishment, and something we can’t wait to see running the Game of Life.

Thanks [aleksclark], [Michael], and [wulfman] for sending this in.