π New Features
- Group Files by Folder: Groups multi-file MAME games (e.g., Software List CHDs/ROMs from PleasureDome) into single UI entries. Compatible only with MAMEβwarnings shown for non-MAME setups. Handy to launch MAME Software List CHDs.
- RetroGameCoverDownloader: New tool to help users get cover art for their games.
- Automatic Creation of 'Microsoft Windows' System: Introduced an algorithm to automatically add links to Epic Games, Steam Games, and Windows Store Games to the frontend.
- Advanced Global Search: Filter by system, filename, MAME description, folder name, and recursive search.
- First-Run Welcome Flow: Guides new users to Easy Mode for quick setup.
- Kebab Menu: "..." button on game entries for quick context actions.
- Configurable Status Bar: Timeout (default 3s) with detailed feedback for loading/saving/actions.
π§ Core Refactoring
- Dependency Injection (DI):
GameLauncher,GamePadController,UpdateChecker,ExtractionService,PlaySoundEffects, etc., now instance-based services. - ExtractionService: Refactored from
ExtractCompressedFilewithIExtractionServiceinterface; retry logic for file locks. - Thread Safety:
SemaphoreSlimfor game caches;Dispatcher.InvokeAsyncpreferred. - .NET 10: Target framework upgraded; C# 14 features.
π¨ UI/UX Improvements
- UpdateHistoryWindow: Native Markdown rendering (no external deps).
- EditSystemWindow:
GroupBoxβExpander(collapsible); persist states. - Resizable Windows:
SetFuzzyMatchingWindow,SetGamepadDeadZoneWindow. - Dark Mode Toggle: Navigation menu icon/handler.
- Loading Overlays: Consistent across windows; disable UI during ops.
π οΈ Tools & Emulators
- Updated Binaries: tools (
bchunk.exe,GameCoverScraper,FindRomCover.exe,BatchConvertIsoToXiso.exeetc.). - New Emulators: Ymir (Saturn), NooDs (DS), Gearlynx/Gearboy (Lynx).
- Docs: Updated
parameters.md/helpuser.xmlwith Amiga models, MAMErompathexamples.
π‘οΈ Robustness & Perf
- Cancellation Tokens:
GlobalSearchWindow,PlayHistoryWindow. - Atomic Saves: Favorites prevent corruption via temp files.
- Cache Invalidation: Clear RA cache on credential changes.
- Localization: 100+ new strings (artwork, Easy Mode, errors).