![]() |
Routines |
| Prev: 47165 | Up: Map | Next: 47318 |
|
Used by the routine at Animation_OpponentThrowing.
|
||||
|
Self-modifying code:
|
||||
| Animation_Dog | 47217 | LD A,237 | Writes an extra LDI to 47338. |
|
| 47219 | LD (47338),A | |||
| 47222 | LD A,160 | |||
| 47224 | LD (47339),A | |||
| 47227 | LD B,7 | B=7. | ||
| 47229 | LD HL,18608 | HL=18608 (screen buffer location). | ||
| Animation_Dog_0 | 47232 | PUSH BC | Stash BC and HL on the stack. | |
| 47233 | PUSH HL | |||
| 47234 | LD DE,51388 | DE=Graphics_Dog_02. | ||
| 47237 | CALL Print_Dog_Frame_0 | Call Print_Dog_Frame_0. | ||
| 47240 | HALT | Halt operation (suspend CPU until the next interrupt). | ||
| 47241 | HALT | Halt operation (suspend CPU until the next interrupt). | ||
| 47242 | POP HL | Restore HL from the stack. | ||
| 47243 | PUSH HL | Stash HL on the stack. | ||
| 47244 | LD DE,51268 | DE=Graphics_Dog_01. | ||
| 47247 | CALL Print_Dog_Frame_0 | Call Print_Dog_Frame_0. | ||
| 47250 | HALT | Halt operation (suspend CPU until the next interrupt). | ||
| 47251 | HALT | Halt operation (suspend CPU until the next interrupt). | ||
| 47252 | POP HL | Restore HL from the stack. | ||
| 47253 | DEC L | Decrease L by one. | ||
| 47254 | POP BC | Restore BC from the stack. | ||
| 47255 | DJNZ Animation_Dog_0 | Decrease counter by one and loop back to Animation_Dog_0 until counter is zero. | ||
| 47257 | INC L | Increment L by four. | ||
| 47258 | INC L | |||
| 47259 | INC L | |||
| 47260 | INC L | |||
| 47261 | LD DE,51812 | DE=Graphics_Bar. | ||
| 47264 | LD B,24 | B=24. | ||
| Animation_Dog_1 | 47266 | LD A,(DE) | A=*DE. | |
| 47267 | LD (HL),A | Write A to *HL. | ||
| 47268 | INC DE | Increment DE by one. | ||
| 47269 | CALL NextScreenBufferLine | Call NextScreenBufferLine. | ||
| 47272 | DJNZ Animation_Dog_1 | Decrease counter by one and loop back to Animation_Dog_1 until counter is zero. | ||
|
Self-modifying code.
|
||||
| 47274 | XOR A | Writes NOP NOP to remove the extra LDI command. |
||
| 47275 | LD (47338),A | |||
| 47278 | LD (47339),A | |||
| 47281 | LD DE,51508 | Call Print_Dog_Frame with DE=Graphics_Dog_03. | ||
| 47284 | CALL Print_Dog_Frame | |||
| 47287 | LD DE,51604 | Call Print_Dog_Frame with DE=Graphics_Dog_04. | ||
| 47290 | CALL Print_Dog_Frame | |||
| 47293 | LD DE,51700 | Call Print_Dog_Frame with DE=Graphics_Dog_05. | ||
| 47296 | CALL Print_Dog_Frame | |||
| 47299 | LD DE,51700 | Call Print_Dog_Frame with DE=Graphics_Dog_05. | ||
| 47302 | CALL Print_Dog_Frame | |||
| 47305 | LD DE,51604 | Call Print_Dog_Frame with DE=Graphics_Dog_04. | ||
| 47308 | CALL Print_Dog_Frame | |||
| 47311 | LD DE,51508 | Call Print_Dog_Frame with DE=Graphics_Dog_03. | ||
| 47314 | CALL Print_Dog_Frame | |||
| 47317 | RET | Return. | ||
| Prev: 47165 | Up: Map | Next: 47318 |