Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

RetroArch is a frontend, not an emulator by itself. It loads separately installed libretro cores that provide emulation for different systems, and some cores also require BIOS files. To get started, install RetroArch, add a compatible core, and use legally obtained game content.

This guide covers stable RetroArch 1.22.2. Menu names are based mainly on the Windows desktop edition; setup principles also apply to other platforms.

Choose the right RetroArch edition

Download RetroArch from the official platforms page. Choose Stable unless you need a recent fix or feature; Nightly builds include daily changes and may be less reliable. The official site recommends the full desktop version for the complete feature set and built-in updater.

Edition What to know
Standalone Windows/Linux/macOS Recommended for the full feature set and built-in updater.
Steam No Core Updater or thumbnail scraping; only selected cores are downloadable through Steam.
Google Play The official site marks these versions outdated and recommends the official APK or another app store.
Nightly Includes newer daily builds but may introduce bugs.

Windows download choices

The official Windows page provides 64-bit and 32-bit installers and downloads. Use Installer (64bit) on most modern Windows PCs; choose 32-bit only if your computer requires it. A Nightly folder may contain RetroArch.7z or a dated setup executable. Extract it to a folder you control, such as C:\RetroArch.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Logitech G F310 Wired Gamepad Controller Console - Blue/Black
  • With broad game support, the Logitech Gamepad F310 works with old standbys to today's biggest titles, so it's easy to set up and use with your favorite games.
  • Profiler software allows the gamepad to be programmed to perform keyboard and mouse commands for games without gamepad support.* * Requires software installation.
  • A familiar control layout that doesn't require a learning curve to be able to use, with all the same buttons as on an Xbox 360.
  • The unique floating D-pad rests on four switches-instead of a single pivot point-making it responsive to quick changes in direction.
  • The six-foot cord lets you lean back and play a comfortable distance from your PC monitor.

Install RetroArch and create a sensible folder layout

Keep games, saves, states, BIOS files, and cores in separate folders. For example:

C:\RetroArch\roms\NES, C:\RetroArch\roms\SNES, C:\RetroArch\system, C:\RetroArch\saves, C:\RetroArch\states, and C:\RetroArch\cores.

Games can be stored elsewhere, including on another drive. Separating them from RetroArch’s program and configuration files makes upgrades and backups easier.

To change storage locations, open Settings → Directories, select a directory, then navigate with the File Browser.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Directory Purpose
System/BIOS BIOS and other system files required by some cores.
Savefile Permanent in-game battery saves.
Savestate Instant save-state files created by RetroArch.
File Browser Starting location for Main Menu → Load Content.
Cores Installed libretro emulator cores.

The Windows guide may call the browser location Browser Directory; the general directory menu calls it File Browser.

Where is RetroArch’s configuration file?

Choose Main Menu → Configuration File → Save Current Configuration. RetroArch displays the saved path in an on-screen notification. The configuration variables for cores and BIOS files are libretro_directory and system_directory, respectively.

Install your first core

RetroArch needs a core before it can run a game. Choose one for the game’s original system, not merely because it accepts the file extension.

  1. Open Online Updater.
  2. Select Core Downloader.
  3. Choose a suitable core, such as Nestopia or Mesen for NES, Snes9x for SNES, or a compatible PlayStation core.

If Core Downloader is missing, enable it at Settings → User Interface → Menu Item Visibility → Show Core Downloader, then return to Online Updater → Core Downloader.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Rii Classic Retro USB Wired Game Controller for PC Gaming, Grey, 2 Pack
  • 【Supported Operating System】The Game Controller is specifically designed for playing classic old school retro snes games on computer or laptop. Compatible with Windows 98 / ME / Vista / 2000/2003 / XP / 7 / 8 / 8.1 / 10/11, Mac OS X/ OS X 10.0 and beyond, Raspberry Pi, Raspberry PI 2 model B,Model A, Raspberry Pi 1 Model B+, Raspberry Pi 2,Raspberry Pi OS, Raspberry Pi 3 Model B+, Raspberry Pi 3, Raspberry Pi Zero.
  • 【Simple USB Plug and Play】If your program or application accepts USB controller input, this classic game controller do not need install drivers or patches. 1.5 meter external cable(approx. 5 ft. Long). Notice: Please download the game emulator first before start the games, and then you must manually set the buttons and directionals within the emulator you're using, and the controller not automatically assigns buttons/directional axes. If on the Steam platform, you need to first enable Steam's "Universal Controller Configuration Support" and then restart Steam. After entering the game, you also need to manually bind key positions in the game
  • 【High Sensitivity without Delay】Super sensitive buttons for precision control: 6 fire buttons, a 'Start' button and a 'Select' button, motion control cross. Play your favorite old school games with classic retro feel. Fits perfectly in the hand and also perfect for two player action.Note: Not applicable to Switch/PS games. Not Compatible with TV/ TV Box, third Mini Games Box and Tesla Model 3
  • 【Supported Game Emulators】The game controller works with most emulators. Download any emulator you wish to download and use from Google and do the same with ROMS. Notice:Third party controller, not original controller. But it works phenomenal with the Raspberry Pi game emulation and so on
  • 【Product Service】If you have any problem during use, send message to us and we will help you to solve the problem soon

Ubuntu installations from the RetroArch PPA disable the interface Core Downloader. Install cores through APT instead, for example:

sudo apt-get install libretro-nestopia

You can type sudo apt-get install libretro- and use shell completion to find the full package name. PPA-managed cores may be in a location RetroArch cannot write to; changing the core directory helps only if the new location is writable.

A core’s name and version appear in the lower-left area of Ozone, XMB, and RGUI, or in GLUI’s notification bar.

Add BIOS files when a core requires them

Many cartridge systems work without BIOS files. Some CD-based systems and handhelds require system files; PlayStation and PSP cores are common examples. Put required files in the configured System/BIOS directory, not the ROM folder. Check the documentation for the exact core and filenames. RetroArch does not provide copyrighted BIOS files or game content.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Launch a game manually

For a first test, launch a game manually:

  1. Open Main Menu → Load Core.
  2. Select the core for the game’s system.
  3. Open Main Menu → Load Content.
  4. Browse to the ROM or disc image.
  5. When prompted, choose Current Core or another compatible core.

If multiple cores can read the content, RetroArch asks you to choose. Select the core intended for the platform; a matching extension alone does not identify the right emulator. Every game successfully launched is added to the History playlist.

Close a game safely

During gameplay, press the default desktop Quick Menu key, F1, and choose Close Content. This closes the game and core and returns to the Main Menu. On PC, pressing Esc twice quits RetroArch and can do so without saving configuration changes.

ROMs, ZIP files, and disc images

ROMs can be stored anywhere RetroArch can access. System-named subfolders are optional but help organize a large collection.

ZIP files are commonly used for cartridge and arcade workflows. RetroArch can handle an archive in two ways:

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
KIWITATA 2X Classic SNES USB Controller for PC Gamings, Retro SNES Wired USB Game Emulator Controller for Windows XP 7 8 11 Mac Raspberry Pi
  • ✅【Compatibility】Compatible with Raspberry Pi, Windows PC, Linux ,Mac. Specifically designed for playing classic old school retro snes games on computer or laptop.This is the USB controller what has a USB plug for PC, NOT compatible for Original SNES super Nintendo console
  • ✅ 【Ergonomic Design】Super precise cross key and function buttons,the cross direction key adopts frosted concave design,anti-sweat and anti-slip.The shape of the controller is designed to fit the contour of your hands,easy and comfortable to hold.
  • ✅ 【Advanced Game Experience】PC running operating system:Windows 98/2000/ ME/XP/Vista/Win7/8/8.1/11 or later,or Mac running OS X 10.0/Mac OS X or above.It works with most of emulators you wish to download and use,such as VirtuaNES(PC),sens9x,Zsens,sensgt,Uosnesw,RetroArch,OpenEmu(MAC),NESEmu and Jnes etc.
  • ✅ 【Wired USB Connection】Standard USB 2.0 port with a 1.5 meters (5ft) cable, don't need to install any drivers, you must manually set the buttons and directionals within the emulator you're using, and the controller not automatically assigns buttons/directional axes. Notice: please download the game emulator first before start the games, you can download the emulator “VirtuaNES” on PC and “OpenEmu”on MAC.
  • ✅【Satisfaction】Third party controller(USB Version), not for original snes console and not support for switch. If there is an incompatibility on MAC or Raspberry Pi , please contact the seller for a support.
  • Browse archive opens the ZIP so you can choose a file inside.
  • Load archive passes the archive to the core as an image or archive.

Disc-based content, such as CD images, generally should remain unzipped. Keep the image and any required cue, bin, CHD, or related files arranged according to the core’s requirements. A missing cue sheet or improperly separated files can prevent a game from starting.

Import a collection into playlists

Before scanning, update RetroArch’s recognition data and restart if the files were just updated:

  1. Choose Online Updater → Update Core Info Files.
  2. Choose Online Updater → Update Databases.
  3. Restart RetroArch.

Open Playlists → Import Content. On some installations, Import Content appears on the Main Menu. Its location can be changed through Settings → User Interface → Menu Item Visibility → Show ‘Import Content’.

Automatic scan

  1. Open Import Content.
  2. Choose Scan Directory.
  3. Select the folder containing your games.
  4. Start the scan and wait for it to finish.

The scan is recursive, so selecting a parent folder also scans subfolders. Large collections may take several minutes. Automatic scanning is strict: the ROM’s CRC checksum or disc serial normally must match the libretro database. A game can run when loaded manually yet fail to appear because its dump, filename, checksum, serial, or database entry does not match. A compatible core should be installed unless you enable Scan Without Core Match.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Loose or custom scanning

A loose/custom scan can add unmatched content, but entries may lack thumbnails and will not appear in Explore. A successful scan does not necessarily mean RetroArch recognized the game in its database.

Download thumbnails without breaking custom artwork

For recognized playlists, open Online Updater → Playlist Thumbnails Updater and select the console or system playlist. Matching depends on playlist and game names matching the thumbnail server’s names, so manually scanned entries may launch but receive no artwork. The updater can overwrite custom thumbnails when the server has an image for the same game; back up custom art first if needed.

On-demand matching based on ROM filenames is disabled by default. Enable it at Settings → Playlist → Use filenames for thumbnail matching. RetroArch 1.17.0 and later can try an individual thumbnail up to three times with flexible matching, including in the on-demand downloader. The documented workflow is to use playlist, individual, on-demand, or custom thumbnails rather than a complete thumbnail pack.

Understand playlist files before editing them

RetroArch 1.7.5 and later uses JSON playlists with the .lpl extension. The older six-line format remains backward-compatible but is deprecated. A JSON playlist entry includes fields such as path, label, core_path, core_name, crc32, and db_name. On Windows, a path in a JSON string must escape each backslash, for example C:\\retroarch\\downloads\\alienar.zip. Use forward slashes on Linux, macOS, and Android; use backslashes on Windows and DOS.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
2 Pack USB Controller for SNES Retro Gaming, miadore SNES USB Classic Gamepad Joypad Gamestick for Windows PC MAC Linux Retropie Raspberry Pi 3
  • ✔ Compatible with Windows98/ME/Vista/2000/2003/XP/7/8/8.1/10; Mac OS X and beyond ; Emulators ;Raspberry Pi ;Raspberry PI 2 model B ;Retro Pi OS; Retropi System.
  • ✔ Simple USB plug and play, no drivers and software required. Note: If you have trouble with using this, make sure it is plugged in before starting your emulator. Also go into input settings and you may have to map the buttons.
  • ✔ Work with any emulator you wish to download and use. Google S-N-E-S emulator and then the same for Roms. Way better than normal joypad and keyboard and mouse playing to really enjoy the emulator experience.
  • ✔ Super sensitive buttons for precision control, Eight-way directional pad and six digital buttons. Play your favorite old school games with authentic retro feel. Arrowed D-pad, concave X and Y buttons, convex A and B buttons, rubber start and select buttons. Cord is approx. 5 ft. Long, providing a comfortable distance while playing.
  • ✔ If you want to play S-N-E-S, N-E-S, PSX, Atari, Genesis, or any other types of this vintage of games... get this. You will not regret it. NOTE:Third party controller, not original S-N-E-S / N-E-S controller. But it works phenomenal with the Raspberry Pi game emulation and so on.

Before editing a playlist, close RetroArch and make a backup. Malformed JSON or an incorrect path can make a playlist disappear.

Arcade games need a different approach

Arcade cores require core-specific ROM sets. A game may fail because the set is incomplete, targets a different core, lacks a parent ROM or BIOS file, uses an unsuitable split or merged arrangement, or has no compatible core for the platform. Changing cores at random rarely fixes this.

A complete Full Non-Merged set is the simplest arrangement for beginners because each game’s archive contains the files it needs. For an arcade playlist, use a custom scan with the correct DAT file rather than relying on the normal automatic database scan. Scanner or rebuilder options such as Fix and Remove Matched Sourcefiles can rename or delete ROM files, so back up files before using them.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Launch RetroArch from a command line

The basic Unix-style command is:

retroarch -L /path/to/libretro/core.so game.rom

A Flatpak example is:

flatpak run org.libretro.RetroArch/x86_64/stable -L /home/MYUSERNAME/.var/app/org.libretro.RetroArch/config/retroarch/cores/nestopia_libretro.so Tetris.nes

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

On macOS, the executable is /Applications/RetroArch.app/Contents/MacOS/RetroArch. A Steam example is:

steam -applaunch 1118310 -L "/path/to/steamapps/common/RetroArch/cores/nestopia_libretro.so" "/path/to/Tetris.nes"

Steam has a documented issue passing command-line arguments containing spaces, so keep the content filename free of spaces when launching this way.

Useful options include retroarch –verbose for logs, retroarch –help for command-line documentation, retroarch –features to check compiled features, retroarch –config customconfig.cfg to select a configuration, and retroarch –config baseconfig.cfg –appendconfig specialconfig.cfg to append one. Add –menu when starting without content if you want RetroArch to remain open at the menu.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
8Bitdo Sn30 Pro USB Wired Gamepad for Switch, Windows & Raspberry Pi(Gray Edition)
  • Wired Controller, USB cable: 1.8M.
  • Compatible with Switch (version 3.0.0 or above), Windows, Raspberry Pi devices.
  • Rumble vibration.
  • Support turbo function.

Common setup problems

Problem Likely cause and fix
Core Downloader is missing Enable Show Core Downloader under Settings → User Interface → Menu Item Visibility.
Game loads to a black screen Check the core, content dump, and required BIOS files in the configured System/BIOS folder.
Game runs manually but is absent from a playlist The strict scanner did not match its checksum, serial, or database entry. Try a loose/custom scan.
Playlist entries show no artwork Names may not match the thumbnail server. Enable filename matching if appropriate.
Arcade game reports missing files Use a ROM set intended for that core and check parent, BIOS, and set dependencies.
Cannot install an Ubuntu core Use the package manager, such as sudo apt-get install libretro-nestopia, and check that the core directory is readable.
Configuration changes vanished Exit through RetroArch’s menu and save configuration. Pressing Esc twice may quit before changes are written.

Back up the important folders

Back up the RetroArch configuration directory, saves, states, playlists, and custom thumbnails. Keep BIOS files separate and record which core version works with each arcade collection. This makes reinstalling or moving to another computer easier.

FAQ

Is RetroArch an emulator?

No. RetroArch is a frontend that uses separately installed libretro cores, each of which provides an emulator or engine for a particular system.

Which RetroArch version should I install?

Use stable version 1.22.2 unless you specifically need a Nightly feature or fix. Nightly builds receive daily changes and may be less stable.

Why does RetroArch say no core is available?

Install a compatible core through Online Updater → Core Downloader. If that option is hidden, enable Show Core Downloader under Settings → User Interface → Menu Item Visibility.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Do ROMs have to be unzipped?

No. ZIP files are used for many cartridge and arcade workflows. Disc-based content should generally remain unzipped, and some cores require particular cue, bin, CHD, or related files.

Why did my game not appear after scanning?

The automatic scanner normally requires a checksum or disc serial match in the libretro database. A playable game can still fail that match; try a loose/custom scan.

Where do BIOS files go in RetroArch?

Place them in the directory configured under Settings → Directories → System/BIOS. Check the core’s documentation for specific requirements.

Can RetroArch run arcade ROMs from any MAME set?

No. Arcade cores require core-specific ROM sets. Missing parent files, BIOS files, dependencies, or a set built for another core can prevent a game from launching.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The Bottom Line

A reliable RetroArch setup starts with the standalone version, sensible directories, the correct core, and BIOS files only when required. Test one game manually before importing a collection; use strict scanning for recognized libraries, custom scanning for unmatched files, and core-specific ROM sets for arcade games.

Quick Recap

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.