changeset 1253:2a6049dddab0

immediate and predecrement are illegal source address modes for movem. Fixes ticket:8 and ticket:9
author Michael Pavone <pavone@retrodev.com>
date Tue, 28 Feb 2017 21:59:58 -0800
parents 8e3adc6264d3
children d966298442d4
files 68kinst.c
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/68kinst.c	Mon Feb 27 00:38:53 2017 -0800
+++ b/68kinst.c	Tue Feb 28 21:59:58 2017 -0800
@@ -692,7 +692,7 @@
 						decoded->dst.addr_mode = MODE_REG;
 						decoded->dst.params.immed = *(++istream);
 						istream = m68k_decode_op_ex(istream, opmode, reg, decoded->extra.size, &(decoded->src));
-						if (!istream) {
+						if (!istream || decoded->src.addr_mode == MODE_AREG_PREDEC || decoded->src.addr_mode == MODE_IMMEDIATE) {
 							decoded->op = M68K_INVALID;
 							break;
 						}