SLA Shift bits left with Carry and store in register

Undocumented Shift bits left with carry and store in register

This instruction performs an SLA (IX+dd) or SLA (IX+dd) operation but then also stores the result in a register as well as in the memory location.

Visualisation of the SLA instruction

76543210
 
SLA r,(IX+d)
11011101DD
11001011CB
d
00100r
 
SLA r,(IY+d)
11111101FD
11001011CB
d
00100r
Registers
Registerr
B000
C001
D010
E011
H100
L101
A111

Note: r=%110 does exist. It doesn't do a copy into a register as it's the existing official, documented instruction.

Opcode Matrix
ABCDEHL
(IX+d)
SLA A,(IX+d)
DDCBnn27
SLA B,(IX+d)
DDCBnn20
SLA C,(IX+d)
DDCBnn21
SLA D,(IX+d)
DDCBnn22
SLA E,(IX+d)
DDCBnn23
SLA H,(IX+d)
DDCBnn24
SLA L,(IX+d)
DDCBnn25
(IY+d)
SLA A,(IY+d)
FDCBnn27
SLA B,(IY+d)
FDCBnn20
SLA C,(IY+d)
FDCBnn21
SLA D,(IY+d)
FDCBnn22
SLA E,(IY+d)
FDCBnn23
SLA H,(IY+d)
FDCBnn24
SLA L,(IY+d)
FDCBnn25
Opcode Matrix Legend
Instruction Opcode hex
 Undocumented

Last modified November 16, 2021: Optimise undocumented pages (5f13800)