Releases: PicoPlus-devel/pico-bootLoader
Release list
v0.6.3
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.6.3
An SD-card update: a new version of the Master System / Game Gear emulator,
which now also appears in the Handheld category. The loader itself is
unchanged since v0.6.
Do you need to update? Only the card. Replace the
/emufolder on it with
the one in the newpico-bootLoader_sdcard.zip. The board does not have to be
re-flashed, and your ROMs, save states and everything else outside/emuare
untouched.
Game Gear in the Handheld category
The Master System / Game Gear emulator now also appears in the Handheld
category, as Game Gear, with its own artwork in both themes. It is the same
emulator as the one under Console, so Master System and Game Gear games can
be started from either place.
Updated emulator
- Master System / Game Gear
v0.31:
more homebrew games and Game Gear betas now start, among them Pong Master,
Snail2, Bomberman Boom, Ultima III and the Batman & Robin and
The Lion King betas.
Every other application is the same version as in v0.6.2. The exact version of
every application is in the table at the end of this page and in
/emu/versions.txt.
v0.6.2
New versions of ten applications, most of them with a setting for TVs that cut
off the edges of the screen. See the
v0.6.2 release notes.
v0.6.1
A new version of the NES emulator, with a setting to switch off the
8-sprites-per-line limit, and a fix for games that failed to start a second time
on boards without PSRAM. See the
v0.6.1 release notes.
v0.6
A release of both halves, the loader and the SD card, and the first since v0.4:
there was no v0.5. The menu gains categories, an options menu and USB drive
mode; the card gains the TI-99/4A, OutRun and the ColecoVision, and newer
versions of five emulators.
Do you need to update? Yes, both parts. Re-flash the board with the
loader.uf2for your hardware, and replace the/emufolder on your card
with the one in the newpico-bootLoader_sdcard.zip. Your ROMs, save states
and everything else outside/emuare untouched.
The loader
Categories. The menu can now group applications instead of showing them all
in one long list. It opens on a set of categories — Arcade, Computer, Console,
Handheld, Ports and Settings — and opening one shows what is in it.
- LEFT / RIGHT (UP / DOWN in the text menu) moves between categories.
- The first button (
Aon a NES pad) opens the highlighted category, and
starts an application once you are inside one. - The second button (
B) goes back to the categories. - Settings opens the options menu described below.
A category that has nothing in it still appears, and says so when you open it.
Categories come from a categories.txt file on the card, with one list file
per category, so you decide what goes where; delete it and the menu is the
single list it always was. The README explains how to build your own
arrangement.
Additional theme and category artwork were done Gavin Knight. Thanks Gavin!
SELECT opens an options menu instead of switching the menu mode directly.
Move through it with UP / DOWN, confirm with A and return with B:
- Help — the help screen, still also reachable with START.
- Menu mode — switch between the text list and the artwork view.
- Enter BOOTSEL mode — restart the board as the
RP2350drive, so the
loader itself can be updated without unplugging the board and holding the
BOOTSEL button. - USB drive mode — show the SD card on your computer over USB, so you can
add applications, ROMs or artwork without taking the card out. Eject the
drive on the computer when you are done and the menu comes back.
On some boards a USB game controller uses the same port as the cable to your
computer, so only one of the two can be plugged in at a time: the Pimoroni Pico
DV Demo Base, the Adafruit DVI + microSD breakouts and the PicoNES PCB, the
Waveshare RP2350-Zero PCB and the Murmulator M2. On those, operate the menu with
a controller on a NES/SNES port or a Wii Classic controller. Boards with a
separate controller port are not affected.
The menu remembers where you were. Whichever category and application you
were last on is where the menu comes back the next time you switch the board on.
Applications appear in the order you list them, instead of in the card's
own, effectively arbitrary, file order. A list may now hold 32 applications
instead of 16.
PSRAM is recognised reliably at start-up. The check could occasionally miss
the chip, and the board then behaved as if it had none.
Pico 2 W boards use the ordinary Pico 2 binary. The separate Pico 2 W
builds are gone: all they added was the on-board LED, whose driver left no room
for USB drive mode. On a Pico 2 W the LED no longer blinks.
New on the card
TI-99/4A fills the new Computer category and runs on every board. Put your
cartridges in /roms/TI99 on the card, as .rpk files or as the classic .bin
sets, and the console files 994aROM.bin and 994aGROM.bin in /bios — the
emulator does not run without those two. A USB keyboard works as the TI
keyboard, and TI BASIC is there without a cartridge. Without PSRAM the disk
drives are unavailable and cartridges are limited to 32 KB.
OutRun, a port of SEGA's arcade game, fills the new Arcade category. It runs
on the Adafruit Fruit Jam, the Adafruit DVI + microSD breakouts or the PicoNES
PCB, the Murmulator M2, and the Adafruit Feather RP2350 with a TLV320DAC3100,
and needs PSRAM on all four. The game ROMs are copyright SEGA and not included:
copy the unzipped MAME outrun (revision B) set to /roms/ORUN. The game takes
a few seconds at every start to prepare them, and tells you on screen if any are
missing.
ColecoVision joins the Console category on the Adafruit Fruit Jam. It is
ColecoJam by Dan Cogliano
(@cogliano) — a big thank you to Dan for this
emulator and for making it available here. Put the BIOS, COLECO.BIN, and your
games (.ROM files) in /coleco on the card. Neither is included.
Updated emulators
All five below now have USB drive mode in their own settings menu, opened
with SELECT from the game list, so games can be copied onto the card without
taking it out. Each version links to that emulator's own release notes.
- Nintendo Entertainment System
v0.50:
new mappers and fixes for dozens of games, among them Mike Tyson's
Punch-Out!!, Castlevania III and Romance of the Three Kingdoms II. Saved
games in battery-backed MMC5 cartridges are kept, and no more than 8 sprites
per line are shown, as on a real NES. - Super Nintendo
v0.5:
Super Mario RPG no longer freezes during battles. - PC Engine
v0.6:
a save state of a CD game can now be loaded after leaving the game and
starting it again. - Master System / Game Gear
v0.29:
also plays Sega SG-1000 games —.sgfiles, with a lowercase extension,
next to your Master System and Game Gear ROMs. - Genesis / Mega Drive
v0.15:
USB drive mode only; the emulator itself is unchanged.
Videopac, Game Boy, Doom! and Duke Nukem 3D are the same versions as
before. The exact version of every application on the card is in the table at
the end of this page and in /emu/versions.txt.
Note
/boot.txt gains three new settings that record your position in the menu. An
older bootloader does not know them and will report BOOT.TXT INVALID if you
put the card back in a board running one; delete the VIEW, CATEGORY and
APP lines to use it there again.
v0.4
Sega Genesis at full speed on HSTX boards, a recently played list in every
emulator, and DVI-only monitors working again. See the
v0.4 release notes.
v0.3
Documentation and Gerber files for the three custom PCBs; the loader itself did
not change. See the
v0.3 release notes.
v0.2
The first release with the SD-card archive, artwork themes, on-screen help and Duke Nukem 3D.
See the v0.2 release notes
for the full list.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or exFAT-formatted card. The
archive contains the emulators, the Doom port, the menu artwork, and a
sample configuration file. - Run it. ...
v0.6.2
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.6.2
An SD-card update with new versions of ten applications. Most of them get a new
setting for TVs that cut off the edges of the screen. The loader itself is
unchanged since v0.6.
Do you need to update? Only the card. Replace the
/emufolder on it with
the one in the newpico-bootLoader_sdcard.zip. The board does not have to be
re-flashed, and your ROMs, save states and everything else outside/emuare
untouched.
New in the settings menu
All applications on the card except the ColecoVision, Doom! and Duke Nukem 3D:
- Overscan fix in menu, for TVs that cut off the edges of the screen. It
leaves the top and bottom rows of the menus blank, and optionally the first
and last columns too. Games are not affected. The loader's own menu does not
have this setting yet. - More options on one page. The color palette only appears while a menu
color option is selected, so less scrolling is needed. - SELECT jumps to SAVE, so a changed setting can be saved straight away.
- The Controller Test screen shows the controller outline and the list of
controllers correctly again.
Updated emulators
- Nintendo Entertainment System
v0.52:
fixes for many games, among them 1942, Pin Bot, High Speed, Seicross
and Ganbare Goemon Gaiden 2. Dragon Ball Z II and III and several other
Japanese games no longer stay on a black screen, and can now save. On boards
without PSRAM, Famicom Disk System saves are kept in one file per game;
existing saves are picked up automatically. - Master System / Game Gear
v0.30:
Codemasters games such as Micro Machines and the Dizzy games now work, and
most MSX conversions and Korean releases start instead of showing a black
screen. Fewer crashes and black screens in other games, among them Ecco the
Dolphin on Game Gear. - Videopac
v0.5 and
Game Boy
v0.14:
USB drive mode in their own settings menu, as the other emulators got in
v0.6. - ColecoVision
1.5:
pressing button 1 during a game returns to the cartridge menu without a
restart. The cartridge menu shows the ColecoJam logo and the version number,
and a screensaver after two minutes without input. - Super Nintendo
v0.6,
PC Engine
v0.7,
Genesis / Mega Drive
v0.16,
TI-99/4A
v0.2 and
OutRun
v0.3:
the settings menu changes above only.
Doom!, Doom Full! and Duke Nukem 3D are the same versions as before. The
exact version of every application is in the table at the end of this page and
in /emu/versions.txt.
v0.6.1
A new version of the NES emulator, with a setting to switch off the
8-sprites-per-line limit, and a fix for games that failed to start a second time
on boards without PSRAM. See the
v0.6.1 release notes.
v0.6
A release of both halves, the loader and the SD card, and the first since v0.4:
there was no v0.5. The menu gains categories, an options menu and USB drive
mode; the card gains the TI-99/4A, OutRun and the ColecoVision, and newer
versions of five emulators.
Do you need to update? Yes, both parts. Re-flash the board with the
loader.uf2for your hardware, and replace the/emufolder on your card
with the one in the newpico-bootLoader_sdcard.zip. Your ROMs, save states
and everything else outside/emuare untouched.
The loader
Categories. The menu can now group applications instead of showing them all
in one long list. It opens on a set of categories — Arcade, Computer, Console,
Handheld, Ports and Settings — and opening one shows what is in it.
- LEFT / RIGHT (UP / DOWN in the text menu) moves between categories.
- The first button (
Aon a NES pad) opens the highlighted category, and
starts an application once you are inside one. - The second button (
B) goes back to the categories. - Settings opens the options menu described below.
A category that has nothing in it still appears, and says so when you open it.
Categories come from a categories.txt file on the card, with one list file
per category, so you decide what goes where; delete it and the menu is the
single list it always was. The README explains how to build your own
arrangement.
Additional theme and category artwork were done Gavin Knight. Thanks Gavin!
SELECT opens an options menu instead of switching the menu mode directly.
Move through it with UP / DOWN, confirm with A and return with B:
- Help — the help screen, still also reachable with START.
- Menu mode — switch between the text list and the artwork view.
- Enter BOOTSEL mode — restart the board as the
RP2350drive, so the
loader itself can be updated without unplugging the board and holding the
BOOTSEL button. - USB drive mode — show the SD card on your computer over USB, so you can
add applications, ROMs or artwork without taking the card out. Eject the
drive on the computer when you are done and the menu comes back.
On some boards a USB game controller uses the same port as the cable to your
computer, so only one of the two can be plugged in at a time: the Pimoroni Pico
DV Demo Base, the Adafruit DVI + microSD breakouts and the PicoNES PCB, the
Waveshare RP2350-Zero PCB and the Murmulator M2. On those, operate the menu with
a controller on a NES/SNES port or a Wii Classic controller. Boards with a
separate controller port are not affected.
The menu remembers where you were. Whichever category and application you
were last on is where the menu comes back the next time you switch the board on.
Applications appear in the order you list them, instead of in the card's
own, effectively arbitrary, file order. A list may now hold 32 applications
instead of 16.
PSRAM is recognised reliably at start-up. The check could occasionally miss
the chip, and the board then behaved as if it had none.
Pico 2 W boards use the ordinary Pico 2 binary. The separate Pico 2 W
builds are gone: all they added was the on-board LED, whose driver left no room
for USB drive mode. On a Pico 2 W the LED no longer blinks.
New on the card
TI-99/4A fills the new Computer category and runs on every board. Put your
cartridges in /roms/TI99 on the card, as .rpk files or as the classic .bin
sets, and the console files 994aROM.bin and 994aGROM.bin in /bios — the
emulator does not run without those two. A USB keyboard works as the TI
keyboard, and TI BASIC is there without a cartridge. Without PSRAM the disk
drives are unavailable and cartridges are limited to 32 KB.
OutRun, a port of SEGA's arcade game, fills the new Arcade category. It runs
on the Adafruit Fruit Jam, the Adafruit DVI + microSD breakouts or the PicoNES
PCB, the Murmulator M2, and the Adafruit Feather RP2350 with a TLV320DAC3100,
and needs PSRAM on all four. The game ROMs are copyright SEGA and not included:
copy the unzipped MAME outrun (revision B) set to /roms/ORUN. The game takes
a few seconds at every start to prepare them, and tells you on screen if any are
missing.
ColecoVision joins the Console category on the Adafruit Fruit Jam. It is
ColecoJam by Dan Cogliano
(@cogliano) — a big thank you to Dan for this
emulator and for making it available here. Put the BIOS, COLECO.BIN, and your
games (.ROM files) in /coleco on the card. Neither is included.
Updated emulators
All five below now have USB drive mode in their own settings menu, opened
with SELECT from the game list, so games can be copied onto the card without
taking it out. Each version links to that emulator's own release notes.
- Nintendo Entertainment System
v0.50:
new mappers and fixes for dozens of games, among them Mike Tyson's
Punch-Out!!, Castlevania III and Romance of the Three Kingdoms II. Saved
games in battery-backed MMC5 cartridges are kept, and no more than 8 sprites
per line are shown, as on a real NES. - Super Nintendo
v0.5:
Super Mario RPG no longer freezes during battles. - PC Engine
v0.6:
a save state of a CD game can now be loaded after leaving the game and
starting it again. - Master System / Game Gear
v0.29:
also plays Sega SG-1000 games —.sgfiles, with a lowercase extension,
next to your Master System and Game Gear ROMs. - Genesis / Mega Drive
v0.15:
USB drive mode only; the emulator itself is unchanged.
Videopac, Game Boy, Doom! and Duke Nukem 3D are the same versions as
before. The exact version of every appli...
v0.6.1
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.6.1
An SD-card update: a new version of the NES emulator, and a memory fix that every
application on the card benefits from. The loader itself is unchanged since v0.6.
Do you need to update? Only the card. Replace the
/emufolder on it with
the one in the newpico-bootLoader_sdcard.zip. The board does not have to be
re-flashed, and your ROMs, save states and everything else outside/emuare
untouched.
Updated emulator
-
Nintendo Entertainment System
v0.51:
the 8-sprites-per-line limit introduced in v0.50 can now be switched off in the
settings menu, under Sprite Limit (8 per line). The limit is what a real NES
does, but it makes some games flicker; turning it off reduces the flicker. It
stays on by default, because games such as Felix the Cat need it. Your
existing settings keep the limit on.Two fixes as well. The Arkanoid paddle was stuck at the right of the screen
and ignored the D-pad on the custom PCB and on the Adafruit breadboard setup.
And games that use the sound chip's sample channel as a timer now run: Over
Obj no longer shows a black screen, although a black bar still appears in the
middle of the screen while playing it.
All applications
Every application on the card was rebuilt, so all of them pick up one fix in the
shared code: on boards without PSRAM, a game that had already been copied to the
board could fail to start the second time with an out-of-memory error. It was
reported on the NES emulator, with games such as Castlevania III and Just
Breed, but the cause was shared and so is the fix. Boards with PSRAM were not
affected.
Apart from the NES, no emulator changed version; the exact version of each
application is in the table at the end of this page and in /emu/versions.txt.
v0.6
A release of both halves, the loader and the SD card, and the first since v0.4:
there was no v0.5. The menu gains categories, an options menu and USB drive
mode; the card gains the TI-99/4A, OutRun and the ColecoVision, and newer
versions of five emulators.
Do you need to update? Yes, both parts. Re-flash the board with the
loader.uf2for your hardware, and replace the/emufolder on your card
with the one in the newpico-bootLoader_sdcard.zip. Your ROMs, save states
and everything else outside/emuare untouched.
The loader
Categories. The menu can now group applications instead of showing them all
in one long list. It opens on a set of categories — Arcade, Computer, Console,
Handheld, Ports and Settings — and opening one shows what is in it.
- LEFT / RIGHT (UP / DOWN in the text menu) moves between categories.
- The first button (
Aon a NES pad) opens the highlighted category, and
starts an application once you are inside one. - The second button (
B) goes back to the categories. - Settings opens the options menu described below.
A category that has nothing in it still appears, and says so when you open it.
Categories come from a categories.txt file on the card, with one list file
per category, so you decide what goes where; delete it and the menu is the
single list it always was. The README explains how to build your own
arrangement.
Additional theme and category artwork were done Gavin Knight. Thanks Gavin!
SELECT opens an options menu instead of switching the menu mode directly.
Move through it with UP / DOWN, confirm with A and return with B:
- Help — the help screen, still also reachable with START.
- Menu mode — switch between the text list and the artwork view.
- Enter BOOTSEL mode — restart the board as the
RP2350drive, so the
loader itself can be updated without unplugging the board and holding the
BOOTSEL button. - USB drive mode — show the SD card on your computer over USB, so you can
add applications, ROMs or artwork without taking the card out. Eject the
drive on the computer when you are done and the menu comes back.
On some boards a USB game controller uses the same port as the cable to your
computer, so only one of the two can be plugged in at a time: the Pimoroni Pico
DV Demo Base, the Adafruit DVI + microSD breakouts and the PicoNES PCB, the
Waveshare RP2350-Zero PCB and the Murmulator M2. On those, operate the menu with
a controller on a NES/SNES port or a Wii Classic controller. Boards with a
separate controller port are not affected.
The menu remembers where you were. Whichever category and application you
were last on is where the menu comes back the next time you switch the board on.
Applications appear in the order you list them, instead of in the card's
own, effectively arbitrary, file order. A list may now hold 32 applications
instead of 16.
PSRAM is recognised reliably at start-up. The check could occasionally miss
the chip, and the board then behaved as if it had none.
Pico 2 W boards use the ordinary Pico 2 binary. The separate Pico 2 W
builds are gone: all they added was the on-board LED, whose driver left no room
for USB drive mode. On a Pico 2 W the LED no longer blinks.
New on the card
TI-99/4A fills the new Computer category and runs on every board. Put your
cartridges in /roms/TI99 on the card, as .rpk files or as the classic .bin
sets, and the console files 994aROM.bin and 994aGROM.bin in /bios — the
emulator does not run without those two. A USB keyboard works as the TI
keyboard, and TI BASIC is there without a cartridge. Without PSRAM the disk
drives are unavailable and cartridges are limited to 32 KB.
OutRun, a port of SEGA's arcade game, fills the new Arcade category. It runs
on the Adafruit Fruit Jam, the Adafruit DVI + microSD breakouts or the PicoNES
PCB, the Murmulator M2, and the Adafruit Feather RP2350 with a TLV320DAC3100,
and needs PSRAM on all four. The game ROMs are copyright SEGA and not included:
copy the unzipped MAME outrun (revision B) set to /roms/ORUN. The game takes
a few seconds at every start to prepare them, and tells you on screen if any are
missing.
ColecoVision joins the Console category on the Adafruit Fruit Jam. It is
ColecoJam by Dan Cogliano
(@cogliano) — a big thank you to Dan for this
emulator and for making it available here. Put the BIOS, COLECO.BIN, and your
games (.ROM files) in /coleco on the card. Neither is included.
Updated emulators
All five below now have USB drive mode in their own settings menu, opened
with SELECT from the game list, so games can be copied onto the card without
taking it out. Each version links to that emulator's own release notes.
- Nintendo Entertainment System
v0.50:
new mappers and fixes for dozens of games, among them Mike Tyson's
Punch-Out!!, Castlevania III and Romance of the Three Kingdoms II. Saved
games in battery-backed MMC5 cartridges are kept, and no more than 8 sprites
per line are shown, as on a real NES. - Super Nintendo
v0.5:
Super Mario RPG no longer freezes during battles. - PC Engine
v0.6:
a save state of a CD game can now be loaded after leaving the game and
starting it again. - Master System / Game Gear
v0.29:
also plays Sega SG-1000 games —.sgfiles, with a lowercase extension,
next to your Master System and Game Gear ROMs. - Genesis / Mega Drive
v0.15:
USB drive mode only; the emulator itself is unchanged.
Videopac, Game Boy, Doom! and Duke Nukem 3D are the same versions as
before. The exact version of every application on the card is in the table at
the end of this page and in /emu/versions.txt.
Note
/boot.txt gains three new settings that record your position in the menu. An
older bootloader does not know them and will report BOOT.TXT INVALID if you
put the card back in a board running one; delete the VIEW, CATEGORY and
APP lines to use it there again.
v0.4
Sega Genesis at full speed on HSTX boards, a recently played list in every
emulator, and DVI-only monitors working again. See the
v0.4 release notes.
v0.3
Documentation and Gerber files for the three custom PCBs; the loader itself did
not change. See the
v0.3 release notes.
v0.2
The first release with the SD-card archive, artwork themes, on-screen help and Duke Nukem 3D.
See the v0.2 release notes
for the full list.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or ex...
v0.6
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.6
A release of both halves, the loader and the SD card, and the first since v0.4:
there was no v0.5. The menu gains categories, an options menu and USB drive
mode; the card gains the TI-99/4A, OutRun and the ColecoVision, and newer
versions of five emulators.
Do you need to update? Yes, both parts. Re-flash the board with the
loader.uf2for your hardware, and replace the/emufolder on your card
with the one in the newpico-bootLoader_sdcard.zip. Your ROMs, save states
and everything else outside/emuare untouched.
The loader
Categories. The menu can now group applications instead of showing them all
in one long list. It opens on a set of categories — Arcade, Computer, Console,
Handheld, Ports and Settings — and opening one shows what is in it.
- LEFT / RIGHT (UP / DOWN in the text menu) moves between categories.
- The first button (
Aon a NES pad) opens the highlighted category, and
starts an application once you are inside one. - The second button (
B) goes back to the categories. - Settings opens the options menu described below.
Additional theme and category artwork were done Gavin Knight. Thanks Gavin!
A category that has nothing in it still appears, and says so when you open it.
Categories come from a categories.txt file on the card, with one list file
per category, so you decide what goes where; delete it and the menu is the
single list it always was. The README explains how to build your own
arrangement.
SELECT opens an options menu instead of switching the menu mode directly.
Move through it with UP / DOWN, confirm with A and return with B:
- Help — the help screen, still also reachable with START.
- Menu mode — switch between the text list and the artwork view.
- Enter BOOTSEL mode — restart the board as the
RP2350drive, so the
loader itself can be updated without unplugging the board and holding the
BOOTSEL button. - USB drive mode — show the SD card on your computer over USB, so you can
add applications, ROMs or artwork without taking the card out. Eject the
drive on the computer when you are done and the menu comes back.
On some boards a USB game controller uses the same port as the cable to your
computer, so only one of the two can be plugged in at a time: the Pimoroni Pico
DV Demo Base, the Adafruit DVI + microSD breakouts and the PicoNES PCB, the
Waveshare RP2350-Zero PCB and the Murmulator M2. On those, operate the menu with
a controller on a NES/SNES port or a Wii Classic controller. Boards with a
separate controller port are not affected.
The menu remembers where you were. Whichever category and application you
were last on is where the menu comes back the next time you switch the board on.
Applications appear in the order you list them, instead of in the card's
own, effectively arbitrary, file order. A list may now hold 32 applications
instead of 16.
PSRAM is recognised reliably at start-up. The check could occasionally miss
the chip, and the board then behaved as if it had none.
Pico 2 W boards use the ordinary Pico 2 binary. The separate Pico 2 W
builds are gone: all they added was the on-board LED, whose driver left no room
for USB drive mode. On a Pico 2 W the LED no longer blinks.
New on the card
TI-99/4A fills the new Computer category and runs on every board. Put your
cartridges in /roms/TI99 on the card, as .rpk files or as the classic .bin
sets, and the console files 994aROM.bin and 994aGROM.bin in /bios — the
emulator does not run without those two. A USB keyboard works as the TI
keyboard, and TI BASIC is there without a cartridge. Without PSRAM the disk
drives are unavailable and cartridges are limited to 32 KB.
OutRun, a port of SEGA's arcade game, fills the new Arcade category. It runs
on the Adafruit Fruit Jam, the Adafruit DVI + microSD breakouts or the PicoNES
PCB, the Murmulator M2, and the Adafruit Feather RP2350 with a TLV320DAC3100,
and needs PSRAM on all four. The game ROMs are copyright SEGA and not included:
copy the unzipped MAME outrun (revision B) set to /roms/ORUN. The game takes
a few seconds at every start to prepare them, and tells you on screen if any are
missing.
ColecoVision joins the Console category on the Adafruit Fruit Jam. It is
ColecoJam by Dan Cogliano
(@cogliano) — a big thank you to Dan for this
emulator and for making it available here. Put the BIOS, COLECO.BIN, and your
games (.ROM files) in /coleco on the card. Neither is included.
Updated emulators
All five below now have USB drive mode in their own settings menu, opened
with SELECT from the game list, so games can be copied onto the card without
taking it out. Each version links to that emulator's own release notes.
- Nintendo Entertainment System
v0.50:
new mappers and fixes for dozens of games, among them Mike Tyson's
Punch-Out!!, Castlevania III and Romance of the Three Kingdoms II. Saved
games in battery-backed MMC5 cartridges are kept, and no more than 8 sprites
per line are shown, as on a real NES. - Super Nintendo
v0.5:
Super Mario RPG no longer freezes during battles. - PC Engine
v0.6:
a save state of a CD game can now be loaded after leaving the game and
starting it again. - Master System / Game Gear
v0.29:
also plays Sega SG-1000 games —.sgfiles, with a lowercase extension,
next to your Master System and Game Gear ROMs. - Genesis / Mega Drive
v0.15:
USB drive mode only; the emulator itself is unchanged.
Videopac, Game Boy, Doom! and Duke Nukem 3D are the same versions as
before. The exact version of every application on the card is in the table at
the end of this page and in /emu/versions.txt.
Note
/boot.txt gains three new settings that record your position in the menu. An
older bootloader does not know them and will report BOOT.TXT INVALID if you
put the card back in a board running one; delete the VIEW, CATEGORY and
APP lines to use it there again.
v0.4
Sega Genesis at full speed on HSTX boards, a recently played list in every
emulator, and DVI-only monitors working again. See the
v0.4 release notes.
v0.3
Documentation and Gerber files for the three custom PCBs; the loader itself did
not change. See the
v0.3 release notes.
v0.2
The first release with the SD-card archive, artwork themes, on-screen help and Duke Nukem 3D.
See the v0.2 release notes
for the full list.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or exFAT-formatted card. The
archive contains the emulators, the Doom port, the menu artwork, and a
sample configuration file. - Run it. Insert the card and power on the board. The menu appears.
Metadata
Download the full metadata pack here and extract it to the root of the SD card. This should create a /metadata folder on the card.
Emulator versions in pico-bootLoader_sdcard.zip
| Emulator | Repository | Version | pico_shared |
|---|---|---|---|
picoOutRun |
pico-outrun | v0.2 | 63e983c |
pico994A |
pico-994A | v0.1 | 63e983c |
piconesPlus |
pico-infonesPlus | v0.50 | 63e983c |
picosnesPlus |
pico-snesPlus | v0.5 | 63e983c |
picopcePlus |
pico-pcePlus | v0.6 | 63e983c |
picosmsPlus |
pico-smsplus | v0.29 | 63e983c |
picogenesisPlus |
pico-genesisPlus | v0.15 | 63e983c |
picoPacPlus |
pico-pacPlus | v0.4 | 63e983c |
colecojam |
cogliano/Adafruit_ColecoJam | 1.3 | – |
PicoPeanutGB |
pico-peanutGB | v0.13 | 63e983c |
doom_tiny |
[pico-doom](https://github.com/PicoPlus-devel/pico-... |
v0.4
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.4
A release of both halves: the loader and the SD card. The loader picks up the current shared
menu and support code, and every application on the card is rebuilt from its latest release. The
headline is Sega Genesis/Mega Drive, which now runs at full speed on HSTX boards.
Do you need to update? Yes, both parts — download the new
pico-bootLoader_sdcard.zip
below and replace the/emufolder on your card, and re-flash the board with the loader.uf2
for your hardware. The card is where nearly all of this release is: Genesis went from
struggling to full speed, every emulator gained a recently played list, and DVI-only
monitors that stayed black now show a picture. Your ROMs, save states and artwork are
untouched — only/emuis replaced.
The loader
- DVI-only monitors show a picture again. In DVI mode, some older screens that accept DVI but not HDMI stayed black.
- Steadier start-up. The board lets its power settle before switching to the higher clock speed.
What's new on the card
All ten applications are rebuilt from their newest releases — the exact versions are in the table
at the end of this page and in /emu/versions.txt on the card. Every emulator picks up the same
shared fixes the loader did, and two things the loader has no use for:
- A recently played list. The last 20 games you started, newest first, kept separately for
each emulator. Open it with X in the ROM browser — that is button 3 on any pad: X on a SNES
controller, Y on XInput, Triangle on PlayStation, C on Genesis — or from the new Recently
played entry at the top of the settings menu, which is the route for pads without a button 3.
In the list A starts the game, SELECT removes it, START shows its artwork and B
closes the list. Each list is plain text at the root of the card (/recent_NES.txt,
/recent_SNES.txtand so on), so it survives a reboot and can be edited or deleted on a PC. A
game that is no longer on the card is reported as missing rather than started. A damaged list
simply comes up empty — unlike the settings file, nothing else is reset. - No more waiting for a re-flash you don't need. On boards without PSRAM, starting a game
always rewrote it into flash, even when that exact game was already there. The emulator now
records what it wrote and skips programming when the selected game is exactly the image already
in flash — verified with a checksum, not just a file name — which saves several seconds of black
screen every time you restart the same title. That game is marked [READY] in the recently
played list.
Sega Genesis/Mega Drive is transformed. pico-genesisPlus v0.14 rebuilds the emulator core:
- Full speed on HSTX boards, including in games with heavy sound — a Raspberry Pi Pico 2 or
Pimoroni Pico Plus 2 (on the PicoNES PCB or on a breadboard), the Adafruit Fruit Jam, the
Adafruit Metro RP2350 and the Murmulator M2. Sound is now produced on the second processor
core, which leaves far more room for the game itself. - Sound works properly at last — music, noise effects, the "SEGAAA!" voice and the audio of
SGDK games, without dropouts in busy scenes. - Games can save your progress, PAL (European) games run at the right speed, 256-wide games
fill the screen, and starting one game after another is stable. - Still slow on boards without HSTX — the Pimoroni Pico DV Demo Base, Waveshare RP2350-Zero /
PicoNES Mini, Waveshare RP2350-USB-A / PicoNES Micro, the Spotpear HDMI board and the
Murmulator M1. Putting the picture on screen takes so much of the board's attention that too
little is left for the emulator. The games are playable but the action, music and sound all
drag, and this is not something that can be tuned away.
The rest:
- Nintendo Entertainment System (v0.47) gains beta support for the NES Zapper light gun in
controller port 2. It needs the custom PicoNES PCB (design v2.1 or later) and so is only in the
piconesPlusbuild for the Adafruit DVI + MicroSD breakout / PicoNES PCB — on every other board
those two pins are already in use, and the Murmulator M1 and M2 leave them unconnected
entirely. There is nothing to switch on; the gun is detected when plugged in, and a normal pad
in port 2 keeps working alongside it. Two things to know before buying one: games need the
LCD-lag correction patches from neslcdmod.com, and an original
Nintendo Zapper does not work on a flat panel — it is built around the bright flash of a CRT.
A third-party gun made for modern displays is required; the Tomee Zapp Gun is what this was
developed and tested with. See
NES Zapper for patching
and calibration. Also in this release: a.nesfile claiming mapper 31 correctly reports
"unsupported" again instead of booting into the NSF player, and the framerate overlay now shows
a resync counter (R<n>) — a steadily rising number means the display is struggling to hold
sync. - Doom! (v0.2) and Duke Nukem 3D (v0.3) — a new BOOTSEL Mode item at the bottom of
the Options menu restarts the board as the USB firmware drive, so you can re-flash it without
unplugging it and holding the BOOT button. - Super Nintendo, PC Engine, Master System/Game Gear, Game Boy and Videopac — the shared menu
and controller work above; the emulator cores themselves are unchanged. On the SNES the 504 MHz
overclock option is now documented as not advised, and the 378 MHz default is unchanged. - Controllers. A SNES pad wired straight to a NES controller port now uses A and B as you
would expect, in games as well as in the menu — previously the pad reported B and Y where a NES
pad has A and B, so physical A did nothing at all and "choose" landed on B. In the menu A
chooses, B goes back and X opens the recently played list, as on USB and Wii pads; on a
Genesis pad C opens it. The Controller Test now names the buttons for the kind of pad it
detects and shows the raw data the pad sends, which makes an adapter cable that quietly
converts the signal easy to spot, and leaving that screen no longer drops into the screensaver.
v0.3
A release about the hardware around the bootloader rather than the bootloader
itself. Nothing in the loader's behaviour changed since v0.2.
Do you need to update? Nothing here changes what the board does. The
loader.uf2s differ from v0.2 only in the version shown in the menu title
and on the help screen, and the SD-card archive is a rebuild of the same
emulators from their current release tags — they behave as before, they just
report a version instead of an older one. Re-flashing and replacing/emu
are both optional; the interesting part of this release is the documentation
and the PCB gerbers below.
Added
- The three custom PCB designs are documented and shipped with the release.
The README has a Custom PCBs
chapter covering all of them — PicoNES (HW_CONFIG 2), PicoNES Mini (6) and
PicoNES Micro (9) — with the parts each one needs, how the board is mounted,
which loader binary to flash and the matching 3D-printed case. The Gerber
archives are now release assets alongside the binaries:pico_nesPCB_v2.6.zip,
Gerber_PicoNES_Mini_PCB_v2.0.zipandGerber_PicoNES_Micro_v1.2.zip. - PicoNES PCB design v2.6 takes a Pimoroni Pico Plus 2. The design gained
through-holes, so instead of soldering the board flat you can fit male headers
and plug in a Pico 2, Pico 2 W or a Pimoroni Pico Plus 2. On HW_CONFIG 2 the
Pimoroni Pico Plus 2 is what unlocks the entries that need PSRAM — Duke Nukem
3D, PCEngine CD anddoom_tiny_full— and its 16 MB of flash gives the
full 15.5 MB application partition instead of 3.5 MB. No separate binary is
needed: the loader reads the flash size and detects PSRAM at boot, so the
existingpico2image covers both. When the Pico is mounted on headers, print
the latest top cover from Thingiverse — the older ones assume a board
soldered flat and leave no room for the USB cable. - The README opens with the list of boards the loader runs on, each entry
linking to its binary in
Supported hardware
and, where one exists, to its PCB design.
Changed
duke3d_gameis built from pico-duke3D's first release tag,v0.1. The game itself is unchanged — relative to what v0.2 shipped, the tag adds only a build fix for gcc 14 and a controller diagnostic that is compiled out by default.piconesPlusis built from pico-infonesPlusv0.45. That release carries
the PCB v2.6 design and nothing else: its emulator binaries are the ones
v0.44shipped, which is what was on the v0.2 card.- The SNES emulator is no longer shipped for a board that cannot run it.
pico-snesPlus needs 8 MB of PSRAM and supports only HW_CONFIG 2, 8, 13 and 14,
but the v0.2 archive also carried apicosnesPlus.uf2for the Adafruit Metro
RP2350 (HW_CONFIG 5). That build cannot work on the board, soemu/5/no
longer contains one and the entry disappears from the picker there.
v0.2
The first release with the SD-card archive, artwork themes, on-screen help and Duke Nukem 3D.
See the v0.2 release notes
for the full list.
Getting started
For board-by-board wiring, supported display modes and more refer to the [pico-inf...
v0.3
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.3
A release about the hardware around the bootloader rather than the bootloader
itself. Nothing in the loader's behaviour changed since v0.2.
Do you need to update? Nothing here changes what the board does. The
loader.uf2s differ from v0.2 only in the version shown in the menu title
and on the help screen, and the SD-card archive is a rebuild of the same
emulators from their current release tags — they behave as before, they just
report a version instead of an older one. Re-flashing and replacing/emu
are both optional; the interesting part of this release is the documentation
and the PCB gerbers below.
Added
- The three custom PCB designs are documented and shipped with the release.
The README has a Custom PCBs
chapter covering all of them — PicoNES (HW_CONFIG 2), PicoNES Mini (6) and
PicoNES Micro (9) — with the parts each one needs, how the board is mounted,
which loader binary to flash and the matching 3D-printed case. The Gerber
archives are now release assets alongside the binaries:pico_nesPCB_v2.6.zip,
Gerber_PicoNES_Mini_PCB_v2.0.zipandGerber_PicoNES_Micro_v1.2.zip. - PicoNES PCB design v2.6 takes a Pimoroni Pico Plus 2. The design gained
through-holes, so instead of soldering the board flat you can fit male headers
and plug in a Pico 2, Pico 2 W or a Pimoroni Pico Plus 2. On HW_CONFIG 2 the
Pimoroni Pico Plus 2 is what unlocks the entries that need PSRAM — Duke Nukem
3D, PCEngine CD anddoom_tiny_full— and its 16 MB of flash gives the
full 15.5 MB application partition instead of 3.5 MB. No separate binary is
needed: the loader reads the flash size and detects PSRAM at boot, so the
existingpico2image covers both. When the Pico is mounted on headers, print
the latest top cover from Thingiverse — the older ones assume a board
soldered flat and leave no room for the USB cable. - The README opens with the list of boards the loader runs on, each entry
linking to its binary in
Supported hardware
and, where one exists, to its PCB design.
Changed
duke3d_gameis built from pico-duke3D's first release tag,v0.1. The game itself is unchanged — relative to what v0.2 shipped, the tag adds only a build fix for gcc 14 and a controller diagnostic that is compiled out by default.piconesPlusis built from pico-infonesPlusv0.45. That release carries
the PCB v2.6 design and nothing else: its emulator binaries are the ones
v0.44shipped, which is what was on the v0.2 card.- The SNES emulator is no longer shipped for a board that cannot run it.
pico-snesPlus needs 8 MB of PSRAM and supports only HW_CONFIG 2, 8, 13 and 14,
but the v0.2 archive also carried apicosnesPlus.uf2for the Adafruit Metro
RP2350 (HW_CONFIG 5). That build cannot work on the board, soemu/5/no
longer contains one and the entry disappears from the picker there.
v0.2
Added
- Duke Nukem 3D, a native RP2350 port from
pico-duke3D, joins the menu as
duke3d_game. It runs on the Adafruit Fruit Jam (HW_CONFIG 8), the Adafruit
DVI + MicroSD breakout combination (2) and the Murmulator M2 (13), and needs
PSRAM on all three.DUKE3D.GRPstreams from/roms/duke3d/on the SD card,
so there is no companion data image to flash. - Artwork themes. The graphical menu can carry up to ten sets of artwork in
<BASEDIR>/assets/themes/0…themes/9. Press UP or DOWN in the
graphical menu to cycle through the themes present on the card; the choice is
saved immediately and restored on the next boot. A theme need not be
complete — any application it has no image for falls back to theme 0. - On-screen help. Press START in either menu mode for a full-screen
summary of the controls, the meaning of the*and!markers, and the
current mode, theme, board configuration and index file. - Rejected-
.uf2error screen. When pre-flight validation refuses a file,
the loader now says why in plain language instead of flashing a terse notice
for three seconds. It names the actual problem — linked at the wrong address
(the address is shown), built for the wrong chip or architecture, too large
for the board's flash, corrupt, or an incomplete copy — and, where relevant,
gives the build flags needed to produce an image the loader accepts. The page
stays up until a button is pressed. Nothing is erased at that point, so the
menu is still there afterwards. GUIandTHEMEkeys inboot.txt, holding the menu mode and the active
theme.
Changed
- The SD-card archive no longer leaves a menu entry without artwork. It still
ships the small.444/.555caches in preference to the source images, but
where a theme has no cache for an entry its.png/.jpgnow ships instead and
the first boot converts it. build_emulators.shbuilds Doom from pico-doommain, which carries the
build scripts for both variants since thefull-versionmerge.- Menu artwork moved from
<BASEDIR>/assetsto
<BASEDIR>/assets/themes/0. Existing cards are migrated automatically on the
first boot — the cached.444/.555files move too, so nothing is
re-converted, and thescreensaver/folder is left where it is. The move is
resumable if it is interrupted. boot.txtis now written by the bootloader. Only theGUI=andTHEME=
lines are rewritten; comments, ordering, spacing and every other key are
preserved. The file is created on the first change if it does not exist,
carrying the effective value of all keys. Updates go through a temporary file
that is re-parsed before being renamed into place, so a power cut cannot
corrupt the configuration. A card that cannot be written is not an error: the
change applies for the session and the help screen says it was not saved.- The
.guimodefile is gone, folded intoboot.txt'sGUIkey. An
existing.guimodeis read once, migrated, and deleted. - Menu footer and text-mode hints updated for the new controls.
- Boards without PSRAM now convert artwork for every theme at boot rather than
one folder, since the converter cannot run once the menu is up. The first boot
after adding a theme is correspondingly slower. pico-bootLoader_sdcard.zipis a release asset again. The archive carries
the emulators, the Doom port and its WAD, the artwork themes, the screensaver
sprites, a sampleboot.txtand a newversions.txtrecording which release
tag each emulator was built from. Unpack it at the root of the card.- Release tags now say what changed.
v0.Nis a bootloader firmware release
(re-flash the board and refresh the card);v0.N.Mships the same firmware with
refreshed emulator binaries, so only/emuon the card needs replacing. Each
release lists the emulator versions its archive contains. - Doom's WAD is named
doom1-whx.uf2inemulators.txt, matching what the
build actually produces. Earlier cards declareddoom1-whx-for-fruitjam.uf2,
which the loader could never find, so it launched Doom without flashing the
WAD.
Fixed
- A standalone build could be flashed and leave the board unbootable. An
application linked at0x10000000but larger than the 512 KB bootloader
region straddles the partition boundary: validation skipped every block below
0x10080000and accepted the tail, so the loader wrote a fragment from the
middle of the image into the start of the application partition. The progress
bar ran to 100 %, the flashed app then had no usable vector table, and the
board rebooted into the menu with no explanation. Any block below the
partition now rejects the whole file up front, before anything is erased, and
the new error screen names the address it was linked at. Builds smaller than
512 KB were already rejected, which is why this only showed up with larger
applications.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported Hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or exFAT-formatted card. The
archive contains the emulators, the Doom port, the menu artwork, and a
sample configuration file. - Run it. Insert the card and power on the board. The menu appears.
Metadata
Download the full metadata pack here and extract it to the root of the SD card. This should create a /metadata folder on the card.
Emulator versions in pico-bootLoader_sdcard.zip
| Emulator | Repository | Version | pico_shared |
|---|---|---|---|
piconesPlus |
pico-infonesPlus | v0.45 | ed6d94e |
picopcePlus |
pico-pcePlus | v0.3 | ed6d94e |
PicoPeanutGB |
pico-peanutGB | v0.11 | ed6d94e |
| ... |
v0.2
CHANGELOG
A resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
v0.2
Added
- Duke Nukem 3D, a native RP2350 port from
pico-duke3D, joins the menu as
duke3d_game. It runs on the Adafruit Fruit Jam (HW_CONFIG 8), the Adafruit
DVI + MicroSD breakout combination (2) and the Murmulator M2 (13), and needs
PSRAM on all three.DUKE3D.GRPstreams from/roms/duke3d/on the SD card,
so there is no companion data image to flash. - Artwork themes. The graphical menu can carry up to ten sets of artwork in
<BASEDIR>/assets/themes/0…themes/9. Press UP or DOWN in the
graphical menu to cycle through the themes present on the card; the choice is
saved immediately and restored on the next boot. A theme need not be
complete — any application it has no image for falls back to theme 0. - On-screen help. Press START in either menu mode for a full-screen
summary of the controls, the meaning of the*and!markers, and the
current mode, theme, board configuration and index file. - Rejected-
.uf2error screen. When pre-flight validation refuses a file,
the loader now says why in plain language instead of flashing a terse notice
for three seconds. It names the actual problem — linked at the wrong address
(the address is shown), built for the wrong chip or architecture, too large
for the board's flash, corrupt, or an incomplete copy — and, where relevant,
gives the build flags needed to produce an image the loader accepts. The page
stays up until a button is pressed. Nothing is erased at that point, so the
menu is still there afterwards. GUIandTHEMEkeys inboot.txt, holding the menu mode and the active
theme.
Changed
- The SD-card archive no longer leaves a menu entry without artwork. It still
ships the small.444/.555caches in preference to the source images, but
where a theme has no cache for an entry its.png/.jpgnow ships instead and
the first boot converts it. build_emulators.shbuilds Doom from pico-doommain, which carries the
build scripts for both variants since thefull-versionmerge.- Menu artwork moved from
<BASEDIR>/assetsto
<BASEDIR>/assets/themes/0. Existing cards are migrated automatically on the
first boot — the cached.444/.555files move too, so nothing is
re-converted, and thescreensaver/folder is left where it is. The move is
resumable if it is interrupted. boot.txtis now written by the bootloader. Only theGUI=andTHEME=
lines are rewritten; comments, ordering, spacing and every other key are
preserved. The file is created on the first change if it does not exist,
carrying the effective value of all keys. Updates go through a temporary file
that is re-parsed before being renamed into place, so a power cut cannot
corrupt the configuration. A card that cannot be written is not an error: the
change applies for the session and the help screen says it was not saved.- The
.guimodefile is gone, folded intoboot.txt'sGUIkey. An
existing.guimodeis read once, migrated, and deleted. - Menu footer and text-mode hints updated for the new controls.
- Boards without PSRAM now convert artwork for every theme at boot rather than
one folder, since the converter cannot run once the menu is up. The first boot
after adding a theme is correspondingly slower. pico-bootLoader_sdcard.zipis a release asset again. The archive carries
the emulators, the Doom port and its WAD, the artwork themes, the screensaver
sprites, a sampleboot.txtand a newversions.txtrecording which release
tag each emulator was built from. Unpack it at the root of the card.- Release tags now say what changed.
v0.Nis a bootloader firmware release
(re-flash the board and refresh the card);v0.N.Mships the same firmware with
refreshed emulator binaries, so only/emuon the card needs replacing. Each
release lists the emulator versions its archive contains. - Doom's WAD is named
doom1-whx.uf2inemulators.txt, matching what the
build actually produces. Earlier cards declareddoom1-whx-for-fruitjam.uf2,
which the loader could never find, so it launched Doom without flashing the
WAD.
Fixed
- A standalone build could be flashed and leave the board unbootable. An
application linked at0x10000000but larger than the 512 KB bootloader
region straddles the partition boundary: validation skipped every block below
0x10080000and accepted the tail, so the loader wrote a fragment from the
middle of the image into the start of the application partition. The progress
bar ran to 100 %, the flashed app then had no usable vector table, and the
board rebooted into the menu with no explanation. Any block below the
partition now rejects the whole file up front, before anything is erased, and
the new error screen names the address it was linked at. Builds smaller than
512 KB were already rejected, which is why this only showed up with larger
applications.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported Hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or exFAT-formatted card. The
archive contains the emulators, the Doom port, the menu artwork, and a
sample configuration file. - Run it. Insert the card and power on the board. The menu appears.
Metadata
Download the full metadata pack here and extract it to the root of the SD card. This should create a /metadata folder on the card.
Emulator versions in pico-bootLoader_sdcard.zip
| Emulator | Repository | Version | pico_shared |
|---|---|---|---|
piconesPlus |
pico-infonesPlus | v0.44 | c0971c5 |
picopcePlus |
pico-pcePlus | v0.3 | c0971c5 |
PicoPeanutGB |
pico-peanutGB | v0.11 | c0971c5 |
picosmsPlus |
pico-smsplus | v0.26 | c0971c5 |
picogenesisPlus |
pico-genesisPlus | v0.13 | c0971c5 |
picoPacPlus |
pico-pacPlus | v0.2 | c0971c5 |
doom_tiny |
pico-doom | v0.1 | – |
doom_tiny_full |
pico-doom | v0.1 | – |
picosnesPlus |
pico-snesPlus | v0.2 | c0971c5 |
duke3d_game |
pico-duke3D | fix/audio-production-rate@1700c41 | – |
Initial release
CHANGELOG
Update 18/7/2026 - Added pico-snesPlus emulator to pico-bootLoader_sdcard.zip
Initial release of a resident .uf2 bootloader / front-end for the RP2350 retro-emulator family (pico-infonesPlus, pico-pcePlus, pico-genesisPlus, pico-smsplus, pico-peanutGB, …).
General Info
Binaries for each configuration and PCB design are at the end of this page.
Getting started
For board-by-board wiring, supported display modes and more refer to the pico-infonesPlus documentation. The set of supported boards and their pinouts is identical between the two projects.
- Flash the bootloader. Download the loader
.uf2for your board. Hold
BOOTSEL, connect the board over USB, and copy the.uf2onto the
RP2350drive. See Supported Hardware in the README. - Prepare the SD card. Download
pico-bootLoader_sdcard.zipfrom the same
Releases page and unpack it onto a FAT32- or exFAT-formatted card. The
archive contains the emulators, the Doom port, the menu artwork, and a
sample configuration file. - Run it. Insert the card and power on the board. The menu appears.
Metadata
Download the full metadata pack here and extract it to the root of the SD card. This should create a /metadata folder on the card.