Hello everyone,
I’d like to share 3ric, a from-scratch Apple-II-class 65C02 computer that I’ve been building as a learn-by-designing project.
The project includes real schematics, programmable address decoding, a custom PCB, VGA video circuitry, its own 512 KB ROM, and a cycle-honest C++ emulator. That same emulator now compiles to WebAssembly, so the complete machine runs directly in a browser:
https://ebadger.github.io/3ric/
The browser emulator supports text, lo-res and hi-res graphics, keyboard and gamepad input, Disk II, a FAT32 micro-SD card, Mockingboard-compatible audio, and adjustable CPU speed.
It also includes a client-side two-pass 65C02 assembler. You can select an example, edit its source, assemble it, and run it immediately. Programs can then be:
- Downloaded as raw PRG files
- Exported as bootable WOZ2 disks
- Shared as links containing the source
- Opened and remixed by another user
One of my favorite demonstrations is exporting a program as a bootable WOZ disk, loading it into Chris Torrence’s Apple2TS emulator, and seeing the same machine code run there without recompilation.
I’ve also been exploring AI-assisted 65C02 development. The project provides machine-readable documentation for the assembler, memory map, soft switches, and ROM routines, followed by headless tests of the generated software.
The current examples include three original games:
- Star Swarm — a mixed-hi-res fixed shooter
- Block Drop — a text-mode falling-block game
- Rock Storm — a page-flipped vector space game
3ric is an original computer rather than an exact Apple II clone. It has its own ROM and Microsoft BASIC, so Applesoft-dependent software is not expected to work. Self-contained machine-code programs using the compatible memory map, graphics, keyboard, and Disk II interfaces work well.
Video overview: https://youtu.be/iZUPDuzzhPgLive system: https://ebadger.github.io/3ric/Source: https://github.com/ebadger/3ricKansasFest demo: https://ebadger.github.io/3ric/?src=programs/kfest.s
I’d be very interested in feedback from the Applefritter community, particularly on the hardware design, Apple II compatibility, emulator, and browser-to-WOZ development workflow.