Skip to content

v0.43

Latest

Choose a tag to compare

@github-actions github-actions released this 20 Jun 07:35
be8f2da

CHANGELOG

Audio mixing improvements, HDMI stability fixes, a scrollable settings menu, and a Ganbare Goemon HUD flicker fix.

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

v0.43

Audio

  • Better audio mixing for NES games.
  • Fixed a DC offset on the I2S audio.
  • Added an alternative I2S audio driver based on the official pico-extras driver. This is an opt-in build option; the default driver is unchanged.

Special thanks go to szuping for his contribution to the audio fixes.

Game fixes

  • Fixed flickering on the bottom line of the top HUD in Ganbare Goemon! - Karakuri Douchuu (Japan).

HDMI

  • More stable HDMI/DVI output on HSTX-based boards. Some monitors previously lost the picture intermittently and recovered with a visible glitch; the updated signal shape keeps the picture stable.

Settings menu

  • The options list is now scrollable, with up/down arrows when items extend beyond the visible window. SAVE/CANCEL/DEFAULT, the palette, and the help text stay anchored at fixed rows.
  • Note: the settings file format was bumped; existing settings_nes.dat files will be reset to defaults on first boot.

Developer

  • Added a headless Linux host harness for the InfoNES core, so PPU/CPU/mapper bugs can be reproduced on a PC without flashing a board.

v0.42

Features

Famicom Disk System

  • PSRAM is no longer required to run Famicom Disk System games. The only requirement now is an RP2350-based board.
  • BIOS screen now displays correctly.
  • Added "FDS Auto Insert Disk 1 on Start" setting. When set to Off, the BIOS animation keeps playing until the user presses Button2 (A) to insert the disk.

NSF Player

  • Fixed audio clipping.
  • Fixed pause/resume: elapsed time is preserved, and the player no longer skips to the next track when resuming.
  • Fixed audio delay on PicoDVI boards. Audio now starts in sync with playback right from the first track.

HDMI

  • Added 8:7 pixel aspect ratio support for HSTX boards.
  • Added "Scanline Type" setting (HSTX boards only). Simple darkens odd lines; LCD adds a visible pixel-grid effect by also darkening alternating output columns. LCD is only available in 1:1 screen mode.
  • Screen mode and scanline settings now behave consistently across all HDMI boards.

USB Controllers

  • Added two-player USB controller support. On the Adafruit Fruit Jam, two controllers can be connected directly to the board’s USB ports for multiplayer games.

This feature is confirmed working on the Adafruit Fruit Jam, Raspberry Pi Pico, and Pico 2. For the Raspberry Pi Pico and Pico 2, a USB Y-cable and USB hub are required.
Currently, this does not yet work on the Waveshare RP2350-PiZero.

Other configurations may also work when using a USB hub, but these have not yet been tested.

Other

  • Added support for mapper 210 #200
  • Test builds (VX.X) now show the build date and time on the splash screen.
  • Built against the latest TinyUSB version.

Fixes

  • Fixed external audio (PCM5000A) not working on RP2040 PicoDVI boards when enabled at boot, and resolved an intermittent audio glitch on the same boards.
  • Fixed audio distortion during loud sound effects on the Adafruit Fruit Jam.
  • Fixed volume imbalance between headphones and speaker on Adafruit Fruit Jam. Headphone volume is now automatically attenuated when headphones are inserted, so the volume control can be set for a comfortable speaker level without blasting headphones.
  • Better audio mixing for VRC6 games like Akumajou Densetsu (Castlevania III JP) #199
  • Fixed background jitter in Akumajou Densetsu (Castlevania III JP) during vertical scroll sections. The playfield no longer shifts up and down by a pixel between frames.
  • Fixed HUD scroll glitches in Rush'n Attack, Galaxian (JP) and Robocop 3.
  • Fixed missing HUD in Alien 3.
  • Fixed crash when opening the settings menu.
  • Fixed a memory allocation bug in the HDMI driver on HSTX boards that wasted RAM.
  • Fixed mapper 19 not working correctly #200
  • Improved display sync and fixed audio clipping on first launch by feeding blank frames.
  • Fixed settings menu always showing unsaved changes after the new scanline setting was added.
  • Updated the build configuration to be compatible with the latest TinyUSB version. #202 #203

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

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

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

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

PCB pico_nesPCB_v2.1.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

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

Binary

PCB: Gerber_PicoNES_Micro_v1.2.zip

Readme

Build guide

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 https://github.com/fhoedemakers/pico-infonesPlus/discussions/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/Pico w piconesPlus_MurmulatorM2_arm.uf2

Other downloads

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.