RetroArch
RetroArch is a frontend UI for the Libretro API.
Note
RetroArch is available for a number of devices, including smartphones and consoles. These instructions will only work on desktop OSes, but once your files are organized you can copy them over to your other device.
BIOS
First, RetroArch needs a number of BIOS files. Thankfully, the libretro team maintains a DAT of these "system" files, so we don't have to guess at the correct filenames.
With Igir's support for DAT URLs we don't even have to download the DAT! Locate your "System/BIOS" directory as configured in the RetroArch UI and use it as your output directory:
The root directory is based on where you installed RetroArch, but by default it is:
The root directory is based on where you installed RetroArch, but by default it is:
ROMs
RetroArch is less opinionated about where your ROMs can live, you have to specify "content" directories during setup in the RetroArch UI.
If you want to store your ROMs in the RetroArch folder, you could co-locate them near your BIOS files:
The root directory is based on where you installed RetroArch, but by default it is:
The root directory is based on where you installed RetroArch, but by default it is:
From there, all you should have to do is "import content" in the RetroArch UI.