Homebrew 8-bit computer

A while ago I decided that I wanted to understand better how a computer really works. That led me to some adventures with assembly and ultimately to building my own little computer. No, I'm not talking about plugging components like memory, CPU and graphics card into a mother board and building a desktop PC. Rather, I mean “building my own mother board” by getting different components from a computer and wiring it all together.

The idea was not to create a last generation computer, but just to build a computer according to the von Neumann architecture. (i.e., with a CPU, some memory and IO devices)

The picture in this page shows the end result: a small computer built on a breadboard with an 8-bit CPU (6502) running at 1Mhz. It boasts incredible 16Kb or RAM and 32Kb of ROM, where I store the program to be executed. Finally, the output device is just a set of 8 LEDs that can be controlled by the CPU. I haven’t actually plugged any input device to the computer. This computer is based on the schematics from Ben Eater.

My homebrew 6502 computer
6502 computer

An interesting part of this project was the opportunity to program the computer directly using just binary machine code and/or assembly in a bare-metal fashion. Currently, the computer is running a program that continuously counts from 0 to 255 in binary using the leds.