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
void Remove(int index)
{
assert(Length > 0);
assert(index >= 0 && index < Length);
Length--;
......
......@@ -414,7 +414,7 @@ void RemapDTCM(u32 newBase, u32 newSize)
u32 start = mapping.Addr;
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 newOverlap = newSize > 0 && !(newBase >= end || newEnd <= start);
......
......@@ -181,15 +181,17 @@ void SoftReset()
// also, BPTWL[0x70] could be abused to quickly boot specific titles
#ifdef JIT_ENABLED
ARMJIT_Memory::Reset();
ARMJIT::CheckAndInvalidateITCM();
#endif
NDS::ARM9->Reset();
NDS::ARM7->Reset();
NDS::ARM9->CP15Reset();
memcpy(NDS::ARM9->ITCM, ITCMInit, 0x8000);
#ifdef JIT_ENABLED
ARMJIT::CheckAndInvalidateITCM();
#endif
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