changeset 828:22c3c52b9871

Fixed a copy pasta error in the implementation of LDD and LDDR. HL should be decremented and not incremented in those instructions.
author Michael Pavone <pavone@retrodev.com>
date Fri, 18 Sep 2015 19:54:02 -0700
parents 35f5658d141f
children cc05444a4a4e
files z80_to_x86.c
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/z80_to_x86.c	Wed Aug 05 23:23:15 2015 -0700
+++ b/z80_to_x86.c	Fri Sep 18 19:54:02 2015 -0700
@@ -632,7 +632,7 @@
 			sub_irdisp(code, 1, opts->gen.context_reg, zr_off(Z80_DE), SZ_W);
 		}
 		if (opts->regs[Z80_HL] >= 0) {
-			add_ir(code, 1, opts->regs[Z80_HL], SZ_W);
+			sub_ir(code, 1, opts->regs[Z80_HL], SZ_W);
 		} else {
 			sub_irdisp(code, 1, opts->gen.context_reg, zr_off(Z80_HL), SZ_W);
 		}
@@ -658,7 +658,7 @@
 			sub_irdisp(code, 1, opts->gen.context_reg, zr_off(Z80_DE), SZ_W);
 		}
 		if (opts->regs[Z80_HL] >= 0) {
-			add_ir(code, 1, opts->regs[Z80_HL], SZ_W);
+			sub_ir(code, 1, opts->regs[Z80_HL], SZ_W);
 		} else {
 			sub_irdisp(code, 1, opts->gen.context_reg, zr_off(Z80_HL), SZ_W);
 		}