summaryrefslogtreecommitdiff
path: root/flags.asm
diff options
context:
space:
mode:
authorAstrid Smith2010-06-14 20:26:49 -0700
committerAstrid Smith2010-06-14 20:26:49 -0700
commitddd3b3267a0c434561840080eb73493572aaffa0 (patch)
tree9d3b31c7b6f7571dd5a67d94c926690b8f6be0dd /flags.asm
parent110b54c9beb0d1bcdd52d8a2247da035bab28b01 (diff)
Done with my first pass through the 1-byte opcodes.
Diffstat (limited to 'flags.asm')
-rw-r--r--flags.asm12
1 files changed, 12 insertions, 0 deletions
diff --git a/flags.asm b/flags.asm
index aa04118..928a6e7 100644
--- a/flags.asm
+++ b/flags.asm
@@ -84,6 +84,18 @@ FNPV_ok:
andi.b #%00000100,d1
rts
+ ;; Normalize and return Sign bit (loaded into Z bit).
+ ;; Destroys d1
+f_norm_sign:
+ move.b flag_valid-flag_storage(a3),d1
+ andi.b #%01000000,d1
+ bne.s FNsign_ok ; Bit is already valid
+ bsr flags_normalize
+FNsign_ok:
+ move.b flag_byte-flag_storage(a3),d1
+ andi.b #%01000000,d1
+ rts
+
;; Routine to turn 68k flags into z80 flags.
;; Preconditions:
;; Flags to change are noted in d0 by a 1 bit