Files
Digital-Research-Source-Code/CPM OPERATING SYSTEMS/CPM 2.X/CPM 2.2/PATCHES/ZSID.BUG
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

22 lines
901 B
Plaintext

ZSID BUGS
From DDJ, Oct. 1982, p. 7
ZSID doesn't interpret the LDIR instruction correctly when the
operands (the two strings defined by the HL, DE and BC registers)
overlap on each other. The LDIR (long move) instruction of the
Z-80 copies a source string into a target string. When the target
string overlaps on the source string (as when the source begins
at 200h, the target at 201h and the length is 255 bytes) LDIR
becomes a Replicate instruction, duplicating the leading byte
of the source into the target over and over. ZSID doesn't handle
it right, though; it stops after copying one byte.
Also, the disassembler in ZSID doesn't seem to handle the LD A,R
and LD R,A instructions. Its List command won't display them and
its Assemble command won't accept them.
The number -1 is not correctly interpreted. For example, LD HL,-1
is interpreted as LD HL,00FF.