comparison 68kinst.c @ 51:937b47c9b79b

Implement shift instructions (asl, lsl, asr, lsr). Add flags to register printout. Fix minor bug in shift/rotate instruction decoding.
author Mike Pavone <pavone@retrodev.com>
date Sat, 15 Dec 2012 23:01:32 -0800
parents 4836d1f3841a
children 3b79cbcf6846
comparison
equal deleted inserted replaced
50:4836d1f3841a 51:937b47c9b79b
1005 decoded->op = M68K_ROL; 1005 decoded->op = M68K_ROL;
1006 break; 1006 break;
1007 } 1007 }
1008 decoded->extra.size = (*istream >> 6) & 0x3; 1008 decoded->extra.size = (*istream >> 6) & 0x3;
1009 immed = (*istream >> 9) & 0x7; 1009 immed = (*istream >> 9) & 0x7;
1010 if (*istream & 0x100) { 1010 if (*istream & 0x20) {
1011 decoded->src.addr_mode = MODE_REG; 1011 decoded->src.addr_mode = MODE_REG;
1012 decoded->src.params.regs.pri = immed; 1012 decoded->src.params.regs.pri = immed;
1013 } else { 1013 } else {
1014 decoded->src.addr_mode = MODE_IMMEDIATE; 1014 decoded->src.addr_mode = MODE_IMMEDIATE;
1015 if (!immed) { 1015 if (!immed) {