How The Dis-integrated 6502 Came To Be

I made a bee line for one booth in particular at this year’s Bay Area Maker Faire; our friend [Eric Schlaepfer] had his MOnSter 6502 on display. If you missed it last week, the unveiling of a 6502 built from discrete transistors lit the Internet afire. At that point, the board was not fully operational but [Eric’s] perseverance paid off because it had no problem whatsoever blinking out verification code at his booth.

I interviewed [Eric] in the video below about the design process. It’s not surprising to hear that he was initially trying to prove that this couldn’t be done. Unable to do so, there was nothing left to do but devote almost six-months of his free time to completing the design, layout, and assembly.

What I’m most impressed about (besides just pulling it off in the first place) is the level of perfection [Eric] achieved in his design. He has virtually no errors whatsoever. In the video you’ll hear him discuss an issue with pull-up/pull-down components which did smoke some of the transistors. The solution is an in-line resistor on each of the replacement transistors. This was difficult to photograph but you can make out the soldering trick above where the 3-pin MOSFET is propped up with it’s pair of legs on the board, and the single leg in the air. The added resistor to fix the issue connects that airborne leg to its PCB pad. Other than this, there was no other routing to correct. Incredible.

The huge schematic binder includes a centerfold — literally. One of the most difficult pieces of the puzzle was working out the decode ROM. What folds out of this binder doesn’t even look like a schematic at first glance, but take a closer look (warning, 8 MB image). Every component in that grid was placed manually.

I had been expecting to see some tube-based goodness from [Eric] this year. That’s because I loved his work on Flappy Bird on a green CRT in 2014, and Battlezone on a tube with a hand-wound yoke last year. But I’m glad he stepped away from the tubes and created this marvelous specimen of engineering.

A Dis-Integrated 6502

The 6502 is the classic CPU. This chip is found in the original Apple, Apple II, PET, Commodore 64, BBC Micro, Atari 2600, and 800, the original Nintendo Entertainment System, Tamagotchis, and Bender Bending Rodriguez. This was the chip that started the microcomputer revolution, and holds a special place in the heart of every nerd and technophile. The 6502 is also possibly the most studied processor, with die shots of polysilicon and metal found in VLSI textbooks and numerous simulators available online.

The only thing we haven’t seen, until now, is a version of the 6502 built out of discrete transistors. That’s what [Eric Schlaepfer] has been working on over the past year. It’s huge – 12 inches by 15 inches – has over four thousand individual components, and so far, this thing works. It’s not completely tested, but the preliminary results look good.

The MOnSter 6502 began as a thought experiment between [Eric] and [Windell Oskay], the guy behind Evil Mad Scientist and creator of the discrete 555 and dis-integrated 741 kits. After realizing that a few thousand transistors could fit on a single panel, [Eric] grabbed the netlist of the 6502 from Visual6502.org. With the help of several scripts, and placing 4,304 components into a board design, the 6502 was made dis-integrated. If you’re building a CPU made out of discrete components, it only makes sense to add a bunch of LEDs, so [Eric] threw a few of these on the data and address lines.

This is the NMOS version of the 6502, not the later, improved CMOS version. As such, this version of the 6502 doesn’t have all the instructions some programs would expect. The NMOS version is slower, more prone to noise, and is not a static CPU.

So far, the CPU is not completely tested and [eric] doesn’t expect it to run faster than a few hundred kilohertz, anyway. That means this gigantic CPU can’t be dropped into an Apple II or commodore; these computers need a CPU to run at a specific speed. It will, however, work in a custom development board.

Will the gigantic 6502 ever be for sale? That’s undetermined, but given the interest this project will receive it’s a foregone conclusion.

Correction: [Eric] designed the 555 and 741 kits

Learning And Failing At Digital Electronics

[spencerhamblin] is starting his explorations into digital electronics the hard way: reproducing a “simple” IC’s functionality by wiring up a board full of discrete transistors. In this case, the end product is a binary-to-seven-segment decoder built from scratch.

In engineering circles, this circuit is better known as a 7447 BCD to seven-segment decoder/driver, but just using a single chip has little pedagogical value. Building a simple circuit with 39 transistors, 31 resistors, and a handful of diodes is a good introduction to digital electronics, and after two attempts, [spencerhamblin] knocked it out of the park.

The build began with a piece of copper clad board, a bunch of cheap FETs from fleabay, and an incorrect schematic. While the first version of the project looked fantastic with Manhattan-style construction, and jumper wires everywhere, the schematic was fundamentally flawed and [spencer] got a little confused when converting the circuit to a common anode display.

Version two used a more standardized construction. This circuit was plotted in DipTrace, and the resulting PCB was sent off to OSHPark. The build was cleaner, but in capturing the schematic, [spencer] reversed the footprint of the seven segment display. That was easy enough to fix with a few short wires, and after a little bit of work [spencer] had a device that would convert binary to a seven segment display.

Hackaday Prize Entry: From Q To NAND

The apocalypse is coming, and the last time I checked, not many people have a semiconductor fab in their garage. We’ll need computers after the end of the world, and [matseng]’s project for the Hackaday Prize is just that – a framework to build computers out of discrete components.

The apocalyptic spin on this project is slightly exaggerated, but there is a lot someone can learn by building digital devices out of transistors, resistors, and diodes. The building blocks of [matseng]’s computer are as simple as they come: he’s using three resistors, four diodes, and one NPN transistor to build a single NAND gate. These NAND gates can then be assembled into any form of digital logic. You’re never going to get a better visual example of functional completeness.

A project like this must be approached from both the top down and bottom up. To go from a high level to ones and zeros, [matseng] built an assembler and an emulator. Some ideas of what the instruction set will be are laid out in this project log, and for now [matseng] is going for a Harvard architecture with eight registers. It’s a lot of work for a computer that will be limited by how much memory [matseng] can be wired up, but as far as ambition goes, there aren’t many projects in the Hackaday Prize that can match this tiny, huge computer.

The 2015 Hackaday Prize is sponsored by:

Building A Transistor Clock From Scrap

[Phil] has already built a few clocks with Nixies, VFDs, and LED matrices. When his son requested his own clock, he wanted to do something a little different. Inspired by the dead bug style of [Jim Williams]’ creations, [Phil] set out to build a clock made entirely out of discrete components. That includes the counters, driver circuits, and an array of LED.

There are a few inspiration pieces for [Phil]’s clock, starting with the Transistor Clock, a mains-powered clock that uses 194 transistors, 566 diodes, and exactly zero integrated circuits. Design patterns from a clock so beautiful it’s simply called The Clock are also seen, as is a Dekatron emulator from [VK2ZAY].

[Phil]’s creation has no PCB, and all the components are soldered onto tiny wires arranged into something resembling the clocks circuit. It’s a fantastic contraption, and while we’ll still have to give the design award to the clock, [Phil]’s creation shows off the functional circuits; great if he’ll ever need to debug anything.

Jaw-Dropping Atomic Clock Build

You could cruise the Internet bazaars for a talking clock but you’ll never find one as awesome as this. Just look at it… even if it didn’t work it would be awesome.

[Art] certainly lives up to his username. His Rubidium-standard atomic real-time clock is surely an example of hardware art. The substrate is a collection of point-to-point soldered perfboard modules. Each laid out meticulously. What does such layout call for? A gorgeous enclosure which doesn’t obscure your view of the components. For this he went with a copper tube frame and a custom fabricated aluminum chassis pan.

For the circuit itself [Art] tells us he wanted to build something akin to the old HP nixie frequency counters so he went with logic chips. The pictures and a few video annotations are the only clues we have for how this works. Hopefully your encouragement in the comments will help prompt him to share more about that.

Oh, and the talking clock part that we referred to earlier? Every minute you get a readout of the time thanks to a PIC playing back audio using [Roman Black’s] BTc sound compression algorithm.

Continue reading “Jaw-Dropping Atomic Clock Build”

A 4-bit Computer From Discrete Transistors

Anyone reading this uses computers, and a few very cool people have built their own computer out of chips, [zaphod] is doing something even cooler over on hackaday.io: he’s building a computer from discrete transistors.

Building a computer from individual components without chips isn’t something new – Minecraft players who aren’t into cheaty command blocks do it all the time, and there have been a few real-life builds that have rocked our socks. [zaphod] is following in this hallowed tradition by building a four-bit computer, complete with CPU, RAM, and ROM from transistors, diodes, resistors, wire, and a lot of solder.

The ROM for the computer is just a bunch of 16 DIP switches and 128 diodes, giving this computer 128 bits of storage. the RAM for this project is a bit of a hack – it’s an Arduino, but that’s only because [zaphod] doesn’t want to solder 640 transistors just yet. This setup does have its advantages, though: the entire contents of memory can be dumped to a computer through a serial monitor. The ALU is a 4-bit ripple-carry adder/subtractor, with plans for a comparison unit that will be responsible for JMP.

The project hasn’t been without its problems – the first design of the demux for the ROM access logic resulted in a jungle of wires, gates, and connections that [zaphod] couldn’t get a usable signal out of because of the limited gate fan-out of his gates. After looking at the problem, [zaphod] decided to look at how real demuxes were constructed, and eventually hit upon the correct way of doing things – inverters and ANDs.

It’s a beautiful project, and something that [zaphod] has been working for months on. He’s getting close to complete, if you don’t count soldering up the RAM, and already has a crude Larson scanner worked out.