Recommended Free Tools
For most beginners, the simplest route is RetroArch: install it from the official site, add an NES or SNES emulator core, load a legally obtained game file, map a controller, and configure saves. RetroArch does not include copyrighted games or BIOS files, and the legality of making or using those files varies by country.
This guide takes you from a fresh Windows, macOS, or Linux PC to a working retro game, then covers controllers, save states, scaling, shaders, audio, BIOS files, and common failures.
As an Amazon Associate I earn from qualifying purchases.
What you need
- A Windows, macOS, or Linux PC. NES and SNES emulation usually has modest hardware requirements; newer 3D systems can require considerably more.
- An emulator or emulator frontend.
- A legally obtained game file. RetroArch and its cores do not supply games.
- A controller, although a keyboard can work for testing.
- BIOS or system firmware only if the selected emulator core requires it.
Keep the software and content separate. Installing RetroArch does not install games, and installing an emulator core does not provide ROMs. In everyday gaming language, “ROM” usually means a dumped game image; technically, the term refers to read-only memory. A BIOS is firmware from the original system, not a game.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWhich emulator should you use?
RetroArch: the best general-purpose starting point
RetroArch is a frontend rather than one emulator. It provides shared menus and features while loading separate emulator modules called cores. A core handles a particular console or arcade system. The official core directory explains this architecture.
#1 Best Overall
- Controller compatibility: Xbox Series X Controller, Xbox Series S Controller, Xbox One Bluetooth Controller, PS5/PS4/PS3 Controller, Switch Pro, Wii Mote, Wii U Pro.
- 8BitDo Controller compatibility: all 8BitDo Bluetooth Controllers and arcade stick.
- System compatibility: Switch, Windows, macOS, Steam Deck & Raspberry Pis and more. USB Wireless Adapter 2 is compatible with Steam Deck now.
- Support 6-axis motion on Switch and Vibration on X-input mode.
- Supports ultimate software - customize button mapping, adjust stick & trigger sensitivity, vibration control and create macros with any button combination.
RetroArch is a strong choice if you want one library for NES, SNES, Game Boy, Genesis, PlayStation, and other systems. It also provides shared controller profiles, save states, screenshots, playlists, shaders, remapping, and directory settings.
The trade-off is complexity. Core names can be confusing, and a setting may exist globally, per core, per content folder, or per game. Packaged editions, including some store versions, may not provide exactly the same core-downloading or updating behavior as the standalone distribution.
Mesen: a focused alternative for 8- and 16-bit systems
Mesen is a dedicated emulator supporting NES, SNES, Game Boy, Game Boy Color, Game Boy Advance, PC Engine, Master System, Game Gear, and WonderSwan on supported desktop platforms. Its focused interface can be easier if you mainly want classic 8- and 16-bit consoles, while its accuracy-oriented and debugging features appeal to experienced users.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Mesen is not a universal replacement for RetroArch. Its supported platforms, configuration, and release availability can vary, so check the current official project page before installing.
Dolphin: for GameCube and Wii
Dolphin is designed for GameCube and Wii, not as a first-choice NES or SNES emulator. It is more demanding and has different file, controller, graphics, and performance considerations. Dolphin’s published desktop guidance includes Windows 10 version 1903 or newer, macOS 11 Big Sur or newer, SSE2-capable processors, and a reasonably modern graphics processor; a modern dual-core CPU around 3 GHz is recommended.
The official download page separates stable releases from development builds and lists packages for Windows, macOS, Android, and Linux. Start with a stable release unless you specifically need a development-build fix.
Install RetroArch
- Open the official RetroArch platform-download page. Avoid unofficial mirrors and preloaded “ROM” packages.
- Download the package for your operating system. On Windows, the official documentation describes both an installer and a
.7zarchive; the portable archive can be useful if you want to keep the installation in one folder. - Install or extract RetroArch, then launch it.
- Connect your controller before configuring input.
Menu labels can differ between versions, operating systems, themes, and package variants. The following paths describe the current menu concepts; if your build says “Download a Core” instead of “Core Downloader,” use the equivalent option.
Install an NES or SNES core
- Open Main Menu → Online Updater → Core Downloader, or the equivalent core-download option.
- Choose a core explicitly labeled for NES or SNES.
- Let RetroArch download and install it.
There is no universally best core for every game and computer. The relevant trade-offs include accuracy, performance, region compatibility, feature support, maintenance, and documentation. For a first setup, select an actively supported core for the target system and consult that core’s documentation if a particular game fails.
Core updates are separate from the main RetroArch application. Before changing cores during a playthrough, back up your saves and save states: save states are often tied to the core and may not load elsewhere.
Rank #2
- Controller Adapter Compatibility: The second-generation receiver compatible with 8BitDo bluetooth controllers, Xbox Series X | S, Xbox One Bluetooth controllers, PS5/PS4/PS4 Pro/PS3 controllers and Switch Pro, Switch Joy-Con, Wii U Pro, Wiimote controller. Make sure to update the receiver to the latest firmware. Switch 2 compatibility requires the Adapter to be updated to the latest firmware. (Note: Please ensure it is Bluetooth controller.)
- System compatibility: Switch (3.0.0 and above), Switch 2 (20.1.1 and above), SteamOS Holo 3.4 and above, Windows 10 and above, macOS, Raspberry Pi, Android TV Box, Retrofreak. Friendly reminder: Make sure to update the receiver to the latest firmware. Systems and controllers not mentioned above are not compatible.
- Bluetooth Controller Adapter: Four modes available, X-input, D-input, Mac and Switch mode. Support 6-axis motion on switch mode and vibration on X-input mode.
- Supports ultimate software - customize button mapping, adjust stick & trigger sensitivity, vibration control and create macros with any button combination.
- Please Note: One adapter works for one controller. If you wish to use multiple controllers at a time, you would need to use multiple adapters. Non-bluetooth controller such as 2.4g wireless controller is NOT Compatible. Systems and controllers not mentioned above are not compatible. If you have any questions about our products we're always available to provide assistance.
Organize your games and saves
Create a simple structure wherever you keep your legally obtained game files:
Retro Games/
NES/
SNES/
Game Boy/
Genesis/
Saves/
Save States/
Screenshots/
BIOS/
This organization is optional and does not change whether a file is lawful. It simply makes backups and troubleshooting easier.
Free tools Windows power users keep installed
One-click scans. No signup required.
To change locations in RetroArch, open Settings → Directory and review the content, savefile, savestate, screenshot, and system-directory entries. The exact defaults differ by operating system. The official directory documentation explains the available locations.
Load your first game
RetroArch’s basic sequence is a core first, then content:
- Open Main Menu → Load Core.
- Select the installed NES or SNES core.
- Open Main Menu → Load Content.
- Browse to your legally obtained game file.
- Select the file.
- If RetroArch asks which core to use, choose the appropriate one.
- Confirm that the game reaches its title screen.
The official starting-a-game guide describes this core-and-content requirement. Do not assume that every emulator accepts every compressed file. Some cores can open compressed content, while others expect an extracted file. A file extension alone does not prove that a dump is valid.
If the game does not start, possible causes include a bad or incomplete dump, an unsupported mapper, a wrong region, an incorrect core, missing firmware, or a path the core cannot read. Test only with files you are legally permitted to use.
Configure a controller
RetroArch maps your physical controller to a standard virtual layout called RetroPad. The selected core then interprets those inputs as the original console’s controls. The official input documentation covers mapping and remapping.
- Plug in or pair the controller before launching RetroArch.
- Open Settings → Input → RetroPad Binds → Port 1 Controls, or the equivalent input-binding screen in your build.
- Map the D-pad, face buttons, Start, and Select.
- Launch a game and test every control.
- Use Save Controller Profile so the mapping can be reused.
Xbox-style and Nintendo-style controllers may place or label face buttons differently. If “A” and “B” feel reversed, remap the buttons rather than assuming the emulator is malfunctioning.
Several layers can affect input:
- A Bluetooth controller may reconnect under a different device name.
- Steam Input or another controller utility may intercept buttons.
- A controller can work in RetroArch’s menus but have a core-specific remap that overrides it.
- Per-game and per-core remaps can override the global profile.
- Arcade and vintage-computer cores may not use console-style controls.
Use saves safely
In-game saves
These are created through the game’s own save system. They are generally the most portable and reliable form of progress, so use them whenever the game supports them.
Rank #3
- Manufactured by CIPON: This Wireless Adapter manufactured by a third-party company , not by Microsoft; Our Adapter chip and program is the same as official, and quality as good as official
- Widely Compatibility: For use with X One Wireless Controller on PCs and Tablets running Windows 7/8/8.1/10 with USB 2.0/3.0; Not compatible with Xbox 360 controllers; (Note: You may need to download a driver for the first use)
- Play with Others: Supports up to 8 wireless controllers; Also supports the use of wired chat headsets on the controllerr (Note: The headsets only supported under WIN10 system, and not supports wireless connection headsets)
- Designed for PC: Play your Wireless Controller on Windows/ laptops/ tablets; Simply bind the Adapter to your Wireless Controller to enable the same gaming experience you are used to on Xb One, including in-game chat and high quality stereo audio
- What You Will Get: 1 x Wireless adapter, 1 x User manual, 1 x Elegant packaging
Save states
A save state is a snapshot of emulator memory at a particular moment. It is convenient for difficult sections, but it is not a universal save format. Libretro warns that save states may not work across different emulators, cores, platforms, or sometimes versions.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →- Use several save-state slots instead of overwriting one state repeatedly.
- Keep the game file, core, and save directories organized together.
- Back up both ordinary save files and save states.
- Copy the save directories before updating or replacing RetroArch.
- Do not switch cores mid-playthrough unless you are prepared for possible incompatibility.
If a state will not load, return to the original core and the original game file. For long-term portability, rely on the game’s own save system where possible.
Improve the picture without breaking the basics
First confirm that the game runs correctly with default settings. Then change one visual option at a time.
- Aspect-ratio correction: Avoids stretching the original image to fill a modern widescreen display.
- Integer scaling: Enlarges pixels by whole-number multiples, preventing uneven pixel sizes. It may leave borders around the image.
- Nearest-neighbor filtering: Keeps pixel edges hard and sharp.
- Shaders: Add effects such as scanlines, CRT curvature, phosphor simulation, or softening. They are presentation choices, not automatic quality improvements, and can cost performance.
- Overlays: Put on-screen controls over the image. They are mainly useful on touch devices but can also assist keyboard users.
A sensible starting point is aspect-ratio correction with integer scaling where it fits your display. Try a simple shader only after the unmodified image works. Avoid stacking filters and shaders on low-powered hardware.
Save per-core or per-game settings only after you understand where RetroArch stores them. Otherwise, it is easy to make one game look correct while unintentionally changing every game in that core.
Audio and input latency
Crackling audio usually indicates performance instability, an unsuitable audio driver or buffer setting, system load, or another configuration problem. Input delay can be affected by Bluetooth, display processing, V-sync, frame pacing, controller polling, and emulator settings.
Begin with defaults and change one setting at a time. Close unnecessary background applications, test a wired controller if Bluetooth is suspect, and enable your display’s gaming mode if it has one. These steps reduce variables but do not guarantee zero latency or identical behavior to original hardware.
When is a BIOS required?
A BIOS is firmware from the original console. Some emulator cores require it; others do not. Basic NES and SNES setups generally should not need one, but requirements depend on the selected core, system, region, and game.
If the core documentation says a BIOS is required, dump it from hardware you own where legally permitted and place it in the core’s documented system directory. Check Settings → Directory to see which system folder RetroArch is using. BIOS filenames, hashes, region requirements, and folder locations are core-specific.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Rank #4
- Bluetooth Controller Adapter: Accessories for Switch 2, Switch/Switch OLED - Compatible with PS5 Controller, PS4 Controller, PS3 Controller, Xbox Series X/S, Xbox One, Wii Mote, Wii U Pro wirelessly on Switch / Switch OLED. Please upgrade the firmware to the latest version. Note: Supports Xbox One Controller / Xbox Elite Wireless Controller Series 2 with Bluetooth only.
- Wide System Support: Compatible with 8Bitdo Controllers, Switch Pro, Switch controller for Joycons, PS5, PS4, PS3, Wii Mote, Wii U Pro, Xbox Series X/S, Xbox One Bluetooth controller on Switch, Switch 2, Windows, Steam Deck, Raspberry Pi, Android TV Box and Retrofreak, for versatile gaming across multiple platforms.
- Less Lag Performance: Wireless Bluetooth connection provides reduced lag for responsive gameplay. It's one controller per 8Bitdo USB adapter. Vibration is supported on Switch and X-input mode. An OTG cable enables you to use the adapter to connect your Switch and enjoy the handheld mode directly.
- Plug and Play Functionality: Simply connect the controller adapter with your Wireless Controller to enable the same wireless experience you are used to on all the best platforms.
- Complete Package: Package includes an OTG cable, so you can use the converter to connect your Switch Console via an OTG cable and then enjoy the Undocked Mode directly.
Do not download BIOS packs from unofficial websites. Libretro’s BIOS guide explains that RetroArch and its cores do not provide copyrighted system firmware.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Common problems and fixes
| Problem | Likely cause | What to try |
|---|---|---|
| No core appears | The core is not installed, or the package restricts core downloads. | Use the official core downloader or the correct official package for your platform. |
| The game is not listed | Unsupported extension, wrong folder, compressed content, or invalid file. | Use Load Content and browse manually; verify the file and core. |
| Black screen | Wrong core, bad dump, missing BIOS, unsupported mapper, or graphics-driver issue. | Check the core documentation, verify the system directory, restore video defaults, and test another legally obtained file. |
| The game runs too fast or slowly | Synchronization, power mode, heavy shaders, or unstable performance. | Restore defaults, disable enhancements, and check frame pacing and system load. |
| Audio crackles | Performance instability or an audio driver/buffer issue. | Close background applications, restore audio defaults, and change one audio setting at a time. |
| The controller works in menus but not the game | Wrong port, core-specific mapping, or a conflicting remap. | Check Port 1 controls and core-specific controls; remove conflicting remaps. |
| Buttons are reversed | Different Nintendo-style and Xbox-style layouts. | Remap the face buttons or create a game-specific remap. |
| A save state will not load | Different core, version, platform, or game file. | Use the original core/content combination and rely on in-game saves for portability. |
| A BIOS error appears | Missing, incorrectly named, zipped, wrong-region, or misplaced firmware. | Read the selected core’s BIOS documentation; do not use a random BIOS pack. |
| The image looks blurry or stretched | Non-integer scaling, filtering, or incorrect aspect ratio. | Enable aspect-ratio correction and try integer scaling or a suitable pixel filter. |
| Bluetooth controller disappears | Pairing, device assignment, or power-management issue. | Re-pair before launching, save the controller profile, and test with USB. |
How the workflow changes for other systems
| System | Suggested route | Important qualification |
|---|---|---|
| NES | RetroArch or Mesen | Usually no BIOS is needed for basic use, but core compatibility still matters. |
| SNES | RetroArch or Mesen | Choose a suitable SNES core and back up in-game saves and states. |
| Game Boy, Game Boy Color, or GBA | RetroArch or Mesen where supported | Core choice and BIOS requirements vary. |
| Genesis/Mega Drive | RetroArch | Region and special-chip compatibility can matter. |
| PlayStation 1 | RetroArch or a dedicated PS1 emulator | A BIOS is commonly relevant; verify the selected core’s requirements. |
| Nintendo 64 | RetroArch or a dedicated emulator | More demanding and game-specific than NES or SNES. |
| GameCube/Wii | Dolphin | Needs a stronger PC and a separate setup. |
| Arcade | RetroArch with the correct arcade core | ROM sets, parent/clone relationships, and BIOS requirements are substantially more complicated. |
| Nintendo DS, 3DS, or Switch | Separate current projects | These systems have different technical, performance, and legal considerations. |
Do not treat “retro games” as one uniform category. NES and SNES are relatively straightforward. Arcade, optical-disc, 3D, and newer systems introduce different file formats, firmware requirements, performance demands, and controller arrangements.
Legal and ethical boundaries
Emulator software and game files are separate legal questions. Laws differ substantially by country, and a physical copy does not automatically make downloading an online copy lawful everywhere.
For U.S. readers, 17 U.S.C. § 117 permits certain archival copies of computer programs under specific conditions. The U.S. Copyright Office explains that the rule is limited: it depends on lawful ownership and other conditions, does not authorize downloading or selling third-party copies, and generally requires the archival copy to be destroyed or transferred when ownership ends. See the Copyright Office’s digital-files FAQ.
The current U.S. regulation at 37 C.F.R. § 201.40 contains a narrow exemption for certain lawfully acquired video games whose authentication servers have ceased operating. It is not blanket permission to download ROMs or bypass protections for every game.
Nintendo publicly takes a stricter position, stating that unauthorized Nintendo ROM downloads are illegal even when someone owns an authentic copy. That is the rights holder’s stated position, not a substitute for local legal advice. Readers outside the U.S. should consult the law in their own country.
Do not download unauthorized ROMs, BIOS packs, preloaded drives, or “complete” collections. Use files you are authorized to use, and consult official documentation for the emulator and core.
Final recommendation
Start small: install RetroArch from its official site, add one NES or SNES core, load one legally obtained game, map one controller, and confirm that the game’s own save system works. Only then add shaders, playlists, extra systems, and save states.
If RetroArch’s shared frontend becomes more complicated than useful, switch to a dedicated emulator such as Mesen for supported 8- and 16-bit systems. Use Dolphin separately when your goal is GameCube or Wii. That approach keeps the first successful setup simple while leaving room to build a larger retro library later.
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.




