fix: group variant slots across their systems

This commit is contained in:
Abdessamad Derraz committed 2026-10-06 00:26:36 +02:00
1 parent 0fb09c6c94
commit 4ca4592f65
2 files changed
+21 -2

No files matched your search

+12
View File
@@ -64,6 +64,7 @@ files:
# -------------------------------------------------------
- name: "us_scd2_9306.bin"
system: sega-segacd
variant_group: "mega-cd-bios"
region: [north-america]
priority: 1
required: true
@@ -73,6 +74,7 @@ files:
- name: "SegaCDBIOS9303.bin"
system: sega-segacd
variant_group: "mega-cd-bios"
region: [north-america]
priority: 2
required: false
@@ -82,6 +84,7 @@ files:
- name: "us_scd1_9210.bin"
system: sega-segacd
variant_group: "mega-cd-bios"
region: [north-america]
priority: 3
required: false
@@ -91,6 +94,7 @@ files:
- name: "bios_CD_U.bin"
system: sega-segacd
variant_group: "mega-cd-bios"
region: [north-america]
priority: 4
required: false
@@ -103,6 +107,7 @@ files:
# -------------------------------------------------------
- name: "eu_mcd2_9306.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [europe]
priority: 1
required: true
@@ -112,6 +117,7 @@ files:
- name: "eu_mcd2_9303.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [europe]
priority: 2
required: false
@@ -121,6 +127,7 @@ files:
- name: "eu_mcd1_9210.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [europe]
priority: 3
required: false
@@ -130,6 +137,7 @@ files:
- name: "bios_CD_E.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [europe]
priority: 4
required: false
@@ -142,6 +150,7 @@ files:
# -------------------------------------------------------
- name: "jp_mcd2_921222.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [japan]
priority: 1
required: true
@@ -151,6 +160,7 @@ files:
- name: "jp_mcd1_9112.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [japan]
priority: 2
required: false
@@ -160,6 +170,7 @@ files:
- name: "jp_mcd1_9111.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [japan]
priority: 3
required: false
@@ -169,6 +180,7 @@ files:
- name: "bios_CD_J.bin"
system: sega-megacd
variant_group: "mega-cd-bios"
region: [japan]
priority: 4
required: false
+9 -2
View File
@@ -611,8 +611,15 @@ def platform_region_groups(
)
] = dest
variant = extra.get("variant_group")
for sys_id in _extra_system_ids(extra) or ["_extras"]:
group_id = f"{sys_id}:variant:{variant}" if variant else sys_id
if variant:
# A variant group is one slot of one core, whatever system each
# member is filed under: PicoDrive files its US Mega CD BIOS under
# sega-segacd and the EU/JP ones under sega-megacd, and find_bios
# picks one of the twelve. Keyed as emulator mode keys it.
group_ids = [f"{extra.get('source_emulator', '')}:variant:{variant}"]
else:
group_ids = _extra_system_ids(extra) or ["_extras"]
for group_id in group_ids:
groups.setdefault(group_id, []).append((dest, name))
return groups, extra_dests