From b1cd72cfef46f3362b6207e56a5581625c0c3a68 Mon Sep 17 00:00:00 2001 From: aiju Date: Mon, 17 Mar 2014 14:54:12 +0100 Subject: [PATCH] games/snes: BIT #imm does not set NZ flags --- sys/src/games/snes/cpu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/src/games/snes/cpu.c b/sys/src/games/snes/cpu.c index c15d26240..f307028c7 100644 --- a/sys/src/games/snes/cpu.c +++ b/sys/src/games/snes/cpu.c @@ -857,7 +857,11 @@ cpustep(void) rY &= 0xff; nzx(rY); return 2; - case 0x89: bit(imm(0)); return 2+cyc; + case 0x89: + rP &= ~FLAGZ; + if((imm(0) & rA) == 0) + rP |= FLAGZ; + return 2+cyc; case 0x8A: setra(rX); return 2+cyc; case 0x8B: push8(rDB >> 16); return 3; case 0x8C: memwx816(abso(0, 0), rY); return 4+cyc;