Neko

Kirby with headphones

EmuKit

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.

Emulation

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.

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. For Texas Instruments graphing calculators, there's Wabbitemu, jsTIfied, TiEmu, and TilEm.

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 largest repository for romhacks, patchers, and tools. GameBanana and Romhacks.org are other alternatives. Below are sites focused on romhacks for individual 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.

Romhacks with Websites

See the Single Game Setups (above) for more. Some entries copied from SonicKit emulation section.

Wii
Gamecube
Genesis/Mega Drive
SNES
Arcade
Other
Multi-system

Translations

Often found wherever romhacks are found. Translations with their own websites are listed below.

Randomizers

These sites generate a custom, randomly generated patch that scrambles stuff within the games. The Game Randomizer Site lists more.

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. Some retro rereleases on PC come with the ROMs in the folders too, such as the 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
Make
Homebrew Games with Websites

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!