Files
libretro/wiki/index.md
T
Abdessamad Derraz be3324f869 feat: read guides and wiki nav from data
Platform guides, device groups, terminal tabs, pack README manuals and
logo credits move from Python tables to platforms/_guides.yml, checked
against the registry on load. A folder row without a path is the
registry's extract_to, written once.

Wiki pages place themselves in the navigation with order and nav_title
in their front matter. Generated docs/ and mkdocs.yml are unchanged.
2026-10-22 15:06:52 +02:00

3.1 KiB

level, order
level order
reference 0

Reference

These pages describe how the files are checked, what the data holds and how the toolchain works. To set up BIOS files on a device, start with Get your files.

How the files are checked

Data

  • Data and API - JSON, CSV and SQLite exports with their checksums
  • Find a file - any SHA1, MD5, CRC32 or SHA256: the file, the platforms that declare it, the emulators that check it
  • Data model - database.json structure, indexes, file resolution order, YAML formats

The toolchain

  • Architecture - directory structure, data flow, platform inheritance, pack grouping, security, edge cases, CI workflows
  • Build your own packs - custom packs, region filtering, one file per slot, target filtering, truth generation, emulator verification, offline workflow
  • Command-line tools - every script, pipeline usage, scrapers
  • Projects using this data - projects built on RetroBIOS data

Methodology

Platform lists are checked against emulator source code, file by file where a profile exists. Documentation and metadata can differ from what a program does at run time, so the source is the primary reference:

  1. Upstream emulator source: what the original project loads (Dolphin, PCSX2, Mednafen and others)
  2. Libretro core source: the RetroArch port, which may adapt paths or add files
  3. .info declarations: metadata that platforms rely on, checked against the two above

For contributors

  • Profiling an emulator - create an emulator profile from source code, YAML field reference
  • Adding a platform - scraper, registry, YAML config, exporter, target scraper, install detection
  • Adding a scraper - plugin architecture, BaseScraper, parsers, target scrapers
  • Testing - run tests, fixture pattern, how to add tests, CI integration
  • Release process - CI workflows, large files, manual release

See contributing for submission guidelines.

Terms

The words these pages use, from profile to provenance, are in Terms of the reference pages. The everyday words are in the glossary.