Prev: AD57 Up: Map Next: AE6A
AE59: Copy Display Data If Zero
Used by the routine at MatchWordAgainstEarlierClause.
Copies a display pair only when both of its bytes are still clear.
Input
HL Destination pointer (2-byte display data)
DE Source pointer (2-byte display data)
CopyDisplayDataIfZero AE59 LD A,(HL) Leave this pair unchanged when either byte is already set.
AE5A INC HL
AE5B OR (HL)
AE5C DEC HL
AE5D JR NZ,CopyDisplayDataIfZero_Next
AE5F LD A,(DE) Copy the first byte of this display pair into the picture.
AE60 LD (HL),A
CopyDisplayDataIfZero_Next AE61 INC HL Jump to CopyDisplayDataIfZero_AdvancePointers if either byte of this display pair is already set.
AE62 INC DE
AE63 JR NZ,CopyDisplayDataIfZero_AdvancePointers
AE65 LD A,(DE) Copy the second byte of this display pair into the picture.
AE66 LD (HL),A
CopyDisplayDataIfZero_AdvancePointers AE67 INC HL Advance through the display entry.
AE68 INC DE Step to the next source byte.
AE69 RET Return.
Prev: AD57 Up: Map Next: AE6A