6502 cycle times: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(initial page creation)
 
(added mnemonics up to CMP)
Line 3: Line 3:
{| class="wikitable"
{| class="wikitable"
|-
|-
|Mmmenoic
|Mnemonic
|Description
|Description
|IMP
|IMP
Line 20: Line 20:
|ADC
|ADC
|ADd with Carry
|ADd with Carry
|x
|2
|3
|4
|x
|4
|4+
|4+
|x
|6
|5+
|x
|-
|AND
|bitwise AND with accumulator
|x
|2
|3
|4
|x
|4
|4+
|4+
|x
|6
|5+
|x
|-
|ASL
|Arithmetic Shift Left
|x
|x
|5
|6
|x
|6
|7
|x
|x
|x
|x
|x
|-
|BIT
|test BITs
|x
|x
|3
|x
|x
|4
|x
|x
|x
|x
|x
|x
|-
|BRK
|BreaK
|7
|x
|x
|x
|x
|x
|x
|x
|x
|x
|x
|x
|-
|CMP
|CoMPare accumulator
|x
|x
|2
|2

Revision as of 05:19, 6 November 2021

I put this spreadsheet together because I didn't like the way the timing information was organized in other places. Some mnemonic/addressing mode combinations do not have an opcode and are marked with "x" because they are not legal instructions. I may add the illegal opcodes later. Cells marked with "+" mean add one cycle if a page boundary is crossed.

Mnemonic Description IMP IMM ZP ZP,X ZP,Y ABS ABS,X ABS,Y IND IND,X IND,Y ACC
ADC ADd with Carry x 2 3 4 x 4 4+ 4+ x 6 5+ x
AND bitwise AND with accumulator x 2 3 4 x 4 4+ 4+ x 6 5+ x
ASL Arithmetic Shift Left x x 5 6 x 6 7 x x x x x
BIT test BITs x x 3 x x 4 x x x x x x
BRK BreaK 7 x x x x x x x x x x x
CMP CoMPare accumulator x 2 3 4 x 4 4+ 4+ x 6 5+ x