Files
libretro/README.md
T

9.2 KiB

RetroBIOS

Build Site

Complete BIOS and firmware packs for Batocera, BizHawk, EmuDeck, Lakka, MiSTer FPGA, ROCKNIX, Recalbox, RetroArch, RetroBat, RetroDECK, RetroPie, and RomM.

Pick your platform below and extract the pack: it carries every file its emulators load, read from their source code. Nothing to configure, nothing to hunt down.

Quick Install

Copy one command into your terminal:

# Linux / macOS / Steam Deck
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh

# Windows (PowerShell)
irm https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1 | iex

# Handheld (SD card mounted on PC)
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh -s -- --platform retroarch --dest /path/to/sdcard

The script auto-detects your platform, downloads only missing files, and verifies checksums.

Download BIOS packs

Pick your platform, download the ZIP, extract to the BIOS path.

Platform Size Extract to Download
Batocera 2.7 GB /userdata/bios/ Download
BizHawk 2.4 GB Firmware/ Download
EmuDeck 1.6 GB ~/Emulation/bios/ Download
Lakka 3.9 GB /storage/system/ Download
MiSTer FPGA 23 MB /media/fat/games/ Download
ROCKNIX 3.8 GB /storage/roms/bios/ Download
Recalbox 2.3 GB /recalbox/share/bios/ Download
RetroArch 3.9 GB system/ Download
RetroBat 3.1 GB bios/ Download
RetroDECK 4.6 GB ~/retrodeck/ Download
RetroPie * - ~/RetroPie/BIOS/ Download
RomM 1.4 GB bios/{platform_slug}/ Download

The RetroDECK pack already contains its own bios/ folder, so it extracts into ~/retrodeck/ rather than into the BIOS folder.

* Archived: the configuration is kept and packs are still built, but upstream is no longer scraped on a schedule.

What's included

BIOS, firmware, and system files for consoles from Atari to PlayStation 3. Every file passes its platform's own verification; where an emulator profile exists, the expected hashes and sizes are read from the emulator's source code (the Source-backed column below).

  • 0 files missing from the packs: every file the platforms' emulators load is in the collection. Files needed only by emulators no platform ships yet are counted in the gap analysis
  • 12 platforms supported with platform-specific verification
  • 327 emulators profiled from source (RetroArch cores + standalone)
  • 409 systems covered (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
  • 7,763 files indexed with SHA1, MD5, SHA256 and CRC32 checksums: 2,478 system files, 2,746 arcade ROM sets, 2,539 game and engine data files
  • 542 files matched to dump-preservation catalogs (No-Intro, Redump, TOSEC)
  • 9854 MB total collection size

Supported systems

NES, SNES, Nintendo 64, GameCube, Wii, Game Boy, Game Boy Advance, Nintendo DS, Nintendo 3DS, Switch, PlayStation, PlayStation 2, PlayStation 3, PSP, PS Vita, Mega Drive, Saturn, Dreamcast, Game Gear, Master System, Neo Geo, Atari 2600, Atari 7800, Atari Lynx, Atari ST, MSX, PC Engine, TurboGrafx-16, ColecoVision, Intellivision, Commodore 64, Amiga, ZX Spectrum, Arcade (MAME), and 375+ more.

Full list with per-file details: https://abdess.github.io/retrobios/

Coverage

Platform Files in pack Declared by platform Required by its emulators Still missing Verified by
Batocera 1,600 353 1,144 0 MD5 hash
BizHawk 538 118 366 0 SHA1 hash
EmuDeck 525 161 404 0 MD5 hash
Lakka 1,683 530 1,148 0 file presence
MiSTer FPGA 65 65 0 0 MD5 hash
ROCKNIX 1,548 38 1,483 0 MD5 hash
Recalbox 1,184 346 714 0 MD5 hash
RetroArch 1,683 530 1,148 0 file presence
RetroBat 1,234 341 807 0 MD5 hash
RetroDECK 3,318 2,008 1,182 0 MD5 hash
RetroPie * 1,678 530 1,148 0 file presence
RomM 543 374 266 0 MD5 hash

Declared by platform is the platform's own BIOS list. Required by its emulators counts what the cores it ships actually load, read from their source code, that the list never mentions: it is routinely several times the list itself. Both ship in the pack. Files in pack counts what the ZIP actually holds, each file once at its destination, so it does not add up from the two: a file several systems need is counted once, and the data directories some emulators need are counted too. Still missing counts files an emulator needs that are not in the collection yet; verified by is the check the platform itself runs on them. The gap analysis page names those missing files and details how far each platform's files are corroborated against emulator source code.

Build your own pack

Clone the repo and generate packs for any platform, emulator, or system:

# Full platform pack
python scripts/generate_pack.py --platform retroarch --output-dir dist/
python scripts/generate_pack.py --platform batocera --output-dir dist/

# Single emulator or system
python scripts/generate_pack.py --emulator dolphin
python scripts/generate_pack.py --system sony-playstation-2

# List available emulators and systems
python scripts/generate_pack.py --list-emulators
python scripts/generate_pack.py --list-systems

# Verify your BIOS collection
python scripts/verify.py --all
python scripts/verify.py --platform batocera
python scripts/verify.py --emulator flycast
python scripts/verify.py --platform retroarch --verbose  # emulator ground truth

Only dependency: Python 3 + pyyaml.

Documentation site

The documentation site provides:

  • Per-platform pages with file-by-file verification status and hashes
  • Per-emulator profiles with source code references for every file
  • Per-system pages showing which emulators and platforms cover each console
  • Gap analysis identifying missing files and undeclared core requirements
  • Cross-reference mapping files across 12 platforms and 327 emulators

How it works

Documentation and metadata can drift from what emulators actually load. To keep packs accurate, platform lists are checked against emulator source code, file by file where a profile exists; when the two disagree, the code wins.

Hashes document what emulator code loads and accepts, not dump provenance; that boundary, and how it relates to preservation catalogs such as No-Intro, is drawn in the FAQ.

  1. Read emulator source code - trace every file the code loads, its expected hash and size
  2. Cross-reference with platforms - match against what each platform declares
  3. Build packs - include baseline files plus what each platform's cores need
  4. Verify - run platform-native checks and emulator-level validation

Contributors

Community tools

Contributing

See CONTRIBUTING.md for guidelines.

License

The scripts and tooling are released under the MIT License. The BIOS and firmware files are not covered by that license: they are third-party system software, preserved and provided for personal backup, archival, and interoperability with emulation software. The legal reasoning is laid out in the FAQ.

Auto-generated on 2026-08-08T06:29:40Z