fix emulator hanging under certain circumstances

This commit is contained in:
Jaklyy 2024-12-08 14:24:33 -05:00
parent 8e6755ce2c
commit 91752c1925
1 changed files with 2 additions and 2 deletions

View File

@ -1359,10 +1359,10 @@ u32 NDS::RunFrame()
RunTimers(0);
GPU.GPU3D.Run();
target = ARM9Timestamp >> ARM9ClockShift;
target = (ARM9.MRTrack.Type == MainRAMType::Null) ? (ARM9Timestamp >> ARM9ClockShift) : ARM7Timestamp + 1;
CurCPU = 1;
while (((ARM7Timestamp < target) && (ARM7.MRTrack.Type == MainRAMType::Null)) || (ARM9.MRTrack.Type != MainRAMType::Null))
while ((ARM7Timestamp < target) && (ARM7.MRTrack.Type == MainRAMType::Null))
{
ARM7Target = (ARM9.MRTrack.Type != MainRAMType::Null) ? (ARM7Timestamp+1) : target; // might be changed by a reschedule