Routines |
Prev: B6C2 | Up: Map | Next: B761 |
|
||||||||||||
On return from CalculateScreenBuffer HL will contain the screen buffer destination.
|
||||||||||||
DrawOpponentImage | B742 | CALL CalculateScreenBuffer | Call CalculateScreenBuffer. | |||||||||
B745 | LD D,B | Copy the opponent pointer to display into DE. | ||||||||||
B746 | LD E,C | |||||||||||
B747 | LD B,$38 | Set a counter in B for the height of the opponent image. | ||||||||||
DrawOpponentImage_Loop | B749 | PUSH BC | Stash the height counter and destination pointer on the stack. | |||||||||
B74A | PUSH HL | |||||||||||
B74B | EX DE,HL | Swap the source and destination registers. | ||||||||||
B74C | LDI | Copy 06 bytes of data from the source address to the destination. | ||||||||||
B74E | LDI | |||||||||||
B750 | LDI | |||||||||||
B752 | LDI | |||||||||||
B754 | LDI | |||||||||||
B756 | LDI | |||||||||||
B758 | EX DE,HL | Swap the source and destination registers back again. | ||||||||||
B759 | POP HL | Restore the original screen position from the stack. | ||||||||||
B75A | CALL NextScreenBufferLine | Call NextScreenBufferLine. | ||||||||||
B75D | POP BC | Restore the height counter from the stack. | ||||||||||
B75E | DJNZ DrawOpponentImage_Loop | Decrease the height counter by one and loop back to DrawOpponentImage_Loop until the whole image has been displayed. | ||||||||||
B760 | RET | Return. |
Prev: B6C2 | Up: Map | Next: B761 |