Prev: B742 Up: Map Next: B77A
B761: Draw Opponent Pub Scene
Used by the routine at Animation_OpponentThrowing.
Input
BC Pointer to graphic data
D Destination Y position
E Destination X position
On return from CalculateScreenBuffer HL will contain the screen buffer destination.
Draw_OpponentPubScene B761 CALL CalculateScreenBuffer Call CalculateScreenBuffer.
B764 LD D,B Copy the opponent pointer to display into DE.
B765 LD E,C
B766 LD B,$18 Set a counter in B for the height of the opponent image.
Draw_OpponentPubScene_Loop B768 PUSH BC Stash the height counter and destination pointer on the stack.
B769 PUSH HL
B76A EX DE,HL Swap the source and destination registers.
B76B LDI Copy 06 bytes of data from the source address to the destination.
B76D LDI
B76F LDI
B771 EX DE,HL Swap the source and destination registers back again.
B772 POP HL Restore the original screen position from the stack.
B773 CALL NextScreenBufferLine Call NextScreenBufferLine.
B776 POP BC Restore the height counter from the stack.
B777 DJNZ Draw_OpponentPubScene_Loop Decrease the height counter by one and loop back to Draw_OpponentPubScene_Loop until the whole image has been displayed.
B779 RET Return.
Prev: B742 Up: Map Next: B77A