Skip to main content
? Syndicate

LIST OF OPCODES FOR THE MC68000 PROCESSOR by Richard Karsmakers

Finally!  I thought it would take ages before someone would  come 
up with a full list of opcodes for the 68000 processor,  but Hans 
de Lange recently supplied me with one,  for which I hereby would 
like  to  thank  him  very  much.  Now,  everyone  can  use  this 
information in future times!

Remarks to this list:

This  is  only a simple list,  that doesn't include  clock  cycle 
times,  etc.  'e' means a bit of the effective address field, 'd' 
is  an  offset  bit and 'x' stands  for  further  variable  bits. 
Numbers  preceeded  by  '$' are given  in  hexadecimal  notation. 
Please  refer to our Machine Language course for the  meaning  of 
individual instructions and addressing modes.

ORI.B                    $0      $0      00ee   eeee
ORI.W                    $0      $0      01ee   eeee
ORI.L                    $0      $0      10ee   eeee
ORI to CCR               $0      $0      $3     $C
ORI to SR                $0      $0      $7     $C
BTST (dyn)               $0      xxx1    00ee   eeee
BCHG (dyn)               $0      xxx1    01ee   eeee
BCLR (dyn)               $0      xxx1    10ee   eeee
BSET (dyn)               $0      xxx1    11ee   eeee
MOVEP.W (M->R)           $0      xxx1    $0     1xxx
MOVEP.W (M->R)           $0      xxx1    $4     1xxx
MOVEP.W (R->M)           $0      xxx1    $8     1xxx
MOVEP.L (R->M)           $0      xxx1    $C     1xxx
ANDI.B                   $0      $2      00ee   eeee
ANDI.W                   $0      $2      01ee   eeee
ANDI.L                   $0      $2      10ee   eeee
ANDI to CCR              $0      $2      $3     $C
ANDI to SR               $0      $2      $7     $C
SUBI.B                   $0      $4      00ee   eeee
SUBI.W                   $0      $4      01ee   eeee
SUBI.L                   $0      $4      10ee   eeee
ADDI.B                   $0      $6      00ee   eeee
ADDI.W                   $0      $6      01ee   eeee
ADDI.L                   $0      $6      10ee   eeee
BTST (stat)              $0      $8      00ee   eeee
BCHG (stat)              $0      $8      01ee   eeee
BCLR (stat)              $0      $8      10ee   eeee
BSET (stat)              $0      $8      11ee   eeee
EORI.B                   $0      $A      00ee   eeee
EORI.W                   $0      $A      01ee   eeee
EORI.L                   $0      $A      10ee   eeee
EORI to CCR              $0      $A      $3     $C
EORI to SR               $0      $A      $7     $C
CMPI.B                   $0      $C      00ee   eeee
CMPI.W                   $0      $C      01ee   eeee
CMPI.L                   $0      $C      10ee   eeee
MOVE.B                   $1      eeee    eeee   eeee
MOVEA.L                  $2      xxx0    01ee   eeee
MOVE.L                   $2      eeee    eeee   eeee
MOVEA.W                  $3      xxx0    01ee   eeee
MOVE.W                   $3      eeee    eeee   eeee
NEGX.B                   $4      $0      00ee   eeee
NEGX.W                   $4      $0      01ee   eeee
NEGX.L                   $4      $0      10ee   eeee
MOVE from SR             $4      $0      11ee   eeee
CHK                      $4      xxx1    10ee   eeee
LEA                      $4      xxx1    11ee   eeee
CLR.B                    $4      $2      00ee   eeee
CLR.W                    $4      $2      01ee   eeee
CLR.L                    $4      $2      10ee   eeee
NEG.B                    $4      $4      00ee   eeee
NEG.W                    $4      $4      01ee   eeee
NEG.L                    $4      $4      10ee   eeee
MOVE to CCR              $4      $4      11ee   eeee
NOT.B                    $4      $6      00ee   eeee
NOT.W                    $4      $6      01ee   eeee
NOT.L                    $4      $6      10ee   eeee
MOVE to SR               $4      $6      11ee   eeee
NBCD                     $4      $8      00ee   eeee
SWAP                     $4      $8      $4     0xxx
PEA                      $4      $8      01ee   eeee
EXT.W                    $4      $8      $8     0xxx
MOVEM.W (R->M)           $4      $8      10ee   eeee
MOVEM.L (R->M)           $4      $8      11ee   eeee
EXT.L                    $4      $8      $C     0xxx
TST.B                    $4      $A      00ee   eeee
TST.W                    $4      $A      01ee   eeee
TST.L                    $4      $A      10ee   eeee
TAS                      $4      $A      11ee   eeee
ILLEGAL                  $4      $A      $F     $C
MOVEM.W (M->R)           $4      $C      10ee   eeee
MOVEM.L (M->R)           $4      $C      11ee   eeee
TRAP                     $4      $E      $4     xxxx
LINK                     $4      $E      $5     0xxx
UNLK                     $4      $E      $5     1xxx
MOVE to USP              $4      $E      $6     0xxx
MOVE from USP            $4      $E      $6     1xxx
RESET                    $4      $E      $7     $0
NOP                      $4      $E      $7     $1
STOP                     $4      $E      $7     $2
RTE                      $4      $E      $7     $3
RTS                      $4      $E      $7     $5
TRAPV                    $4      $E      $7     $6
RTR                      $4      $E      $7     $7
JSR                      $4      $E      10ee   eeee
JMP                      $4      $E      11ee   eeee
ADDQ.B                   $5      xxx0    00ee   eeee
ADDQ.W                   $5      xxx0    01ee   eeee
ADDQ.L                   $5      xxx0    10ee   eeee
ST                       $5      $0      11ee   eeee
SF                       $5      $1      11ee   eeee
SHI                      $5      $2      11ee   eeee
SLS                      $5      $3      11ee   eeee
SCC                      $5      $4      11ee   eeee
SCS                      $5      $5      11ee   eeee
SNE                      $5      $6      11ee   eeee
SEQ                      $5      $7      11ee   eeee
SVC                      $5      $8      11ee   eeee
SVS                      $5      $9      11ee   eeee
SPL                      $5      $A      11ee   eeee
SMI                      $5      $B      11ee   eeee
SGE                      $5      $C      11ee   eeee
SLT                      $5      $D      11ee   eeee
SGT                      $5      $E      11ee   eeee
SLE                      $5      $F      11ee   eeee
DBT                      $5      $0      $C     1xxx
DBF=DBRA                 $5      $1      $C     1xxx
DBHI                     $5      $2      $C     1xxx
DBLS                     $5      $3      $C     1xxx
DBCC                     $5      $4      $C     1xxx
DBCS                     $5      $5      $C     1xxx
DBNE                     $5      $6      $C     1xxx
DBEQ                     $5      $7      $C     1xxx
DBVC                     $5      $8      $C     1xxx
DBVS                     $5      $9      $C     1xxx
DBPL                     $5      $A      $C     1xxx
DBMI                     $5      $B      $C     1xxx
DBGE                     $5      $C      $C     1xxx
DBLT                     $5      $D      $C     1xxx
DBGT                     $5      $E      $C     1xxx
DBLE                     $5      $F      $C     1xxx
SUBQ.B                   $5      xxx1    00ee   eeee
SUBQ.W                   $5      xxx1    01ee   eeee
SUBQ.L                   $5      xxx1    10ee   eeee
BRA                      $6      $0      dddd   dddd
BSR                      $6      $1      dddd   dddd
BHI                      $6      $2      dddd   dddd
BLS                      $6      $3      dddd   dddd
BCC                      $6      $4      dddd   dddd
BCS                      $6      $5      dddd   dddd
BNE                      $6      $6      dddd   dddd
BEQ                      $6      $7      dddd   dddd
BVC                      $6      $8      dddd   dddd
BVS                      $6      $9      dddd   dddd
BPL                      $6      $A      dddd   dddd
BMI                      $6      $B      dddd   dddd
BGE                      $6      $C      dddd   dddd
BLT                      $6      $D      dddd   dddd
BGT                      $6      $E      dddd   dddd
BLE                      $6      $F      dddd   dddd
MOVEQ                    $7      xxx0    xxxx   xxxx
OR.B <ea>,Dn             $8      xxx0    00ee   eeee
OR.W <ea>,Dn             $8      xxx0    01ee   eeee
OR.L <ea>,Dn             $8      xxx0    10ee   eeee
OR.B Dn,<ea>             $8      xxx1    00ee   eeee
OR.W Dn,<ea>             $8      xxx1    01ee   eeee
OR.L Dn,<ea>             $8      xxx1    10ee   eeee
DIVU                     $8      xxx0    11ee   eeee
SBCD Ds,Dd               $8      xxx1    $0     0xxx
SBCD -(As),-(Ad)         $8      xxx1    $0     1xxx
DIVS                     $8      xxx1    11ee   eeee
SUB.B <ea>,Dn            $9      xxx0    00ee   eeee
SUB.W <ea>,Dn            $9      xxx0    01ee   eeee
SUB.L <ea>,Dn            $9      xxx0    10ee   eeee
SUB.B Dn,<ea>            $9      xxx1    00ee   eeee
SUB.W Dn,<ea>            $9      xxx1    01ee   eeee
SUB.L Dn,<ea>            $9      xxx1    10ee   eeee
SUBA.W                   $9      xxx0    11ee   eeee
SUBA.L                   $9      xxx1    11ee   eeee
SUBX.B Ds,Dd             $9      xxx1    $0     0xxx
SUBX.W Ds,Dd             $9      xxx1    $4     0xxx
SUBX.L Ds,Dd             $9      xxx1    $8     0xxx
SUBX.B -(As),-(Ad)       $9      xxx1    $0     1xxx
SUBX.W -(As),-(Ad)       $9      xxx1    $4     1xxx
SUBX.L -(As),-(Ad)       $9      xxx1    $8     1xxx
CMP.B                    $B      xxx0    00ee   eeee
CMP.W                    $B      xxx0    01ee   eeee
CMP.L                    $B      xxx0    10ee   eeee
CMPA.W                   $B      xxx0    11ee   eeee
CMPA.L                   $B      xxx1    11ee   eeee
EOR.B                    $B      xxx1    00ee   eeee
EOR.W                    $B      xxx1    01ee   eeee
EOR.L                    $B      xxx1    10ee   eeee
CMPM.B                   $B      xxx1    $0     1xxx
CMPM.W                   $B      xxx1    $4     1xxx
CMPM.L                   $B      xxx1    $8     1xxx
AND.B <ea>,Dn            $C      xxx0    00ee   eeee
AND.W <ea>,Dn            $C      xxx0    01ee   eeee
AND.L <ea>,Dn            $C      xxx0    10ee   eeee
AND.B Dn,<ea>            $C      xxx1    00ee   eeee
AND.W Dn,<ea>            $C      xxx1    01ee   eeee
AND.L Dn,<ea>            $C      xxx1    10ee   eeee
MULU                     $C      xxx0    11ee   eeee
ABCD Ds,Dd               $C      xxx1    $0     0xxx
ABCD -(As),-(Ad)         $C      xxx1    $0     1xxx
EXG Dn,Dn                $C      xxx1    $4     0xxx
EXG An,An                $C      xxx1    $4     1xxx
EXG Dn,An                $C      xxx1    $8     1xxx
MULS                     $C      xxx1    11ee   eeee
ADD.B <ea>,Dn            $D      xxx0    00ee   eeee
ADD.W <ea>,Dn            $D      xxx0    01ee   eeee
ADD.L <ea>,Dn            $D      xxx0    10ee   eeee
ADD.B Dn,<ea>            $D      xxx1    00ee   eeee
ADD.W Dn,<ea>            $D      xxx1    01ee   eeee
ADD.L Dn,<ea>            $D      xxx1    10ee   eeee
ADDA.W                   $D      xxx0    11ee   eeee
ADDA.L                   $D      xxx1    11ee   eeee
ADDX.B Ds,Dd             $D      xxx1    $0     0xxx
ADDX.W Ds,Dd             $D      xxx1    $4     0xxx
ADDX.L Ds,Dd             $D      xxx1    $8     0xxx
ADDX.B -(As),-(Ad)       $D      xxx1    $0     1xxx
ADDX.W -(As),-(Ad)       $D      xxx1    $4     1xxx
ADDX.L -(As),-(Ad)       $D      xxx1    $8     1xxx
ASR.B (reg #)            $E      xxx0    $0     0xxx
ASR.W (reg #)            $E      xxx0    $4     0xxx
ASR.L (reg #)            $E      xxx0    $8     0xxx
ASR.B (reg)              $E      xxx0    $2     0xxx
ASR.W (reg)              $E      xxx0    $6     0xxx
ASR.L (reg)              $E      xxx0    $A     0xxx
ASL.B (reg #)            $E      xxx1    $0     0xxx
ASL.W (reg #)            $E      xxx1    $4     0xxx
ASL.L (reg #)            $E      xxx1    $8     0xxx
ASL.B (reg)              $E      xxx1    $2     0xxx
ASL.W (reg)              $E      xxx1    $6     0xxx
ASL.L (reg)              $E      xxx1    $A     0xxx
LSR.B (reg #)            $E      xxx0    $0     1xxx
LSR.W (reg #)            $E      xxx0    $4     1xxx
LSR.L (reg #)            $E      xxx0    $8     1xxx
LSR.B (reg)              $E      xxx0    $2     1xxx
LSR.W (reg)              $E      xxx0    $6     1xxx
LSR.L (reg)              $E      xxx0    $A     1xxx
LSL.B (reg #)            $E      xxx1    $0     1xxx
LSL.W (reg #)            $E      xxx1    $4     1xxx
LSL.L (reg #)            $E      xxx1    $8     1xxx
LSL.B (reg)              $E      xxx1    $2     1xxx
LSL.W (reg)              $E      xxx1    $6     1xxx
LSL.L (reg)              $E      xxx1    $A     1xxx
ROXR.B (reg #)           $E      xxx0    $1     0xxx
ROXR.W (reg #)           $E      xxx0    $5     0xxx
ROXR.L (reg #)           $E      xxx0    $9     0xxx
ROXR.B (reg)             $E      xxx0    $3     0xxx
ROXR.W (reg)             $E      xxx0    $7     0xxx
ROXR.L (reg)             $E      xxx0    $B     0xxx
ROXL.B (reg #)           $E      xxx1    $1     0xxx
ROXL.W (reg #)           $E      xxx1    $5     0xxx
ROXL.L (reg #)           $E      xxx1    $9     0xxx
ROXL.B (reg)             $E      xxx1    $3     0xxx
ROXL.W (reg)             $E      xxx1    $7     0xxx
ROXL.L (reg)             $E      xxx1    $B     0xxx
ROR.B (reg #)            $E      xxx0    $1     1xxx
ROR.W (reg #)            $E      xxx0    $5     1xxx
ROR.L (reg #)            $E      xxx0    $9     1xxx
ROR.B (reg)              $E      xxx0    $3     1xxx
ROR.W (reg)              $E      xxx0    $7     1xxx
ROR.L (reg)              $E      xxx0    $B     1xxx
ROL.B (reg #)            $E      xxx1    $1     1xxx
ROL.W (reg #)            $E      xxx1    $5     1xxx
ROL.L (reg #)            $E      xxx1    $9     1xxx
ROL.B (reg)              $E      xxx1    $3     1xxx
ROL.W (reg)              $E      xxx1    $7     1xxx
ROL.L (reg)              $E      xxx1    $B     1xxx
ASR (mem)                $E      $0      11ee   eeee
ASL (mem)                $E      $1      11ee   eeee
LSR (mem)                $E      $2      11ee   eeee
LSL (mem)                $E      $3      11ee   eeee
ROXR (mem)               $E      $4      11ee   eeee
ROXL (mem)               $E      $5      11ee   eeee
ROR (mem)                $E      $6      11ee   eeee
ROL (mem)                $E      $7      11ee   eeee

Disclaimer
The text of the articles is identical to the originals like they appeared in old ST NEWS issues. Please take into consideration that the author(s) was (were) a lot younger and less responsible back then. So bad jokes, bad English, youthful arrogance, insults, bravura, over-crediting and tastelessness should be taken with at least a grain of salt. Any contact and/or payment information, as well as deadlines/release dates of any kind should be regarded as outdated. Due to the fact that these pages are not actually contained in an Atari executable here, references to scroll texts, featured demo screens and hidden articles may also be irrelevant.