We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
MOVW (SPC700): Difference between revisions
From SnesLab
(linkify direct page) |
(MOV has a read cycle on destination) |
||
Line 56: | Line 56: | ||
'''MOVW''' (Move Word) is an [[SPC700]] instruction that moves a 16-bit [[direct page]] value to or from the [[YA]] register. There are no variations of MOVW that do not operate on YA. | '''MOVW''' (Move Word) is an [[SPC700]] instruction that moves a 16-bit [[direct page]] value to or from the [[YA]] register. There are no variations of MOVW that do not operate on YA. MOVW performs a read cycle on the low byte of the destination, but not the source.<sup>[2]</sup> | ||
=== Example === | === Example === | ||
Line 74: | Line 74: | ||
* [[CMPW]] | * [[CMPW]] | ||
=== | === References === | ||
# Official Super Nintendo development manual on MOVW: [https://archive.org/details/SNESDevManual/book1/page/n233 Appendix C-8 of Book I] | |||
# [https://www.romhacking.net/documents/197 anomie's SPC700 doc] | |||
[[Category:ASM]] | [[Category:ASM]] | ||
[[Category:SPC700]] | [[Category:SPC700]] | ||
[[Category:16-bit Data Transmission Commands]] | [[Category:16-bit Data Transmission Commands]] |
Revision as of 17:06, 24 July 2023
Basic Info | ||||
---|---|---|---|---|
Direction | Addressing Mode | Opcode | Length | Speed |
to YA | Direct Page | BA | 2 bytes | 5 cycles |
from YA | Direct Page | DA | 2 bytes | 4 cycles |
Flags Affected | ||||||||
---|---|---|---|---|---|---|---|---|
Direction | N | V | P | B | H | I | Z | C |
to YA | . | . | . | . | . | |||
from YA | . | . | . | . | . | . | . | . |
MOVW (Move Word) is an SPC700 instruction that moves a 16-bit direct page value to or from the YA register. There are no variations of MOVW that do not operate on YA. MOVW performs a read cycle on the low byte of the destination, but not the source.[2]
Example
From the IPL ROM,
MOVW YA, $F6 ; load the byte at direct page location $F6 into A and the byte at direct page location $F7 into Y MOVW $00, YA ; store the value in Y to direct page location $01 and the value in A to direct page location $00
See Also
References
- Official Super Nintendo development manual on MOVW: Appendix C-8 of Book I
- anomie's SPC700 doc