Mercurial > repos > blastem
comparison z80_to_x86.c @ 1056:47c748455365
Fixed bug introduced in NEG with addition of undocumented flags
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 30 Jul 2016 14:03:25 -0700 |
parents | ac4615d16226 |
children | ff46d8fc2de8 |
comparison
equal
deleted
inserted
replaced
1055:ac4615d16226 | 1056:47c748455365 |
---|---|
1375 break; | 1375 break; |
1376 case Z80_NEG: | 1376 case Z80_NEG: |
1377 cycles(&opts->gen, num_cycles); | 1377 cycles(&opts->gen, num_cycles); |
1378 mov_rr(code, opts->regs[Z80_A], opts->gen.scratch2, SZ_B); | 1378 mov_rr(code, opts->regs[Z80_A], opts->gen.scratch2, SZ_B); |
1379 neg_r(code, opts->regs[Z80_A], SZ_B); | 1379 neg_r(code, opts->regs[Z80_A], SZ_B); |
1380 mov_rrdisp(code, dst_op.base, opts->gen.context_reg, zf_off(ZF_XY), SZ_B); | 1380 mov_rrdisp(code, opts->regs[Z80_A], opts->gen.context_reg, zf_off(ZF_XY), SZ_B); |
1381 setcc_rdisp(code, CC_Z, opts->gen.context_reg, zf_off(ZF_Z)); | 1381 setcc_rdisp(code, CC_Z, opts->gen.context_reg, zf_off(ZF_Z)); |
1382 setcc_rdisp(code, CC_S, opts->gen.context_reg, zf_off(ZF_S)); | 1382 setcc_rdisp(code, CC_S, opts->gen.context_reg, zf_off(ZF_S)); |
1383 setcc_rdisp(code, CC_C, opts->gen.context_reg, zf_off(ZF_C)); | 1383 setcc_rdisp(code, CC_C, opts->gen.context_reg, zf_off(ZF_C)); |
1384 setcc_rdisp(code, CC_O, opts->gen.context_reg, zf_off(ZF_PV)); | 1384 setcc_rdisp(code, CC_O, opts->gen.context_reg, zf_off(ZF_PV)); |
1385 mov_irdisp(code, 1, opts->gen.context_reg, zf_off(ZF_N), SZ_B); | 1385 mov_irdisp(code, 1, opts->gen.context_reg, zf_off(ZF_N), SZ_B); |