mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-23 06:10:03 -06:00
hopefully fix the DMA bug without breaking everything this time.
This commit is contained in:
@ -325,7 +325,11 @@ s32 ARM::Execute()
|
|||||||
{
|
{
|
||||||
if (Halted)
|
if (Halted)
|
||||||
{
|
{
|
||||||
if (NDS::HaltInterrupted(Num))
|
if (Halted == 2)
|
||||||
|
{
|
||||||
|
Halted = 0;
|
||||||
|
}
|
||||||
|
else if (NDS::HaltInterrupted(Num))
|
||||||
{
|
{
|
||||||
Halted = 0;
|
Halted = 0;
|
||||||
if (NDS::IME[Num]&1)
|
if (NDS::IME[Num]&1)
|
||||||
|
@ -43,6 +43,7 @@ public:
|
|||||||
|
|
||||||
void Halt(u32 halt)
|
void Halt(u32 halt)
|
||||||
{
|
{
|
||||||
|
if (halt==2 && Halted==1) return;
|
||||||
Halted = halt;
|
Halted = halt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -561,12 +561,12 @@ void StopCPU(u32 cpu, u32 mask)
|
|||||||
if (cpu)
|
if (cpu)
|
||||||
{
|
{
|
||||||
CPUStop |= (mask << 16);
|
CPUStop |= (mask << 16);
|
||||||
//ARM7->Halt(2);
|
ARM7->Halt(2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
CPUStop |= mask;
|
CPUStop |= mask;
|
||||||
//ARM9->Halt(2);
|
ARM9->Halt(2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user