/BE6502-Build-a-65c02-computer

A PCB being made while watching Ben Eaters "Build a 6502 computer" video series. Includes the computer itself, a standalone slow clock and an Arduino Mega shield for the bus monitor sketch..

Primary LanguageC++OtherNOASSERTION

BE6502 - Build a 6502 computer

Ben Eater has been a huge inspiration for many getting into building computers using basic electronic building blocks, his videos are truly excellent and it is no wonder he's often referred to as the Bob Ross of Breadboards! His latest project is building a 6502 computer on a breadboard, a video series that at this moment in time still has not concluded so this may not match whatever he does after part 7!

SBC and clock module

Personally, I am somewhat awful at getting things to work on breadboards - even when buying the good stuff from reputable electronics shops, so I usually just go directly to PCB instead. I've designed a few other amateur projects using the trusty old 6502-processor before, but this'll be the first one to be tackled with the more modern Western Designs CPU (W65C02) instead. His video series depends this specific brand of CPU, this is due to the way it is run using a slow and sometimes completely halted clock that wouldn't work the same on other brands. The older 6502 variants will more than likely loose their context, with the end result being a CPU doing unexpected things instead of running as the machine code would normally dictate.

LCD mounted Computer with backplane

The BE6502 computer has a 39-pin backplane connector, like most of my other projects and these can be used to connect to an Arduino Mega as in the videos, a logic probe or even a separate larger backplane if you intend to build any more additional expansions for use with the computer. The picture above shows the SBC along with clock and Arduino Mega Shield. See System modules below for a listing of available modules, which are required at the various steps in the video series and any optional extras I felt like listing that would be compatible with the supplied boards.

Over time I may even add some short videos to show off the computer in action, but given that I have a voice suited for silent movies they'll probably just be videos of the computer blinking away by itself. As they become available, you'll find those on this Youtube-playlist.

Project status

The BE6502 computer is still in the prototyping stage and though I have studied the videos up to this point, at the time of writing that'd be everything up to and including part 7. See TODO for an overview of things I've yet to implement or want to change in the future!

Some of these details are likely to change as his original design by itself does not seem to reset reliably when using the 1 Mhz clock. At the moment I've got it fixed by using one of my own RC6502-modules in one of the backplane slots, details for this module can be found at https://github.com/tebl/RC6502-Apple-1-Replica/tree/master/RC6502%20Reset%20Circuit. If you'd like to build it up on a breadboard you can easily do that, I've installed pin headers as the front slot of my backplane to make it easier to do things like that. Alternatively you could program the Arduino Mega to do it for you!

Errata

  • BE6502 SBC revision A boards are missing a pull-up on the BE-pin - refer to this picture for a convenient spot to add one. This is resistor R18 in the current version of the schematic.
  • BE6502 Clock module revision B had C8 shorted, refer to this picture for how it should have looked (tracks have not been moved). In order to fix an existing PCB, cut off C8 and cut the trace directly below it. Installing new C8 (100nF) can be done on the back of the board, either across the short side of SW1 or between U2 pins 1 and 2.

System modules

The following listed modules are available for use with the computer, where available I've also added an order URL to a shared project on PCBway for ease of ordering - click the module name to get more information as well as a complete list of components needed to build it (usually referred to as a BOM). Some modules have been marked with other computer names, these are other modules that I've found works directly and can be of interest when playing around with the BE6502-computer.

Name Video series, parts 1-7 Future expansions Order
Computer (SBC) required PCBway
Adjustable and manual clock required PCBway
Arduino Mega Shield and Backplane required PCBway
RC6502 Backplane optional PCBWay
RC6502 Prototyping module optional PCBWay

If you would like to have a copy of one or more modules (usually 5$ per module), consider using the order links in order to support the development of these boards while doing so. You can alternatively zip up the contents of the export directory for each module and give that to your favourite PCB fabrication plant instead if you want to, but note that the files online here may be newer and have changes made to them that may not have been tested yet (the order link above will point to my last tested version).