Mercurial > repos > blastem
diff 68kinst.c @ 183:2f08d9e90a4c
Fix (a7)+ src when size is byte, fix trap return address, make div with areg src decoded to invalid
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 09 Jan 2013 22:31:07 -0800 |
parents | 3b4ef459aa8d |
children | ebcbdd1c4cc8 |
line wrap: on
line diff
--- a/68kinst.c Wed Jan 09 21:41:55 2013 -0800 +++ b/68kinst.c Wed Jan 09 22:31:07 2013 -0800 @@ -876,7 +876,7 @@ decoded->dst.addr_mode = MODE_REG; decoded->dst.params.regs.pri = (*istream >> 9) & 0x7; istream = m68k_decode_op(istream, OPSIZE_WORD, &(decoded->src)); - if (!istream) { + if (!istream || decoded->src.addr_mode == MODE_AREG) { decoded->op = M68K_INVALID; return start+1; } @@ -901,7 +901,7 @@ decoded->dst.addr_mode = MODE_REG; decoded->dst.params.regs.pri = (*istream >> 9) & 0x7; istream = m68k_decode_op(istream, OPSIZE_WORD, &(decoded->src)); - if (!istream) { + if (!istream || decoded->src.addr_mode == MODE_AREG) { decoded->op = M68K_INVALID; return start+1; }