mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 12:22:33 -05:00
Compare commits
8 Commits
1c0c502258
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4ce6df911 | ||
|
|
d0846ed78f | ||
|
|
07b4e55053 | ||
|
|
690e897ca7 | ||
|
|
7471c176c3 | ||
|
|
e72773e46d | ||
|
|
3c0c1cec02 | ||
|
|
faf4236463 |
BIN
.github/assets/banner-light.png
vendored
Normal file
BIN
.github/assets/banner-light.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
BIN
.github/assets/banner.png
vendored
Normal file
BIN
.github/assets/banner.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 135 KiB |
BIN
.github/assets/favicon.png
vendored
Normal file
BIN
.github/assets/favicon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
BIN
.github/assets/logo.png
vendored
Normal file
BIN
.github/assets/logo.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 72 KiB |
BIN
.github/assets/social-preview.png
vendored
Normal file
BIN
.github/assets/social-preview.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 75 KiB |
14
README.md
14
README.md
@@ -1,4 +1,6 @@
|
||||
# RetroBIOS
|
||||
<p align="center">
|
||||
<img src=".github/assets/banner.png" alt="RetroBIOS" width="400">
|
||||
</p>
|
||||
|
||||
Complete BIOS and firmware packs for Batocera, BizHawk, EmuDeck, Lakka, Recalbox, RetroArch, RetroBat, RetroDECK, RetroPie, and RomM.
|
||||
|
||||
@@ -116,16 +118,16 @@ To keep packs accurate, each file is checked against the emulator's source code.
|
||||
3. **Build packs** - include baseline files plus what each platform's cores need
|
||||
4. **Verify** - run platform-native checks and emulator-level validation
|
||||
|
||||
## Community tools
|
||||
|
||||
- [BIOS Preservation Tool](https://github.com/monster-penguin/BIOS-Preservation-Tool) by [monster-penguin](https://github.com/monster-penguin) - scan, verify, and stage your own BIOS collection using RetroBIOS hash metadata
|
||||
|
||||
## Contributors
|
||||
|
||||
<a href="https://github.com/PixNyb"><img src="https://avatars.githubusercontent.com/u/40770831?v=4" width="50" title="PixNyb"></a>
|
||||
<a href="https://github.com/monster-penguin"><img src="https://avatars.githubusercontent.com/u/266009589?v=4" width="50" title="monster-penguin"></a>
|
||||
|
||||
|
||||
## Community tools
|
||||
|
||||
- [BIOS Preservation Tool](https://github.com/monster-penguin/BIOS-Preservation-Tool) by [monster-penguin](https://github.com/monster-penguin) - scan, verify, and stage your own BIOS collection using RetroBIOS hash metadata
|
||||
|
||||
## Contributing
|
||||
|
||||
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
||||
@@ -134,4 +136,4 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
||||
|
||||
This repository provides BIOS files for personal backup and archival purposes.
|
||||
|
||||
*Auto-generated on 2026-04-02T13:38:26Z*
|
||||
*Auto-generated on 2026-04-03T12:59:52Z*
|
||||
|
||||
@@ -20,6 +20,8 @@ theme:
|
||||
icon: material/brightness-4
|
||||
name: Switch to auto
|
||||
font: false
|
||||
logo: assets/images/logo.png
|
||||
favicon: assets/images/favicon.png
|
||||
icon:
|
||||
logo: material/chip
|
||||
features:
|
||||
|
||||
@@ -143,7 +143,9 @@ def generate_readme(db: dict, platforms_dir: str) -> str:
|
||||
pass
|
||||
|
||||
lines = [
|
||||
"# RetroBIOS",
|
||||
'<p align="center">',
|
||||
' <img src=".github/assets/banner.png" alt="RetroBIOS" width="400">',
|
||||
"</p>",
|
||||
"",
|
||||
f"Complete BIOS and firmware packs for "
|
||||
f"{', '.join(c['platform'] for c in sorted(coverages.values(), key=lambda x: x[
|
||||
@@ -349,6 +351,13 @@ def generate_readme(db: dict, platforms_dir: str) -> str:
|
||||
|
||||
lines.extend(
|
||||
[
|
||||
"",
|
||||
"## Community tools",
|
||||
"",
|
||||
"- [BIOS Preservation Tool](https://github.com/monster-penguin/BIOS-Preservation-Tool)"
|
||||
" by [monster-penguin](https://github.com/monster-penguin)"
|
||||
" - scan, verify, and stage your own BIOS collection"
|
||||
" using RetroBIOS hash metadata",
|
||||
"",
|
||||
"## Contributing",
|
||||
"",
|
||||
|
||||
@@ -2136,6 +2136,131 @@ def _build_emulator_file_index(profiles: dict) -> dict[str, dict]:
|
||||
# mkdocs.yml nav generator
|
||||
|
||||
|
||||
def generate_which_pack() -> str:
|
||||
"""Generate the 'Which pack?' decision page."""
|
||||
rel = "https://github.com/Abdess/retrobios/releases"
|
||||
return f"""\
|
||||
# Getting started
|
||||
|
||||
Some retro consoles need firmware files (commonly called BIOS) to run games.
|
||||
Without them, the emulator either refuses to start the game or runs it with
|
||||
reduced accuracy. This project collects and verifies those files so they are
|
||||
ready to use.
|
||||
|
||||
## Quick install
|
||||
|
||||
The installer detects the platform, finds the BIOS folder, downloads what
|
||||
is missing, and copies keys to standalone emulators (Yuzu, Eden, Ryujinx,
|
||||
DuckStation, PCSX2, Dolphin, etc.) when they are present on the system.
|
||||
|
||||
**Linux / Mac / Steam Deck:**
|
||||
|
||||
```sh
|
||||
curl -fsSL https://raw.githubusercontent.com/Abdess/retrobios/main/install.sh | sh
|
||||
```
|
||||
|
||||
**Windows (PowerShell):**
|
||||
|
||||
```powershell
|
||||
iwr -useb https://raw.githubusercontent.com/Abdess/retrobios/main/install.ps1 | iex
|
||||
```
|
||||
|
||||
Nothing else needed. The installer handles everything.
|
||||
|
||||
---
|
||||
|
||||
## Manual download
|
||||
|
||||
Pick the pack that matches the setup from the [releases page]({rel}),
|
||||
download it, and extract the files into the BIOS folder listed below.
|
||||
After extraction, launch a game. If it needed BIOS, it will find it.
|
||||
|
||||
### Steam Deck
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| [EmuDeck](https://www.emudeck.com/) | Installs and configures multiple emulators, adds each game to the Steam library | [EmuDeck]({rel}) | `~/Emulation/bios/` |
|
||||
| [RetroDECK](https://retrodeck.net/) | Single Flatpak app, all emulators bundled, one-click install from Discover | [RetroDECK]({rel}) | `~/retrodeck/` |
|
||||
| RetroArch standalone | Installed from Discover, Steam, or Flatpak | [RetroArch]({rel}) | Open RetroArch > Settings > Directory > System, that is the folder |
|
||||
|
||||
### Windows
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| [RetroArch](https://www.retroarch.com/) | Multi-system emulator, loads different cores for each console | [RetroArch]({rel}) | The `system` folder next to `retroarch.exe` |
|
||||
| [RetroBat](https://www.retrobat.org/) | Windows frontend with EmulationStation, includes RetroArch and standalone emulators | [RetroBat]({rel}) | The `bios` folder inside the RetroBat installation |
|
||||
| [BizHawk](https://tasvideos.org/BizHawk) | Accuracy-focused multi-system emulator, popular for speedruns and TAS | [BizHawk]({rel}) | The `Firmware` folder inside the BizHawk installation |
|
||||
| [LaunchBox](https://www.launchbox-app.com/) | Game library manager and launcher, uses RetroArch or standalone emulators behind the scenes | [RetroArch]({rel}) | Open RetroArch (via LaunchBox) > Settings > Directory > System |
|
||||
|
||||
### Linux
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| RetroArch (native) | Installed via package manager or AppImage | [RetroArch]({rel}) | `~/.config/retroarch/system/` |
|
||||
| RetroArch (Flatpak) | Installed from Flathub | [RetroArch]({rel}) | `~/.var/app/org.libretro.RetroArch/config/retroarch/system/` |
|
||||
| [Batocera](https://batocera.org/) | Bootable OS dedicated to gaming, runs from USB or full install, supports PC and SBC | [Batocera]({rel}) | `/userdata/bios/` |
|
||||
| [Recalbox](https://www.recalbox.com/) | Bootable OS for retro gaming, streamlined interface, auto-configured | [Recalbox]({rel}) | `/recalbox/share/bios/` |
|
||||
|
||||
### macOS
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| [RetroArch](https://www.retroarch.com/) | Multi-system emulator | [RetroArch]({rel}) | `~/Library/Application Support/RetroArch/system/` |
|
||||
|
||||
### Raspberry Pi and single-board computers
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| [RetroPie](https://retropie.org.uk/) | The classic Pi emulation setup, largest community, most online guides | [RetroArch]({rel}) | `~/RetroPie/BIOS/` |
|
||||
| [Lakka](https://www.lakka.tv/) | Lightweight RetroArch OS, minimal config, boots straight into the UI | [RetroArch]({rel}) | `/storage/system/` |
|
||||
| [Batocera](https://batocera.org/) | Easy setup, works on Pi 3/4/5 and many other boards (Odroid, etc.) | [Batocera]({rel}) | `/userdata/bios/` |
|
||||
| [Recalbox](https://www.recalbox.com/) | Plug-and-play experience, good for a first build | [Recalbox]({rel}) | `/recalbox/share/bios/` |
|
||||
|
||||
### Android handheld (Retroid Pocket, R36S, Miyoo, etc.)
|
||||
|
||||
Most Android handhelds run RetroArch. Download the [RetroArch pack]({rel})
|
||||
and extract into `RetroArch/system/` on internal storage or SD card.
|
||||
|
||||
### Self-hosted ROM manager
|
||||
|
||||
| Setup | What it is | Pack | Extract to |
|
||||
|-------|-----------|------|-----------|
|
||||
| [RomM](https://github.com/rommapp/romm) | Web-based ROM manager, plays games in the browser via EmulatorJS | [RomM]({rel}) | The `bios` folder in the RomM library, one subfolder per system |
|
||||
|
||||
---
|
||||
|
||||
## Full pack or Platform pack?
|
||||
|
||||
Each platform has two pack types on the [releases page]({rel}).
|
||||
|
||||
**Full pack** (recommended)
|
||||
|
||||
Contains the platform's own BIOS list plus all files needed by each
|
||||
emulator core available on that platform. This covers alternate cores,
|
||||
optional firmware that improves accuracy, and edge cases. Larger download,
|
||||
but everything works out of the box with any core.
|
||||
|
||||
**Platform pack**
|
||||
|
||||
Contains only the files the platform officially checks for. Much smaller
|
||||
download. Good for limited storage (SD cards, handhelds) or setups that
|
||||
only use default cores.
|
||||
|
||||
When in doubt, take the full pack.
|
||||
|
||||
---
|
||||
|
||||
## After extraction
|
||||
|
||||
Launch a game. If it needed a BIOS file, the emulator will find it
|
||||
automatically. No configuration needed.
|
||||
|
||||
If a game still asks for a missing file, check the
|
||||
[platforms section](platforms/index.md) for the full file list, or the
|
||||
[emulators section](emulators/index.md) for what each core expects.
|
||||
"""
|
||||
|
||||
|
||||
def generate_mkdocs_nav(
|
||||
coverages: dict,
|
||||
manufacturers: dict,
|
||||
@@ -2216,7 +2341,7 @@ def generate_mkdocs_nav(
|
||||
|
||||
return [
|
||||
{"Home": "index.md"},
|
||||
{"Which pack?": "which-pack.md"},
|
||||
{"Download": "which-pack.md"},
|
||||
{"Platforms": platform_nav},
|
||||
{"Systems": system_nav},
|
||||
{"Emulators": emu_nav},
|
||||
@@ -2260,6 +2385,15 @@ def main():
|
||||
css_dest.parent.mkdir(parents=True, exist_ok=True)
|
||||
shutil.copy2(css_src, css_dest)
|
||||
|
||||
# Copy branding assets
|
||||
images_dest = docs / "assets" / "images"
|
||||
images_dest.mkdir(parents=True, exist_ok=True)
|
||||
assets_src = Path(".github") / "assets"
|
||||
for name, dest_name in [("logo.png", "logo.png"), ("favicon.png", "favicon.png")]:
|
||||
src = assets_src / name
|
||||
if src.exists():
|
||||
shutil.copy2(src, images_dest / dest_name)
|
||||
|
||||
registry_path = Path(args.platforms_dir) / "_registry.yml"
|
||||
registry = {}
|
||||
if registry_path.exists():
|
||||
@@ -2370,6 +2504,10 @@ def main():
|
||||
str(wiki_dest / "data-model.md"), generate_wiki_data_model(db, profiles)
|
||||
)
|
||||
|
||||
# Generate which-pack page
|
||||
print("Generating which-pack page...")
|
||||
write_if_changed(str(docs / "which-pack.md"), generate_which_pack())
|
||||
|
||||
# Generate contributing
|
||||
print("Generating contributing page...")
|
||||
write_if_changed(str(docs / "contributing.md"), generate_contributing())
|
||||
@@ -2405,6 +2543,8 @@ theme:
|
||||
icon: material/brightness-4
|
||||
name: Switch to auto
|
||||
font: false
|
||||
logo: assets/images/logo.png
|
||||
favicon: assets/images/favicon.png
|
||||
icon:
|
||||
logo: material/chip
|
||||
features:
|
||||
|
||||
Reference in New Issue
Block a user