From 49752ff7c3a6e12da8233446c803f217b9157445 Mon Sep 17 00:00:00 2001 From: tomcw Date: Sat, 18 Mar 2017 21:33:30 +0000 Subject: [PATCH] LC 0xC08n.b0=1: After write-enable RAM, STA doesn't write-protect (#395) --- source/Memory.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/Memory.cpp b/source/Memory.cpp index de6ef982..cd252775 100644 --- a/source/Memory.cpp +++ b/source/Memory.cpp @@ -1623,7 +1623,7 @@ BYTE __stdcall MemSetPaging(WORD programcounter, WORD address, BYTE write, BYTE // DETERMINE THE NEW MEMORY PAGING MODE. if ((address >= 0x80) && (address <= 0x8F)) { - SetMemMode(memmode & ~(MF_BANK2 | MF_HIGHRAM | MF_WRITERAM)); + SetMemMode(memmode & ~(MF_BANK2 | MF_HIGHRAM)); if (!(address & 8)) SetMemMode(memmode | MF_BANK2); @@ -1633,6 +1633,7 @@ BYTE __stdcall MemSetPaging(WORD programcounter, WORD address, BYTE write, BYTE if (!write) // GH#392 { + SetMemMode(memmode & ~(MF_WRITERAM)); BOOL bWriteRam = (address & 1); if (g_bLastWriteRam && bWriteRam) SetMemMode(memmode | MF_WRITERAM);