Close

DEV-board feature parity with Emu-lator

A project log for X65 Microcomputer

X65 - modern 8-bit computer for the modern era :: 65C816, 16MB RAM, 256 colors 384×240px, FM-synth, USB…

tomasz-sternaTomasz Sterna 09/06/2025 at 12:310 Comments

After the DEV-boards produced by PCB Way arrived, I needed to update and fix the RP2350 firmware to work both with I/O and display together. On prototyping stage I used Pico 2 devboards with RP2350A chips, that do not have enough GPIO pins to drive both WDC 65C816 CPU interface and the RP816 hardware bridge interface + CGIA VPU (video processing unit) implementation driving DVI-D output. I worked with two prototype boards - one implementing CPU interface and second implementing hardware+display interface.

When waiting for RP2350B chips availability and DEV-boards production run, I've decided to implement X65 software emulator, which aids development of the software for 65816 CPU. It is implemented in a way, that the internals of the emulator wrap parts of the Pico2 firmware as internal implementation. This allowed me to use Emu (the X65 emulator) not only as a 65816 software development tool, but also to work on extending microcontroler firmware features.

With the DEV-boards ready, integrating all components on one board, I had a slew of demo programs developed on the emulator, waiting to be run on real CPU. It turned out that to be a lot of work, as like every single ROM needed an update in the firmware, updating memory-mapped device addresses that I changed, or implementing missing features available in the Emu-lator only.

It's done now. Every single demo ROM available on https://x65.zone/emu/ page is now running on real hardware. 🎉

Discussions