Perfection is achieved not when there is nothing more to add, but when there is nothing left to fail. Going by that metric, [Stian]’s three-chip 6502 homebrew computer is the epitome of perfection. It’s a real, working, homebrew retrocomputer using only three chips: a CPU, some RAM, and a microcontroller to bootstrap the computer and provide a video output,
The key to this minimalist build is having the entire boot process controlled by an ATMega16 microcontroller, This interfaces to the 6502 through a dual-port SRAM, a 1 kilobyte Cypress CY7C130. This dual-port RAM allows the CPU and microcontroller to access the same bit of memory, making it easy to bootstrap a computer from a bit of AVR code.
Output is provided with [Stian]’s ATMega video text generator putting a 37×17 characters on any television with an RCA jack. While input isn’t handled yet, [Stian] says it should be possible with his AVR PS/2 keyboard library.
While other 6502 homebrew computers such as [Quinn Dunki] Veronica can reach unparalleled heights of complexity, there is a lot to be said about the minimalism of [Stian]’s three-chip computer. With some clever coding and a modified parts list, it may well be possible to put a retrocomputer in the hands of everyone with a bare minimum of cost and parts.
There are a few projects similar to this using normal SRAM chip, a 6502 or Z80, and a Propeller. The prop drives the clock for the 6502, and has “full” access to the bus. Sadly it leaves you with very few free I/O pins on the prop unless you do lots more tricks.
” With some clever coding and a modified parts list, it may well be possible to put a retrocomputer in the hands of everyone with a bare minimum of cost and parts.”
Ummmm…. but, Why???? I lived through the “retro-computing” phase, back when “retro-computing” meant punch cards…. why is this “cool” or worth doing?
Why is coffee or waring sun glasses cool … some things just are and to a geek bare metal coding a fun.
Why do people still use LPs and Gramophones? :)
I have literally never even heard of someone who unironically uses a gramophone for everyday listening.
I’ve never even heard of someone who unironically uses a minimal homebrew computer for everyday work either; but I know people who like to collect, play with and tinker on gramophones and LP players!
Oh no! How dare some one use their own resources to do something you don’t “get” if only they consulted you first!
When it comes to hobbies and entertainment, “Why?” is always the wrong question.
It’d be more feasible (& -ah-neater! ) these days to go for a modern “all in one” offering – perhaps the PIC32 based “Maximite” UBW32 => http://geoffg.net/ubw32.html
There is even a Maximite that can plug into the white solderless breadboard:
http://www.circuitgizmos.com/products/cgmmstick1/cgmmstick1.shtml
and it certainly can “put a retrocomputer into the hands of everyone with a bare minimum of cost and parts.” It is great for using a simple controller board that has SD card and runs an interpreted language into a project.
There is a color version that accepts Shields if you have them from Arduino projects.
I assumed this (http://hackaday.com/2012/03/28/building-the-worst-linux-pc-ever/) would be the most minimal computer ever.
What does that make the ZX-81 with four chips, avant-retro?
They did it without the microcontroller too. Just a PROM, nothing more.
My VPC-32 use only one chip. Namely PIC32MX150F128B. It as b/w NTSC video, PS/2 keyboard input, a serial port, mono audio output and SDcard file system. 16Kb RAM available for user programs. Although the project is not completed at this time: there is a command shell and DIOSForth functionnal. http://picatout-jd.blogspot.ca/2013/08/vpc-32-schema-electronique.html
Theoretically, you could make a semi-usable two-part solution. Replace the ATMega16 (which has 1KB of RAM) with a part with 2KB of RAM and you can use the extra K of memory as RAM for the 6502. This would mean the AVR needs to be clocked quickly enough to handle the 6502 bus cycles in software, but you can solve that by having the AVR generate the clock signal of the 6502.
And tomorrow’s HAD brings you: how to make a Retro Hacksaw when you only have a CNC mill, a 3D printer and a high-powered laser cutter!
SRSLY, the 6502 is a nice CPU for learning assembler, although the 6809 is more fun. But if you want to try it, why not just emulate it? To make a piece of “minimal” hardware using a *part* that would deliver the same functionality *alone* is less than pointless. I suppose even a 6502 emulator on a somewhat bigger ATMega could be made to rival the original.
Glad to know at least one other person saw the irony in using an ATmega to fire up the MOS.
A minimal retro computer based on a modern microcontroller ? If that’s within the rules, why not get rid of the 6502 and RAM as well ?
Exactly. I have never complained about a hack on Hackaday before, but something about this disturbs me just a little bit. It has no purpose… but okey, it can probably be an inspiration to someone.
If only the poor guy consulted you before using his own resources for his own purposes. Sigh don’t people ever think…”Sure its cool to me, but isn’t it more important I impress others instead?”
The poor guy can do whatever he wants, of course. And we can comment whatever we want.
Not based on, but supported by.
i can’t reach the page, keeps on loading for ever.
never mind, this other guy is also doing freaky stuff with a microcontroller and a 6502:
http://uebersquirrel.blogspot.co.uk/2013/10/run-free-little-cpu.html
lets find out how much bandwidth he has left.
Older than the intarwebs and unnecessarily complicated. If you happen to have only a 6502, fine. Otherwise, a Z80 is cheaper, faster, easier to build and more useful because its NOP is 0x00 and it simply starts excecuting code at 0x0000. So you ground the entire data bus, apply a clock and A0-A15 start counting up from zero. Not from 0xeaea that I’d be hard pressed to find an application for.
At least when I last looked like 20 years ago the Z80 was the cheapest 16-bit counter IC on the market.
You guys are clearly missing the point of that project. If you read the blog entry you will see that he had 3 chips on a bread board and asked himself “can this be made into something?”.
It is _not_ a project to make “the best minimal computer” or “make a retro computer design”. Its an exercise in duct taping something together and see if you can make it work.
The first sentence of the article on this site suggested that this was, “Perfection is achieved not when there is nothing more to add, but when there is nothing left to fail.” Perhaps that is what generated the ire we’re seeing in the comments? I know it tweaked me the wrong way.
While the AVR is definitely overkill for a loader, at least that’s not all that it’s doing. The video generation definitely would have taken its toll on the 6502.
I thought this was pretty cool, but it got a whole lot cooler for me when I read that the guy did this in one single evening.
Nicely done!
The 8 bit home brew computer that my friend and I built is also a “3 chip” home brew computer but can do a lot more then this. Ok it also has an SD card but the graphics are much better…. It’s more like Veronica (we actually built it before Veronica thou) and is still a “3 chip” homebrew computer….
With SD: http://www.youtube.com/watch?v=mouST3FGpQY
Testing graphics: http://www.youtube.com/watch?v=XzxHBcHXqUg
ooo I can use an avr as an initial bootloader for the z80 isa motherboard I made…
Excellent job! This reminds me a little of my ZX81 I loved as a kid. I used to interface stuff to it also, and admired it for doing so much with just four chips and a relatively low transistor count.