From dc143c3d962256031a651bb79aa1e04e1bb0ad97 Mon Sep 17 00:00:00 2001 From: TiKevin83 Date: Tue, 18 Feb 2020 17:34:49 -0500 Subject: [PATCH] fix Pokemon Crystal (JP) --- libgambatte/src/mem/cartridge.cpp | 3 +++ output/dll/libgambatte.dll | Bin 185344 -> 185344 bytes 2 files changed, 3 insertions(+) diff --git a/libgambatte/src/mem/cartridge.cpp b/libgambatte/src/mem/cartridge.cpp index 165f5e77be..9b555676ad 100644 --- a/libgambatte/src/mem/cartridge.cpp +++ b/libgambatte/src/mem/cartridge.cpp @@ -599,6 +599,9 @@ static unsigned numRambanksFromH14x(unsigned char h147, unsigned char h149) { case 0x00: return isMbc2(h147) ? 1 : 0; case 0x01: case 0x02: return 1; + case 0x03: return 4; + case 0x04: return 16; + case 0x05: return 8; } return 4; diff --git a/output/dll/libgambatte.dll b/output/dll/libgambatte.dll index fce190d42956962d2a912e7a7015ef721113bf7a..21e99ba02e860027986e1dabfdd452515536cc47 100644 GIT binary patch delta 21158 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 Mbb}i|bB49}KOqd`L;wH) delta 20977 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