Skip to content

Contributing - RetroBIOS

Add a BIOS file

  1. Fork this repository
  2. Place the file in bios/Manufacturer/Console/filename
  3. Variants (alternate hashes for the same file): place in bios/Manufacturer/Console/.variants/
  4. Create a Pull Request - hashes are verified automatically

Add a platform

  1. Create a scraper in scripts/scraper/ (inherit BaseScraper)
  2. Read the platform's upstream source code to understand its BIOS check logic
  3. Add entry to platforms/_registry.yml
  4. Generate the platform YAML config
  5. Test: python scripts/verify.py --platform <name>

Add an emulator profile

  1. Clone the emulator's source code
  2. Search for BIOS/firmware loading (grep for bios, rom, firmware, fopen)
  3. Document every file the emulator loads with source code references
  4. Write YAML to emulators/<name>.yml
  5. Test: python scripts/cross_reference.py --emulator <name>

File conventions

  • bios/Manufacturer/Console/filename for canonical files
  • bios/Manufacturer/Console/.variants/filename.sha1prefix for alternate versions
  • Files >50 MB go in GitHub release assets (large-files release)
  • RPG Maker and ScummVM directories are excluded from deduplication

PR validation

The CI automatically: - Computes SHA1/MD5/CRC32 of new files - Checks against known hashes in platform configs - Reports coverage impact