Zaparoo Frontend v1.1.0 and Core v2.14.0 released
Zaparoo Frontend v1.1.0 and Zaparoo Core v2.14.0 are the next paired Zaparoo releases.
Thank you to Andrea Bogazzi for the Frontend TATE, layout, and performance work plus the Core service startup hooks, Matthew O'Gorman for player 3 and 4 coin input commands, and devilschile2 for Basque translation work.
Now available via Update All on MiSTer! Thank you theypsilon who has added a dedicated Zaparoo item to Update All in the Tools & Scripts section. This moves Zaparoo out of the old MiSTer Extensions repo and replaces the manual mrext/tapto repo. Update All also allows you to enable Zaparoo Frontend in your MiSTer.ini file automatically.
Frontend highlights:
- TATE mode: rotate Frontend for vertical CRT setups.
- More MiSTer display options: extra resolution choices:
1920x1200,1920x1440,2048x1536, and2560x1440. - Resume Game: a new hub action can jump back into the most recently played game.
- Faster browsing: smoother rapid navigation, smarter cover prefetching, faster Arcade browsing.
- Detail view updates: improved metadata display, including compact CRT metadata labels.
- Settings subpages: settings are grouped into Display, Controls, Library, and Support pages.
- Media actions by system: update the media database or scrape metadata for one system from that system's options menu.
- Language selection: Basque and Spanish can be selected from Frontend settings.
Core highlights:
- Scraping status: metadata scraping now reports clearer lifecycle state, per-system progress, pause state, and whole-run step progress.
- Scrape resume fixes: scraping pauses while media is running, resumes more reliably, and can be resumed through the
media.scrape.resumeAPI. gamelist.xmlimprovements: more reliable artwork matching, Companion entry handling, nested media support, region/language tags, and tag display names.- Frontend API support: faster latest-history lookup, resized media images, more reliable media browsing, and WebSocket request prioritization.
- MiSTer updates: DB9 core launchers, RA Atari2600, RA Game Boy Color, RA Super Game Boy, RA set names, NeoGeo subfolder scanning, and AmigaVision diagnostics.
- ZapScript updates: system launcher defaults now apply to direct path launches, and
input.coinp3/input.coinp4are available. - Service hooks: new
on_bootandon_readyhooks run ZapScript during Core startup.
Download
Frontend
Core
Frontend: Display modes
Frontend v1.1.0 adds TATE mode for vertical CRT and cabinet setups. The list/detail layout has been tuned for portrait orientation, so browsing a vertical game library does not feel like a sideways version of the normal layout.
MiSTer display settings also get more fixed resolution choices: 1920x1200, 1920x1440, 2048x1536, and 2560x1440.
Frontend: Browsing
Browsing has had another responsiveness pass. The new Resume Game hub action can jump back into the most recently played game, recent games are deduplicated by path, Arcade browsing is quicker, and rapid navigation keeps more covers ready around the current position.
Frontend also asks Core for resized cover images now, which keeps the cache useful without pulling huge artwork into memory. Detail views got a smaller polish pass too: compact CRT metadata labels, list picker scroll indicators, and selection auto-scroll when a picker has more rows than fit on screen.
Frontend: Settings
Settings are now split into Display, Controls, Library, and Support pages. The old single settings list was getting crowded.
Frontend: Library tools
Library actions can be more focused in this release. You can still update the whole media database or scrape metadata globally, but you can now update or scrape a single system from that system's options menu.
The Core status pill also shows nicer progress and spinner states while indexing or scraping is active.
Frontend: Support and languages
Support log uploads now include a short support summary, the Frontend log tail, and the Core log tail when Core is reachable. That gives Discord and GitHub support threads more context up front.
Basque and Spanish can also be selected from Frontend settings, and the bundled translation catalogs have been refreshed.
Core: Scraping status
Core v2.14.0 has media-library work behind many of the Frontend changes. Scrape status now includes lifecycle state, pause state, per-system progress, and whole-run step progress.
Scraping pauses while media is running, resumes after playback stops, and can be resumed manually through media.scrape.resume.
Core: Metadata imports
The gamelist.xml scraper handles more of the messy metadata layouts people already have on disk. That includes nested games, MiSTer Companion parent/child records, region and language tags, tag display names, and stale artwork paths that should be ignored instead of blocking a good match.
Core: Media APIs
The media APIs got faster under UI load. media.image can return resized images, preserving PNG transparency when needed and using smaller JPEGs for opaque artwork.
Browse requests, image misses, tag attachment, and WebSocket request priority all got work so Frontend can stay responsive while background media tasks are busy.
Core: Launching
Core now handles logical single-game folders more carefully. Single-child folders, cue/bin disc folders, and m3u disc folders can appear as launchable entries when there is one safe launch target. Ambiguous folders stay browseable instead of being guessed incorrectly.
Direct path launches also respect system launcher defaults when Core can infer the system, which makes Frontend's per-system launcher choices apply more consistently.
Core: MiSTer
MiSTer gets DB9 core launchers and more RetroAchievements launcher coverage: Atari2600, Game Boy Color, and Super Game Boy. RA launcher set-name handling has been fixed, NeoGeo romsets can be scanned from subfolders, and AmigaVision has extra launch diagnostics for troubleshooting (there is an upstream bug in AmigaVision which will be fixed in its next release).
Core: ZapScript
ZapScript gets input.coinp3 and input.coinp4 for player 3 and 4 coin inputs.
Core: Startup hooks
Core v2.14.0 adds two service startup hooks: on_boot and on_ready.
on_boot runs once after the device boots. on_ready runs every time Core starts and reaches readiness. Both run ZapScript, and **execute: scripts receive ZAPAROO_ENVIRONMENT with hook context.
As always, feedback and bug reports are welcome on our Discord, Frontend GitHub, or Core GitHub.
Enjoying this release? Three ways to support Zaparoo's development.
