Prev: F5D1 Up: Map Next: F633
F607: Create an explosions in the Arcade room.
Used by the routines at Inv_BulletUpdate and Arcade_UpdateBombs.
Input
HL (Y,X) position on screen of new explosion.
Output
Arcade_CreateExplosions F607 PUSH HL
F608 PUSH DE
F609 PUSH BC
F60A EX DE,HL
F60B LD HL,Arcade_ExplosionSlots
Arcade_CreateExplosions_0 F60E LD A,(HL)
F60F CP $FE Check for end of slots.
F611 JR NZ,Arcade_CreateExplosions_2
Arcade_CreateExplosions_1 F613 CALL FX_WhiteNoise
F616 POP BC
F617 POP DE
F618 POP HL
F619 RET
Arcade_CreateExplosions_2 F61A CP $FF Find an empty slot.
F61C JR Z,Arcade_CreateExplosions_3
F61E INC HL Move onto next slot.
F61F INC HL
F620 INC HL
F621 JR Arcade_CreateExplosions_0
Arcade_CreateExplosions_3 F623 LD (HL),E Store position in new slot.
F624 INC HL
F625 LD (HL),D
F626 INC HL
F627 LD A,$9F Store bitmap index for exaplosion.
F629 LD (HL),A
F62A EX DE,HL
F62B LD (BitmapX),HL
F62E CALL Bitmap16Draw
F631 JR Arcade_CreateExplosions_1
Prev: F5D1 Up: Map Next: F633