5-79
Z380
™
U
SER
'
S
M
ANUAL
Z
ILOG
DC-8297-03
INIRW
INPUT, INCREMENT AND REPEAT (WORD)
INIRW
Operation:
repeat until (BC=0) begin
(HL)
←
(DE)
BC(15-0)
←
BC(15-0) – 1
HL
←
HL + 2
end
This instruction is used for block input of strings of data. The string of input data from the
selected peripheral is loaded into memory at consecutive addresses, starting with the
location addressed by the HL register and increasing. During the I/O transaction the 32-bit
DE register is placed on the address bus.
First the word of data from the selected peripheral is loaded into the memory location
addressed by the HL register. Then the BC register, used as a counter, is decremented by
one. The HL register is then incremented by two, thus moving the pointer to the next
destination for the input. If the result of decrementing the BC register is 0, the instruction is
terminated, otherwise the sequence is repeated. If the BC register contains 0 at the start of
the execution of this instruction, 65536 bytes are input.
This instruction can be interrupted after each execution of the basic operation. The Program
Counter value at the start of this instruction is saved before the interrupt request is accepted,
so that the instruction can be properly resumed.
Flags:
S:
Unaffected
Z:
Set if the result of decrementing BC is zero; cleared otherwise
H:
Unaffected
V:
Unaffected
N:
Set
C:
Unaffected
Addressing
Execute
Mode
Syntax
Instruction Format
Time
Note
INIRW
11101101 11110010
n X (2+i+w)