Mercurial > repos > blastem
comparison 68kinst.c @ 90:645fe435cb48
Fix decoding of and
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 26 Dec 2012 22:13:31 -0800 |
parents | d212e0cd0b7e |
children | 8c446fc19cc0 |
comparison
equal
deleted
inserted
replaced
89:9757b4c6c33f | 90:645fe435cb48 |
---|---|
905 } else { | 905 } else { |
906 decoded->src.addr_mode = decoded->dst.addr_mode = MODE_REG; | 906 decoded->src.addr_mode = decoded->dst.addr_mode = MODE_REG; |
907 } | 907 } |
908 } else { | 908 } else { |
909 decoded->op = M68K_AND; | 909 decoded->op = M68K_AND; |
910 decoded->extra.size = (*istream >> 6); | 910 decoded->extra.size = (*istream >> 6) & 0x3; |
911 decoded->src.addr_mode = MODE_REG; | 911 decoded->src.addr_mode = MODE_REG; |
912 decoded->src.params.regs.pri = m68k_reg_quick_field(*istream); | 912 decoded->src.params.regs.pri = m68k_reg_quick_field(*istream); |
913 istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->dst)); | 913 istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->dst)); |
914 } | 914 } |
915 } else { | 915 } else { |
919 decoded->dst.addr_mode = MODE_REG; | 919 decoded->dst.addr_mode = MODE_REG; |
920 decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream); | 920 decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream); |
921 istream = m68k_decode_op(istream, OPSIZE_WORD, &(decoded->src)); | 921 istream = m68k_decode_op(istream, OPSIZE_WORD, &(decoded->src)); |
922 } else { | 922 } else { |
923 decoded->op = M68K_AND; | 923 decoded->op = M68K_AND; |
924 decoded->extra.size = (*istream >> 6); | 924 decoded->extra.size = (*istream >> 6) & 0x3; |
925 decoded->dst.addr_mode = MODE_REG; | 925 decoded->dst.addr_mode = MODE_REG; |
926 decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream); | 926 decoded->dst.params.regs.pri = m68k_reg_quick_field(*istream); |
927 istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->src)); | 927 istream = m68k_decode_op(istream, decoded->extra.size, &(decoded->src)); |
928 } | 928 } |
929 } | 929 } |