From 1566428d531033deb80b00bbb1da1e8e5f0b8158 Mon Sep 17 00:00:00 2001 From: ocornut Date: Tue, 30 May 2023 22:01:12 +0200 Subject: [PATCH] Mappers: Fix a bug I introduced in 218c8aed8 by lacking attention. (#104) + Missing compat.txt entry. --- meka/compat.txt | 3 ++- meka/history.txt | 1 + meka/srcs/saves.cpp | 7 +++++-- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/meka/compat.txt b/meka/compat.txt index 3da9627a..306b6a89 100644 --- a/meka/compat.txt +++ b/meka/compat.txt @@ -591,6 +591,7 @@ T2: The Arcade Game - Ok Taito Chase H.Q. - Ok Taito Chase H.Q. [Proto] - Ok + Tank Battalion (KR) - *Ok Taz in Escape From Mars (BR) - Ok Taz-Mania - Ok Taz-Mania [Proto] - Ok @@ -675,7 +676,7 @@ Zillion II: The Tri Formation [Proto] FM Ok Zool - Ok ----------------------------------------------------------------------------- - 654 games tested - 650 are "Ok" + 655 games tested - 651 are "Ok" ----------------------------------------------------------------------------- ----------------------------------------------------------------------------- diff --git a/meka/history.txt b/meka/history.txt index c66bf481..8e261c9f 100644 --- a/meka/history.txt +++ b/meka/history.txt @@ -51,6 +51,7 @@ They are usually of 2 kinds: - Added support for Korean xx-in-1 mapper at 0xFFF0,0xFFFE,0xFFFF for: 'Mega Mode Super Game 30 [SMS-MD]'. [bsittler] - Added support for Korean xx-in-1 mapper at 0xFFF5,0xFFFE,0xFFFF for 'Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD]'. [bsittler] - Added support for Korean xx-in-1 mapper at 0xFFFA,0xFFFE,0xFFFF for 'Game Jiphap 30 Hap [SMS-MD]'. [bsittler] + - Added support for Korean xx-in-1 mapper at 0x8000 for 'Zemina Best 88', 'Zemina Best 25' etc. [bsittler] - Added support for SC-3000 Survivors Multicart mapper. [Omar,Honestbob] - Fixed 32K "No Mapper" mapper from forwarding 3-D Glasses writes. Fixes '3D Gunner'. [Omar] - SMS/GG ROM images smaller than 48KB default to using no mapper. [Omar] diff --git a/meka/srcs/saves.cpp b/meka/srcs/saves.cpp index e052869e..34012e4e 100644 --- a/meka/srcs/saves.cpp +++ b/meka/srcs/saves.cpp @@ -145,8 +145,11 @@ void Load_Game_Fixup(void) WrZ80_NoHook(0x2000, g_machine.mapper_regs[0]); break; case MAPPER_SMS_Korean_MSX_SMS_8000: - WrZ80_NoHook(0x8000, 0x00); // reset the mapper to avoid the 0xFF special case - WrZ80_NoHook(0x8000, g_machine.mapper_regs[0]); + { + int mapper_page = g_machine.mapper_regs[0]; + WrZ80_NoHook(0x8000, 0x00); // reset the mapper to avoid the 0xFF special case + WrZ80_NoHook(0x8000, mapper_page); + } break; } }