changeset 399:acaae7c3d34c

Fix adc and sbc
author Mike Pavone <pavone@retrodev.com>
date Fri, 14 Jun 2013 23:27:01 -0700
parents c26e48a93fa3
children a09aa6d067fd
files z80_to_x86.c
diffstat 1 files changed, 2 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/z80_to_x86.c	Fri Jun 14 00:25:04 2013 -0700
+++ b/z80_to_x86.c	Fri Jun 14 23:27:01 2013 -0700
@@ -618,6 +618,7 @@
 		dst = zcycles(dst, cycles);
 		dst = translate_z80_reg(inst, &dst_op, dst, opts);
 		dst = translate_z80_ea(inst, &src_op, dst, opts, READ, DONT_MODIFY);
+		dst = bt_irdisp8(dst, 0, CONTEXT, zf_off(ZF_C), SZ_B);
 		if (src_op.mode == MODE_REG_DIRECT) {
 			dst = adc_rr(dst, src_op.base, dst_op.base, z80_size(inst));
 		} else {
@@ -668,6 +669,7 @@
 		dst = zcycles(dst, cycles);
 		dst = translate_z80_reg(inst, &dst_op, dst, opts);
 		dst = translate_z80_ea(inst, &src_op, dst, opts, READ, DONT_MODIFY);
+		dst = bt_irdisp8(dst, 0, CONTEXT, zf_off(ZF_C), SZ_B);
 		if (src_op.mode == MODE_REG_DIRECT) {
 			dst = sbb_rr(dst, src_op.base, dst_op.base, z80_size(inst));
 		} else {