A MegaCollection Kit
★ marks things I personally have used and can recommend. Please let me know of anything else I could add in the comments at the bottom.
In order to obtains ROMs to play on the emulators, look for homebrew games and some other free ROMs at the Legal ROMs section. This page will not link to general ROM sites. Some emulators, including ones for CD-based consoles that aren't Dolphin, GBA, and some MAME systems, will also require BIOS ROMs to work, or at least will work better with them. This page will not link to those either, but see the Utilities section for getting PS1 and PS2 BIOSes, as well as UNIBIOS.
ROMs
Resources
The Emulation General Wiki is the one-stop shop for most information and resources. Anything not in here is over there. Zophar's Domain is one of the oldest emulation sites out there, too.
For guides, the FantasyAnime Guide should help you get set up. The Emuparadise ROM Code Guide explains what those symbols in ROM filenames mean. For NEC PC-98 emulation, you can look at this guide or this one. For simulating pinball tables, this guide will do for general use and this will set you up for VR play. This guide uses the VP all-in-one installer. Finally, you can ask r/emulation for everything else.
For Steam Deck, see the DeckKit emulation section. Certain entries below were also copied from the SonicKit emulation section. Additionally, some entries in the Console Modding Bonus Kit can also apply to emulated consoles.
Other Websites
RetroAchievements adds achievements and leaderboards to emulated games in supported emulators. Bytemoth's Ways to Play also has some tips for emulation.
MAME-Specific Guides and Websites
MAME ROMs are actually the zip files themselves, so don't unzip or rename them. More information about MAME ROMs avaliable here on the MAME docs, including the different types of sets and types of ROMs. If you like, you can check that your ROM dumps are up to date using an auditor such as RomVault, and .dat files, which can automatically be downloaded with DATVault. More information on using these programs, as well as related programs and other MAME information can be found on the Batocera.linux arcade guide and advanced arcade info. Other sites for MAME resources are listed below.
- MAMEWorld: The largest MAME resource site, hosts artwork (such as marquees), .dat files, cheat files, and more
- progetto-SNAPS: Another MAME resource site
- Mr Do's Arcade: Part of MAMEWorld, hosts artwork
- Arcade Database: Searchable database of MAME ROM names and data
- NonMAME: The best emulators for each system if MAME can't handle them
Frontends
These are programs that can launch games within emulators (and also non-emulated games) for you, and can also help set them up in some cases. They also often make your game library look nicer with stuff like videos and boxart. Useful for having all your games in one location if you don't want to open separate emulators.
ES-DE ★ ports the famous EmulationStation frontend to desktop platforms. RetroBat for Windows can configure emulators and EmulationStation for you. LaunchBox is powerful and comes with a desktop interface and BigBox controller interface and works on Windows and Android, but requires a purchase to access all features. Pegasus is another alternative.
Playnite works as a launcher for PC games but can also launch ROMs. Steam ROM Manager lets you use the Steam launcher as a frontend. Spectabis is for PCSX2.
For other Android ones, Daijishō (GitHub) ★ is a simple frontend that looks nice. The Dig (Play Store) frontend is a more customizable alternative that uses its own builtin RetroArch install.
EmuVR launches games in Retroarch in a customizable VR world that looks like a kid's bedroom for a more authentic experience. More importantly, this means you can realistically simulate lightgun games like how they were originally played. Also supports multiplayer and destop modes. Tower Unite can also do emulation in-game through Libretro cores (see below), but it's paid through Steam. Pinup Popper is part of the Pinup System program set, and is a frontend for pinball simulators (see above guides).
Scrapers and Media
Scrapers are tools that connect to online databases of game metadata, artwork, boxart, screenshots, videos, and manuals, and then download them to the computer and link them into the frontend. Most frontends come with their own built-in screenscrapers. Skyscraper is a versatile scraper that supports multiple frontends, but requires compiling from source and is command-line only. Skraper is another alternative.
For databases to scrape from, ScreenScraper has a lot of games, but requires a subscription for faster scraping. TheGamesDb is good for newer games. LaunchBox uses the LaunchBox Games Database.
Emulators
Multi-system
Some multi-system emulators are actually just frontends for Libretro cores, standalone emulators compiled as .dll files. Note that standalone emulators often produce higher performance and a better experience than the cores. See NonMAME (above) for other issues to consider. RetroArch ★ is the primary Libretro frontend. Ludo is an alternate frontend focused on having less features for minimalism and simplicity, and only uses one core per system. OpenEmu also uses cores, but is made for macOS.
For non-Libretro emulators, BizHawk is primarily used for recording TASes, but can be used casually. ares and higan are accuracy focused multi-system emulators.
Standalone
These tend to have better performance than the Libretro cores. The obvious choices are MAME ★ for Arcade systems, Dolphin ★ for Wii and GameCube, PCSX2 ★ for PlayStation 2, PPSSPP for PSP, and xemu for the original Xbox. melonDS can do DSi, RPCS3 for PS3, and EKA2L1 does the Nokia N-Gage and Symbian OS. If you want to try Xenia for Xbox 360 emulation, use it with Xenia Manager. For Texas Instruments graphing calculators, there's Wabbitemu, jsTIfied, TiEmu, and TilEm.
Supermodel can run Sega Model 3 arcade games. mGBA can emulate the Gameboy Advance Link Cable with Dolphin. Parallel Launcher can automatically configure and launch ParallelN64 and Mupen64Plus-Next emulators for N64, and can intergrate with Romhacking.com (see below). BigPEmu does Atari Jaguar super well, with scripting for extra features. bsnes-hd adds widescreen and HD Mode 7 to SNES. touchHLE for old iOS games. FreeJ2ME for Java feature phone games. Infuse for Zeebo. Visual Pinball X (GitHub) and VPinMAME (GitHub) for simulating pinball tables (see above guides).
Web
webЯcade is a WebAssembly browser-based frontend and emulator for multiple systems. Eclipse is a web-based app designed for iOS/iPadOS. NES Party and SNES Party are built for multiplayer. Telemelt is another, more experimental multiplayer NES emulator. There's also Infinite Mac for various old Mac and NeXT OSes, WebMSX for Microsoft MSX, and Javatari for Atari 2600/VCS.
Special
Fightcade ★ emulates various fighting games and adds online matchmaking with rollback netcode. Real-Time Corruptor is a bunch of custom emulators that corrupt games. Glitch Attack is a board game about completing challenges while the games are modified in real time. Multibowl (Archive.org) (More information) is basically competitive WarioWare with actual games running in MAME.
3dSen ★ is a paid program that can render NES games in 3D voxels, and even has VR support. UberNES has online leaderboards and can run games live as screensavers. AmigaVision is a custom launcher and preconfig for Amiga games and demos in FS-UAE. It can also install to MiSTer and real hardware. C64 Dreams hosts a curated collection of Commodore 64 games, demos, tracks, and diskmags organized through LaunchBox.
Operating Systems as Emulators
These can be flashed onto a Raspberry Pi SD card or something similar using a program like balenaEtcher to turn a computer into an emulation game console. Note that Raspberry Pis tend to have poor performance on N64 emulation. Lakka is RetroArch as an OS, and LudOS does the same for Ludo. RetroPie, Recalbox, and Batocera.linux can install custom OSes for emulation via EmulationStation and RetroArch, for Raspberry Pis and other computers.
Single Game Setups
Cannonball (Github) for Outrun (Arcade) is a modernized game engine. Sonic 2 Community's Cut (Genesis/MD) is a combination of a romhack and a custom version of Genesis Plus GX. PrimeHack (GitHub) (Updater, GitHub) for Metroid Prime Trilogy (Wii) is a fork of Dolphin that adds mouselook. Sonic Colors DX (Wii) uses a custom Dolphin fork and romhacks to add HD and high-pily graphics, optional stage order restoration, and more. DinoLauncher (N64) is a launcher for the Dinosaur Planet beta build that installs various patches to fix bugs and help access more stuff. Melon Mix is a melonDS fork that basically adapts the Kingdom Hearts DS games to be playable on PC, with a single screen and normal controller controls.
For playing online, Project+ for Super Smash Bros. Brawl (Wii) is a community made Project M continuation (see below), with preconfigured Dolphin packs. Slippi for Super Smash Bros. Melee (GameCube) adds rollback netcode, replays, and matchmaking. Smash64 Online (N64) provides a setup guide and can also work with romhacks Smash Remix and 19XX. Extreme Gear Labs hosts Sonic Riders DX (GameCube) and Sonic Riders Regravitified for Zero Gravity (Wii) which, along with Sonic Riders Tournament Edition are competitive balance mods. Kirby Air Ride Netplay (GameCube) also hacks in extra features. Tango is Mega Man Battle Network 6 (GBA) with rollback netcode.
Romhacks
These are basically mods for ROMs, and can range from cosmetic differences, improvement patches, or even full new games. Typically these are distributed as patch files (.ips, .bps, .xdelta) that you apply to the ROM files with a patcher, such as Rom Patcher JS. Alternativley, you can have a ROM and patch with the same filenames in the same folder, and the emulator might be able to live patch it for you. Many of these can also be played on original systems if they're hacked or you have a flashcart.
Romhacking.net is the former largest repository for romhacks, patchers, and tools, but has since ceased accepting new hacks. Currently you can still download hacks, and they have released an archive of everything. RomHack Plaza and GameBanana are other alternatives. Below are sites focused on romhacks for individual games.
- SMBArena
- ROMHACKING.com for Super Mario 64 (N64), can intergrate with Parallel Launcher (see above)
- SMW Central for Super Mario World (SNES)
- Metroid Construction for Super Metroid (SNES)
- Sonic Retro's Hacks Page for the Genesis/Mega Drive Sonic games (distributed as full games, no patches required)
- Sonic Hacking Contest for more of the above, plus more modern Sonic games
- Hylian Modding for Ocarina of Time and Majora's Mask (N64)
- FF6 Hacking for Final Fantasy 6 (SNES)
- SkyTemple Hack Directory for Pokemon Mystery Dungeon (GBA)
- TecmoBowl.org for Tecmo Bowl SNES (includes roster updates)
- NSMBU HACKS for New Super Mario Bros U (Wii U)
- FantasyAnime Chrono Trigger Downloads (SNES)
- Scyzer's Tank hosts some of his Super Metroid hacks.
- Donkey Kong Arcade Romhacks, and some other arcade hacks too.
- Patcharobi is an online auto-patcher for various N64 games.
Other Emulator Tricks
SA-1 Root is a project to basically hack in the SA-1 chip into some SNES games for better performance and less slowdown. The FastROM Project is a sister project that patches in the FastROM chip. The MSU-1 Hacks (Getting Started Guide) add a custom coprocessor chip to SNES ROMs to add CD quality music and FMVs. They can even run on original hardware and do the same to Game Boy games via the Super Game Boy. The MD+ and MSU-MD Hacks do the same for Genesis/Mega Drive games. Mesen HD Packs can replace NES audio and graphics. HiSMS is an Master System emulator that can do the same, although no packs have been made for it. emu-coop and Multitroid can turn Super Metroid into co-op games where players share inventories. The former can also do A Link to the Past.
Romhacks with Websites
See the Single Game Setups (above) for more. Some entries copied from SonicKit emulation section.
Wii
- Project M ★ for Super Smash Bros. Brawl (Mirror): The iconic competitive overhaul, now ceased development
- Project+ ★ for Super Smash Bros. Brawl: The spiritual sequel to the above
- Brawl Minus for Super Smash Bros. Brawl: Balances the game by making everyone overpowered
Gamecube
- 20XX Tournament Edition for Super Smash Bros. Melee: Adds tournament-focused features using nothing but a save file on a memory card
- Super Mario Starshine for Super Mario Sunshine: An all new Galaxy-inspired adventure
- Super Smash Bros. Melee 64 for Super Smash Bros. Melee: Reskins everything to look like the N64 version, and adds an alternate gameplay style inspired by the original
- Konga Beat for Donkey Konga 2 and 3: Custom song and track editor and importer that can work on emulators and original hardware.
Genesis/Mega Drive
- Sonic 3D Blast Director's Cut: A level select and other improvements by the original director
- Sonic 3 Complete for Sonic 3 & Knuckles: Combines and improve the games into one big game. The website lets you customize your install
- Sonic 3 & Knuckles - Battle Race: Total conversion into a multiplayer racing game
SNES
- Super Metroid: Redesign: Overhaul and expansion of the original game
- Project Base for Super Metroid: New graphics and mechanics.
- Hyper Metroid for Super Metroid: Brand new map and weapon system based on the above
- The BS Zelda Homepage (Satellaview): A bunch of romhacks to restore the live features of the BS Zelda games.
Arcade
- Super Street Fighter 2 Turbo New Legacy, Street Fighter 2 Mix, Street Fighter Zero 3 Mix: Various new mechanics and features
- Mortal Kombat + for MK1, MK2, and Ultimate MK3: Disassembled and rebuilt with new characters, modes, and more
Other
- Project Restoration for The Legend of Zelda: Majora's Mask 3D (3DS): Adds back in features from the N64 version and some quality-of-life improvements and fixes
- Ocarina of Time Practice ROM (N64): Adds features for practicing speedruns
- RainbowDevs: Multiple hacks of the Pokemon GB/GBC games
- OnlineCTR (PS1): Crash Team Racing with online multiplayer through Duckstation
- Mario’s Carnival Quest (GBA): Makes Mario Party Advance less tedious to play
- Castlevania II: Simon's Quest: Redaction (NES): Rewrites the dialog and text to be more helpful and removes fake hints
- Mario Adventure 3 for Super Mario Bros. 3 (NES): Major overhaul with many ideas.
Multi-system
- CTGP Revolution ★ for Mario Kart Wii, CTGP Nitro for Mario Kart DS, CTGP-7 ★ for Mario Kart 7 (3DS): Hundreds of new tracks, character skins, and more with online play
- Newer Team for New Super Mario Bros Series (DS/Wii): Multiple romhacks that add an entire game's worth of levels, also has one for Super Mario 64 DS
Translations
Often found wherever romhacks are found. Translations with their own websites are listed below.
- The MOTHER 3 Fan Translation ★ (GBA)
- Mother International All-in-one Translation Patcher (NES/SNES/GBA)
Randomizers
These sites generate a custom, randomly generated patch that scrambles stuff within the games. The Game Randomizer Site lists more.
- The Link to the Past Randomizer (SNES)
- Super Metroid VARIA and DASH (SNES)
- Final Fantasy 4: Free Enterprise (SNES): Starts you with the airship and lets you complete quests in any order
- Universal Pokemon Randomizer: Program that works on GB, GBC, GBA, and DS games
- Paper Mario Randomizer (N64)
- DK64 Randomizer (N64)
- Super Metroid and A Link to the Past Crossover Randomizer (SNES): Combines both games into one mega game
- Archipelago.gg: Scrambles items across multiple games and players, requiring cross-game cooperation to win. Also works with non-emulated games
Legal ROM downloads
MAME themselves actually hosts some ROMs to download that the original creators allowed them to. The downloads section on the Unofficial Net Yaroze Europe Archive has ISOs of Net Yaroze compilation games for PS1, along with rougelike Magic Castle. 64DD.org has both the original disk ROMs for N64 Disk Drive games and ports to regular N64 carts, along with translations, romhacks, and homebrew. Satellablog hosts dumps of SNES Satellaview ROMs. The Complete BBC Micro Games Archive lets you download the games or play them in the browser with web emulation. Some retro rereleases on PC come with the ROMs in the folders too, such as the delisted SEGA Genesis/MD games on Steam.
Homebrew
Brand new games for old consoles. Some homebrew sourced from this. (Gemini link) Also from rabidrodent's list.
Itch.io also hosts a lot of homebrew. In fact, some homebrew ROMs are included in the Itch.io megabundles.
Multiple System Databases
Single System Databases
- Homebrew Hub (GB/GBC/GBA)
- GBADEV
- Planet Virtual Boy
- AtariAge (2600/5200/7800/Lynx/Jaguar)
- SMS Power (Master System)
- Lemon Amiga
- World of Spectrum
- MSX Resource Center
- MSXdev
Make
Homebrew Games with Websites
- Super Boss Gaiden (SNES, Nintendo Playstation)
- D-Pad Hero (NES)
- Streemerz (NES)
- MazezaM (GB)
- Into the Blue (GB)
- Retroid (GB)
- Anguna (DS, GBA)
- Blast Arena Advance (GBA) ★
- Vulkanon (GBA)
- BulletGBA (GBA)
- Apotris (GBA) ★
- Lemmings Project (DS)
- Tanglewood (Genesis/Mega Drive) ★
- Xump 2 (Genesis/Mega Drive, Lynx)
- Night Knight (MSX)
- Uchūsen Gamma (MSX)
- Mutants From The Deep (MSX)
- Halo 2600 (Atari 2600)
- Secret Collect (Atari 2600)
- The Return of Traxtor (Amstrad CPC)
Utilities
MouseInjectorDolphinDuck adds mouse input into multiple emulators. The ROM Properties Page shell extension add some features to file browsers for managing/viewing ROMs. Retool can filter ROM sets. The UNIVERSE BIOS is an alternate BIOS ROM for SNK MVS/AES for ease region and mode switching, among other features. This PS BIOS Claim Tool guide will help you extract the PS1 and PS2 BIOS from a downloadable PS3 Update file.
Background taken from here. Kits icon/header logo from here.
Suggest more in the comments!