CHANGELOG
v0.56 adds support for the Pico Computer 3.
General Info
Binaries for each configuration and PCB design are at the end of this page.
Click here for tested configurations.
See setup section in readme how to install and wire up
PSRAM with a non-Winbond flash chip
Applies to any release. Some RP2350 boards, notably the Waveshare RP2350-PiZero, ship with a flash chip from a manufacturer other than Winbond, such as Puya. These chips leave the Quad Enable (QE) bit in Status Register 2 unset from the factory, which makes the board lock up once the RP2350 is overclocked (#191). Boards without PSRAM are not affected.
This can be fixed permanently with the flash_config tool: flash FLASH_QE_SET_1.uf2 once via BOOTSEL, then flash the emulator as usual.
Keep in mind that FLASH_QE_SET_1.uf2 must not be applied twice (recovery then requires erasing the flash with universal_flash_nuke.uf2 first).
See also PSRAM with a non-Winbond flash chip in the readme.
v0.56
New
- Support for the Pico Computer 3: HDMI, sound through the audio jack, USB controllers, PSRAM, and NES or SNES controllers, a NES Zapper and a Wii Classic controller on the I/O header. The pin assignment may still change. See Pico Computer 3. Thanks to @javavi.
Changes
- NES and SNES controllers on the controller ports are now read with the same timing as a real console, on all boards. Thanks to @javavi.
- Under pico-bootLoader, the settings menu entry that goes back to the bootloader is now called Return to boot loader.
Fixes
- Boards with HSTX video: with Display Mode set to DVI, the picture could randomly drop out.
previous changes
See HISTORY.md
Downloads by configuration
Binaries for each configuration are listed below. Binaries for Pico(2) also work for Pico(2)-w. No blinking led however on the -w boards.
For some configurations risc-v binaries are available. It is recommended however to use the arm binaries.
Note
Apart from the breadboard and PCB builds, no dedicated binaries are provided for the Pico w or Pico 2w. Instead, use the Pico or Pico 2 binaries. Enabling the LED on these boards causes too many issues. #136
Standalone boards
| Board | Binary | Readme | |
|---|---|---|---|
| Adafruit Metro RP2350 | piconesPlus_AdafruitMetroRP2350_arm.uf2 | Readme | |
| Adafruit Fruit Jam | piconesPlus_AdafruitFruitJam_arm_piousb.uf2 | Readme | |
| Waveshare RP2040-PiZero | piconesPlus_WaveShareRP2040PiZero_arm.uf2 | Readme | 3-D Printed case |
| Waveshare RP2350-PiZero (*) | piconesPlus_WaveShareRP2350PiZero_arm_piousb.uf2 | Readme | 3-D Printed case |
(*) If you fitted this board with PSRAM and it has a non-Winbond flash chip, apply the flash_config fix before flashing the emulator.
Breadboard
| Board | Binary | Readme |
|---|---|---|
| Pico | piconesPlus_AdafruitDVISD_pico_arm.uf2 | Readme |
| Pico W | piconesPlus_AdafruitDVISD_pico_w_arm.uf2 | Readme |
| Pico 2 | piconesPlus_AdafruitDVISD_pico2_arm.uf2 | Readme |
| Pico 2 W | piconesPlus_AdafruitDVISD_pico2_w_arm.uf2 | Readme |
| Adafruit feather rp2040 DVI | piconesPlus_AdafruitFeatherDVI_arm.uf2 | Readme |
| Pimoroni Pico Plus 2 | piconesPlus_AdafruitDVISD_pico2_arm.uf2 | Readme |
PCB Pico/Pico2 and Pimoroni Pico Plus 2
| Board | Binary | Readme |
|---|---|---|
| Pico | piconesPlus_AdafruitDVISD_pico_arm.uf2 | Readme |
| Pico W | piconesPlus_AdafruitDVISD_pico_w_arm.uf2 | Readme |
| Pico 2 | piconesPlus_AdafruitDVISD_pico2_arm.uf2 | Readme |
| Pico 2 W | piconesPlus_AdafruitDVISD_pico2_w_arm.uf2 | Readme |
| Pimoroni Pico Plus 2 (PCB v2.6 and up, headers required) | piconesPlus_AdafruitDVISD_pico2_arm.uf2 | Readme |
PCB with NES controller ports: pico_nesPCB_v2.6.zip
PCB with SNES controller ports: pico_nesPCB_v2.8_SNES_PORTS.zip
3D-printed case designs for PCB:
https://www.thingiverse.com/thing:6689537.
For the latest two player PCB 2.0, you need:
- Top_v2.0_with_Bootsel_Button.stl. This allows for software upgrades without removing the cover. (*)
- Base_v2.0.stl
- Power_Switch.stl.
(*) in case you don't want to access the bootsel button on the Pico, you can choose Top_v2.0.stl
PCB WS2XX0-Zero (PCB required)
| Board | Binary | Readme |
|---|---|---|
| Waveshare RP2040-Zero | piconesPlus_WaveShareRP2040ZeroWithPCB_arm.uf2 | Readme |
| Waveshare RP2350-Zero (*) | piconesPlus_WaveShareRP2350ZeroWithPCB_arm.uf2 | Readme |
(*) If you fitted this board with PSRAM and it has a non-Winbond flash chip, apply the flash_config fix before flashing the emulator.
PCB: Gerber_PicoNES_Mini_PCB_v2.0.zip
3D-printed case designs for PCB WS2XX0-Zero:
https://www.thingiverse.com/thing:7041536
PCB Waveshare RP2350-USBA with PCB
If you fitted this board with PSRAM and it has a non-Winbond flash chip, apply the flash_config fix before flashing the emulator.
PCB: Gerber_PicoNES_Micro_v1.2.zip
Readme
Pimoroni Pico DV
| Board | Binary | Readme |
|---|---|---|
| Pico/Pico w | piconesPlus_PimoroniDVI_pico_arm.uf2 | Readme |
| Pico 2/Pico 2 w | piconesPlus_PimoroniDVI_pico2_arm.uf2 | Readme |
| Pimoroni Pico Plus 2 | piconesPlus_PimoroniDVI_pico2_arm.uf2 | Readme |
Note
On Pico W and Pico2 W, the CYW43 driver (used only for blinking the onboard LED) causes a DMA conflict with I2S audio on the Pimoroni Pico DV Demo Base, leading to emulator lock-ups. For now, no Pico W or Pico2 W binaries are provided; please use the Pico or Pico2 binaries instead. (#132)
SpotPear HDMI
For more info about the SpotPear HDMI see this page : https://spotpear.com/index/product/detail/id/1207.html and https://spotpear.com/index/study/detail/id/971.html
The easiest way to set this up is using an expander board like this: https://shop.pimoroni.com/products/pico-omnibus?variant=32369533321299
See also #127
| Board | Binary |
|---|---|
| Pico/Pico w | piconesPlus_SpotpearHDMI_pico_arm.uf2 |
| Pico 2/Pico 2 w | piconesPlus_SpotpearHDMI_pico2_arm.uf2 |
Murmulator M1
For more info about the Murmulator see this website: https://murmulator.ru/ and #150
| Board | Binary |
|---|---|
| Pico/Pico w | piconesPlus_MurmulatorM1_pico_arm.uf2 |
| Pico 2/Pico 2 w | piconesPlus_MurmulatorM1_pico2_arm.uf2 |
Murmulator M2
For more info about the Murmulator see this website: https://murmulator.ru/ and #150
| Board | Binary |
|---|---|
| Pico 2/Pico 2 w | piconesPlus_MurmulatorM2_arm.uf2 |
Olimex RP2040-PICO-PC
| Board | Binary | Readme |
|---|---|---|
| Olimex RP2040-PICO-PC with a Pico 2 | piconesPlus_OlimexPicoPC_arm.uf2 | Readme |
There is no Pico 2 W binary for this board.
Pico Computer 3
For more info about the Pico Computer 3 see https://github.com/UKTailwind/Pico-Computer-3
| Board | Binary | Readme |
|---|---|---|
| Pico Computer 3 (PC3) | piconesPlus_PicoComputer3_arm.uf2 | Readme |
Other downloads
- Metadata: PicoNesMetadata.zip
Extract the zip file to the root folder of the SD card. Select a game in the menu and press START to show more information and box art. Works for most official released games. Screensaver shows floating random cover art.
- PCB Gerber files. Upload the zip file unchanged to a PCB manufacturer. See the PCB README for parts lists and build instructions.
- PicoNES v2.6, NES controller ports: pico_nesPCB_v2.6.zip
- PicoNES v2.8, SNES controller ports: pico_nesPCB_v2.8_SNES_PORTS.zip
- PicoNES Mini (Waveshare RP2040-Zero / RP2350-Zero): Gerber_PicoNES_Mini_PCB_v2.0.zip
- PicoNES Micro (Waveshare RP2350-USB-A): Gerber_PicoNES_Micro_v1.2.zip