mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-04-13 12:22:33 -05:00
Compare commits
29 Commits
5ee81b30c6
...
auto/updat
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24c0ccc9f6 | ||
|
|
d4ce6df911 | ||
|
|
d0846ed78f | ||
|
|
07b4e55053 | ||
|
|
690e897ca7 | ||
|
|
7471c176c3 | ||
|
|
e72773e46d | ||
|
|
3c0c1cec02 | ||
|
|
faf4236463 | ||
|
|
1c0c502258 | ||
|
|
06c48e071a | ||
|
|
8f93ee2239 | ||
|
|
9ba8b02ff1 | ||
|
|
6fc2753f3e | ||
|
|
486b359c22 | ||
|
|
76a3543672 | ||
|
|
48d185dd7d | ||
|
|
6dbc3f510b | ||
|
|
97e26103f5 | ||
|
|
59d777a33d | ||
|
|
9ce4724fc4 | ||
|
|
7e46c23f3a | ||
|
|
6f22dd7738 | ||
|
|
c0e42ee4eb | ||
|
|
92b270c054 | ||
|
|
2f11542ed3 | ||
|
|
f9a612db4a | ||
|
|
812775f6b4 | ||
|
|
73ccb216f5 |
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 |
36
.github/workflows/build.yml
vendored
36
.github/workflows/build.yml
vendored
@@ -58,16 +58,32 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
mkdir -p .cache/large
|
mkdir -p .cache/large
|
||||||
gh release download large-files -D .cache/large/ 2>/dev/null || true
|
gh release download large-files -D .cache/large/ 2>/dev/null || true
|
||||||
for f in .cache/large/*; do
|
python3 -c "
|
||||||
[ -f "$f" ] || continue
|
import hashlib, json, os, shutil
|
||||||
name=$(basename "$f")
|
db = json.load(open('database.json'))
|
||||||
target=$(grep "$name" .gitignore | head -1)
|
with open('.gitignore') as f:
|
||||||
if [ -n "$target" ] && [ ! -f "$target" ]; then
|
ignored = {l.strip() for l in f if l.strip().startswith('bios/')}
|
||||||
mkdir -p "$(dirname "$target")"
|
cache = '.cache/large'
|
||||||
cp "$f" "$target"
|
if not os.path.isdir(cache):
|
||||||
echo "Restored: $target"
|
exit(0)
|
||||||
fi
|
idx = {}
|
||||||
done
|
for fn in os.listdir(cache):
|
||||||
|
fp = os.path.join(cache, fn)
|
||||||
|
if os.path.isfile(fp):
|
||||||
|
h = hashlib.sha1(open(fp, 'rb').read()).hexdigest()
|
||||||
|
idx[h] = fp
|
||||||
|
restored = 0
|
||||||
|
for sha1, entry in db['files'].items():
|
||||||
|
path = entry['path']
|
||||||
|
if path in ignored and not os.path.exists(path):
|
||||||
|
src = idx.get(sha1)
|
||||||
|
if src:
|
||||||
|
os.makedirs(os.path.dirname(path), exist_ok=True)
|
||||||
|
shutil.copy2(src, path)
|
||||||
|
print(f'Restored: {path}')
|
||||||
|
restored += 1
|
||||||
|
print(f'Total: {restored} files restored')
|
||||||
|
"
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
|||||||
37
.github/workflows/deploy-site.yml
vendored
37
.github/workflows/deploy-site.yml
vendored
@@ -36,6 +36,43 @@ jobs:
|
|||||||
|
|
||||||
- run: pip install pyyaml mkdocs-material pymdown-extensions
|
- run: pip install pyyaml mkdocs-material pymdown-extensions
|
||||||
|
|
||||||
|
- name: Restore large files from release
|
||||||
|
run: |
|
||||||
|
mkdir -p .cache/large
|
||||||
|
gh release download large-files -D .cache/large/ 2>/dev/null || true
|
||||||
|
python3 -c "
|
||||||
|
import hashlib, json, os, shutil
|
||||||
|
db = json.load(open('database.json'))
|
||||||
|
with open('.gitignore') as f:
|
||||||
|
ignored = {l.strip() for l in f if l.strip().startswith('bios/')}
|
||||||
|
cache = '.cache/large'
|
||||||
|
if not os.path.isdir(cache):
|
||||||
|
exit(0)
|
||||||
|
idx = {}
|
||||||
|
for fn in os.listdir(cache):
|
||||||
|
fp = os.path.join(cache, fn)
|
||||||
|
if os.path.isfile(fp):
|
||||||
|
h = hashlib.sha1(open(fp, 'rb').read()).hexdigest()
|
||||||
|
idx[h] = fp
|
||||||
|
restored = 0
|
||||||
|
for sha1, entry in db['files'].items():
|
||||||
|
path = entry['path']
|
||||||
|
if path in ignored and not os.path.exists(path):
|
||||||
|
src = idx.get(sha1)
|
||||||
|
if src:
|
||||||
|
os.makedirs(os.path.dirname(path), exist_ok=True)
|
||||||
|
shutil.copy2(src, path)
|
||||||
|
print(f'Restored: {path}')
|
||||||
|
restored += 1
|
||||||
|
print(f'Total: {restored} files restored')
|
||||||
|
"
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Refresh data directories
|
||||||
|
run: python scripts/refresh_data_dirs.py
|
||||||
|
continue-on-error: true
|
||||||
|
|
||||||
- name: Generate site
|
- name: Generate site
|
||||||
run: |
|
run: |
|
||||||
python scripts/generate_site.py
|
python scripts/generate_site.py
|
||||||
|
|||||||
@@ -7,6 +7,16 @@
|
|||||||
3. Variants (alternate hashes): `bios/Manufacturer/Console/.variants/`
|
3. Variants (alternate hashes): `bios/Manufacturer/Console/.variants/`
|
||||||
4. Create a Pull Request - checksums are verified automatically
|
4. Create a Pull Request - checksums are verified automatically
|
||||||
|
|
||||||
|
## Add a new platform
|
||||||
|
|
||||||
|
1. Write a scraper in `scripts/scraper/`
|
||||||
|
2. Create the platform YAML in `platforms/`
|
||||||
|
3. Register in `platforms/_registry.yml`
|
||||||
|
4. Submit a Pull Request
|
||||||
|
|
||||||
|
Contributors who add platform support are credited in the README,
|
||||||
|
on the documentation site, and in the BIOS packs.
|
||||||
|
|
||||||
## File conventions
|
## File conventions
|
||||||
|
|
||||||
- Files >50 MB go in GitHub release assets (`large-files` release)
|
- Files >50 MB go in GitHub release assets (`large-files` release)
|
||||||
|
|||||||
21
README.md
21
README.md
@@ -1,8 +1,10 @@
|
|||||||
# 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.
|
Complete BIOS and firmware packs for Batocera, BizHawk, EmuDeck, Lakka, Recalbox, RetroArch, RetroBat, RetroDECK, RetroPie, and RomM.
|
||||||
|
|
||||||
**7,296** verified files across **396** systems, ready to extract into your emulator's BIOS directory.
|
**7,351** verified files across **396** systems, ready to extract into your emulator's BIOS directory.
|
||||||
|
|
||||||
## Quick Install
|
## Quick Install
|
||||||
|
|
||||||
@@ -27,7 +29,7 @@ Pick your platform, download the ZIP, extract to the BIOS path.
|
|||||||
|
|
||||||
| Platform | BIOS files | Extract to | Download |
|
| Platform | BIOS files | Extract to | Download |
|
||||||
|----------|-----------|-----------|----------|
|
|----------|-----------|-----------|----------|
|
||||||
| Batocera | 361 | `/userdata/bios/` | [Download](../../releases/latest) |
|
| Batocera | 353 | `/userdata/bios/` | [Download](../../releases/latest) |
|
||||||
| BizHawk | 118 | `Firmware/` | [Download](../../releases/latest) |
|
| BizHawk | 118 | `Firmware/` | [Download](../../releases/latest) |
|
||||||
| EmuDeck | 161 | `Emulation/bios/` | [Download](../../releases/latest) |
|
| EmuDeck | 161 | `Emulation/bios/` | [Download](../../releases/latest) |
|
||||||
| Lakka | 448 | `system/` | [Download](../../releases/latest) |
|
| Lakka | 448 | `system/` | [Download](../../releases/latest) |
|
||||||
@@ -46,8 +48,8 @@ Each file is checked against the emulator's source code to match what the code a
|
|||||||
- **10 platforms** supported with platform-specific verification
|
- **10 platforms** supported with platform-specific verification
|
||||||
- **329 emulators** profiled from source (RetroArch cores + standalone)
|
- **329 emulators** profiled from source (RetroArch cores + standalone)
|
||||||
- **396 systems** covered (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
|
- **396 systems** covered (NES, SNES, PlayStation, Saturn, Dreamcast, ...)
|
||||||
- **7,296 files** verified with MD5, SHA1, CRC32 checksums
|
- **7,351 files** verified with MD5, SHA1, CRC32 checksums
|
||||||
- **8765 MB** total collection size
|
- **8777 MB** total collection size
|
||||||
|
|
||||||
## Supported systems
|
## Supported systems
|
||||||
|
|
||||||
@@ -59,7 +61,7 @@ Full list with per-file details: **[https://abdess.github.io/retrobios/](https:/
|
|||||||
|
|
||||||
| Platform | Coverage | Verified | Untested | Missing |
|
| Platform | Coverage | Verified | Untested | Missing |
|
||||||
|----------|----------|----------|----------|---------|
|
|----------|----------|----------|----------|---------|
|
||||||
| Batocera | 361/361 (100.0%) | 361 | 0 | 0 |
|
| Batocera | 352/353 (99.7%) | 351 | 1 | 1 |
|
||||||
| BizHawk | 118/118 (100.0%) | 118 | 0 | 0 |
|
| BizHawk | 118/118 (100.0%) | 118 | 0 | 0 |
|
||||||
| EmuDeck | 161/161 (100.0%) | 161 | 0 | 0 |
|
| EmuDeck | 161/161 (100.0%) | 161 | 0 | 0 |
|
||||||
| Lakka | 448/448 (100.0%) | 448 | 0 | 0 |
|
| Lakka | 448/448 (100.0%) | 448 | 0 | 0 |
|
||||||
@@ -116,11 +118,10 @@ 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
|
3. **Build packs** - include baseline files plus what each platform's cores need
|
||||||
4. **Verify** - run platform-native checks and emulator-level validation
|
4. **Verify** - run platform-native checks and emulator-level validation
|
||||||
|
|
||||||
## Contributors
|
|
||||||
|
|
||||||
<a href="https://github.com/PixNyb"><img src="https://avatars.githubusercontent.com/u/40770831?v=4" width="50" title="PixNyb"></a>
|
## Community tools
|
||||||
<a href="https://github.com/monster-penguin"><img src="https://avatars.githubusercontent.com/u/266009589?v=4" width="50" title="monster-penguin"></a>
|
|
||||||
|
|
||||||
|
- [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
|
## Contributing
|
||||||
|
|
||||||
@@ -130,4 +131,4 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
|||||||
|
|
||||||
This repository provides BIOS files for personal backup and archival purposes.
|
This repository provides BIOS files for personal backup and archival purposes.
|
||||||
|
|
||||||
*Auto-generated on 2026-04-02T05:33:10Z*
|
*Auto-generated on 2026-04-06T10:03:04Z*
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user