# HG changeset patch # User Mike Pavone # Date 1371627613 25200 # Node ID 00d5a2b532f4fe73495eaca76ac7cc793d7fec89 # Parent baf4688901f2740888eafbb38796e68b468c1908 Fix movem with pc displacement or pc indexed source diff -r baf4688901f2 -r 00d5a2b532f4 68kinst.c --- a/68kinst.c Wed Jun 19 00:25:09 2013 -0700 +++ b/68kinst.c Wed Jun 19 00:40:13 2013 -0700 @@ -501,6 +501,10 @@ decoded->op = M68K_INVALID; return start+1; } + if (decoded->src.addr_mode == MODE_PC_DISPLACE || decoded->src.addr_mode == MODE_PC_INDEX_DISP8) { + //adjust displacement to account for extra instruction word + decoded->src.params.regs.displacement += 2; + } } else { decoded->src.addr_mode = MODE_REG; decoded->src.params.immed = *(++istream);