![]() |
Routines |
| Prev: B405 | Up: Map | Next: B483 |
|
Used by the routine at SwapObjectDisplayPointers.
Copies six display bytes and reports failure when every copied byte is zero.
|
||||
| CopySixDisplayBytes | B468 | PUSH BC | Save the count, take 00 as its high byte, and point HL at the record. | |
| B469 | LD C,A | |||
| B46A | LD B,$00 | |||
| B46C | PUSH HL | |||
| B46D | PUSH IY | |||
| B46F | POP HL | |||
| B470 | ADD HL,BC | Add the offset, copy 06 bytes and clear A. | ||
| B471 | LD BC,$0006 | |||
| B474 | LDIR | |||
| B476 | XOR A | |||
| B477 | LD B,$06 | Count the 06 copied bytes. | ||
| CopySixDisplayBytes_TestCopied | B479 | DEC HL | Step back one byte, or that byte into A, and repeat from CopySixDisplayBytes_TestCopied for all six. | |
| B47A | OR (HL) | |||
| B47B | DJNZ CopySixDisplayBytes_TestCopied | |||
| B47D | POP HL | Restore the pointer and the count from the stack. | ||
| B47E | POP BC | |||
| B47F | RET Z | Return if the six copied bytes are all zero. | ||
| B480 | SET 0,(HL) | Mark this display flag as set. | ||
| B482 | RET | Return. | ||
| Prev: B405 | Up: Map | Next: B483 |