|  | Routines | 
| Prev: 43123 | Up: Map | Next: 43182 | 
| 
Used by the routines at Animation_OpponentThrowing, 45724, 45890, 46006, InitialiseOpponent and Animation_ThrowingDart.
 | ||||
| 43125 | PUSH HL | Stash HL and BC on the stack. | ||
| 43126 | PUSH BC | |||
| 43127 | LD C,E | C=E. | ||
| 43128 | LD B,8 | B=8. | ||
| 43130 | LD DE,(43121) | DE=*43121. | ||
| 43134 | LD HL,(43123) | HL=*43123. | ||
| 43137 | LD A,E | A=E. | ||
| 43138 | AND %01001000 | Keep only bits 3, 6. | ||
| 43140 | ADD A,56 | A+=56. | ||
| 43142 | RLA | RLA. | ||
| 43143 | RLA | |||
| 43144 | RL H | Rotate H left. | ||
| 43146 | RL L | Rotate L left. | ||
| 43148 | RL D | Rotate D left. | ||
| 43150 | RL E | Rotate E left. | ||
| 43152 | DJNZ 43137 | Decrease counter by one and loop back to 43137 until counter is zero. | ||
| 43154 | LD (43121),DE | Write DE to *43121. | ||
| 43158 | LD (43123),HL | Write HL to *43123. | ||
| 43161 | LD A,E | A=E. | ||
| 43162 | LD E,C | E=C. | ||
| 43163 | LD D,0 | D=0. | ||
| 43165 | LD HL,0 | HL=0000. | ||
| 43168 | LD B,8 | B=8. | ||
| 43170 | ADD HL,HL | HL+=HL. | ||
| 43171 | RLC A | Rotate A left (with carry). | ||
| 43173 | JR NC,43176 | Jump to 43176 if the result is greater than or equal to 8. | ||
| 43175 | ADD HL,DE | HL+=DE. | ||
| 43176 | DJNZ 43170 | Decrease counter by one and loop back to 43170 until counter is zero. | ||
| 43178 | LD A,H | A=H. | ||
| 43179 | POP BC | Restore BC and HL from the stack. | ||
| 43180 | POP HL | |||
| 43181 | RET | Return. | ||
| Prev: 43123 | Up: Map | Next: 43182 |