Made STOP clear the IRQ flag when it's set, this fixes Star Fox 2
This commit is contained in:
@@ -48,9 +48,11 @@ NEWSYM FxOpd00 ; STOP stop GSU execution (and maybe generate an IRQ)
|
|||||||
and dword[SfxSFR],0FFFFh-32 ; Clear Go flag (set to 1 when the GSU is running)
|
and dword[SfxSFR],0FFFFh-32 ; Clear Go flag (set to 1 when the GSU is running)
|
||||||
test dword[SfxCFGR],080h ; Check if the interrupt generation is on
|
test dword[SfxCFGR],080h ; Check if the interrupt generation is on
|
||||||
jnz .NoIRQ
|
jnz .NoIRQ
|
||||||
or dword[SfxSFR],08000h ; Set IRQ Flag
|
; Set IRQ Flag
|
||||||
.NoIRQ
|
.NoIRQ
|
||||||
CLRFLAGS
|
CLRFLAGS
|
||||||
|
and byte[SfxSFR+1],07fh
|
||||||
|
|
||||||
inc ebp
|
inc ebp
|
||||||
mov eax,[NumberOfOpcodes]
|
mov eax,[NumberOfOpcodes]
|
||||||
add eax,0F0000000h
|
add eax,0F0000000h
|
||||||
|
|||||||
Reference in New Issue
Block a user