# Rebuilding an archive

> Built from commit 35fce543c15d on 2026-11-11. The current build: https://abdess.github.io/retrobios/version.json

Source: https://abdess.github.io/retrobios/wiki/archive-recipes/

Arcade emulators read their BIOS files from a ZIP archive.

The collection keeps a **recipe** for each archive. It lists the files inside, in order, with their fingerprints. The recipe and those files make the archive again. No copy from elsewhere is needed.

## Rebuild one archive

In a copy of the project:

```
python scripts/romset_recipes.py --build neogeo.zip --output-dir rebuilt
```

Each archive of that name is made under `rebuilt/`, in the folders it has in the collection. It is checked against its recipe before it is kept.

## Exact or canonical

- **Exact**: the same bytes as the archive in the collection. 1,796 of 2,231 archives.
- **Canonical**: the same files inside, packed another way. 435 of 2,231 archives. An emulator reads the files inside, so both work the same. A setup that checks the whole archive by its fingerprint needs the exact one.

Every option of the command: [tools](https://abdess.github.io/retrobios/wiki/tools/#archive-recipes).
