6502: A Journey Down Memory Lane

For the last six months or so of Covid lockdown I’ve been having fun following along with and expanding on Ben Eater’s breadboard computer projects. They are great educational projects and I’ve learned a lot of computer fundamentals along the way. There is also a subreddit with lots of helpful people and advice on building Ben’s projects.

I first built Ben’s 8-bit “Simple As Possible” computer, following along with dozens of videos as Ben explained how various computer components work. Ben is a great instructor and I highly recommend all of his video series.

As I worked through the 8-bit computer videos, I had ideas for expanding it, more memory, better input/output capabilities, added storage options and more. After finishing the project, I decided to take a break and build the smaller, seemingly less involved 6502 project as a diversion before heading back to an 8-bit computer expansion. At only a dozen videos I figured I’d complete the 6502 project and be back expanding the 8-bit computer in no time.

Well, that didn’t happen. The 6502 project also offers numerous learning and expansion opportunities and building it brought back memories of my first computer, the Apple IIe which used an earlier version of the processor Ben uses in his kit. Along the way I found that the 6502 processor enjoys a large following of hobbyists and a wealth of resources online that make harkening back to the early days of the personal computer quite enjoyable.

I’m on my third build of a 6502 project now. My first build sits waiting for Ben as he expands the project further, first with a VGA video card and later a PS/2 keyboard. Both of those expansions have been fascinating. I’m wondering where he’ll take it next.

In my second build, I experimented with my own expansions: a new memory map, a faster clock and memory, a reset circuit, a serial terminal interface, several larger, more functional LCD displays, a 16-button hexadecimal keypad, and a PS/2 keyboard controller of my own. I’ve created my own programs to utilize these peripherals and to test my build. Throughout the build I’ve learned and used many tools: an oscilloscope, a logic analyzer, a schematic/PCB design tool, and several different compilers, assemblers and linkers. I even modified an existing assembler when I couldn’t find one that worked the way I wanted.

So, what’s left for a third build? Well ever since seeing the handheld unit in the MOnSter 6502 project I’ve envisioned a final point for my 6502 work as a handheld, portable, battery powered 6502 device. Why, you might ask. There are off the shelf alternatives that are magnitudes more powerful and functional. The answer is simply just for the fun of it.

Over the coming weeks and months, I plan to post on my progress with this third build. There are plenty of blogs on 6502 builds. I’m not going to replicate one of those. My posts will deal more with things I’ve found of interest, roadblocks I’ve encountered and highlights of methods and tools that worked for me. Hopefully these will help and inspire others in their own pursuits.

Feel free to leave a comment or ask a question as I proceed. I’m not an expert by any measure, but I can relate what I’ve encountered in my work and perhaps point you to information that I’ve uncovered to help you along.

My next post in this series will take a closer look at the crystal oscillator used in the 6502 project. Ben does a good job of covering this in his video, but when I got my own oscilloscope I had trouble duplicating his findings as evidenced by my reddit post questioning my crystal oscillator’s slow rise time. It was just user error on my part, but I never got a definitive answer to my question on reddit. Perhaps my post here will shed some light on the issue for someone in the future.

After that I’ll discuss Maxim’s DS1813 reset device. My second build trialed a LM555 as a reset device and it worked somewhat ok on a power up, but it didn’t work as intended for momentary power glitches, common in breadboard projects when you bump your power jumpers. The DS1813 solves that issue and with fewer parts, something critical for my handholdable goal.

Until next time, leave a question or comment if you’d like.