From 3f1544c129b9e59527c2f3b9539b2fc3daefecd7 Mon Sep 17 00:00:00 2001 From: negativeExponent Date: Sat, 1 Feb 2020 23:41:28 +0800 Subject: [PATCH] Update mapper 45 - fix starting register value - fix memory write range to 0x6000-0xffff --- src/boards/mmc3.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/boards/mmc3.c b/src/boards/mmc3.c index 5c498fc..b2d06dd 100644 --- a/src/boards/mmc3.c +++ b/src/boards/mmc3.c @@ -540,7 +540,8 @@ static DECLFR(M45Read) { } static void M45Reset(void) { - EXPREGS[0] = EXPREGS[1] = EXPREGS[2] = EXPREGS[3] = EXPREGS[4] = 0; + EXPREGS[0] = EXPREGS[1] = EXPREGS[3] = EXPREGS[4] = 0; + EXPREGS[2] = 0x0F; EXPREGS[5]++; EXPREGS[5] &= 7; MMC3RegReset(); @@ -548,8 +549,9 @@ static void M45Reset(void) { static void M45Power(void) { GenMMC3Power(); - EXPREGS[0] = EXPREGS[1] = EXPREGS[2] = EXPREGS[3] = EXPREGS[4] = EXPREGS[5] = 0; - SetWriteHandler(0x5000, 0x7FFF, M45Write); + EXPREGS[0] = EXPREGS[1] = EXPREGS[3] = EXPREGS[4] = EXPREGS[5] = 0; + EXPREGS[2] = 0x0F; + SetWriteHandler(0x6000, 0x7FFF, M45Write); SetReadHandler(0x5000, 0x5FFF, M45Read); }