Commit 2a3147db authored by RSDuck's avatar RSDuck
Browse files

reset fastmem on DSi soft reset

parent c5ecef74
...@@ -114,6 +114,7 @@ struct __attribute__((packed)) TinyVector ...@@ -114,6 +114,7 @@ struct __attribute__((packed)) TinyVector
void Remove(int index) void Remove(int index)
{ {
assert(Length > 0);
assert(index >= 0 && index < Length); assert(index >= 0 && index < Length);
Length--; Length--;
......
...@@ -414,7 +414,7 @@ void RemapDTCM(u32 newBase, u32 newSize) ...@@ -414,7 +414,7 @@ void RemapDTCM(u32 newBase, u32 newSize)
u32 start = mapping.Addr; u32 start = mapping.Addr;
u32 end = mapping.Addr + mapping.Size; u32 end = mapping.Addr + mapping.Size;
printf("mapping %d %x %x %x %x\n", region, mapping.Addr, mapping.Size, mapping.Num, mapping.LocalOffset); printf("unmapping %d %x %x %x %x\n", region, mapping.Addr, mapping.Size, mapping.Num, mapping.LocalOffset);
bool oldOverlap = NDS::ARM9->DTCMSize > 0 && !(oldDTCMBase >= end || oldDTCBEnd <= start); bool oldOverlap = NDS::ARM9->DTCMSize > 0 && !(oldDTCMBase >= end || oldDTCBEnd <= start);
bool newOverlap = newSize > 0 && !(newBase >= end || newEnd <= start); bool newOverlap = newSize > 0 && !(newBase >= end || newEnd <= start);
......
...@@ -181,15 +181,17 @@ void SoftReset() ...@@ -181,15 +181,17 @@ void SoftReset()
// also, BPTWL[0x70] could be abused to quickly boot specific titles // also, BPTWL[0x70] could be abused to quickly boot specific titles
#ifdef JIT_ENABLED
ARMJIT_Memory::Reset();
ARMJIT::CheckAndInvalidateITCM();
#endif
NDS::ARM9->Reset(); NDS::ARM9->Reset();
NDS::ARM7->Reset(); NDS::ARM7->Reset();
NDS::ARM9->CP15Reset(); NDS::ARM9->CP15Reset();
memcpy(NDS::ARM9->ITCM, ITCMInit, 0x8000); memcpy(NDS::ARM9->ITCM, ITCMInit, 0x8000);
#ifdef JIT_ENABLED
ARMJIT::CheckAndInvalidateITCM();
#endif
DSi_AES::Reset(); DSi_AES::Reset();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment