![]() |
Routines |
| Prev: 54800 | Up: Map | Next: 54884 |
|
Door frames 2 and 3 both contain a "section" of a game character. This is copied into a buffer by first drawing the game character fully to Door_Buffer. Then the door frame is drawn over the top (in the correct position).
|
||||
|
Draws the game character together with door frame 2.
|
||||
| Character_Door_Frame_02 | 54814 | CALL Character_Address | On entry A points to a character index. The call to Character_Address translates this to the memory location of the character frame data (held in HL) and then calls Door_Buffer_Copy. | |
| 54817 | CALL Door_Buffer_Copy | |||
| Door_Frame_02_Copy | 54820 | LD HL,48360 | Copies Door_Frame_02 into the Door_Buffer (+2 bytes ~ $EA92). | |
| 54823 | LD DE,60050 | |||
| 54826 | LD B,88 | |||
| Door_Frame_02_Copy_Loop | 54828 | PUSH BC | ||
| 54829 | LD BC,5 | |||
| 54832 | LDIR | |||
| 54834 | INC DE | |||
| 54835 | INC DE | |||
| 54836 | POP BC | |||
| 54837 | DJNZ Door_Frame_02_Copy_Loop | |||
| 54839 | RET | Return. | ||
|
Draws the game character together with door frame 3.
|
||||
| Character_Door_Frame_03 | 54840 | CALL Character_Address | On entry A points to a character index. The call to Character_Address translates this to the memory location of the character frame data (held in HL) and then calls Door_Buffer_Copy. | |
| 54843 | CALL Door_Buffer_Copy | |||
| Door_Frame_03_Copy | 54846 | LD HL,48800 | Copies Door_Frame_03 into the Door_Buffer (+4 bytes ~ $EA94). | |
| 54849 | LD DE,60052 | |||
| 54852 | LD B,88 | |||
| Door_Frame_03_Copy_Loop | 54854 | PUSH BC | ||
| 54855 | LD BC,3 | |||
| 54858 | LDIR | |||
| 54860 | INC DE | |||
| 54861 | INC DE | |||
| 54862 | INC DE | |||
| 54863 | INC DE | |||
| 54864 | POP BC | |||
| 54865 | DJNZ Door_Frame_03_Copy_Loop | |||
| 54867 | RET | Return. | ||
|
Draws the game character alone to the door frame buffer.
|
||||
| Door_Buffer_Copy | 54868 | LD DE,60048 | Draws a character into the Door_Buffer. | |
| 54871 | LD B,88 | |||
| Door_Buffer_Copy_Loop | 54873 | PUSH BC | ||
| 54874 | LD BC,6 | |||
| 54877 | LDIR | |||
| 54879 | INC DE | |||
| 54880 | POP BC | |||
| 54881 | DJNZ Door_Buffer_Copy_Loop | |||
| 54883 | RET | |||
| Prev: 54800 | Up: Map | Next: 54884 |