summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pavone <pavone@retrodev.com>2012-12-18 23:55:10 -0800
committerMike Pavone <pavone@retrodev.com>2012-12-18 23:55:10 -0800
commit7ee7471794207e37114ced2e1181b8448f5a78dd (patch)
tree6d1b88ba88fd84deb2eadef22c0c49909c38c9ce
parentf4c9528b11a02481a3d418dd3a41304ad1583153 (diff)
Fix operand order for AND instructions
-rw-r--r--68kinst.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/68kinst.c b/68kinst.c
index 4adc66f..a9033d7 100644
--- a/68kinst.c
+++ b/68kinst.c
@@ -886,9 +886,9 @@ uint16_t * m68k_decode(uint16_t * istream, m68kinst * decoded, uint32_t address)
} else {
decoded->op = M68K_AND;
decoded->extra.size = (*istream >> 6);
- decoded->dst.addr_mode = MODE_REG;
- decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream);
- istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->src));
+ decoded->src.addr_mode = MODE_REG;
+ decoded->src.params.regs.pri = m68k_reg_quick_field(*istream);
+ istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->dst));
}
} else {
if ((*istream & 0xC0) == 0xC0) {
@@ -900,9 +900,9 @@ uint16_t * m68k_decode(uint16_t * istream, m68kinst * decoded, uint32_t address)
} else {
decoded->op = M68K_AND;
decoded->extra.size = (*istream >> 6);
- decoded->src.addr_mode = MODE_REG;
- decoded->src.params.regs.pri = m68k_reg_quick_field(*istream);
- istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->dst));
+ decoded->dst.addr_mode = MODE_REG;
+ decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream);
+ istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->src));
}
}
break;