We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

MOV (SPC700): Difference between revisions

From SnesLab
Jump to: navigation, search
(flags clobbered for Group 2)
(added Group 3)
Line 217: Line 217:
{| class="wikitable" style="float:right;clear:right;width:30%"
{| class="wikitable" style="float:right;clear:right;width:30%"
!colspan="8"|Flags Clobbered (Group 2)
!colspan="8"|Flags Clobbered (Group 2)
|+
|N
|V
|P
|B
|H
|I
|Z
|C
|+
|.
|.
|.
|.
|.
|.
|.
|.
|}
{| class="wikitable" style="float:right;clear:right;width:30%"
!colspan="8"|Basic Info (Group 3)
|+
|'''Addressing Mode'''
|'''Opcode'''
|'''Length'''
|'''Speed'''
|+
|
|7D
|1 byte
|2 cycles
|+
|
|DD
|1 byte
|2 cycles
|+
|
|5D
|1 bytes
|2 cycles
|+
|
|FD
|1 bytes
|2 cycles
|+
|
|9D
|1 bytes
|2 cycles
|}
{| class="wikitable" style="float:right;clear:right;width:30%"
!colspan="8"|Flags Clobbered (Group 3)
|+
|N
|V
|P
|B
|H
|I
|Z
|C
|+
|
|.
|.
|.
|.
|.
|.
|
|}
{| class="wikitable" style="float:right;clear:right;width:30%"
!colspan="8"|Basic Info (Group 3 cont.)
|+
|'''Addressing Mode'''
|'''Opcode'''
|'''Length'''
|'''Speed'''
|+
|
|BD
|1 bytes
|2 cycles
|+
|
|FA
|3 bytes
|5 cycles
|+
|
|8F
|3 bytes
|5 cycles
|}
{| class="wikitable" style="float:right;clear:right;width:30%"
!colspan="8"|Flags Clobbered (Group 3 cont.)
|+
|+
|N
|N

Revision as of 15:13, 7 May 2023

MOV is an SPC700 instruction that moves a value. There are a large number of variations for this instruction, and they are divided into three groups:

  • In Group 1, MOV moves values from ARAM to registers.
  • In Group 2, MOV moves values from registers to ARAM.
  • In Group 3, MOV moves values from registers to registers or from ARAM to ARAM.
Basic Info (Group 1)
Addressing Mode Opcode Length Speed
immediate E8 2 bytes 3 cycles
E6 1 bytes 3 cycles
BF 1 bytes 4 cycles
direct page E4 2 bytes 3 cycles
F4 2 bytes 4 cycles
absolute E5 3 bytes 4 cycles
F5 3 bytes 5 cycles
F6 3 bytes 5 cycles
E7 2 bytes 6 cycles
F7 2 bytes 6 cycles
immediate CD 2 bytes 2 cycles
direct page F8 2 bytes 3 cycles
F9 2 bytes 4 cycles
absolute E9 3 bytes 4 cycles
immediate 8D 2 bytes 2 cycles
direct page EB 2 bytes 3 cycles
FB 2 bytes 4 cycles
absolute EC 3 bytes 4 cycles
Flags Clobbered (Group 1)
N V P B H I Z C
. . . . . .
Basic Info (Group 2)
Addressing Mode Opcode Length Speed
C6 1 byte 4 cycles
AF 1 byte 4 cycles
C4 2 bytes 4 cycles
D4 2 bytes 5 cycles
C5 3 bytes 5 cycles
D5 3 bytes 6 cycles
D6 3 bytes 6 cycles
C7 2 bytes 7 cycles
D7 2 bytes 6 cycles
D8 2 bytes 4 cycles
D8 2 bytes 4 cycles
D9 2 bytes 5 cycles
C9 3 bytes 5 cycles
CB 2 bytes 4 cycles
DB 2 bytes 5 cycles
CC 3 bytes 5 cycles
Flags Clobbered (Group 2)
N V P B H I Z C
. . . . . . . .
Basic Info (Group 3)
Addressing Mode Opcode Length Speed
7D 1 byte 2 cycles
DD 1 byte 2 cycles
5D 1 bytes 2 cycles
FD 1 bytes 2 cycles
9D 1 bytes 2 cycles
Flags Clobbered (Group 3)
N V P B H I Z C
. . . . . .
Basic Info (Group 3 cont.)
Addressing Mode Opcode Length Speed
BD 1 bytes 2 cycles
FA 3 bytes 5 cycles
8F 3 bytes 5 cycles
Flags Clobbered (Group 3 cont.)
N V P B H I Z C
. . . . . . . .