Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

RetroBIOS

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

# Android (Termux, after pkg install python and termux-setup-storage)
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh

# 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

One pack per platform, and it holds everything the platform runs: its own BIOS list plus every file its emulator cores load. Pick your platform, download the ZIP, extract to the BIOS path. The installer above does the same file by file, and --target narrows it to one machine; for a region or a bare minimum, build your own pack below. The size is what the files occupy once extracted; the ZIP itself downloads smaller, and anything over 2 GB arrives split into .zip.001, .zip.002 volumes. Open the .001 with 7-Zip or PeaZip, or join them first (cat Pack.zip.0* > Pack.zip, or copy /b Pack.zip.001+Pack.zip.002 Pack.zip on Windows).

Every release ships SHA256SUMS.txt and a detached signature of it, checkable against allowed_signers in this repository: verifying a release.

PlatformExtracted sizeExtract toDownload
Batocera4.2 GB/userdata/bios/Download
BizHawk2.4 GBFirmware/Download
EmuDeck3.2 GB~/Emulation/bios/Download
Lakka5.7 GB/storage/system/Download
MiSTer FPGA24 MB/media/fat/games/Download
ROCKNIX5.5 GB/storage/roms/bios/Download
Recalbox3.8 GB/recalbox/share/bios/Download
RetroArch5.7 GBsystem/Download
RetroBat4.6 GBbios/Download
RetroDECK6.4 GB~/retrodeck/Download
RetroPie *5.7 GB~/RetroPie/BIOS/Download
RomM1.5 GBbios/{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. These are the files an emulator loads from disk instead of carrying inside itself. Some are required to boot a system, others improve accuracy or unlock a feature; the packs carry both.

Each file is checked the way your platform checks it. Most compare a checksum, the fingerprint of a file's contents, which catches a corrupt or unexpected copy. RetroArch, Lakka and RetroPie only look for the filename, because that is all their code does: the Coverage table says which applies to you. Independently of that, the collection records five fingerprints per file, and wherever an emulator's code states an expected size or hash, that value is read from its source and rechecked here.

  • 6 files the platforms' emulators load are still to be found, and 21 more cannot be sourced at all (per-user keys, user-filled slots, dumps nobody has made); both are named in the gap analysis
  • 12 platforms supported with platform-specific verification
  • 450 emulators profiled from source (RetroArch cores + standalone)
  • 470 systems handled by those emulators (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
  • 10,375 files, each with its SHA1, MD5, SHA256, CRC32 and Adler-32 fingerprints: 5,030 system files, 2,806 arcade ROM sets, 2,539 game and engine data files
  • 554 of 5,030 system files matched to dump-preservation catalogs (No-Intro, Redump, TOSEC); arcade sets and engine data fall outside what those catalogs index
  • 12909 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 436+ more.

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

Coverage

PlatformOn its BIOS listFiles its emulators loadChecked by
Batocera353/3531,299/1,316MD5 hash
BizHawk118/118370/375SHA1 hash
EmuDeck166/168427/427MD5 hash
Lakka530/5301,206/1,224file presence
MiSTer FPGA72/72-MD5 hash
ROCKNIX38/381,636/1,654MD5 hash
Recalbox351/351827/842MD5 hash
RetroArch530/5301,206/1,224file presence
RetroBat343/343938/953MD5 hash
RetroDECK2,008/2,0081,250/1,269MD5 hash
RetroPie *530/5301,529/1,554file presence
RomM381/381284/293MD5 hash

Each fraction is what the pack has over what is needed, counting required and optional files alike since both ship. The first column is the BIOS list the platform publishes. The second counts files its emulators load that this list never mentions, found by reading their source code, and it is routinely several times larger. A short fraction means files are still missing, and they are named in the gap analysis. That second number is a floor, not a ceiling: an emulator that accepts any file handed to it names none in its code, so nothing there can be counted. Checked by is the test your platform runs on its own, replicated here from its source code, so the result matches what you would see in the frontend (how each one works).

Build your own pack

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

# The pack of a platform, as released
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

# One region, best first, one file per system and region
python scripts/generate_pack.py --platform retroarch --region us,eu,jp
python scripts/generate_pack.py --platform retroarch --region us --one-per-slot

# 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 450 emulators
  • Versioned data access through JSON, CSV and SQLite exports with published SHA-256 checksums

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

PixNyb Takiiiiiii Takiiiiiiii habib256 monster-penguin zjl88858

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. NOTICE sets out their status and how to ask for a file to be removed. The reasoning, and where it is weakest, is in the FAQ.

Auto-generated on 2026-09-14T08:42:18Z

关于 About

Source-verified BIOS and firmware packs for RetroArch, Batocera, Recalbox, Lakka, RetroPie, EmuDeck, RetroBat, RetroDECK, RomM, BizHawk, ROCKNIX, and MiSTer FPGA. Platform-native verification, with emulator source code as the deciding authority.
batocerabiosemudeckemulatoremulatorjsfirmwarelakkalibretromamenintendoplaystationpreservationrecalboxretroarchretrobatretrodeckretrogamingretropierommsega

语言 Languages

HTML38.5%
Python31.3%
IDL10.8%
GLSL8.2%
Lua4.1%
C2.9%
Roff1.7%
HLSL1.7%
Shell0.6%
CSS0.2%
JavaScript0.1%
PowerShell0.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
1094
Total Commits
峰值: 294次/周
Less
More

核心贡献者 Contributors