- Fork this repository
- Place the file in
bios/Manufacturer/Console/filename - Variants (alternate hashes for the same file):
bios/Manufacturer/Console/.variants/ - Open a Pull Request - hashes are verified automatically and reported as a comment
The dump provenance page lists catalogued dumps still missing from the collection, with their hashes. A file matching one of those is the most useful contribution.
- Write a scraper in
scripts/scraper/(inheritBaseScraper) - Read the platform's upstream source to determine how it checks BIOS files
- Register it in
platforms/_registry.yml - Generate the platform YAML and test:
python scripts/verify.py --platform <name>
Full walkthrough: adding a platform.
- Clone the emulator's source code, upstream and libretro port
- Trace the file loading from the entry point, not from a keyword grep
- Document every file the code loads, with a
source_refline reference - Write the YAML to
emulators/<name>.yml - Test:
python scripts/cross_reference.py --emulator <name>
Full walkthrough: profiling guide.
bios/Manufacturer/Console/filenamefor canonical filesbios/Manufacturer/Console/.variants/filename.sha1prefixfor alternate versions- Files >50 MB go in GitHub release assets (
large-filesrelease) - RPG Maker and ScummVM directories are excluded from deduplication
- Two paths differing only by case break clones on Windows and macOS;
tests/test_no_case_collisions.pyenforces this
python -m unittest discover tests
python scripts/pipeline.py --offlineCI computes SHA1/MD5/CRC32 for every new file, checks them against the platform configs, validates the YAML against the schemas, runs the test suite, and posts a report on the PR.
Contributors who add platform support are credited in the README, on the documentation site, and in the BIOS packs.