From 21053fe9a275cb9ffd742279ded2af98350d5348 Mon Sep 17 00:00:00 2001 From: pagefault <> Date: Sun, 19 Feb 2006 10:22:27 +0000 Subject: [PATCH] Made STOP clear the IRQ flag when it's set, this fixes Star Fox 2 --- zsnes/src/chips/fxemu2c.asm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/zsnes/src/chips/fxemu2c.asm b/zsnes/src/chips/fxemu2c.asm index 6093bf2a..30a284b4 100644 --- a/zsnes/src/chips/fxemu2c.asm +++ b/zsnes/src/chips/fxemu2c.asm @@ -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) test dword[SfxCFGR],080h ; Check if the interrupt generation is on jnz .NoIRQ - or dword[SfxSFR],08000h ; Set IRQ Flag + ; Set IRQ Flag .NoIRQ CLRFLAGS + and byte[SfxSFR+1],07fh + inc ebp mov eax,[NumberOfOpcodes] add eax,0F0000000h