Simple Launcher v5.6.0 enhances retro gaming by introducing new features like an AI-powered parameter suggestion system and a loading overlay for smoother experiences. It includes a GameFileWatcherService to monitor ROM changes, improved file extraction processes, and better error handling specifically for OneDrive paths. The update also implements CHD support for Kega Fusion and enhances PCSX2 functionality. User interface improvements, including the addition of cancel buttons and tooltips, are part of the update, along with a comprehensive dependency injection refactor. The tool’s logging and debugging capabilities have also been optimized for performance and reliability.
(HEY YOU!! We hope you enjoy! We try not to run ads. So basically, this is a very expensive hobby running this site. Please consider joining us for updates, forums, and more. Network w/ us to make some cash or friends while retro gaming, and you can win some free retro games for posting. Okay, carry on đ)
Simple Launcher v5.6.0 has been released. This emulator frontend makes enjoying retro games easier than ever.
Simple Launcher Changelog:
Parameter Resolver API
“Suggest” buttons addition â Buttons have been added to the Edit System window for each emulator parameter field.
AI-powered parameter suggestions â An AI-driven API provides optimal emulator settings based on system configuration.
Confirmation prompt â Displays a dialog with the suggested setting and an explanation before implementation.
Explanation format â If the AI response begins with “Explanation:”, that content is interpreted as the explanation and not added to the emulator parameter field.
Loading overlay feature â Introduced a new loading overlay during AI parameter resolution.
URL normalization â The AI parameter resolver URL now has a trailing slash and features a fixed 60-second timeout.
Image Matching Enhancements
Annotation stripping â The new EnableAnnotationStripping option removes region tags, revision numbers, and other annotations from filenames for improved cover image matching.
Game File Watcher
Introducing GameFileWatcherService â Monitors ROM system folders for external file modifications (create, delete, rename) and auto-refreshes the game list upon detection of changes.
Debouncing mechanism (500ms) â Prevents fast re-scanning during bulk file operations like archive extractions.
Automatic monitoring â Monitoring starts and stops automatically when switching between systems.
7za Fallback Extraction
Automatic switch to 7za â In cases where SharpCompress fails to extract .7z files, the application will automatically retry using bundled 7za.exe (or 7za_arm64.exe on ARM64).
Added binaries â 7za binaries have been included in tools/SevenZip/ and tools/BatchConvertIsoToXiso/, along with 7za.exe / 7za_arm64.exe for fallback extraction/conversion in BatchConvertToRVZ and BatchConvertToCHD.
Batch File Path Validation
Validation prior to execution â Batch files will now be validated before they are run to identify any missing referenced paths.
Warning dialog provision â A dialog will show the missing paths with options to continue or cancel.
Direct execution implications â Batch files are executed using UseShellExecute instead of cmd.exe /c for enhanced compatibility.
OneDrive Error Guidance
Clarified OneDrive errors â If a game file does not launch and its path includes “OneDrive”, the error message will provide specific sync and download instructions.
Localized updates â The oneDriveIssue string is now available in all supported languages.
Invalid Folder Character Checks
Path character validations â System folder and image folder paths are checked for invalid characters before directory creation attempts.
Clear error alerts â A message will list any invalid characters found.
CHD Integration
Kega Fusion support â Added CHD support for the Kega Fusion emulator.
Exit code feedback â CHD mount failures will now provide the process exit code in error messages for easier debugging.
Dokan validation â A check for Dokan installation has been added prior to CHD mount operations.
ARM64 capability â CHD images are now mounted using architecture-specific CHDMounter binaries (CHDMounter.exe on x64, CHDMounter_arm64.exe on ARM64), allowing CHD mounting on Windows ARM64. A README file is included.
PCSX2 Enhancements
Error detection improvements â The PCSX2 configuration injection now detects file permission issues and provides user-friendly notifications instead of crashes.
Portable execution mode â The configuration injection now correctly locates the config file when PCSX2 is run in portable mode.
History Database Update
MessagePack utilization â Migrated history.xml to history.dat (MessagePack binary format) for faster loads and reduced size.
Backward compatibility assurance â If history.dat is unavailable, history.xml will be used instead.
Global Search Upgrades
Result counts displayed â The global search window now shows the total number of matching results.
Support for AND/OR operators â Boolean operators are now employed for more flexible search queries.
Enhanced loading states â Improved visual feedback during search processes.
Debug Logger Enhancements
Buffered logging â Debug messages are now buffered for enhanced performance.
Download Stability
Automatic retries â Downloads will now automatically retry with exponential backoff after a failure.
Handling of read-only files â Extraction will now manage read-only files effectively.
Startup Resilience
Fallback logging mechanism â If Serilog initialization fails, the app will revert to debug output instead of crashing at startup.
Order of initialization â The service provider is constructed only after checking the temp folder, and startup cleanup (trash + temp files) is more resilient.
Timeout provisions â Added timeouts for silent update checks and usage statistics calls to prevent indefinite hanging.
F8 Hotkey Notifications
Hotkey conflict detection â If the F8 global hotkey cannot be registered due to another program, Simple Launcher now displays a warning and disables screenshot functionality instead of failing quietly. All languages supported.
RetroAchievements Upgrades
Enhanced system matcher â The RetroAchievements system matcher has been updated for improved game matching accuracy.
Credential Encryption
Secure RetroAchievements credentials â RA credentials are now encrypted using Windows Credential Manager.
Organized settings structure â Emulator configuration has been restructured for better organization.
UI/UX Upgrades
Addition of cancel buttons â Cancel buttons have been incorporated into SetGamepadDeadZone, Debug, SetLinks, and EditSystem dialogs.
Tooltips introduced â Tooltips now available for data grids, preview images, and viewer windows.
Dead zone revert confirmation notice â A confirmation message appears when reverting dead zone settings.
Automatic game list refresh â The game list now refreshes automatically when a file that no longer exists on disk is deleted.
Emergency overlay release button â An emergency overlay release button has been added to GlobalStatsWindow.
Debug Window Updates
Initialization restoration â The Debug Window opens correctly again: its constructor (lost during the Serilog/DI refactor) has been restored, and it now applies the current app theme upon opening.
Styling and closure enhancements â Improvements to Debug Window styling, log text color, and closing/exception handling.
-debug command-line option â Launching SimpleLauncher with the -debug flag now opens the Debug Window alongside the main window.
parameters.md path resolution fix â The parameters guide is now resolved relative to the application folder rather than the current working directory. Earlier, launching from another working directory (through shortcuts, scripts, or IDE) would make parameters.md appear “missing” and trigger a modal reinstall dialog that halted the app and the Debug Window.
Path Management
Quote trimming feature â Surrounding quotes are now automatically removed from paths.
Structured Logging Integration
Serilog implementation â All logging passes through Serilog (ILogger), and the custom ILogErrors abstraction has been removed. The Debug Window receives log entries via a dedicated Serilog sink, and a rolling daily file sink (7 days retained) is logged to the local app data folder. Bug report sinks have been added to all projects (including tools and Updater).
Game List & User Interface
Asynchronous system manager loading â System managers now load asynchronously, preventing UI blocking at startup.
Embedded image path corrections â Pack URI paths for embedded images and icons have been fixed.
Refined minimize-to-tray handling â Improved minimize-to-tray behavior through proper window state change management.
Dependency Injection Overhaul
Comprehensive DI transition â Static service dependencies have been replaced with dependency injection throughout the application.
Constructor injection usage â All services, ViewModels, and windows now utilize constructor injection.
MessageBoxLibrary.cs has been removed â Now replaced by IMessageBoxLibraryService.
Static DebugLogger substitute â Static DebugLogger has been substituted with IDebugLogger interface.
Replaced ContextMenuFunctions â Static ContextMenuFunctions is replaced with IContextMenuFunctions interface.
MVVM Architectural Refactor
Refactoring of all configuration windows to the MVVM pattern completed.
Refactored RetroAchievements window to MVVM.
Added ViewModels for multiple windows, including SupportWindow.
Introduced the IWindowContext abstraction to decouple the game launcher from MainWindow.
Removal of Outdated Components
GameCoverScraper extraction â The Game Cover Scraper tool has been eliminated from the Tools menu, along with associated binaries and resources. Use Find Rom Cover or Retro Game Cover Downloader instead.
General Enhancements
Emulator documentation refresh â Updated parameters.md (e.g., new CPCEC download link).
Code quality improvements â The codebase now compiles with nullable reference types enabled.
Dependency Updates
SharpCompress from 0.48.1 â 0.50.4
Tomlyn from 2.4.0 â 2.6.0
YamlDotNet updated to latest version
MessagePack from 3.1.6 â 3.1.8
Microsoft.Data.Sqlite from 10.0.8 â 10.0.10
Microsoft.Extensions.* from 10.0.8 â 10.0.10
Microsoft.Extensions.Http.Resilience from 10.6.0 â 10.8.0
Microsoft.CodeAnalysis.NetAnalyzers from 10.0.300 â 10.0.302
Microsoft.NET.Test.Sdk from 18.5.1 â 18.6.0
SourceGear.sqlite3 upgraded to 3.53.4
Added Moq 4.20.72 (for unit testing)
Added Serilog 4.4.0 with Serilog.Sinks.Async 2.1.0, Serilog.Sinks.Debug 3.0.0, and Serilog.Sinks.File 7.0.0 (new)
Added Meziantou.Analyzer 3.0.139 (new)
Retro Replay Retro Replay gaming reviews, news, emulation, geek stuff and more!