diff options
Diffstat (limited to 'src/NDS.cpp')
-rw-r--r-- | src/NDS.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/NDS.cpp b/src/NDS.cpp index cab78b5..1baa308 100644 --- a/src/NDS.cpp +++ b/src/NDS.cpp @@ -247,7 +247,9 @@ void SetARM9RegionTimings(u32 addrstart, u32 addrend, int buswidth, int nonseq, ARM9MemTimings[i][3] = S32; } - ARM9->UpdateRegionTimings(addrstart<<14, addrend<<14); + ARM9->UpdateRegionTimings(addrstart<<14, addrend == 0x40000 + ? 0xFFFFFFFF + : (addrend<<14)); } void SetARM7RegionTimings(u32 addrstart, u32 addrend, int buswidth, int nonseq, int seq) @@ -459,6 +461,11 @@ void Reset() fclose(f); } + // has to be called before InitTimings + // otherwise some PU settings are completely + // unitialised on the first run + ARM9->CP15Reset(); + // TODO for later: configure this when emulating a DSi ARM9ClockShift = 1; |