fix: mark the FS-UAE Kickstart as found by content

FS-UAE scans its Kickstarts directory and names a ROM by checksum
(src/fs-uae/config.c:121-140, main.c:431-470), opens kick.rom by name
only as a fallback (memory.cpp:1597-1606) and loads AROS when no ROM is
found (memory.cpp:2374-2379). required: true and the launcher's dialog
came from RetroPie's fs-uae.sh, which retropie.yml launchers: records.
The entry is now optional and found by content. kick13.rom stays as its
label, the name amiberry and uae4all give this 256 KB dump.
This commit is contained in:
Abdessamad Derraz committed 2026-11-05 19:46:48 +01:00
1 parent 72cebb4c2b
commit 83bc4246b3
2 files changed
+22 -9

No files matched your search

+6 -9
View File
@@ -17,10 +17,7 @@ notes: |
FS-UAE 3.1.64 by Frode Solheim, the build published in the stable
repository of the author's openSUSE Build Service project for Debian 11
and 12 and Ubuntu 20.04 to 25.04 (BASEVERSION.FS:1). RetroPie installs
that package rather than building the source. Its launcher refuses to
start without kick13.rom in the BIOS directory and starts the emulator
with --kickstart_file pointing at it, an A500 configuration and the
floppies of the game.
that package rather than building the source.
A kickstart_file other than "internal" is expanded, resolved against the
ROM search paths and handed to UAE as kickstart_rom_file, and
@@ -47,17 +44,17 @@ notes: |
files:
- name: "kick13.rom"
system: commodore-amiga
required: true
required: false
hle_fallback: true
found_by: content
size: 262144
crc32: "c4f0f55f"
sha1: "891e9a547772fe0c6c19b610baf8bc4ea7fcb785"
source_ref: "src/rommgr.cpp:141-142, src/fs-uae/config.c:80-101"
source_ref: "src/rommgr.cpp:141-142, src/fs-uae/config.c:80-101, 121-140, src/fs-uae/main.c:431-470, src/memory.cpp:2374-2379"
note: >-
KS ROM v1.3 (A500, A1000, A2000), ROM id 6, the one the A500 quickstart
selects. The RetroPie launcher exits with a dialog when the file is
absent from the BIOS directory, so the game never starts. FS-UAE alone
loads the AROS replacement in its place.
selects, identified by its checksum whatever the file is called.
Without a Kickstart the AROS replacement is loaded.
- name: "rom.key"
system: commodore-amiga
+16
View File
@@ -5748,6 +5748,22 @@ class AHashScanningCoreContradictsNoPlatform(unittest.TestCase):
self.assertEqual(claimed, [])
class FsUaeKickstartIsFoundByContent(unittest.TestCase):
"""FS-UAE scans its Kickstarts directory and names a ROM by checksum
(src/fs-uae/config.c:121-140, main.c:431-470), and with no ROM loads the
AROS replacement (memory.cpp:2374-2379). kick13.rom and its required
flag came from the RetroPie launcher, which the platform layer records."""
def test_the_kickstart_is_an_optional_label(self):
from scripts.validation import opens_by_name
profile = yaml.safe_load((ROOT / "emulators" / "fs-uae.yml").read_text(encoding="utf-8"))
entry = next(f for f in profile["files"] if f.get("sha1") == "891e9a547772fe0c6c19b610baf8bc4ea7fcb785")
self.assertFalse(opens_by_name(entry, profile, standalone=True))
self.assertFalse(entry.get("required"))
self.assertNotIn("RetroPie launcher", entry.get("note", ""))
class AHashScanLabelNamesNoOtherDump(unittest.TestCase):
"""A core that finds its firmware by content names no file, so each
entry name is a label. ares labelled its Famicom Disk System revision