68k Instruction Reference

From MegaDrive Wiki
Revision as of 15:15, 23 June 2013 by Tristanseifert (talk | contribs) (Added categories)
Jump to: navigation, search

This page documents all 68k instructions, as well as their execution times.

Address Calculation Times

It is important to remember that most instructions alter some form of memory, and thus, must calculate the address that will be accessed, which usually incurs extra processor cycles. The two columns "Byte/Word" and "Long" contain a number followed by two numbers in parenthesis. The number outside the parenthesis indicates the total number of processor cycles required, while the two numbers inside the parenthesis indicate the number of read and write cycles are required.

Timings include fetching of extension words, address computation, as well as fetching of memory operands.

Addressing Mode Byte/Word Long
Register
Dn Data Register Direct 0(0/0) 0(0/0)
An Address Register Direct 0(0/0) 0(0/0)
Memory
(An) Address Register Indirect 4(1/0) 8(2/0)
(An)+ Address Register Indirect with post-increment 4(1/0) 8(2/0)
d(An) Address Register Indirect with displacement 8(2/0) 12(3/0)
d(An, ix) Address Register Indirect with index 10(2/0) 14(3/0)
#xxx.W Absolute Short 8(2/0) 12(3/0)
#xxx.L Absolute Long 12(3/0) 16(4/0)
d(PC) Program Counter with displacement 8(2/0) 12(3/0)
d(PC, ix) Program Counter with index 10(2/0) 14(3/0)
#xxx Immediate 4(1/0) 8(2/0)