Repository navigation
Releases
v0.6.3
What's Changed
- 260830 2 by @axgdev in #15
- qpsx: pin libretro core to consolidated public main branch by @axgdev in #16
User-Friendly Release Notes (Non-Technical)
Short version — what you’ll notice (only the new changes):
- Neo Geo games find their BIOS automatically.
neogeo.zipcan stay in/bios(where stock SF2000 cards keep it) —mslug.zipetc. no longer fail with “archive missing” if you don’t duplicate the BIOS next to every ROM. - Big game folders stay smooth. Browsing a folder with thousands of ROMs (now up to 8 192 items) no longer risks a blank screen or freeze.
- Translated text no longer gets cut off early. Long German/French/Spanish/Portuguese labels are clipped by actual screen pixels instead of a worst-case letter count, so things like “Gameplay: padrões de iniciação” now fit.
- Daily builds are much faster.
make/make verifyskips the two very-slow arcade cores (fbalpha2012,mame2000) while you’re iterating; full releases (make sdcard-package/sd-zip/install) still ship every core automatically.
No settings to change. Previous improvements from PR #12 (sharper text, full arcade library, box-art, Polish characters) are already in main — this update just adds the four refinements above.
Full Changelog: v0.6.2...v0.6.3
v0.6.2
What's Changed
Summary
This PR addresses several issues reported during SF2000 v0.6.1 testing, primarily around FB Alpha 2012 compatibility, controller input, localization, UI readability, artwork discovery, and end-to-end test coverage.
The main changes are:
- Restore access to the complete FB Alpha 2012 driver set on SF2000 and fix MIPS alignment faults in affected drivers.
- Allow even-aligned 68000 long accesses required by FB Alpha 2012 memory layouts.
- Fix local controller input being mirrored across every libretro port.
- Add a bounded frog2k-qemu launch harness for automated end-to-end core/ROM testing.
- Restore accented translations, add missing Polish glyph coverage, and translate previously hard-coded launcher/UI text.
- Increase and sharpen UI text and move menus/launcher entries to a full-width single-column layout.
- Show box art by default and resolve artwork using muOS catalogue system names.
- Document supported artwork layouts and naming conventions.
FB Alpha 2012 compatibility
Register the complete driver set
The SF2000 FB Alpha 2012 port generated driverlist.h using only burn/drv/pre90s, despite the build compiling and linking drivers from all 18 driver directories.
As a result, BurnDrvGetIndexByName could not resolve newer sets and retro_load_game returned Cannot load this game for reported Capcom, Neo Geo, Konami, Sega, Tait
8000
o, and other titles.
The SF2000 driver list is now generated from all FB Alpha 2012 driver directories, matching the behavior of the other platforms.
Fix misaligned driver arrays
Tester logs also exposed an AdES reset while loading tokib:
epc=palette_write+0x88, badv=0x82977dd1
Some MemIndex layouts placed UINT16/UINT32 arrays immediately after byte-sized members, producing addresses that the SF2000's MIPS32r1 CPU cannot safely access.
Affected layouts are now padded to the required alignment. A layout sweep found 23 misaligned pointers across 17 drivers, including Data East, Konami, Taito, and post-90s drivers that become reachable once the complete driver list is enabled.
Support even-aligned 68000 long accesses
Musashi's interface assumed 32-bit 68000 accesses were 4-byte aligned. FB Alpha 2012 can place data at addresses that are even but not 4-byte aligned, resulting in SF2000 exceptions such as those seen with dino.zip.
ReadLong, FetchLong, and WriteLong now compose long accesses from word pairs when a & 3 != 0.
The FB Alpha 2012 patch series has been refreshed accordingly.
Controller input
Physical SF2000 controls were previously OR'd into every libretro controller port.
This made cores such as MAME2000 and FB Alpha 2012 see multiple identical controllers, causing player two to mirror player one.
Local controls are now restricted to libretro port 0. Higher ports contain only their wireless controller state.
End-to-end QEMU launch testing
A new bounded launch path makes it possible to test complete core sessions under frog2k-qemu without navigating the UI manually.
The frontend recognizes three test-only settings:
test_launch_pathtest_launch_coretest_launch_frames
These are loaded from /unifrog_data/unifrog.ini and are deliberately not persisted by save_settings.
A new harness can run a complete ROM/core session with:
make qemu-launch-test TEST_CORE=<id> TEST_ROM=<zip> [TEST_FRAMES=n]
The harness:
- Builds a 40 MiB FAT32 SD image using mtools.
- Boots
bisrv.asdunder frog2k-qemu. - Launches the requested ROM directly through the selected core.
- Uses the existing bounded-frame run-loop exit.
- Drives QMP for screenshots and key injection.
- Waits for the device log to cross its SD-card flush boundary before extraction.
- Fails if the core cannot load, the driver rejects the ROM, an exception occurs, or dispatch returns a non-zero result.
- Cleans up stale emulator processes using exact process-name matching.
This provides repeatable end-to-end coverage for failures that host-only tests cannot reproduce.
Localization and font rendering
The German, Spanish, French, and Italian catalogs had previously had their diacritics stripped. Proper localized spelling and accents have been restored while retaining the catalog schema.
The UI font also lacked several Latin Extended-A glyphs required by Polish. Fourteen missing glyphs have been added as decomposed/rescaled outlines from DejaVu Sans, with source and licensing information recorded in THIRD_PARTY.md.
Previously static English launcher labels, footer hints, loading/status strings, and related UI text are now routed through the translation catalog. All eight catalogs have been expanded to the same 250-key schema.
Supporting i18n limits were increased to accommodate the expanded keys:
FRONTEND_I18N_MAX: 192 → 256- i18n key depth: 40 → 64
tools/language-check.sh has been updated to match.
UI readability
TTF rendering has been adjusted for the SF2000's 320px display:
- Glyphs are baked at 13px instead of 12px.
- Coverage alpha is boosted by 1.5x with saturation in both ASCII and Unicode paths.
This produces larger, crisper text without requiring layout-specific font-size changes.
Menus have also moved away from the previous two-column label/value layout. Values are now rendered inline as:
Label: value
This gives menu text the full row width, with marquee behavior on the focused row.
The launcher likewise uses a single-column list regardless of theme grid settings. Theme wallpapers and icons remain supported, and the artwork pane is unaffected.
Game artwork
Box art is now visible by default.
Artwork lookup also understands the full system names used by muOS catalogue packs. ROM directories commonly use short system names while muOS artwork packs use names such as Nintendo SNES-SFC, so artwork expansion now tries both the ROM system name and its catalogue alias.
This was verified with SNES and GBA artwork using the on-device MUOS/info/catalogue structure.
A new artwork guide documents:
- muOS/antiKk artwork catalogue conventions.
- Native
unifrog_data/artworklayouts. - Skraper/beside-ROM layouts.
- Artwork naming rules.
- How to hide box art.
- Supported image limitations.
Verification
The changes were exercised through a combination of host checks and real SF2000-target QEMU sessions, including:
make quick-checkmake verify— 106 checks passingBUILD/LANGUAGE_FILEStools/language-check.sh- Host frontend/rendering checks
- frog2k-qemu launcher, Explore, and Config UI verification
- QEMU boot with Polish localization loading all 250 catalog entries
- Clean 180-frame
fceummsession - FB Alpha 2012
tokibsessions, including 240/300-frame runs withret=0and no exceptions - A
tokibROM variant exercising palette writes throughtokib_write_word - MAME2000 and FB Alpha 2012 controller/launch testing
- muOS SNES/GBA box and preview artwork resolution
Rollback
The changes are separated by concern and can be reverted individually if necessary. FB Alpha 2012 generated patches/core artifacts should be regenerated after reverting changes to its driver list, alignment handling, or Musashi interface.
Full Changelog: v0.6.1...v0.6.2
v0.6.1
What's New
This release focuses on audio compatibility, localization fixes, frontend robustness, and QPSX integration. It addresses issues found during v0.6.0 testing while moving QPSX onto its unified public platform and keeping builds reproducible.
🔊 Improved audio compatibility
Fixed an audio regression affecting cores that request unusual sample rates.
During testing, Snes9x 2005 requested 32040 Hz, which HCRTOS could not open successfully. UniFrog now preserves the known-good native device rates:
- 22050 Hz
- 32000 Hz
- 44100 Hz
Cores requesting other rates are now automatically resampled to an appropriate supported rate. For example, 32040 Hz is resampled to 32000 Hz instead of being passed directly to the audio device and failing.
This kee 8000 ps native operation for known-good rates while allowing cores with slightly unusual output rates to work correctly.
🌍 Localization improvements
Localization received several fixes and consistency improvements.
- Increased the non-English TTF fallback font size for better readability.
- Translated previously untranslated loading and status messages.
- Synchronized all language catalogs to the same 159-key schema.
- Added a host-side language catalog consistency check.
- Localization validation is now included in
quick-checkandverify.
These checks should also prevent language catalogs from silently drifting out of sync in future releases.
🎮 More robust core associations
The v0.6.0 tester log revealed that the frontend could start with:
association_count=0
even though the packaged core registry and default associations contained the expected Prosty GBA (gpsp-gbac-prosty) association.
UniFrog now:
- Makes missing association files visible in the log.
- Validates that the Prosty GBA association exists in release packages.
- Fails package validation if that association is missing.
This should make packaging problems considerably easier to identify instead of allowing a broken association set to reach a release unnoticed.
🕹️ QPSX moves to the unified public platform
The QPSX integration now consumes the unified frog2k-qpsx public_main source rather than the previous main_unifrog source.
UniFrog passes QPSX_PLATFORM through the core build, with:
QPSX_PLATFORM=unifrog
remaining the default.
This preserves UniFrog-specific behavior, including:
- HCRTOS filesystem integration
- Fixed PSX RAM handling
- UniFrog's in-game memory-card path
The QPSX dependency is also pinned to a full public revision from public_main, keeping clean CI checkouts and builds reproducible while following the consolidated public QPSX codebase.
A clean HCRTOS QPSX build was used to verify the updated revision.
🧪 Validation
The audio/localization/frontend changes were validated with:
make quick-checkmake checkmake verify- Clean
make verify
The QPSX integration was additionally verified by building the QPSX archive with the frog toolchain and UniFrog HCRTOS SDK, followed by verification of the final pinned revision with a clean HCRTOS QPSX build.
Only the existing third-party unused-code warnings remain.
Summary
This release should provide more reliable audio across emulator cores, improved translations and text readability, stronger packaging checks, and a cleaner QPSX integration based on the unified public upstream.
In particular, users affected by audio failures from non-standard core sample rates should see improved compatibility, while the new validation checks should help prevent localization and core-association regressions from making it into future releases.
Full Changelog: v0.6.0...v0.6.1
v0.6.0
What's Changed
UniFrog v0.6.0 release notes
This release is based on the v0.6.0-develop branch at commit
a400dff, compared with main.
Highlights
- A new, simpler launcher: Explore opens the SD card, while the game
browser organizes games by the folders you created. Folder names are matched
without caring about upper/lower case. - More cores and better compatibility. ZIP ROMs are loaded by streaming them
into the final ROM buffer when the selected core supports ZIP content, which
is especially useful for larger GB, GBA, and other games. - Open With -> Other Cores is always available, so a game can be tried with
any installed core even when its folder name or extension is unusual. - Improved PS1 support through the maintained public QPSX UniFrog branch.
- A fuller device frontend with favorites, history, themes, language support,
media and file browsing, settings, diagnostics, firmware selection, and
data-preserving version updates. - More reliable boot, storage, save, shutdown, audio, video, and external-core
loading behavior. - Reproducible setup using the public frog-toolchain, public JS2300/QPSX
sources, and the public HCRTOS SDK. No private repository access is needed.
Added emulator cores
New emulator cores or optimized variants are:
- MAME 2000 and FB Alpha 2012 for arcade and Neo Geo ROM sets.
- Stella 2014, Atari 5200, ProSystem (Atari 7800), and Atari800Lib.
- Handy (Atari Lynx), RACE (Neo Geo Pocket), Beetle Cygne (WonderSwan), and
Gearcoleco (ColecoVision). - Prosty varian 8000 ts of Gambatte, QuickNES, FCEUmm, and Snes9x.
- Frodo Prosty (Commodore 64), Fake-08 Prosty (PICO-8), and blueMSX Prosty
(MSX).
The release also includes the FrogUI launcher core and JS2300, which runs
optional JavaScript (.js/.mjs) and CHIP-8 (.ch8/.chip8) content.
Important notes
- Arcade ZIP files depend on the ROM set they came from. If a game does not
open, try the other arcade core from Open With. - For PS1 games, keep the
.cuefile beside its referenced.binfiles and
launch the.cuefile when available. - Keep the SD card charged and use Safe Shutdown before removing power or
the card.
User Instructions
To update, simply decompress the zip file in your SD card.
Game folder mapping
Explore has changed functionality, it will now browse your SD card, if you put games in known folders like GBA anywhere in your SD card, the system will recognize there are Game Boy Advance games inside, when the name of the folder is not known, the system will give you the option to open with any emulator so you get to decide, here is the folder mapping:
| Folder names | Default emulator |
|---|---|
ARCADE, NEOGEO |
FB Alpha 2012 |
ATARI, ATARI2600, A2600 |
Stella 2014 |
ATARI5200, A5200 |
Atari 5200 |
ATARI7800, A7800 |
ProSystem |
GB, GBC |
Gambatte |
GBA |
gpSP |
FC, NES |
QuickNES |
SFC, SNES |
Snes9x 2005 |
GG, GAMEGEAR, SMS, MD, GENESIS, MEGADRIVE |
PicoDrive |
PCE, TG16, TURBOGRAFX-16 |
PCE-Fast |
PS, PS1, PSX |
QPSX |
LYNX |
Handy |
NGP, NGPC |
RACE |
WS, WSC |
Beetle Cygne |
COLECO, COLECOVISION |
Gearcoleco |
MSX |
blueMSX Prosty |
C64 |
Frodo Prosty |
PICO8 |
Fake-08 Prosty |
The Prosty alternatives are also installed for GB/GBC, NES/Famicom, and SNES.
If a game does not open, highlight it and choose Open With. Other Cores
lets you try any installed emulator, including MAME 2000, FB Alpha 2012, and
the Prosty alternatives.
MAME 2000 and Atari800Lib are available through Open With when their ROM
set needs them; they are not the default for the normal ARCADE or ATARI
folder names. JS2300 content (.js, .mjs, .ch8, and .chip8) is selected
automatically.
For PS1 games, launch the .cue file and keep its .bin files in the same
folder. Arcade ZIPs must match the ROM set expected by the selected arcade
core.
Use Safe Shutdown before removing the SD card or turning off the device.
Full Changelog: v0.5.2...v0.6.0
v0.5.2
What's Changed
Performance has been restored:
- Restore cheap framebuffer pan for cores
- Trim libretro frontend hot paths
- Prefer RGB565 core framebuffers
Full Changelog: v0.5.1...v0.5.2
v0.5.1
What's Changed
Fix heavy auto-save feature
Fix media sometimes not having progress bar
Fix media seeking algorithm
Playing audio displays current play time and total audio time
Remove PMP player, native player plays many formats including MP4, and many audio formats
Remove stale JS frontend code
Quick menu is native, remove js implementation
Add new option for media player as the top app
There are many improvements that need to be done for file navigation.
Full Changelog: v0.5.0...v0.5.1
v0.5.0
Unifrog v0.5.0
Release notes for changes since v0.4.4.
Highlights
- More reliable media playback and seeking, especially when skipping through videos.
- Major GB300 audio routing repairs with fewer playback stalls and fallback failures.
- Better frontend, theme, and media-browsing behavior across the native UI.
User Notes
- Install common MuOS
.muxthmtheme archives through the frontend theme menu; UniFrog includes fallback launcher icons when a theme omits them. - For simple color tweaks, place
/unifrog/theme.inion the SD card with the same keys as the default theme. - To play a video, browse to the file in Explore and open it. Supported video types include
avi,mp4,mov,mkv,ts,m2ts,mpg,mpeg,h264, and264. - The same media browser also opens audio and image files, including
mp3,wav,flac,ogg,opus,aac,adts,m4a,jpg,jpeg,png,gif, andbmp. - Video seeking is now much steadier and less likely to lose the current frame.
- Audio playback on GB300 is significantly more dependable.
- The native frontend loads, navigates, and recovers more cleanly.
- Media browsing and theme handling are smoother and more consistent.
Technical Notes
- Updated the
unifrog-hcrtos-sdksubmodule onmain. - Media playback and seek handling were reworked across the stack:
- gated seeks on keyframes,
- preserved the current frame during fast seeks,
- stabilized repeated seek recovery and catch-up timing,
- restored the legacy SF2000 hardware seek path,
- recovered SF2000 video after
auddecconflicts, - tuned feed lead, pacing, buffering, and cache behavior,
- suspended disk logging during media reads,
- routed software video through
vidsink, - avoided
hcplayervideo paths where needed, - restored media routing and handoff stability,
- hardened H264 hardware decode, parser, init, and packet timing paths,
- aligned HCRTOS FFmpeg ABI and allocation assumptions with the native media code.
- GB300 audio routing was repaired and instrumented:
- restored direct SND, I2SO, audsink, and release audio paths,
- restored hardware
auddecplayback and AAC clock handling, - stabilized fallback behavior when
auddecstalls, - gated audio handling on real PCM,
- fixed frame routing and mono output behavior,
- kept fastboot off speaker pins,
- coalesced PCM writes,
- added stronger diagnostics and build-identity tracking for audio control flow.
- Frontend and theme handling were tightened:
- recovered the native frontend baseline and launch settings,
- restored open-with flow, loading feedback, refresh behavior, and pause menu sections,
- improved launcher and theme layout handling,
- fixed fullscreen themes, audio fallbacks, row rendering, and value contrast,
- improved theme extraction, install pressure, font spacing, and navigation diagnostics,
- refined ROM root and system mapping logic,
- improved media fallback, ROM core selection, and media diagnostics.
- Native media startup and diagnostics were made more predictable:
- stabilized startup and handoff ordering,
- fixed FFmpeg header and ABI integration,
- improved media object ordering,
- reduced warning noise in FFmpeg dependency integration,
- expanded decode diagnostics and storage-suspend handling,
- restored KSHM viddec init and extradata paths,
- fixed native video decoder startup ordering and frame progression.
This release is focused on making playback, seeking, and audio routing dependable for daily use while keeping the native frontend and theme stack usable across SF2000 and GB300 targets
Full Changelog: v0.4.4...v0.5.0
Unifrog v0.4.4
For Users
Faster Startup and Easier Game Browsing
UniFrog no longer scans the whole SD card before the menu appears. The menu should become usable much sooner, especially on cards with large ROM collections.
Games are now discovered when you open a system instead of during boot. The default search roots are /ROMS and the SD-card root, so both layouts work:
/ROMS/gba/Game.gba
/gba/Game.gba
If you want to scan the whole card and build a saved library index, run Developer -> Index Library manually.
Default Firmware Boot Selection
The Firmware screen can now choose which firmware boots by default. Use SELECT on a firmware entry to make it the default boot target. Select the default row again to return the default to UniFrog.
Hold B during power-on to override the configured default and boot UniFrog. This override is filtered more carefully now, so accidental forced-UniFrog boots should be less likely on SF2000 and GB300-style input wiring.
Better In-Game Fast-Forward
The in-game quick menu now has fast-forward speed controls. Open the quick menu with SELECT+START, then use FF speed to cycle:
Off -> 2x -> 4x -> 8x -> 16x
For GBA cores, the quick menu can also adjust frameskip. Fast-forward now keeps the display responsive instead of leaving stale quick-menu pixels on screen.
New GBA Core Option
GBA launches now include gpsp-gbac-prosty, a packaged gpSP multicore fork for Game Boy Advance games. If a GBA game has problems or performance differences with the regular gpSP core, try this alternate core from the launch options.
Audio Improvements
Audio output is quieter and more predictable. UniFrog now uses the confirmed SF2000 mono audio route, hardware mute/volume controls, and fixed 1x software gain. Old saved gain settings are ignored, and the user-facing gain option has been removed.
Video and Media Playback Fixes
MP4 playback has been hardened around loading, display setup, and failure handling. Firmware-linked media playback is the default path. SD-loaded media module builds still package the media module for diagnostics, but they now refuse unsafe MP4 playback instead of entering a known black-screen path.
License Notices Included
The SD-card package now includes:
/unifrog/LICENSE.txt
/unifrog/THIRD_PARTY.md
These files document UniFrog's license and the third-party components included in the distributed package.
For Technical Maintainers
Build and Packaging
- Added
THIRD_PARTY.mdwith the third-party source, binary, SDK, asset, and core-module inventory. frontend-packagenow treatsLICENSEandTHIRD_PARTY.mdas inputs and installs them as/unifrog/LICENSE.txtand/unifrog/THIRD_PARTY.md.checkandfastboot-checkassert that the packaged notice files exist.- Ignored local SD-card package, release zip, and toolchain artifacts.
- The SD-card zip workflow now checks out the triggering ref and verifies
HEAD == GITHUB_SHAbefore building release artifacts.
Fastboot and Firmware Selection
- Added
firmware/boot_asd.cfghandling in fastboot stage-1 for a validated default ASD boot target. - Added frontend firmware-list actions for viewing, setting, and clearing the default firmware.
- Added one-shot handoff priority over button override so menu-launched stock firmware is not cancelled by a still-held input.
- Tightened boot override to B only, with separate SF2000 and GB300 scan paths, saturated-read filtering, stable-poll checks, and trace codes for default config failures.
Frontend Library Discovery
- Removed boot-time and delayed automatic index loading from the normal startup path.
- Added lazy ROM and media folder discovery using configurable
rom_roots. - Added packaged
frontend/defaults/frontend.opt, includingrom_roots,auto_index=0, andfast_sd=uhs25. - System entries avoid stale zero counts when startup indexing is intentionally skipped.
- The visible Auto index setting was removed from the normal settings list.
Libretro Cores and Fast-Forward
- Added the pinned
gpsp_multicorecheckout and build wrapper. - Applied SF2000 gpSP safety hooks to
gpsp_multicore: in-memory content loading, ROM-buffer loading, long-load progress, reset progress, and MIPS dynarec guards. - Renamed the packaged multicore GBA module to
gpsp-gbac-prostyand updated frontend catalog, smoke checks, host option handling, docs, and notices. - Reworked fast-forward host behavior:
- advertises skippable A/V while fast-forward is active,
- bypasses frame pacing,
- suppresses audio status during fast-forward,
- throttles presentation instead of dropping every presented frame,
- exposes speed and frameskip through quick-menu actions,
- maps gpSP fast-forward speed to temporary frameskip intervals.
Audio Runtime
- Added hardware SND volume/mute control before opening the external speaker gate.
- Restored the confirmed one-channel SF2000 mono route and removed user-facing software gain.
- Libretro host now clamps stale launch gain to 1x.
- Media and libretro audio paths refresh the audio platform and I2SO route before enabling output.
- Core-reported sample rates in the safe 8-48 kHz range are used directly instead of forcing all cores through a fixed 32 kHz resampler.
Media Playback
- Default
HCRTOS_MEDIAis firmware-linked again; module mode remains for loader diagnostics becausehcplayer_create()can stall from the SD-loaded module path. - Unsafe media-module playback is blocked with a visible failure path and log entry.
- Media startup now keeps a loading screen visible, closes the frontend framebuffer only at the controlled handoff point, and avoids redrawing the boot logo on return.
- Restored the confirmed SF2000 media geometry: LCD is 320x240, while HCRTOS video output uses the HD plane with a 1920x1080 display rectangle.
- Added on-demand media driver initialization, URI playback fallback, cached read/seek callbacks with
AVSEEK_SIZE, and more detailedhcplayer_*boundary logging.
Diagnostics and Crash Handling
- Added retained exception records in the fastboot handoff memory area for cause, EPC, BADV, and RA.
- Panic paths now log exception details before drawing the panic screen and arm the watchdog before reset.
- Boot logs report and clear retained exception records after log reset.
- JS2300 allocation and runtime alignment diagnostics were added for future MIPS alignment-fault analysis.
Documentation
- Updated README, AGENTS notes, architecture docs, performance notes, hardware findings, frontend docs, libretro core quirks, and cores README for the new boot, discovery, media, audio, fast-forward, and license behaviors.
Verification Noted During Development
The range includes commits verified with combinations of:
make
make quick-check
make verify
make layout-check
make -C cores gpsp_multicore
make -C cores update-core CORE=gpsp_multicore
make HCRTOS_MEDIA=module
make clean && make verifyFull Changelog: v0.4.3...v0.4.4
Unifrog v0.4.3-fixes-defaultboot
Same as v0.4.3-fixes plus:
Added a default firmware boot option: UniFrog now uses firmware/boot_asd.cfg to boot a selected .asd firmware by default. Hold any button during power-on to skip that default and boot UniFrog instead.
In UniFrog’s Firmware menu, press SELECT on a firmware to make it the default, or choose the UniFrog default row to clear it.
Full Changelog: v0.4.3-fixes...v0.4.3-fixes-defaultboot
Unifrog v0.4.3-fixes
Same as v0.4.3 plus:
- Add fast forward menu item to pause quick menu
- Safe 1-bit mode for loading frontend. Quick SD mode for loading ROMs and Media.
Full Changelog: v0.4.3...v0.4.3-fixes