63DA: Routine at 63DA
63DA |
LD HL,$5DCB |
63DD |
INC (HL) |
63DE |
CALL $6CE7 |
63E1 |
LD A,(IX+$04) |
63E4 |
LD HL,$0000 |
63E7 |
BIT 1,A |
63E9 |
JR NZ,$6423 |
63EB |
CALL $6408 |
63EE |
LD A,($5D02) |
63F1 |
SUB $0C |
63F3 |
CP (IX+$02) |
63F6 |
CALL Z,$640E |
63F9 |
LD A,($5DCC) |
63FC |
AND $40 |
63FE |
JR Z,$6404 |
6400 |
INC H |
6401 |
INC H |
6402 |
INC H |
6403 |
INC H |
6404 |
DEC H |
6405 |
DEC H |
6406 |
JR $643D |
6408 |
LD A,($5DCE) |
640B |
AND $1F |
640D |
RET NZ |
640E |
SET 1,(IX+$04) |
6412 |
LD C,A |
6413 |
LD A,($5DCC) |
6416 |
ADD A,C |
6417 |
AND $7F |
6419 |
OR $20 |
641B |
LD (IX+$05),A |
641E |
LD (IX+$03),$47 |
6422 |
RET |
6423 |
DEC (IX+$05) |
6426 |
JR Z,$6481 |
6428 |
LD A,$04 |
642A |
BIT 6,(IX+$00) |
642E |
JR Z,$6432 |
6430 |
NEG |
6432 |
LD L,A |
6433 |
LD A,($5D02) |
6436 |
CP (IX+$02) |
6439 |
JR C,$6404 |
643B |
JR $6400 |
643D |
LD A,(IX+$00) |
6440 |
AND $C0 |
6442 |
OR $03 |
6444 |
LD (IX+$00),A |
6447 |
LD A,(IX+$01) |
644A |
ADD A,L |
644B |
LD (IX+$01),A |
644E |
LD A,(IX+$02) |
6451 |
ADD A,H |
6452 |
LD (IX+$02),A |
6455 |
CALL $726A |
6458 |
CALL ColouriseSprite |
645B |
LD A,(IX+$02) |
645E |
CP $28 |
6460 |
JR C,$6481 |
6462 |
CALL MeteorUpdate_9 |
6465 |
BIT 0,C |
6467 |
JR NZ,$6481 |
6469 |
CALL $761D |
646C |
BIT 2,E |
646E |
JR NZ,$6481 |
6470 |
CALL MeteorUpdate_4 |
6473 |
DEC E |
6474 |
JR Z,$648D |
6476 |
LD A,(IX+$00) |
6479 |
AND $C0 |
647B |
OR $07 |
647D |
LD (IX+$00),A |
6480 |
RET |
6481 |
LD BC,$0055 |
6484 |
CALL AddPointsToScore |
6487 |
CALL SoundsThrusters |
648A |
JP EndAnimation |
648D |
CALL EndAnimation |
6490 |
LD A,$01 |
6492 |
CALL ExplosionInitialise |
6495 |
JP ObjectDeathExplosion |