Fix for LC when //e (broken 13c3936)

This commit is contained in:
tomcw 2018-11-04 17:29:22 +00:00
parent 155547f847
commit 325bc23d08
2 changed files with 5 additions and 5 deletions

View File

@ -200,7 +200,7 @@ inline bool IsApple2Original(eApple2Type type) // Apple ][
inline bool IsApple2Plus(eApple2Type type) // Apple ][,][+
{
return (type & (APPLE2E_MASK|APPLE2C_MASK)) == 0;
return ((type & (APPLE2E_MASK|APPLE2C_MASK)) == 0) && !(type & APPLECLONE_MASK);
}
inline bool IsClone(eApple2Type type)
@ -210,8 +210,7 @@ inline bool IsClone(eApple2Type type)
inline bool IsApple2PlusOrClone(eApple2Type type) // Apple ][,][+ or clone ][,][+
{
return ((type & (APPLE2E_MASK|APPLE2C_MASK)) == 0)
|| (type & APPLECLONE_MASK) && !(type & A2TYPE_CLONE_A2E);
return (type & (APPLE2E_MASK|APPLE2C_MASK)) == 0;
}
extern eApple2Type g_Apple2Type;

View File

@ -1903,9 +1903,10 @@ BYTE __stdcall MemSetPaging(WORD programcounter, WORD address, BYTE write, BYTE
#endif
// DETERMINE THE NEW MEMORY PAGING MODE.
if (g_Slot0 != CT_Empty && (address >= 0x80 && address <= 0x8F))
if (address >= 0x80 && address <= 0x8F)
{
SetMemMode( g_pLanguageCard->SetPaging(address, memmode, modechanging, write ? true : false) );
if (!IS_APPLE2 || (IsApple2PlusOrClone(GetApple2Type()) && g_Slot0 != CT_Empty))
SetMemMode( g_pLanguageCard->SetPaging(address, memmode, modechanging, write ? true : false) );
}
else if (!IS_APPLE2)
{