mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-22 22:01:06 -06:00
Merge commit '4b57416552ec2fa95216e2b044559f215723bf70' into melonDSi
This commit is contained in:
13
src/ARM.cpp
13
src/ARM.cpp
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Copyright 2016-2019 Arisotura
|
||||
Copyright 2016-2020 Arisotura
|
||||
|
||||
This file is part of melonDS.
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
#include "NDS.h"
|
||||
#include "ARM.h"
|
||||
#include "ARMInterpreter.h"
|
||||
#include "AREngine.h"
|
||||
|
||||
|
||||
// instruction timing notes
|
||||
@ -227,6 +228,8 @@ void ARMv5::JumpTo(u32 addr, bool restorecpsr)
|
||||
PrefetchAbort();
|
||||
return;
|
||||
}*/
|
||||
|
||||
NDS::MonitorARM9Jump(addr);
|
||||
}
|
||||
|
||||
void ARMv4::JumpTo(u32 addr, bool restorecpsr)
|
||||
@ -405,6 +408,14 @@ void ARM::TriggerIRQ()
|
||||
R_IRQ[2] = oldcpsr;
|
||||
R[14] = R[15] + (oldcpsr & 0x20 ? 2 : 0);
|
||||
JumpTo(ExceptionBase + 0x18);
|
||||
|
||||
// ARDS cheat support
|
||||
// normally, those work by hijacking the ARM7 VBlank handler
|
||||
if (Num == 1)
|
||||
{
|
||||
if ((NDS::IF[1] & NDS::IE[1]) & (1<<NDS::IRQ_VBlank))
|
||||
AREngine::RunCheats();
|
||||
}
|
||||
}
|
||||
|
||||
void ARMv5::PrefetchAbort()
|
||||
|
Reference in New Issue
Block a user