| Gyruss | Routines |
| Prev: 88F3 | Up: Map | Next: 892B |
|
Used by the routine at handle_sprite_types_0E_11.
|
||||
| update_sprite_path | 88FE | LD A,(sprite_countdown) | ||
| 8901 | OR A | |||
| 8902 | RET NZ | |||
| 8903 | CALL maybe_create_enemy_shot | Create enemy shot | ||
| 8906 | LD L,(IX+$06) | Get path address | ||
| 8909 | LD H,(IX+$07) | ... | ||
| 890C | LD A,(IX+$03) | Get counter | ||
|
This entry point is used by the routine at L892B.
|
||||
| update_sprite_path_0 | 890F | SUB $10 | Decrement upper nybble | |
| 8911 | LD (IX+$03),A | Store again | ||
| 8914 | JR NC,move_animate_sprite_along_path | If upper nybble >= 1, then jump to move sprite | ||
|
This entry point is used by the routine at set_sprite_flags_to_18_if_match.
|
||||
| update_sprite_path_1 | 8916 | INC HL | Else increment path address | |
| 8917 | LD (IX+$06),L | Set path address | ||
| 891A | LD (IX+$07),H | ... | ||
| 891D | LD A,(HL) | Get path byte | ||
| 891E | CP $10 | If upper nybble >= 1 | ||
| 8920 | JR NC,L892B | Then jump ahead to update counter | ||
| 8922 | DEC A | Else decrement lower nybble | ||
| 8923 | JP M,set_sprite_flags_to_18_if_match | If negative then set sprite flag to $18 if path byte matches and return | ||
| 8926 | JR Z,set_sprite_flags_to_04 | If zero then set sprite flag to $04 and return | ||
| 8928 | JP set_sprite_flags_to_40 | If positive then set sprite flag to $40 and return | ||
| Prev: 88F3 | Up: Map | Next: 892B |