Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
mg_notes:65816_notes:addressing_modes [2019/06/24 16:00]
M.G. split simple branches and jumps to their own table
mg_notes:65816_notes:addressing_modes [2019/06/24 19:26]
M.G.
Line 36: Line 36:
 ^ Basic Stack Access ^^^^ ^ Basic Stack Access ^^^^
 ^ Mode ^ Operand Size ^ Base Address ^ Effective Address \\ wrap to 00xxxx ^ ^ Mode ^ Operand Size ^ Base Address ^ Effective Address \\ wrap to 00xxxx ^
-| Stack {push, pull}  | 0 | 00SSSS ​base+0 ​|+| Stack {push, pull}  | 0 | | 00SSSS (before decrement/​after increment) ​|
 | Stack,​S ​            | 1 | 00SSSS | base+operand | | Stack,​S ​            | 1 | 00SSSS | base+operand |
  
Line 46: Line 46:
 ^ Mode ^ Operand Size ^ Pointer Base Address ^ Pointer EA  ^ Pointer Size ^ Target Base ^ Target EA ^ ^ Mode ^ Operand Size ^ Pointer Base Address ^ Pointer EA  ^ Pointer Size ^ Target Base ^ Target EA ^
 | (Absolute) {JMP}    | 2 | KK0000 | base+operand | 2 | KK0000 | base+pointer,​ wrap to KKxxxx | | (Absolute) {JMP}    | 2 | KK0000 | base+operand | 2 | KK0000 | base+pointer,​ wrap to KKxxxx |
-| (Absolute,​X) {JMP}  | 2 | KK0000 | base+operand+X | 2 | KK0000 | base+pointer,​ wrap to KKxxxx |+| (Absolute,​X) {JMP, JSR}  | 2 | KK0000 | base+operand+X | 2 | KK0000 | base+pointer,​ wrap to KKxxxx |
 | [Absolute] {JML}    | 2 | KK0000 | base+operand | 3 | | pointer | | [Absolute] {JML}    | 2 | KK0000 | base+operand | 3 | | pointer |
  
  
 ^ Direct Page Indirect ^^^^^^^ ^ Direct Page Indirect ^^^^^^^
-^ Mode ^ Operand Size ^ Pointer Base Address \\ wrap to 00xxxx ​^ Pointer EA  ^ Pointer Size ^ Target Base ^ Target EA ^+^ Mode ^ Operand Size ^ Pointer Base Address ​^ Pointer EA \\ wrap to 00xxxx ​ ^ Pointer Size ^ Target Base ^ Target EA ^
 | (Direct) ​           | 1 | 00DDDD | base+operand | 2 | BB0000 | base+pointer | | (Direct) ​           | 1 | 00DDDD | base+operand | 2 | BB0000 | base+pointer |
 | (Direct,​X) ​         | 1 | 00DDDD | base+operand+X | 2 | BB0000 | base+pointer ​ | | (Direct,​X) ​         | 1 | 00DDDD | base+operand+X | 2 | BB0000 | base+pointer ​ |