From 676f322a623c965b5b867fd2a15cf6ef642fe4b6 Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Tue, 20 Oct 2026 01:19:56 +0200 Subject: [PATCH] fix: tag PAL and AUS files oceania simple64 picks the PAL PIF for the European and Australian country codes, and New Zealand carts carry one of them. Citra MMJ's AUS font archives serve the region sold in Australia and New Zealand alike. Tagged australia, a leaf New Zealand is not under, --region new-zealand dropped them. They are tagged oceania, as every other PAL file is. --- emulators/citra-mmj.yml | 4 ++-- emulators/simple64.yml | 2 +- tests/test_region.py | 19 +++++++++++++++++++ 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/emulators/citra-mmj.yml b/emulators/citra-mmj.yml index 69ed171c..1ceac999 100644 --- a/emulators/citra-mmj.yml +++ b/emulators/citra-mmj.yml @@ -114,7 +114,7 @@ files: system: nintendo-3ds required: false hle_fallback: true - region: [japan, north-america, europe, australia] + region: [japan, north-america, europe, oceania] description: "shared font system archive, title 0x0004009b00014002" note: "First step of the shared font chain, holding cbf_std.bcfnt.lz in its RomFS. This title low ID is the one the embedded open-source font answers." source_ref: "src/core/hle/service/apt/apt.cpp:124-182, src/core/file_sys/archive_ncch.cpp:143-148" @@ -161,7 +161,7 @@ files: required: false bundled: true hle_fallback: true - region: [japan, north-america, europe, australia] + region: [japan, north-america, europe, oceania] description: "shared font for JPN, USA, EUR and AUS" note: "Read to offset 0x80 of the shared memory block, so the file is a bare uncompressed BCFNT. Selected for every CFG region other than CHN, KOR and TWN. The embedded open-source font answers the archive request first, so this file is only reached when that archive path is taken out." source_ref: "src/core/hle/service/apt/apt.cpp:184-228, src/core/file_sys/archive_ncch.cpp:143-148" diff --git a/emulators/simple64.yml b/emulators/simple64.yml index 35604415..07c75ed7 100644 --- a/emulators/simple64.yml +++ b/emulators/simple64.yml @@ -150,7 +150,7 @@ files: system: nintendo-64 required: false hle_fallback: true - region: [europe, australia] + region: [europe, oceania] size: 1984 md5: - "d4232dc935cad0650ac2664d52281f3a" diff --git a/tests/test_region.py b/tests/test_region.py index 372591a5..cf0771ff 100644 --- a/tests/test_region.py +++ b/tests/test_region.py @@ -1094,5 +1094,24 @@ class MegaCdAmericasIsOneCode(unittest.TestCase): self.assertEqual(narrow, []) +class NoMarketStopsAtAustralia(unittest.TestCase): + """simple64 tagged its PAL PIF [europe, australia]. New Zealand is not + under australia, so --region new-zealand kept only the NTSC PIF, though + New Zealand carts carry the European or Australian PAL codes.""" + + def test_no_profile_tags_australia_alone(self): + import yaml + + root = Path(__file__).resolve().parents[1] + tagged = [ + f"{path.stem}: {entry.get('name')}" + for path in sorted((root / "emulators").glob("*.yml")) + for entry in (yaml.safe_load(path.read_text(encoding="utf-8")) or {}).get("files") or [] + if "australia" in (entry.get("region") or []) + and "new-zealand" not in (entry.get("region") or []) + ] + self.assertEqual(tagged, []) + + if __name__ == "__main__": unittest.main()