Where to Put BIOS Files in RetroArch (PS1 and PS2 BIOS Guide)
RetroArch reads BIOS files from a single folder called the system directory, and that is where you put them. On Windows the default is C:/Users/YOUR_USERNAME/AppData/Roaming/RetroArch/system, on macOS it is /Users/YOUR_USERNAME/Library/Application Support/RetroArch/system, and on Linux it is ~/.config/retroarch/system. Confirm the live path under Settings > Directory > System/BIOS. For PlayStation 1 cores, put the files directly in that folder. PlayStation 2 is the exception, and its core looks in system/pcsx2/bios instead. Names have to match exactly, and RetroArch needs a restart before it notices anything new.
Where to Put BIOS in RetroArch
Every core that needs firmware checks one place: the system directory. RetroArch does not scan your drive for stray .bin files, and it will not look inside folders you created to keep things tidy. If a core wants scph5501.bin, it wants that file sitting directly in the system folder under that exact name. Libretro’s own BIOS documentation describes the layout the same way, which is why the same advice keeps getting repeated on forums.
One folder, no nesting, covers the PlayStation 1 cores and nearly everything else. PlayStation 2 breaks the pattern, and that catches out people who set up PS1 emulation first and assume the rest works the same. Details on that are further down.
The Default System Folder on Windows, macOS and Linux
Fresh installs use the paths below, according to the Lutris project documentation and the RetroArch BIOS setup guide hosted on GitLab, both read in September 2026.
- Windows: C:/Users/YOUR_USERNAME/AppData/Roaming/RetroArch/system
- macOS: /Users/YOUR_USERNAME/Library/Application Support/RetroArch/system
- Linux: ~/.config/retroarch/system
Android is the odd one out, because the install method changes the path and no single default holds. Portable builds and some store versions on desktop behave the same way, keeping the system folder next to the executable rather than in your user profile. Whatever the menu reports is the truth; a guide written for a different install is not.
How to Check and Change the Folder in RetroArch
Open the main menu, go to Settings, then Directory. Scroll down to the entry labeled System/BIOS. The path shown there is the folder your cores actually read.
Changing it means selecting that entry, browsing to the folder you want, and confirming the selection. Any directory your user account can read will do, as regulars on the Libretro forums point out when people ask about keeping firmware on a second drive. Moving the folder does not move the files, so copy them across yourself afterwards.
How to Add BIOS Files Step by Step
Add BIOS files by copying them directly into the system directory using their exact filenames, then restart RetroArch so the cores can find them.
- Find the folder: in RetroArch, open Settings > Directory > System/BIOS and note the path.
- Open that path in your file manager: on Windows you can paste %APPDATA%/RetroArch/system into the address bar of File Explorer.
- Copy the files in loose: no subfolder, no archive, no folder named bios inside the system folder.
- Match filenames exactly: including case on a case sensitive file system.
- Restart RetroArch: close it fully rather than backing out of the menu.
- Load a game and watch the notifications: cores announce missing firmware on screen as they start.
Restarting matters more than people expect. The GitLab setup guide calls it out specifically, because cores check for firmware at load time and nothing rescans the folder while RetroArch is running.
Which PS1 BIOS to Use
Three regional files cover the PlayStation 1: scph5500.bin for Japan, scph5501.bin for North America, and scph5502.bin for Europe. Beetle PSX, Beetle PSX HW and PCSX ReARMed all expect firmware, and the file should match the region of the disc image you are loading. Most people copy all three in once and stop thinking about it.
Region Filenames and MD5 Checksums
Checksums separate a good dump from a corrupt or simply renamed one. Every desktop operating system ships with a tool that computes them.
- Windows: certutil -hashfile scph5501.bin MD5
- macOS: use the checksum tool
- Linux: md5sum scph5501.bin
Compare the output against the values in the reference table below. A mismatch means the file is not what its name claims, and no amount of moving it between folders will change that. Renaming a European dump to scph5501.bin fools the core into loading it and then produces odd timing or boot behavior, which is the usual cause of a game that runs but feels wrong.
Where SCPH1001.bin Fits In
Older setup guides name the North American firmware SCPH1001.bin instead, and the PS1 BIOS config site still recommends that revision as the most broadly compatible one. Both naming schemes refer to real retail firmware, so the disagreement is about which dump a given guide expects rather than which one is legitimate. Current Libretro documentation and the Lutris notes use the scph5500, scph5501 and scph5502 set, so start there. Keep SCPH1001.bin in mind only if a core reports missing firmware while naming that file.
Since 2020, my Brother HL-L2350DW mono laser has made me appreciate plain labels: when something is identified clearly, guessing is usually unnecessary. For Which PS1 BIOS to Use, I would match the BIOS to the console region first, then reserve the older alternative for a core that explicitly asks for it.
Which PS2 BIOS to Use in RetroArch
RetroArch’s LRPS2 core requires a properly dumped PlayStation 2 BIOS, with no particular filename required; PAL and NTSC BIOS images can play each other’s games when Fast Boot is enabled. Firmware is mandatory here. No high-level emulation fallback exists, so without a dumped BIOS the core will not boot a disc image at all.
The LRPS2 Core and Its Own BIOS Folder
Here is the exception to the no-subfolders rule. LRPS2 reads firmware from system/pcsx2/bios, a path you will probably have to create by hand, and it stores virtual memory cards in system/pcsx2/memcards. Game compatibility settings live at system/pcsx2/resources/GameIndex.yaml, although current builds embed that database and only read the folder copy when you deliberately override it.
Hardware requirements are steep compared with the PS1 cores. Libretro lists 64-bit Windows, macOS and Linux on x86_64 as the supported platforms, with a graphics chip capable of Direct3D 10 or 11, OpenGL 3.x, or Vulkan 1.3, between 2GB and 4GB of video memory, and 4GB to 8GB of system memory.
ARM devices are out entirely, so Android handhelds, iOS and Windows on ARM cannot run it, and Apple silicon Macs manage only through Rosetta. Rewind and netplay are unsupported, and the LRPS2 documentation warns that some games will not reach full speed even on recommended hardware.
PS2 BIOS Filenames and the Extra Files
Dumps circulate under names such as ps2-0230a-20080220.bin for North America, ps2-0230e-20080220.bin for Europe and ps2-0230j-20080220.bin for Japan, each tied to the console revision it came from. Names in the SCPH-39001.bin style show up for US consoles as well. Unlike the PS1 cores, LRPS2 does not demand one specific filename: it wants a 4MB .bin file, and any companion files your dumper produced have to share the same base name.
Those companions are the erom, nvm, rom1 and rom2 files, written as filename.erom, filename.nvm and so on. The .nvm file holds settings specific to the console it was pulled from, including its region and clock. Keep the whole set together in system/pcsx2/bios rather than picking out the main .bin.
BIOS Filename and Checksum Reference Table
The table below lists the exact filename and MD5 hash for each PS1 BIOS region, along with the PS2 filenames, which have no listed hash because those dumps vary from console to console. Figures come from the RetroHandheldHQ firmware roundup and the Lutris project’s RetroArch notes, both read in September 2026.
| Console | Region | Filename | MD5 hash | Goes in |
|---|---|---|---|---|
| PS1 | Japan | scph5500.bin | 8dd7d5296a650fac7319bce665a6a53c | system |
| PS1 | North America | scph5501.bin | 490f666e1afb15b7362b406ed1cea246 | system |
| PS1 | Europe | scph5502.bin | 32736f17079d0b2b7024407c39bd3050 | system |
| PS1 | North America, older naming | SCPH1001.bin | Not published by the sources read | system |
| PS2 | North America | ps2-0230a-20080220.bin | Varies by dump | system/pcsx2/bios |
| PS2 | Europe | ps2-0230e-20080220.bin | Varies by dump | system/pcsx2/bios |
| PS2 | Japan | ps2-0230j-20080220.bin | Varies by dump | system/pcsx2/bios |
How to Dump a BIOS from a PS2 You Own
Dumping a PS2 BIOS means pulling the firmware off a console you already own, using a memory card running FreeMcBoot and the uLaunchELF file manager to write it to a USB drive. Downloading firmware instead breaks copyright law, since Sony owns the code and no site distributing those files holds a license, so a personal dump is the only legitimate route.
What You Need Before You Start
Four things, and one of them takes far longer to arrange than the rest.
- A PlayStation 2 you own: the dump has to come off your own hardware.
- A memory card running FreeMcBoot: this softmod is what lets the console launch homebrew from the card.
- A USB flash drive formatted to FAT32: the dump gets written here, and FAT32 is the format the console expects.
- uLaunchELF: the homebrew file manager that performs the dump.
Installing FreeMcBoot is a separate project, and none of the sources read for this article document that process. Sort it out first, since every step below assumes the card already boots into the FreeMcBoot menu.
Dumping the BIOS Step by Step
- Boot with the card inserted: put the FreeMcBoot memory card in and power on the PS2. FreeMcBoot replaces the usual browser screen.
- Launch uLaunchELF: select it from the FreeMcBoot menu.
- Plug in the USB drive: it shows up in the file browser as mass:/.
- Open the MISC menu: choose the BIOS dump option from it.
- Pick mass:/ as the destination: writing to the memory card instead risks running out of space.
- Wait for it to finish: under a minute is normal.
- Move the files to your PC: then copy them into system/pcsx2/bios.
Output is a 4MB .bin file, and many consoles also produce the rom1, rom2, erom and nvm companions described earlier. Copy all of them across together.
Verifying the Dump Against Known Hashes
Run the same MD5 command you would use on a PS1 file, then check the result against the PCSX2 wiki list of known-good hashes for official BIOS revisions. A matching value means the dump is clean and the core will accept it. Anything else usually points at a flaky USB drive or a write that got interrupted, and dumping again is quicker than diagnosing it.
If RetroArch Still Says the BIOS Is Missing
A missing-BIOS message almost always traces back to the exact system path, a nested subfolder, a hidden file extension, mismatched filename case, a skipped restart, or an unverified checksum. Check each of these before assuming the dump itself is bad.
- Read the path from the menu, not from a guide: Settings > Directory > System/BIOS beats any default you found online.
- Inspect the archive layout: Check for an extra folder before assuming the dump itself is bad.
- Reveal file extensions: On Windows, inspect the displayed name carefully.
- Verify filename case: On Linux and Android, check it carefully.
- Restart after copying: firmware detection happens when a core loads, not while you are browsing menus.
- Verify the MD5: a renamed or truncated file passes the name check and fails everything after it.
- For PS2, use the subfolder: system/pcsx2/bios, created manually if RetroArch has not made it.
One more trap is worth knowing about. Adding firmware after you have already been playing can invalidate your existing save states, since forum regulars describe states as extremely volatile snapshots of emulator memory and the BIOS changes what sits in that memory. Finish anything you care about with an in-game save to a virtual memory card before you start swapping files around.
Frequently Asked Questions
Can I Keep All Three PS1 BIOS Files in the Folder at Once?
Yes. Cores load firmware by exact filename, so scph5500.bin, scph5501.bin and scph5502.bin coexist without conflict, and the RetroHandheldHQ guide describes collecting all three as normal practice for playing games from different regions. None of the sources read for this article document a downside to having extras present.
Does RetroArch Download BIOS Files for Me?
No. RetroArch downloads cores, thumbnails and assets through its own updater, but firmware is not included, because Sony still holds the copyright on it. Anyone distributing those files online is infringing that copyright, which is why the legitimate route is dumping from hardware you own.
Do PS1 and PS2 Games Run Without Any BIOS at All?
PS2 needs firmware without exception, since LRPS2 has no high-level emulation substitute for it. For PlayStation 1, Libretro lists firmware as a requirement for Beetle PSX, Beetle PSX HW and PCSX ReARMed, and even where a core tolerates its absence, real firmware gives better compatibility. Treat it as mandatory for both systems.
Where Do BIOS Files Go on Android?
There is no fixed answer, because the path depends on how RetroArch was installed on that device. Open Settings > Directory > System/BIOS on the device itself and use whatever it reports. Keep in mind that PS2 emulation through LRPS2 does not run on ARM hardware, so Android covers PS1 but not PS2.
Why Did My Save States Break After I Added a BIOS?
Save states capture the emulator’s exact memory contents at a moment in time, so anything that changes how the core boots can make an old state unreadable. Adding or swapping firmware does exactly that. Libretro forum users call states extremely volatile for this reason and recommend in-game saves for anything you want to keep long term.
Get the folder right first, verify the checksums second, and most RetroArch firmware problems disappear. Settings > Directory > System/BIOS tells you the one path that matters, PS1 files sit loose in it, and LRPS2 wants its own system/pcsx2/bios subfolder underneath. Dump from your own console, keep the companion files with the main .bin, and restart the program before you decide something is broken.
References
- BIOS Information Hub, Libretro Docs
- LRPS2 Core Documentation, Libretro Docs
- RetroArch BIOS Setup Guide, GitLab
- RetroArch BIOS Files, What You Need and Where They Go (2026), RetroHandheldHQ
- PS1 BIOS Config, ePSXe and RetroArch Setup, GitLab
- RetroArch FAQ – Frequently Asked Questions & Troubleshooting, RetroArch FAQ
- docs/RetroArch.md, GitHub Lutris Project
- Where to Put BIOS Files, Need Help Understanding, Libretro Forums
- PS2 BIOS: What It Is, How to Dump It Legally, and How to Install It, GamesRead.com
Sources read in September 2026.
