compy6502 is an early-stage 6502 homebrew computer project. The long-term
goal is to build enough hardware and firmware to run Tetris on the machine.
The design follows the spirit of Ben Eater-style breadboard/modular 6502
systems for simplicity and debuggability, but uses a different memory map based
on the MMU/address-decoder architecture in docs/mmu.png.
The repo currently includes KiCad hardware designs, early ROM bring-up
firmware, build/write scripts, emulator test scaffolding, and architecture
reference images in docs/.
The intended memory map is:
$0000-$BFFF RAM
$C000-$C0FF I/O page
$C100-$FFFF ROM
The I/O page is split into four 64-byte device slots:
$C000-$C03F IO0B
$C040-$C07F IO1B
$C080-$C0BF IO2B
$C0C0-$C0FF IO3B
The linker script currently uses $8000-$FFFF as the 32 KB EEPROM image range
so CPU addresses map directly to the correct physical offsets on the chip.
The intended ROM organization is:
$C100-$C1FF public jump table
$C200-$DFFF kernel routines and drivers
$E000-$EFFF enhanced monitor
$F500-$FFF9 Wozmon fallback monitor
$FFFA-$FFFF CPU vectors
docs/mmu.png: Mike McLaren, K8LH.docs/Beater 02b.png: Mike McLaren, K8LH.