Updating Emulators and RetroArch Cores Without Breaking LaunchBox

Safely update LaunchBox-managed and manually configured emulators, RetroArch, and cores without losing working paths, platform settings, firmware, saves, or rollback options.

Written By launchbox

Last updated 6 days ago

LaunchBox starts an emulated game by passing its game file to the emulator executable configured for that game and platform. An update is least disruptive when the executable path, platform association, command line, firmware location, and user-data folders continue to work.

Update one emulator at a time. Back up the working emulator, update it, and test representative games before moving on. Do not use Update All until you are comfortable recovering an individual emulator.

First determine who manages the emulator

Open Tools > Manage > Emulators. LaunchBox can check and update supported emulators that it recognizes through its emulator-management integration. Other entries are simply configurations that point to an executable you installed yourself.

  • LaunchBox-managed: the manager can show a version/status, and the emulator editor's Details page can offer Update and Reinstall.

  • Manually managed: LaunchBox continues to launch the configured executable, but you obtain and install updates using the emulator project's instructions.

The manager also has Update All, which processes supported entries that report an available update. Right-clicking an entry offers Don't check for updates; an entry with that option enabled is excluded from update checks and Update All.

Select an emulator and choose Edit. Before changing anything, record the following:

  • On Details: Emulator Application Path and Default Command-Line Parameters.

  • On Associated Platforms: Associated Platform, Core for RetroArch, Default Emulator, Default Command-Line Parameters, Extract ROMs, and Use M3U Playlists for Multiple Discs.

  • On Running Script and Exit Script: any custom automation you rely on.

  • On Dependency Files: any listed files and verification results. This page can help identify supported dependencies; it is not a backup of those files.

Back up both LaunchBox and the emulator

  1. In LaunchBox, choose Tools > File Management > Create Data Backup....

  2. Close running games and the emulator.

  3. Copy the emulator's complete working folder to a versioned backup location.

  4. Back up any emulator data stored elsewhere, including configuration, controller profiles, BIOS or firmware, saves, save states, memory cards, shaders, textures, and cheats.

  5. Record the emulator version and the application path shown in LaunchBox.

A LaunchBox data backup protects LaunchBox data and settings. It does not automatically include emulator folders or emulator data stored elsewhere on the computer.

Update and Reinstall are different. For LaunchBox-managed RetroArch, the Reinstall confirmation explicitly warns that the existing RetroArch folder will be removed and freshly installed, including configuration, BIOS files, and other customizations inside that folder. Back it up before proceeding, and do not choose Reinstall merely to obtain a routine update.

Establish a known-good test

Before updating, launch representative games through LaunchBox. Also open the emulator directly and test the same content when practical. For an emulator serving several systems, include at least one game from each important platform, plus examples that require a BIOS, a disc image, compressed content, or multiple discs.

Check controllers, sound, saving, loading, pause behavior, and exiting. This gives you a known-good result to compare against after the update.

Update a LaunchBox-managed emulator

  1. Open Tools > Manage > Emulators.

  2. Select the emulator and choose Edit.

  3. On Details, use Update when LaunchBox reports that an update is available.

  4. Read and accept the update prompt, then let the operation finish.

  5. Re-open the editor and verify the application path and Associated Platforms rows.

  6. Test the same games used for the known-good test.

LaunchBox can update only emulators supported by its management system. The absence of an Update button does not mean the emulator is current; it may be a manually configured build, an unsupported variant, or excluded from update checks.

Safely update a manually managed emulator

  1. Read the emulator project's release notes and Windows installation instructions.

  2. Download the correct build from the project's official source.

  3. Prefer a new, versioned folder when the emulator supports portable installation. This preserves an easy rollback.

  4. Copy only configuration and user files documented as compatible with the new version.

  5. Run the new executable directly and test a game.

  6. In Tools > Manage > Emulators > Edit > Details, browse Emulator Application Path to the new executable if its location or filename changed.

  7. Test through LaunchBox, then retain the old folder until the new version is proven.

If you overwrite files in the existing folder and the executable keeps the same name, LaunchBox normally needs no path change. However, an in-place replacement can overwrite emulator configuration and makes rollback more difficult.

Updating RetroArch and its cores

RetroArch and its libretro cores are separate components: retroarch.exe is the frontend, while core DLLs live in RetroArch's configured cores directory. LaunchBox's RetroArch integration can update RetroArch and available cores when that installation is managed by LaunchBox. A manually installed RetroArch should be updated using the method supported by that installation.

Before updating, back up the entire RetroArch folder and any custom directories configured outside it. Pay particular attention to:

  • retroarch.cfg and any per-core or per-game overrides;

  • the cores and info directories;

  • system for BIOS or firmware, unless you redirected that directory;

  • saves, states, controller autoconfigurations, shaders, overlays, and playlists.

Afterward, start RetroArch directly and confirm its directory settings. Then edit RetroArch in LaunchBox and inspect Associated Platforms. The Core list is built from DLLs found in the cores folder beside the configured RetroArch application path; LaunchBox marks an associated core as missing when its expected DLL is not found there.

For a manually managed RetroArch build, the built-in Online Updater may provide Core Downloader and Update Installed Cores, depending on how the build was distributed. Follow the RetroArch documentation for that build rather than assuming every package exposes the same updater options.

A core update can change emulation behavior and save-state compatibility. Preserve normal in-game saves, and never keep irreplaceable progress only in save states.

Verify Associated Platforms

Open Tools > Manage > Emulators, edit the emulator, and select Associated Platforms. Check each row:

  • Associated Platform must match the local LaunchBox platform name.

  • Core must name the intended installed RetroArch core. A similarly named replacement may have different firmware, save, accuracy, or content requirements.

  • Default Emulator determines whether this emulator is LaunchBox's default for that platform.

  • Default Command-Line Parameters must still be accepted by the updated emulator.

  • Extract ROMs should be enabled only for content the emulator needs extracted before launch. LaunchBox extracts to a temporary location for launching; it does not permanently convert the library.

  • Use M3U Playlists for Multiple Discs should be enabled only when that emulator or core supports the M3U workflow. Do not change it merely because the emulator was updated.

These are per-platform settings. An emulator used by multiple platforms can therefore have different cores, command lines, extraction behavior, and M3U behavior for each platform.

BIOS, firmware, and Dependency Files

An update can reset an emulator's directories or introduce new firmware requirements. RetroArch cores commonly look in RetroArch's configured System/BIOS directory; standalone emulators use their own settings.

  • Preserve lawful copies of required files and their expected filenames and folder structure.

  • Verify the emulator's configured firmware directory after an update.

  • Use the emulator editor's Dependency Files page when LaunchBox has dependency definitions for that emulator and platform.

  • If every game for one platform fails, check its core and firmware requirements before editing individual games.

Saves, save states, and memory cards

These files are primarily managed by the emulator, and their locations may be inside the emulator folder, in a Windows user-data folder, or in a custom directory. LaunchBox's own data backup is not a substitute for backing them up.

  • Normal in-game saves and memory cards are often more portable between versions than save states, but compatibility is emulator-specific.

  • Save states can depend on the exact emulator or core version. Keep the previous version available if an important state must be resumed.

  • Before updating, create a normal in-game save whenever possible.

  • If saves seem missing afterward, compare the old and new emulator directory settings before moving or copying files.

Portable and relative paths

LaunchBox stores the emulator application path relative to the LaunchBox folder when it can. Keeping a portable emulator under the LaunchBox directory can therefore make a LaunchBox installation easier to move. This does not make every emulator fully portable: an emulator may still write settings or user data to Windows profile folders, AppData, Documents, or the registry.

Moving an emulator can also invalidate relative BIOS, save, texture, shader, and controller-profile paths inside the emulator's own configuration. Verify those paths in the emulator after a move.

MAME requires extra care

MAME's executable and ROM-set definitions evolve together. An executable update does not update or convert the ROM set. Record the working MAME and ROM-set versions, preserve configuration and high-score data, and test the new executable with the appropriate set before replacing the old one.

The LaunchBox MAME full-set importer organizes and imports what is present; it does not transform an older set into a newer MAME set.

Rollback

  1. Close LaunchBox and the emulator.

  2. Restore the previous emulator folder, or point Emulator Application Path back to the previous executable.

  3. Restore the matching configuration and user files if the newer version changed them.

  4. Restore a LaunchBox data backup only if LaunchBox records or settings were also changed incorrectly.

  5. Test the emulator directly, then through LaunchBox.

Quick troubleshooting

  • Nothing launches: verify Emulator Application Path, the executable's filename, Windows security or quarantine, and global command-line parameters.

  • Only one platform fails: verify its Associated Platforms row, core, per-platform command line, extraction/M3U settings, and firmware.

  • Only one game fails: inspect that game's application path, custom command line, additional applications, and content format.

  • LaunchBox marks a RetroArch core missing: confirm the selected core DLL exists in the cores folder beside the configured RetroArch executable.

  • The emulator opens but not the game: test the same content directly; then compare global, per-platform, and per-game command-line parameters.

  • Saves disappeared: compare old and new save, system, and memory-card directories before copying anything.

  • A state no longer loads: return to the prior emulator/core version long enough to create a normal in-game save.

  • Controllers changed: restore or rebuild the emulator-side controller configuration.

A reliable update habit

Keep versioned backups, update one layer at a time, and test the same representative games before and after each change. Once the updated emulator, its firmware, saves, controllers, and all associated platforms work reliably, you can retire the rollback copy.