diff --git a/CHANGELOG.md b/CHANGELOG.md index 73f7dbb..6de1c45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +## Unreleased - 2025-??-?? +- Changed: Metroid Fusion Stereo default IPS patch has been ported into ASM. Instead a flag in ROM will set the default speaker setup to stereo. + ## 0.7.0 - 2025-08-25 - Added: Ability to write text to the title screen. - Removed: Anti-Softlock option. diff --git a/src/mars_patcher/mf/constants/reserved_space.py b/src/mars_patcher/mf/constants/reserved_space.py index d1f7aa9..fdc0007 100644 --- a/src/mars_patcher/mf/constants/reserved_space.py +++ b/src/mars_patcher/mf/constants/reserved_space.py @@ -22,9 +22,10 @@ class ReservedConstantsMF: STARTING_LOCATION_ADDR = 0x7FF014 CREDITS_END_DELAY_ADDR = 0x7FF018 # TODO: Is this meant to be changed? CREDITS_SCROLL_SPEED_ADDR = 0x7FF018 # + 2 TODO: Ditto - HINT_SECURITY_LEVELS_ADDR = 0x7FF01C # TODO: ??? + HINT_SECURITY_LEVELS_ADDR = 0x7FF01C ENVIRONMENTAL_HARZARD_DAMAGE_ADDR = 0x7FF020 # TODO: Implement this MISSILE_LIMIT_ADDR = 0x7FF024 ROOM_NAMES_TABLE_ADDR = 0x7FF028 REVEAL_HIDDEN_TILES_ADDR = 0x7FF02C TITLESCREEN_TEXT_POINTERS_POINTER_ADDR = 0x7FF030 + DEFAULT_STEREO_FLAG_POINTER_ADDR = 0x7FF034 diff --git a/src/mars_patcher/mf/data/patches/mf_u/free_space.txt b/src/mars_patcher/mf/data/patches/mf_u/free_space.txt deleted file mode 100644 index b85845b..0000000 --- a/src/mars_patcher/mf/data/patches/mf_u/free_space.txt +++ /dev/null @@ -1,3 +0,0 @@ -Address Name -80F9A28 stereo_default -80F9A4C diff --git a/src/mars_patcher/mf/data/patches/mf_u/stereo_default.ips b/src/mars_patcher/mf/data/patches/mf_u/stereo_default.ips deleted file mode 100644 index a41a7dd..0000000 Binary files a/src/mars_patcher/mf/data/patches/mf_u/stereo_default.ips and /dev/null differ diff --git a/src/mars_patcher/mf/misc_patches.py b/src/mars_patcher/mf/misc_patches.py index d50aa6f..9ea6513 100644 --- a/src/mars_patcher/mf/misc_patches.py +++ b/src/mars_patcher/mf/misc_patches.py @@ -43,7 +43,7 @@ def skip_door_transitions(rom: Rom) -> None: def stereo_default(rom: Rom) -> None: - apply_patch_in_data_path(rom, "stereo_default.ips") + rom.write_8(rom.read_ptr(ReservedConstantsMF.DEFAULT_STEREO_FLAG_POINTER_ADDR), 1) def disable_sounds(rom: Rom, start: int, end: int, exclude: set[int] = set()) -> None: