chore: merge audit fixes (mame)

This commit is contained in:
Abdessamad Derraz committed 2026-10-21 11:48:30 +02:00
commit cd589b2742
16 files changed
+1573 -33

No files matched your search

+1
View File
@@ -528,6 +528,7 @@ partitions), and `game_count`.
| `name` | filename as the core expects it |
| `required` | true if the core needs this file to function |
| `system` | system ID this file belongs to (for multi-system profiles) |
| `systems` | the systems of the profile this file serves, when it serves several but not all (a MAME device set the machines of two systems load). Never written with `system` |
| `archive` | ROM set the file lives inside, for arcade entries (e.g. `neogeo.zip`) |
| `size` | expected size in bytes, or a list when the code accepts several exact sizes |
| `min_size`, `max_size` | size range when the code accepts a range |
+7
View File
@@ -110,6 +110,13 @@ and merged into a profile, on an inline listxml and driver source. Covers:
entry's contents refreshed with its manual fields kept, BIOS root sets left
as written, a second run changing nothing, a new BIOS root placed before the
section
- Systems: the links the scan keeps (`romof`, `device_ref`, `slotoption`, a
device's parent ROM device), a set reached through a clone, its parent and
a slot card, one set under two systems, a machine no entry lists placing
nothing, seeds read above the generated section only, `system:` or
`systems:` written and rewritten by a refresh, a written entry's system
kept, and a `--system` pick reading the entry's own systems through the gap
report and the core extras
**test_fbneo_parser.** Tests the FBNeo C source parser that identifies
`BDF_BOARDROM` sets. Same inline fixture approach.
+10
View File
@@ -866,6 +866,16 @@ go under the `Device ROM sets (generated from MAME -listxml)` comment at the end
of `files:` with `required: false`. A set the profile already lists keeps every
field a reader wrote and only gets its contents refreshed.
Each generated set is filed under the systems of the machines that can load
it. A machine takes the `system:` of the first set on its `romof` chain that a
written entry lists (a clone reaches its parent, a parent its BIOS root set),
and passes it to every device in its `device_ref` list and every card its
slots offer (`slotoption`), followed through those devices' own links and
their parent ROM devices. A set loaded by machines of one system gets
`system:`, of several `systems:`, of none neither field, and then serves every
system of the profile. The driver file is never used: `neogeo.cpp` declares
the MVS and the AES. The output counts the sets in each case.
A plain run (pipeline step 2a) that moves `mame.yml` to a new release
downloads that release's `-listxml` into `.cache/dats/` and runs the device
merge itself, so the BIOS root sets and the device sets name one release.