A Raspberry Pi-powered cartridge/expansion for C64 and C128 that primarily emulates an REU (up to 16MB) and GeoRAM/NeoRAM (up to 4MB), with a built-in menu to browse and launch images and programs.
Download the latest release and copy the release files onto a FAT32 microSD card. Keep your RAD content organized in the subfolders used by the menu.
SD:RAD/rad.cfg. You can set the preferred startup mode
(menu, REU, or GeoRAM) and tweak timings if you see glitches.
.PRG files where you want them for browsing..VSF) can be launched/restored (see limitations below).Navigate with the keyboard in the menu. Press H for help on-device.
Replace SD:RAD/music.wav with your own WAV. Upstream recommends
mono, 15.6kHz, 8-bit PCM, up to 8MB.
The upstream project provides a BOM + interactive BOM for RAD v0.1: RAD v0.1 BOM / iBOM
Upstream references a community case design that fits both the big (3A+/3B+) and small (Zero 2) PCB: Thingiverse • Printables
The upstream docs recommend using a good external power supply for the Raspberry Pi, and (for maximum safety) powering the RAD first, then turning on the C64/C128.
The RAD PCB can be configured to draw power from the C64/C128 expansion port via the “close to power…” jumper. Officially, this can be sensitive to the quality/strength/stability of the computer’s PSU. In practice, with a Pi Zero 2 many builds are generally fine and stay within reasonable draw — but if you see weird instability (NUVIE playback glitches, random crashes), switch back to a known-good external PSU first.
Upstream releases include Raspberry Pi settings that overclock the Pi (moderate on 3A+/3B+, more aggressive on Zero 2).
If you run into instability, try easing those values in SD:config.txt.
Bus timings and cache parameters are stored in SD:RAD/rad.cfg. Most users don’t need to touch them, but cartridge port expanders
(and some machines) can need alternate timing presets.
WAIT_ENABLE_RW_ADDRLATCH and WAIT_ENABLE_DATA_WRITING in small steps (±10).
VSF snapshots can restore memory + VIC/SID/CIA/CPU state, but not everything is cycle-perfect (timers and CPU/VIC sync aren’t restored with absolute accuracy).
RAD is built on the Circle environment (upstream references Circle 44.3 and a gcc-arm setup). The C64/C128 side uses 64tass. If you’re doing this, stick closely to the build settings included in the repo.