# HG changeset patch # User Michael Pavone # Date 1446278876 25200 # Node ID ba93a39413008329a1f081bc0ba13f39bc01a780 # Parent 58606d16d35c9555fe5e2e40918e15d0bc0f0b2f Set flags for ld a, r diff -r 58606d16d35c -r ba93a3941300 z80_to_x86.c --- a/z80_to_x86.c Thu Oct 29 23:12:01 2015 -0700 +++ b/z80_to_x86.c Sat Oct 31 01:07:56 2015 -0700 @@ -404,8 +404,8 @@ mov_rdispr(code, src_op.base, src_op.disp, dst_op.base, size); } } - if (inst->ea_reg == Z80_I && inst->addr_mode == Z80_REG) { - //ld a, i sets some flags + if ((inst->ea_reg == Z80_I || inst->ea_reg == Z80_R) && inst->addr_mode == Z80_REG) { + //ld a, i and ld a, r sets some flags cmp_ir(code, 0, dst_op.base, SZ_B); setcc_rdisp(code, CC_Z, opts->gen.context_reg, zf_off(ZF_Z)); setcc_rdisp(code, CC_S, opts->gen.context_reg, zf_off(ZF_S));