Tachibana

Tachibana project · 65C02 platform

Neo6502

W65C02S + RP2040 — Olimex

A real 65C02 at 6.25 MHz, an RP2040 as chipset, HDMI out, a USB keyboard — for 30 euros. We make it a test bench and a target for our 6502 ports.

Phosphoneo (cycle-stepped reference model), keyboard driver, BBC Micro compatibility layer, firmware fork (video modes, multi-boot), AsteroNeo (Astéroric ported), Neo6502Prophet (program repository, live), virtual disk, Oric 2 Neo, Civilization and Maniac Mansion. Everything is checked on emulators: no board has been plugged in yet.

W65C02S RP2040

Neo6502

The Neo6502 at a glance

ProcessorW65C02S
MicrocontrollerRP2040, 2 MB flash
VideoDVI/HDMI — 320×240, 256
KeyboardUSB-A host
ExpansionUEXT, 6502 bus
Audio3.5 mm, speaker
Form factor, licence80 × 55 mm, OSHW
Price30 €

320×240 video in 256 colours, 6.25 MHz and ≈ 61K of usable RAM: figures from our repositories' documents; the rest comes from the Olimex product sheet.

Projects

What we are working on

Phosphoneo

Golden-model emulator of the Neo6502: cycle-stepped, 65C02 core 100% on the SingleStepTests oracle (2.54 M cases), firmware API linked from the official code, headless, captures, savestates. v0.2.0.

Sprint 1 delivered

Neo6502kbd

Keyboard driver in 65C02 assembly (ca65): events (scancode, modifiers), base / Shift / AltGr / Ctrl mapping compiled from a .kmap (us, fr) by neokbd, a Go tool with a simulator.

Active

Neo6502bbc

BBC Micro MOS layer → Neo6502 API (OSWRCH, OSBYTE, OSWORD, OSCLI…). Epic 3: the reload BBC emulator boots MOS 1.20, BASIC 2, DFS, and starts Spellbinder.

In progress

Firmware (fork)

Three sprints: PC emulator and reference captures; video modes (Hercules 720×350, 320×256×16, pages, XOR sprites); tick IRQ, pre-emptive scheduler, RP2040 multi-boot (4 slots, reload images).

In progress

AsteroNeo

Astéroric ported to the Neo6502 (cc65): arcade logic kept as is, API XOR lines, smoothed polygonal asteroids drawn by the RP2040, remappable HID keyboard, 4-channel sound, 30 Hz. .neo binary published. v0.2.0.

Sprint 1 delivered

Neo6502Prophet

Program repository server compatible with prophet.neo, rewritten in Go security first: HTTP + HTTPS, .neo verification, audit of 56 programs in Phosphoneo, web interface. Live at prophet.3617.fr (AsteroNeo published).

Live

Neo6502drive

Virtual hard disk and floppies on a Feather RP2040 USB Host: FAT32 USB stick (MSC, no driver) or UEXT block device.

Framing

Oric 2 Neo

A next-generation Oric on the Neo6502: Oric-1/Atmos compatible (ULA, VIA, AY emulated), extended by ROM and firmware.

Framing

Neo6502civ

Civilization 1 in 6502 assembly (bit-exact on Oric) ported to the Neo6502: blitted mono framebuffer, file-based overlays, AI ~6× faster.

Framing

Neo6502scumm

Maniac Mansion through the SCUMM v0 interpreter (llvm-mos): Neo6502 platform layer, engine shared with the Oric version.

Framing

Transparency

What we do not claim

None of these bricks has run on a board yet: everything is checked in the official emulator, in Phosphoneo and in co-simulation (libemul). The validation protocols are written; they will be run as soon as the Neo6502 is on the desk.

Articles

Going further

Building a Prophet server for the Neo6502

Prophet is the Neo6502 community's program repository: a client on the board, a server somewhere. We rewrote the server in Go, security first, and put prophet.3617.fr online — with our own programs in it. Read the article →

By bmarty · Tachibana · 16 September 2026