diff --git a/wiki/adding-a-platform.md b/wiki/adding-a-platform.md index 930e75f79..3e39160d4 100644 --- a/wiki/adding-a-platform.md +++ b/wiki/adding-a-platform.md @@ -90,7 +90,7 @@ def validate_format(self, raw_data: str) -> bool: | `alt_md5` | `str \| None` | A second accepted MD5 (Batocera and ROCKNIX `altmd5`) | | `native_path` | `str \| None` | The file reference as the platform writes it, kept when it differs from `name`. libretro writes `iplromco.dat` bare although the file lives under `keropi/`, and `ep128emu/roms/cpc464.rom` with its directory | | `mirror_of` | `str \| None` | The native system whose entry this one repeats under another system. The platform's own file does not carry the copy, so the export skips it | -| `native` | `dict` | Fields the platform declares that the model has no place for, written back unchanged by the export: `native_name`, `md5_list` (a Batocera md5 written as a list), `core`, `note`, `description`, `hash_match_mandatory`, `mandatory_declared`, `alt_paths`, `component`, `required_label` | +| `native` | `dict` | Fields the platform declares that the model has no place for, written back unchanged by the export: `native_name`, `md5_list` (a Batocera md5 written as a list), `core`, `note`, `description`, `hash_match_mandatory`, `mandatory_declared`, `alt_paths`, `component`, `required_label`, `group` (RetroBat: files of one group are alternatives, one held is enough) | `requirement_entry()` in `base_scraper.py` is the single serializer from a requirement to a platform YAML entry, and every scraper goes through it. @@ -355,7 +355,7 @@ by the resolver and by the pack check, as describes. `firmware_folder_flat: true` is set where the frontend reads a system's firmware -folder without descending into it (RomM 5.4.0, +folder without descending into it (RomM 5.4.1, `backend/handler/filesystem/base_handler.py:1002`, `recursive=False`). On such a platform, a core file whose destination has a subfolder is left out of the pack (`nested` in `scripts/packextras.py`), since no core would receive it. diff --git a/wiki/verification-modes.md b/wiki/verification-modes.md index 59996121e..c9f7faa5d 100644 --- a/wiki/verification-modes.md +++ b/wiki/verification-modes.md @@ -154,7 +154,7 @@ If the inner file is not found inside the ZIP, the status is UNTESTED with a rea ### RomM verification -**Source**: RomM 5.4.0 [`backend/models/firmware.py:58-76`](https://github.com/rommapp/romm/blob/5.4.0/backend/models/firmware.py#L58-L76), `Firmware.verify_file_hashes` +**Source**: RomM 5.4.1 [`backend/models/firmware.py:58-76`](https://github.com/rommapp/romm/blob/5.4.1/backend/models/firmware.py#L58-L76), `Firmware.verify_file_hashes` RomM reads the file's bytes (`verification_mode: md5`) but does not compare one digest. Its platform YAML carries `hash_rule: size_and_any_hash`: the file's @@ -170,7 +170,7 @@ not a single digest gets a new `hash_rule` value, never a new mode. ### ROCKNIX verification -**Source**: ROCKNIX 20261001 [`rocknix-systems:137-197`](https://github.com/ROCKNIX/distribution/blob/20261001/projects/ROCKNIX/packages/rocknix/sources/scripts/rocknix-systems#L137-L197), function `checkBios` +**Source**: ROCKNIX 20261101 [`rocknix-systems:137-197`](https://github.com/ROCKNIX/distribution/blob/20261101/projects/ROCKNIX/packages/rocknix/sources/scripts/rocknix-systems#L137-L197), function `checkBios` ROCKNIX derives its BIOS checker from Batocera's, so the logic has the same shape: `md5sum()` on the file, `checkInsideZip()` for archive entries, and an