© 1985 ASCII CORP. / NIPPON GAKKI CO.
Page 78 of 108
© 2010-2015 Eugeny Brychkov
4.4.6. LMCM (Logical move VRAM to CPU)
LMCM command is used to transfer data from the video or expansion RAM in a
specified rectangular area to the CPU through VDP. The units used are dots.
Video or expansion RAM
(SX, SY)
NX
→
DIX
CPU
VDP
NY
↓
DIY
LMCM execution order
Step 1: Set necessary coordinates in command registers
MSB
7 6 5 4 3 2 1 0
LSB
R#32
SX7 SX6 SX5 SX4 SX3 SX2 SX1 SX0
R#33
0 0 0 0 0 0 0 SX8
SX: Source X
(0…511)
R#34
SY7 SY6 SY5 SY4 SY3 SY2 SY1 SY0
R#35
0 0 0 0 0 0 SY9
SY8
SY: Source Y
(0…1023)
R#40
NX7 NX6 NX5 NX4 NX3 NX2 NX1 NX0
R#41
0 0 0 0 0 0 0
NX8
NX: Number of
dots in X-axis
R#42
NY7 NY6 NY5 NY4 NY3 NY2 NY1 NY0
R#43
0 0 0 0 0 0
NY9
NY8
NY: Number of
dots in Y-axis
Step 2: Select source memory and direction from base coordinate
MSB
7 6 5 4 3 2 1 0
LSB
R#45
0 - - MXS DIY DIX - -
0: Right
1: Left
X transfer
direction
0: Down
1: Up
Y transfer
direction
0: VRAM
1: ExpRAM
Source select