mirror of https://github.com/mgba-emu/mgba.git
GBA: Fix losing IRQs when CPSR I bit isn't cleared
This commit is contained in:
parent
b17e1af8a9
commit
458fd58985
1
CHANGES
1
CHANGES
|
@ -31,6 +31,7 @@ Bugfixes:
|
||||||
- PSP2: Fix mapping/unmapping from not at 0
|
- PSP2: Fix mapping/unmapping from not at 0
|
||||||
- Wii: Fix garbage flash at startup
|
- Wii: Fix garbage flash at startup
|
||||||
- VFS: Fix uninitialized varaible reading from 7z
|
- VFS: Fix uninitialized varaible reading from 7z
|
||||||
|
- GBA: Fix losing IRQs when CPSR I bit isn't cleared
|
||||||
Misc:
|
Misc:
|
||||||
- 3DS: Use blip_add_delta_fast for a small speed improvement
|
- 3DS: Use blip_add_delta_fast for a small speed improvement
|
||||||
- OpenGL: Log shader compilation failure
|
- OpenGL: Log shader compilation failure
|
||||||
|
|
|
@ -217,7 +217,7 @@ static void GBAProcessEvents(struct ARMCore* cpu) {
|
||||||
gba->bus |= cpu->prefetch[1] << 16;
|
gba->bus |= cpu->prefetch[1] << 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gba->springIRQ) {
|
if (gba->springIRQ && !cpu->cpsr.i) {
|
||||||
ARMRaiseIRQ(cpu);
|
ARMRaiseIRQ(cpu);
|
||||||
gba->springIRQ = 0;
|
gba->springIRQ = 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue