Routines |
Prev: 42726 | Up: Map | Next: 42810 |
Used by the routine at CopyFloatingHandToScreen.
|
||||
DrawFloatingHand | 42772 | PUSH HL | Stash HL on the stack. | |
42773 | EX AF,AF' | Exchange the AF register with the shadow AF register. | ||
On return from CalculateScreenBuffer HL will contain the screen buffer destination.
|
||||
42774 | CALL CalculateScreenBuffer | Call CalculateScreenBuffer. | ||
42777 | EX AF,AF' | Exchange the shadow AF register with the AF register. | ||
42778 | EX DE,HL | Exchange the DE and HL registers. | ||
42779 | POP HL | Restore HL from the stack. | ||
42780 | DEC E | Decrease E by one. | ||
42781 | LD B,8 | B=8. | ||
DrawFloatingHand_0 | 42783 | PUSH BC | Stash BC and DE on the stack. | |
42784 | PUSH DE | |||
42785 | LD C,A | C=A. | ||
42786 | LD B,0 | B=0. | ||
42788 | LDIR | LDIR. | ||
42790 | CP 8 | Jump to DrawFloatingHand_1 if A is equal to 8. | ||
42792 | JR Z,DrawFloatingHand_1 | |||
42794 | PUSH AF | Stash AF on the stack. | ||
42795 | LD C,A | C=A. | ||
42796 | LD A,8 | A=8. | ||
42798 | SUB C | A-=C. | ||
42799 | LD B,0 | B=0. | ||
42801 | LD C,A | C=A. | ||
42802 | POP AF | Restore AF from the stack. | ||
42803 | ADD HL,BC | HL+=BC. | ||
DrawFloatingHand_1 | 42804 | POP DE | Restore DE from the stack. | |
42805 | INC D | Increment D by one. | ||
42806 | POP BC | Restore BC from the stack. | ||
42807 | DJNZ DrawFloatingHand_0 | Decrease counter by one and loop back to DrawFloatingHand_0 until counter is zero. | ||
42809 | RET | Return. |
Prev: 42726 | Up: Map | Next: 42810 |