Prev: 46914 Up: Map Next: 46970
46945: 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 46945 CALL CalculateScreenBuffer Call CalculateScreenBuffer.
46948 LD D,B Copy the opponent pointer to display into DE.
46949 LD E,C
46950 LD B,24 Set a counter in B for the height of the opponent image.
Draw_OpponentPubScene_Loop 46952 PUSH BC Stash the height counter and destination pointer on the stack.
46953 PUSH HL
46954 EX DE,HL Swap the source and destination registers.
46955 LDI Copy 6 bytes of data from the source address to the destination.
46957 LDI
46959 LDI
46961 EX DE,HL Swap the source and destination registers back again.
46962 POP HL Restore the original screen position from the stack.
46963 CALL NextScreenBufferLine Call NextScreenBufferLine.
46966 POP BC Restore the height counter from the stack.
46967 DJNZ Draw_OpponentPubScene_Loop Decrease the height counter by one and loop back to Draw_OpponentPubScene_Loop until the whole image has been displayed.
46969 RET Return.
Prev: 46914 Up: Map Next: 46970