remove incorrect assumption that all of Cartridge Domain 2 Address 2 is for save data

This commit is contained in:
KrimtonZ 2019-12-16 15:19:01 -06:00
parent b78a8d182d
commit 4f23b39bb3
1 changed files with 12 additions and 1 deletions

View File

@ -1507,6 +1507,12 @@ void CMipsMemoryVM::Load32CartridgeDomain2Address1(void)
void CMipsMemoryVM::Load32CartridgeDomain2Address2(void)
{
uint32_t PAddr = m_MemLookupAddress & 0x1FFFFFFF;
if (PAddr >= 0x10000)
{
m_MemLookupValue.UW[0] = 0;
return;
}
if (g_System->m_SaveUsing == SaveChip_Auto)
{
g_System->m_SaveUsing = SaveChip_FlashRam;
@ -2178,7 +2184,8 @@ void CMipsMemoryVM::Write32CartridgeDomain2Address1(void)
void CMipsMemoryVM::Write32CartridgeDomain2Address2(void)
{
if (g_System->m_SaveUsing == SaveChip_Sram)
uint32_t PAddr = m_MemLookupAddress & 0x1FFFFFFF;
if (g_System->m_SaveUsing == SaveChip_Sram && PAddr < 0x8000)
{
//Store Sram
uint8_t tmp[4] = "";
@ -2196,6 +2203,10 @@ void CMipsMemoryVM::Write32CartridgeDomain2Address2(void)
g_Notify->BreakPoint(__FILE__, __LINE__);
}
}*/
if (PAddr != 0x10000)
{
return;
}
if (g_System->m_SaveUsing == SaveChip_Auto)
{
g_System->m_SaveUsing = SaveChip_FlashRam;