[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]

System Specification for C65Fred BowenMarch 1, 1991

Indirect (word)   OPR (abs)   (JNP and JSR only)

The second and third bytes of the three-byte instruction contain the low-order and high-order address bytes, respectively, of two memory locations containing the low-order and high-order JMP or JSR addresses, respectively.

Indexed by X, indirect (byte)   OPR (bp,X)   (formerly (zp,X)

The second byte of the two-byte instruction is added to the contents of the X register to form the low-order address byte, and the contents of the B register contains the high-order address byte, of two memory locations that contain the low-order and high-order address of the memory location to be used by the operation.

Indexed by X, indirect (word)   OPR (abs,X)   (JI-2 and JSR only)

The second and third bytes of the three-byte instruction.are added to the unsigned contents of the X index register to form the low-order and high-order address bytes, respectively, of two memorylocations containing the low-order and high-order JMP or JSR address bytes.

Indirect, indexed by Y   OPR (bp),Y   (formerly (zp),Y

The second byte of the two-byte instruction contains the low-order byte, and the B register contains the high-order address byte of two memory locations whose contents are added to the unsigned Y index register to form the address of the memory location to be used by the operation.

Indirect, indexed by Z   OPR (bp),Z   (formerly (zp)

The second byte of the two-byte instruction contains the low-order byte, and the B register contains the high-order address byte of two memory locations whose contents are added to the unsigned Z index register to form the address of the memory location to be used by the operation.

Stack Pointer Indirect, indexed by Y   OPR (d,SP),Y   (new)

The second byte of the two-byte instruction contains an unsigned offset value, d, which is added to the stack pointer (word) to form the address of two memory locations whose contents are added to the unsigned Y register to ;form the address of the memory location to be used by the operation.

Relative (byte)   Bxx LABEL   (branches only)

The second byte of the two-byte branch instruction is sign-extended to a full word and added to the program counter (now containing the opcode address plus two). If the condition of the branch is true, the sum is stored back into the program counter.

Relative (word)   Exx LABEL   (branches only)

The second and third bytes of the three-byte branch instruction are added to the low-order and high-order program counter bytes, respectively. (the program counter now contains the opcode address plus two). If the condition of the branch is true, the sum is stored back into the program counter.


[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]
This page has been created by Sami Rautiainen.
Read the small print. Last updated November 29, 2002.