Routines |
Prev: B8F5 | Up: Map | Next: B92F |
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 |