Repository navigation
Getting Started
This page is the order to do things in. Every step below is documented in full elsewhere in this wiki: what is easy to get wrong is the sequence, because one step can only be done over USB and stops being available the moment the board is sitting in a machine that will not boot.
If you already know your board is set up for your machine, skip straight to its page in Supported Devices and follow the installation steps there.
- A PICO9918 or PICO9918 PRO board. See Hardware for the differences between revisions.
- A USB-C cable and a PC. Every board from v0.4 onward carries a USB-C socket, and v0.3 uses a USB-C RP2040 module. This is needed for step 2 and for firmware updates, not for normal use.
- A video output: the VGA Dongle, the Digital AV Dongle or the SCART AV Dongle. On v1.2 and later boards all three attach through the FFC connector, so you also need a 12-pin 0.5 mm pitch FFC cable. FFC cables are a purchase option rather than something always in the box.
- The display cable for whichever output you chose. The SCART dongle takes an off-the-shelf Sega Saturn SCART cable, which is not supplied.
- Whatever opens your machine, plus something thin and flat to lift a 40-pin DIP out of its socket without bending the legs.
- If your machine's VDP is soldered down (step 3): a 40-pin DIP socket and the means to desolder forty pins.
- Optional: a soldering iron, if you want audio through the HDMI or SCART dongle. Both take a 2-pin lead soldered to a tap point on the host board.
Find your machine in Supported Devices: the tables there list the VDP part each system shipped with. If it is not listed, read the part number off the 40-pin chip itself.
Every part in the family shares one pinout and one register set. The only thing that differs is which of pins 37 and 38 carried a clock output, and that is exactly what step 2 selects. See Chip Variants for the full comparison.
The PICO9918's device mode decides which clocks it drives on pins 37 and 38. The default reproduces a TMS9918A: GROMCLK on pin 37, CPUCLK on pin 38. If your machine had a TMS9928A or TMS9929A, a TMS9118, or a TMS9128 or TMS9129, the default is wrong for it, and on a TMS912x machine it puts a clock on the wrong pin entirely, so the host will not start.
Important
Device mode exists only in the web configurator. It is deliberately absent from the ROM configurators so it cannot be changed by accident from inside a working system, which also means it cannot be set from a system that will not boot. Set it over USB before the board goes anywhere near the socket.
Pick the mode from the table in Device Mode Configuration, then generate and apply the file: How to Use has the click-by-click steps, and Installing Firmware covers the BOOTSEL procedure that applies it.
Note
Firmware first, configuration second. The web configurator generates its settings for the current firmware release; applied over older firmware they may be ignored or reset to defaults. Take the latest release from Downloading Firmware before generating the config file.
If your machine shipped a plain TMS9918 or TMS9918A (a TI-99, most MSX machines, the SG-1000, the Sord M5, the NABU), the default is already correct and there is nothing to change. It still costs nothing to confirm it now, while the board is on the bench.
Most machines hold the VDP in a 40-pin DIP socket, and the swap needs no tools beyond something to lift the old chip out. Some do not:
- ColecoVision: the TMS9928A is soldered to the motherboard. See ColecoVision.
- Casio MX-10, and some other MSX machines: soldered TMS9118. See Casio MX-10 and MSX.
- Spectravideo SVI-728: may be either; check before you start. See Spectravideo SVI-728.
On those the original has to be desoldered and a 40-pin DIP socket fitted in its place before a PICO9918 can go in. That is a different job with different tools, so find out which case you are in before you open anything. Your device page in Supported Devices says which.
Power the machine off and unplug it, open the case, and find the VDP. Lift the original chip out squarely: DIP legs bend easily, and you may want that chip again.
Insert the PICO9918 in the same orientation the original chip was in, pin 1 at the same end. The board fills only 24 of the 40 positions (the remaining 16 are deliberately left open) so it does not look like the chip it replaces. Use the socket's own pin-1 marking, or note which way the original chip's notch pointed before you remove it.
Your device page has photographs and any machine-specific notes: clearance, cable routing, and whether the CPU and GRM jumpers need attention. See Supported Devices.
Warning
Once the PICO9918 is fitted, your machine's own video output stops working. The PICO9918 drives neither composite nor Y/R-Y/B-Y on the socket, so the RF modulator, composite jack or SCART socket on the back of the case goes dead. See Video Output. Video comes out of the PICO9918 instead, and that cable has to get out of the case somehow. Decide how before you close it; several machines have a no-cut kit for exactly this.
One firmware image covers all three outputs: the dongle is detected at boot.
| Output | Dongle | Notes |
|---|---|---|
| VGA 640x480 @ 60 Hz | VGA Dongle | The default output |
| Digital A/V (HDMI) | Digital AV Dongle | Video and audio; audio needs the 2-pin lead |
| SCART RGBs | SCART AV Dongle | PAL 576i or NTSC 480i, from a saved setting |
Fit the dongle and its FFC cable before powering on: the SCART dongle is only detected at first power-up, so swapping a dongle on a live board changes nothing. The cable goes in contacts facing down; FFC Connector has the full procedure and the reasons not to get it wrong.
For resolutions, field rates and the display driver setting, see Video Output Modes.
Power on with the display already connected and switched to the right input. What you should see:
- Your machine's own startup screen, on the new output.
- The PICO9918 logo sliding up into the bottom border for a few seconds, then sliding away again. It leaves when the host enables the display, so watching it go is confirmation the host is talking to the VDP.
And what it means if you do not:
- No picture at all: work outwards: the display and its input, the display cable, then the FFC cable (contacts down, latch fully closed), then how the board is seated.
- A picture, with a logo that never leaves, and diagnostic overlays that switch themselves on after about 15 seconds: the PICO9918 is powered and rendering, but the host has never enabled the display. That is a bus, clock or orientation fault, and the wrong device mode from step 2 is the usual cause.
-
A banner across the top reading
POWER CYCLE TO TEST NEW CONFIGURATIONorOPEN CONFIGURATOR TO CONFIRM NEW SETTINGS: not a fault. A saved clock, display driver or SCART mode change needs a power cycle to take effect and reverts by itself on the next one unless you confirm it, so a setting that leaves you with no picture is undone by power-cycling twice.
For anything else, see Troubleshooting.
Day-to-day settings (clock rate, CRT scanlines, sprite limit, palette, Diagnostic Overlays) are set from the machine itself wherever a native configurator ROM exists: TI-99/4A, ColecoVision, MSX, SG-1000/SC-3000 and NABU. See Supported Platforms for the tiers. (A CreatiVision ROM is planned for firmware v1.2.1 and does not ship yet.) The full-tier ROMs can also update the firmware from the retro machine, so once you have one there is no further need for USB.
Every other machine uses the web configurator over USB: the same route as step 2. See Configurator.
Device mode remains the one setting no ROM configurator offers. Changing it later means taking the board out and putting it back on USB, which is why step 2 comes where it does.
- Supported Devices: every tested machine, its VDP and its configurator tier
- Device Mode Configuration: which mode to pick, and why it is USB-only
- Hardware Setup: FFC cable procedure, and the CPU and GRM jumpers
- Firmware: downloading, the BOOTSEL install procedure, and output modes
- Configurator: the native ROMs and the web configurator
- Troubleshooting: when first boot does not go as described above
- Hardware: board revisions, block diagrams and what changed between them
Hardware
Supported Devices
Firmware
- Firmware
- Firmware Version History
- Display Output
- Building from Source
- Firmware Architecture
- Firmware Testing
Configurator
Programming
Reference