Edu65xx is a practical, open course for learning how a real computer works by building and programming a 65xx system from the ground up.
The main hardware target is the W65C02S, with assembly first and C introduced later so students can directly connect high-level code to the machine instructions, registers, stack, memory and bus activity underneath.
M0 establishes the project structure and learning model:
- W65C02S as the primary CPU target
- assembly first, then C
- explicit ASM ↔ C comparisons throughout the course
- a readable C-based simulator for teaching internals
- a readable C-based emulator for running complete Edu65xx systems
- physical breadboard hardware as a first-class target
- future Edu65xx Trainer/Computer PCB
- free/open tooling where practical
- course material that does not require prior EduCPU or EduAVR knowledge
The same concepts are revisited at multiple abstraction levels:
C source
↓
compiler
↓
65C02 assembly
↓
machine code
↓
CPU state changes
↓
bus cycles
↓
RAM / ROM / I/O
Students should be able to answer not only what a program does, but also how the CPU executes it.
course/— lessons and exercisesexamples/asm/— assembly examplesexamples/c/— C examples matching the assembly materialsimulator/— pedagogical W65C02 simulator in readable Cemulator/— complete Edu65xx system emulator in readable Chardware/— breadboard, schematics and future PCB materialdocs/— architecture, conventions and project documentation
The first physical platform should remain intentionally transparent:
W65C02S
├── address bus
├── data bus
├── R/W
├── clock/reset
├── ROM
├── RAM
└── memory-mapped I/O
No hidden microcontroller should replace the architectural concepts the student is supposed to learn.
- CPU registers and execution model
- first assembly program
- machine code and opcodes
- clock and reset
- address and data bus
- ROM and reset vectors
- RAM, zero page and stack
- address decoding
- memory-mapped I/O
- interrupts and timers
- serial/terminal I/O
- structured assembly
- C on 65C02
- compare compiler output with handwritten assembly
- simulator internals
- emulator internals
- complete Edu65xx computer
- optional W65C816 continuation
M0 — project bootstrap
See ROADMAP.md.
Software source is intended to use the MIT License. Hardware design files are intended to use CERN-OHL-P-2.0. Course/documentation licensing will be documented separately.