We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
TCALL (SPC700): Difference between revisions
From SnesLab
(added target addresses) |
(added syntax) |
||
Line 128: | Line 128: | ||
'''TCALL''' (Table CALl) is an [[SPC700]] instruction that calls a subroutine in the [[uppermost page]]. The low byte of the effective address which is called is a function of the high nibble of the opcode, equal to $DE - nibble*2. The high byte of the effective address is always $FF. | '''TCALL''' (Table CALl) is an [[SPC700]] instruction that calls a subroutine in the [[uppermost page]]. The low byte of the effective address which is called is a function of the high nibble of the opcode, equal to $DE - nibble*2. The high byte of the effective address is always $FF. | ||
=== Syntax === | |||
<pre> | |||
TCALL n | |||
</pre> | |||
where n is decimal integer from 0 to 15, which becomes the high nibble of the opcode. | |||
=== See Also === | === See Also === |
Revision as of 18:45, 25 July 2023
Basic Info | |||||||
---|---|---|---|---|---|---|---|
Addressing Mode | Opcode | Length | Speed | Target Address | |||
Implied (type 3) | 01 | 1 byte | 8 cycles | $FFDE | |||
Implied (type 3) | 11 | 1 byte | 8 cycles | $FFDC | |||
Implied (type 3) | 21 | 1 byte | 8 cycles | $FFDA | |||
Implied (type 3) | 31 | 1 byte | 8 cycles | $FFD8 | |||
Implied (type 3) | 41 | 1 byte | 8 cycles | $FFD6 | |||
Implied (type 3) | 51 | 1 byte | 8 cycles | $FFD4 | |||
Implied (type 3) | 61 | 1 byte | 8 cycles | $FFD2 | |||
Implied (type 3) | 71 | 1 byte | 8 cycles | $FFD0 | |||
Implied (type 3) | 81 | 1 byte | 8 cycles | $FFCE | |||
Implied (type 3) | 91 | 1 byte | 8 cycles | $FFCC | |||
Implied (type 3) | A1 | 1 byte | 8 cycles | $FFCA | |||
Implied (type 3) | B1 | 1 byte | 8 cycles | $FFC8 | |||
Implied (type 3) | C1 | 1 byte | 8 cycles | $FFC6 | |||
Implied (type 3) | D1 | 1 byte | 8 cycles | $FFC4 | |||
Implied (type 3) | E1 | 1 byte | 8 cycles | $FFC2 | |||
Implied (type 3) | F1 | 1 byte | 8 cycles | $FFC0 |
Flags Affected | |||||||
---|---|---|---|---|---|---|---|
N | V | P | B | H | I | Z | C |
. | . | . | . | . | . | . | . |
TCALL (Table CALl) is an SPC700 instruction that calls a subroutine in the uppermost page. The low byte of the effective address which is called is a function of the high nibble of the opcode, equal to $DE - nibble*2. The high byte of the effective address is always $FF.
Syntax
TCALL n
where n is decimal integer from 0 to 15, which becomes the high nibble of the opcode.
See Also
External Links
- Official Nintendo documentation on TCALL: Appendix C-9
- anomie's SPC700 doc