A fully functional 8-bit computer built from scratch using the R65C02 microprocessor. This project recreates the fundamentals of early personal computers by combining a CPU, RAM, ROM, I/O controller, clock circuitry, and a character LCD entirely on a breadboard.
this project was built to gain a deeper understanding of how computers actually work at the hardware level.
Instead of relying on a microcontroller or FPGA, every major component of the computer is connected individually using discrete wiring on a breadboard. The CPU fetches instructions from an EEPROM, communicates with external RAM, controls peripherals through a VIA, and displays information on a standard 16×2 LCD.
Building the system from the ground up provided hands on experience with buses, memory mapping, digital logic, timing and low-level programming.
- Fully functional 6502-based computer
- 32 KB EEPROM
- 32 KB SRAM
- 6522 VIA for peripheral control
- Character LCD output
- Push button user input
- Hardware reset circuit
- Breadboard construction
- External EEPROM programming
- Expandable architecture
- Written entirely in 6502 ASM
- Clock Module
The adjustable clock module generates the system clock for the entire computer. During debugging the clock can be slowed down, allowing individual instructions to be observed one cycle at a time.
- Programming the EEPROM
Programs are assembled into a binary image and written to the AT28C256 EEPROM using a T48 universal programmer.
- Writing the ROM Image
The assembled ROM image is programmed directly into the EEPROM before installing it into the computer.
- Completed Computer
The finished breadboard computer.
R65C02 -> 8-bit CMOS Microprocessor
AT28C256 EEPROM -> 32KB Read Only Memory containing the monitor/program
AS6C62256 SRAM -> 32KB Static RAM
R65C22 VIA -> Parallel I/O controller for LCD, LEDs and buttons
16×2 LCD -> HD44780-compatible character display
1 MHz Oscillator -> System clock source
Reset Circuit -> Push-button reset with pull-up resistor
User Buttons -> Input through the VIA
Status LED -> Visual debugging output
+----------------+
| 1 MHz Clock | ---------------------+
+-------+--------+ |
| |
v |
+----------------+ |
| R65C02 | |
+--+----+----+---+ |
| | | |
Address Bus ---+ | +------ Control Signals |
| | |
| +--Data Bus |
| | |
+------------+----+-------------------+ |
| | | |
| | |-----------+
+-----------+ +-----------+ +-------------+
| EEPROM | | SRAM | | 6522 VIA |
| AT28C256 | | AS6C62256 | | I/O Control |
+-----------+ +-----------+ +------+------+
|
+----------------------+----------------+
| |
16×2 LCD Push Buttons
.jpg)



.jpg)