A drop-in replacement for a classic TMS9918A VDP powered by the Raspberry Pi Pico RP2040 microcontroller.
The TMS9918A emulation is handled by my vrEmuTms9918 library which is included as a submodule here
Branch | Firmware | Configurator |
---|---|---|
main | ||
dev |
This is a list of devices the PICO9918 has been tested and confirmed to work on.
- ColecoVision
- Memotech MTX500
- MSX
- NABU Personal Computer
- Powertran Cortex
- Sega SG-1000 / SC-3000
- Sega SG-1000 II
- Sord M5
- Texas Instruments TI-99
- Tomy Pyūta / Tomy Tutor
- Tomy Pyūta Jr
- VTech CreatiVision / Dick Smith Wizzard
Homebrews:
If you have tested the PICO9918 on any other device, please let me know and I'll happily update this list. :)
So far, there aren't any.
The PICO9918 also includes F18A compatibility in firmware v1.0.0+. The video below was captured directly from the PICO9918 VGA output running various F18A demos on a TI-99/4A.
Pre-release firmware for F18A compatibility mode is available in Releases.
Fully assembled and tested PICO9918 v1.2s are available on my Tindie store:
Also (more convenient for North America)
There are two main variants of the hardware.
PICO9918 v1.2 is the single board version which doesn't require a piggy-backed Pi Pico. This is the version you can currently buy pre-assembled from Tindie and ArcadeShopper.
v0.3 is relatively cheap and easy to build, schematic and gerbers are available. This version makes use of an external Pi Pico module piggy-backed onto the PICO9918 PCB.
I also have the v0.3 board as a PCBWay Project you can order there.
Schematics and Gerbers are available in /pcb
If you're not interested in building the firmware yourself, you'll find the latest firmware in the Releases.
To install, just hold the 'BOOTSEL' (or 'BOOT') button while plugging the Pico into a PC, then drag the pico9918.uf2 file on to the new USB drive which should have the volume label RPI-RP2. The Pico will restart (and disconnect) automatically.
Build both firmware and configurator ROMs with the unified CMake system:
mkdir build && cd build
cmake ..
cmake --build .
Output in build/dist/
: firmware .uf2
file and configurator ROMs for all retro platforms.
📖 Complete Build Instructions - includes development environment setup, configuration options, platform-specific builds, and troubleshooting.
Special thanks to JasonACT (AtariAge) for hand-crafting the F18A mode's on-board TMS9900 "GPU" in ARM assembly and providing other valuable input to the project.
For all the latest news and discussion on the PICO9918, you can follow this AtariAge thread
Initial "raw" videos recorded in the moments following the first boot on my TI-99/4A.
These videos are showing the v0.2 hardware with an external Pi Pico providing the required GROMCLK signal to the TI-99. This signal has been added to v0.3. I'm still waiting on v0.3 boards to arrive.
And now v0.4 - the single board version:
The hardware design files in this repository are licensed under the CERN-OHL-S. See LICENSE_HARDWARE.md for details.
The firmware code in this repository is licensed under the MIT License. See LICENSE_FIRMWARE.md for details.