John Muir Publications. Published the very popular How to Keep Your Volkswagen Alive.

Also the John Muir Project (Different person). It is aimed at protecting U.S national forests from commercial exploitation.

Jump to New Location

Addressing mode   Mnemonic     Opcode    Length     Exec.Time
Absolute          JMP $xxxx    4C        3          3
Indirect          JMP ($xxxx)  6C        3          5

Doesn't affect status register.

JMP will simply jump to the specified memory location.

NOTE: See 6502 indirect JMP bug for a warning about the indirect mode. (Basically says what yerricde says below...)

(Back to 6502 Opcodes Metanode)

(Source: Eskoensio Pipatti: Basicista Konekieleen: Konekieliopas 6502-prosessorille, MikroBITTI-kirjat Technopress OY, 1989, ISBN 951-832-006-3; Also Verified from couple of web pages just to make sure. So there. =)

A 6502 instruction that jumps to (sets the program counter to point at) an instruction stream at a given address.
  • Function: &N => PC
  • Updates flags: none
  • Opcode numbers:
    abs   $4C (3 bytes, 3 cycles)
    (a)   $6C (3 bytes, 5 cycles)

Warning about indirect JMP

Because there is no carry associated with retrieving the most significant byte of the address that a JMP (a) points to, the (a) form should NEVER have a low-order byte of $FF. For example,

  jmp ($89ff)
will fetch the program counter from $89ff and $8900, instead of $89ff and $8a00 as expected. All other 6502 indirect addressing modes have the same "feature."

Similar: JSR
See also: 6502 instructions | 6502 addressing modes

Log in or register to write something here or to contact authors.