Prev: B8F5 Up: Map Next: B92F
B910: Print Throwing Dart Frame
Used by the routine at Animation_ThrowingDart.
Print_ThrowingDart_Frame B910 HALT Halt operation (suspend CPU until the next interrupt) eight times.
B911 HALT
B912 HALT
B913 HALT
B914 HALT
B915 HALT
B916 HALT
B917 HALT
B918 LD B,$18 Set a counter in B of 18 for the height of the graphic.
B91A LD HL,$40F3 Set the target screen buffer location in HL.
Print_ThrowingDart_Frame_Loop B91D PUSH BC Stash the height counter and screen buffer location on the stack.
B91E PUSH HL
B91F EX DE,HL Exchange the DE and HL registers.
B920 LDI Copy 03 bytes of data from the graphic to the screen buffer.
B922 LDI
B924 LDI
B926 EX DE,HL Exchange the DE and HL registers.
B927 POP HL Restore the screen buffer location from the stack.
B928 CALL NextScreenBufferLine Call NextScreenBufferLine.
B92B POP BC Restore the height counter from the stack.
B92C DJNZ Print_ThrowingDart_Frame_Loop Decrease the height counter by one and loop back to Print_ThrowingDart_Frame_Loop until the frame has been displayed in full.
B92E RET Return.
Prev: B8F5 Up: Map Next: B92F