From 04ea312f6558eae2c43066eb7b57260a7fd49b28 Mon Sep 17 00:00:00 2001 From: Duncan Smith Date: Mon, 13 Sep 2010 22:26:37 -0700 Subject: CCF flags :( --- opcodes.asm | 4 +++- testbenches/mine.z80 | 10 +++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/opcodes.asm b/opcodes.asm index 329a825..f6171e9 100644 --- a/opcodes.asm +++ b/opcodes.asm @@ -738,9 +738,11 @@ emu_op_3e: emu_op_3f: ;; CCF ;; Clear carry flag + ;; XXX fuck flags bsr flags_normalize ;; SZ5H3PNC - eor.b #%00010001,flag_byte-flag_storage(a3) + andi.b #%11111110,flag_byte-flag_storage(a3) + ori.b #%00000001,flag_valid-flag_storage(a3) DONE ;nok START diff --git a/testbenches/mine.z80 b/testbenches/mine.z80 index 637d2b5..0b75414 100644 --- a/testbenches/mine.z80 +++ b/testbenches/mine.z80 @@ -20,16 +20,16 @@ dec8: ret ;c9 cond_jr: - ld a,01h ;3e + ld a,01h ;3e 01 cp a ;bf - jr nz,wrong ;20 + jr nz,wrong ;20 07 ccf ;3f - jr c,wrong ;38 + jr c,wrong ;38 scf ;37 - jr nc,wrong ;30 - ret + jr nc,wrong ;30 + ret ;c9 wrong: -- cgit v1.2.3