Project:65 is a 6502-based 8-bit microcomputer. For phase one of the project, I built the computer on a breadboard and communicated with it over a serial line. Project:65 is able to download and run programs, including the EhBASIC interpreter for the BASIC language.
Phase 1 (2012-2013):
- Project:65 – Introduction and goals for phase 1.
- Running in circles – Doing a “free run” of the 6502 CPU.
- Running a program – Hooking up an EEPROM and running a program.
- Trivial communications – Using the Commodore 64 to prototype some software for the 6522 VIA IO chip.
- RAM and IO, Part 1 – Adding RAM, a 6522, and address decoding.
- RAM and IO, Part 2 – Adding RAM, a 6522, and address decoding.
- Adding a serial port to the Project:65 computer – Using a MAX3100 to convert our output to RS-232-style serial.
- Hello, World! – Using the XMODEM protocol to upload software to the computer
- Fully armed and operational – Adapting the EhBASIC BASIC interpreter for use with Project:65.
SD Card Support – Retrochallenge 2013
For my first-ever entry into the Retrochallenge, I added permanent storage (an SD card hooked up to an ATmega microcontroller) to the computer, and wrote some operating system support for device drivers and a file table.
- Introduction
- 6522 Parallel Communications
- SD Card Hardware
- Reading Directories and Files
- Refactorchallenge
- Success!
Serial Port Redux (2017)
In which we rebuild the MAX3100 serial port driver with interrupts, buffers, and proper flow control.
- Project:65 Serial Port Redux
- A Better Software SPI Routine
- Preparing for Interruptions
- Asynchronous I/O
- Receive Interrupts. Or Not.
- Faster Transmissions
- Hardware Handshaking
Sound and Music (2023-2024)
Setting up cc65 (2024)
I’ve been using the cc65 C compiler for quite a few years, and for most of that time I’ve been meaning to port over a working C library. I think it’s time to actually make that happen.
- Part One: Build Targets and Linker Config
- Part Two: Runtime and crt0.s
- Calling assembly language from C programs with cc65
- Part Three: Opening Files
- Part Four: Reading and Writing
- Part Five: Console IO
- Line Disciplines and Cooked-mode console input (Part One)
- Line Disciplines and Cooked-mode console input (Part Two)
- Clib Error Handling Extravaganza
- Advanced Directories and Debugging
- Filesystem Operations and Command-line Utilities
- Part 11-ish: It’s about time
- Part 12: Time for some gaming
- Demonstration video

Pingback: Half Time Roundup! | Retrochallenge Competition
Pingback: Make your own Apple 1 replica | Dave Cheney