My Home Brew 6502 Project – TLC-MBC
This is a project I’ve been wanting to do for a while now. I’ve built lots of controller/black-box type computers but never one that was a computer in the traditional sense of the word. I’ve chosen the 65c02 because the 6502 was the both the first processor I used and it has remained my favorite to use. The 65c02 is the latest version and has been upgraded in terms of extra pins, new instructions and a boost in speed.
I’m gonna call this home brew 6502 system the TLC-MBC as it will not be a Single Board Computer, but a Multi Board Computer. It’s purpose? To give me yet something else to do? Really, I’m still not totally sure yet… I don’t play games, no time, so it will not be a games machine. I have always wanted a dedicated development system, I have Midi instruments and I love programming. So maybe a combination of those things.
The Human Interface: This will start off with a serial interface as that’s the quickest and easiest way to get things going. But I would like it to have it’s own keyboard, or at least be able to plug one in, and have a graphics card probably based on one of the ATMEGA family of chips. But I would really REALLY like to have a hex display and keypad!!… They are the one thing I miss most, I found it fast and efficient to enter code etc.
Like any major project, this one will be constructed in stages.
My goal for the first stage is to make a machine that can be hooked up to a terminal and be able to read, write, move and copy memory as well as run code. As Quinn said “Test what you’ll build, and build what you tested.” So I shall start with a bread board and incrementally add and test as I go: CPU, EEPROM, memory decoding, RAM and lastly the ACIA. Though I really want to add the ACIA as soon as I can to help in debugging, so the exact order is somewhat fluid.
Stage two goal is to get the chips off the bread board and onto a PCB. Once the Hardware has been debugged and works I shall design a PCB for it. I have been using Eagle, but I am currently learning Kicad so that I can design larger boards. I would really like to make my own PCB’s, something I haven’t done in 30 something years. There again I might just send them of to be made double sided to keep size down. Once I have the PCB in my hands I shall be able to print a case for it.
Not so sure… Do I do the graphics card or add a couple of VIA’s? The latter is certainly the easiest and it would enable me to add the hex display and keypad and other I/O. That lot would keep me busy for a while. Or do I do the graphics card?… In the past I have used the 6845/6545 and the TMS9918 and would like to again but I want VGA output and I’ve seen countless blog posts about using the ATMEGA line of chips, but if I’m going to build a graphics card then I want the classic 80×24 display. So… I’m gonna have to think about that one a lot.
Besides the above, I want to add a SD Card for mass storage. I don’t want to be farting about using XModem like others have done, the idea of saving stuff on a PC or Mac just seems a little silly to me. Maybe I could do a ram-cartridge type of thing to start off.
A home brew 6502 system is relatively easy to get going these days. Tools are cheaper and/or more sophisticated, information is easier to find. It’s been a long time since I’ve tackled anything this complex so I am going to need some tools and stuff.
Bread boards: I have some ancient ones that have recently been giving me some grief, so I’ve ordered some new ones, built a power supply and mounted the whole lot on a nice thick piece of black Acrylic, so that I can build or test anywhere, work bench, sofa wherever.
I like the idea of Quinn’s Hexout to help the initial bringing up the system, but it looks too complicated, build-wise, for such a short term use. However, I do have some TIL311 Hex Display’s – add a couple of ‘LS373s and I have a lot less work to put together. I’ve now got a logic probe, from Maplin’s and in a couple of weeks I shall have a USB Oscilloscope for about £45. To program the EEPROM I have already built the Meeprommer, an Arduino based eeprom burner. Works like a beauty and simple to use.
Well… that’s an overview of TLC-MBC, my home brew 6502 project. Nothing is written in stone so things may change, but for now this is at least a start, something to get my teeth into.