![]() |
Routines |
| Prev: 34310 | Up: Map | Next: 34356 |
|
Used by the routine at XORSpriteLoop.
Shift the next graphic pair of the new sprite and XOR it onto the screen, moving up one pixel. 34351 positions the actor and then continues at PositionAndDrawSprite_ClearWidth.
|
||||||||
|
Shift the next graphic pair into place and XOR it onto the screen.
|
||||||||
| PrepareSpriteWrite | 34324 | EX DE,HL | Load the next graphic pair from DE. | |||||
| 34325 | PUSH DE | |||||||
| 34326 | LD D,(HL) | |||||||
| 34327 | INC HL | |||||||
| 34328 | LD E,(HL) | |||||||
| 34329 | INC HL | |||||||
| 34330 | EX DE,HL | |||||||
| 34331 | XOR A | |||||||
| PrepareSpriteWrite_ShiftPair | 34332 | JR PrepareSpriteWrite_ShiftPair | Self-modifying shift. The operand is written by PositionSprite_StoreShift. | |||||
| 34334 | ADD HL,HL | Rotate the pair into pixel alignment. | ||||||
| 34335 | ADC A,A | |||||||
| 34336 | ADD HL,HL | |||||||
| 34337 | ADC A,A | |||||||
| 34338 | ADD HL,HL | |||||||
| 34339 | ADC A,A | |||||||
| 34340 | ADD HL,HL | |||||||
| 34341 | ADC A,A | |||||||
| 34342 | ADD HL,HL | |||||||
| 34343 | ADC A,A | |||||||
| 34344 | ADD HL,HL | |||||||
| 34345 | ADC A,A | |||||||
| 34346 | ADD HL,HL | |||||||
| 34347 | ADC A,A | |||||||
| 34348 | EX DE,HL | Switch the pair back and jump to ShiftOldSpritePair_XOR. | ||||||
| 34349 | JR ShiftOldSpritePair_XOR | |||||||
| 34351 | CALL PositionSprite_Apply | Apply the actor position, then continue at PositionAndDrawSprite_ClearWidth. | ||||||
| 34354 | JR PositionAndDrawSprite_ClearWidth | |||||||
| Prev: 34310 | Up: Map | Next: 34356 |