Prev: 6CF5 Up: Map Next: 6F91
6DD3: Meteor Update
MeteorUpdate 6DD3 CALL StoreEntity
6DD6 LD HL,$5DCB HL=$5DCB.
6DD9 INC (HL)
6DDA LD A,(IX+$01)
6DDD BIT 6,(IX+$04)
6DE1 JR NZ,MeteorUpdate_3
6DE3 ADD A,(IX+$05)
MeteorUpdate_0 6DE6 LD (IX+$01),A
6DE9 LD A,(IX+$02)
6DEC ADD A,(IX+$06)
6DEF LD (IX+$02),A
6DF2 CALL $726A
6DF5 CALL ColouriseSprite
6DF8 CALL $761D
6DFB BIT 2,E
6DFD JR NZ,MeteorUpdate_2
6DFF CALL MeteorUpdate_9
6E02 LD A,C
6E03 AND A
6E04 JR NZ,MeteorUpdate_1
6E06 CALL MeteorUpdate_4
6E09 DEC E
6E0A JP Z,$648D
6E0D RET
MeteorUpdate_1 6E0E LD BC,$0025
6E11 CALL AddPointsToScore
MeteorUpdate_2 6E14 CALL EndAnimation
6E17 XOR A
6E18 JP ExplosionInitialise
MeteorUpdate_3 6E1B SUB (IX+$05)
6E1E JR MeteorUpdate_0
This entry point is used by the routines at 63DA, 6498, 651F, 6707, 6A6C, 6AEF, 6C2F and 6CF5.
MeteorUpdate_4 6E20 LD HL,$5D00
6E23 LD E,$00
6E25 LD A,(HL)
6E26 AND $3F
6E28 DEC A
6E29 JR Z,MeteorUpdate_5
6E2B DEC A
6E2C RET NZ
MeteorUpdate_5 6E2D INC HL
6E2E LD A,(HL)
6E2F SUB (IX+$01)
6E32 JP P,MeteorUpdate_6
6E35 NEG
MeteorUpdate_6 6E37 CP $0C
6E39 RET NC
6E3A INC HL
6E3B LD A,(HL)
6E3C SUB (IX+$02)
6E3F JP P,MeteorUpdate_7
6E42 NEG
6E44 LD D,(IX+$07)
6E47 ADD A,$0E
6E49 JR MeteorUpdate_8
MeteorUpdate_7 6E4B LD D,$15
MeteorUpdate_8 6E4D CP D
6E4E RET NC
6E4F LD E,$01
6E51 RET
This entry point is used by the routines at 63DA, 6A6C, 6AEF, 6C2F and 6CF5.
MeteorUpdate_9 6E52 LD DE,$0008
6E55 LD HL,$5D08
6E58 LD B,$04
MeteorUpdate_10 6E5A PUSH HL
6E5B LD A,(HL)
6E5C AND A
6E5D JR Z,MeteorUpdate_13
6E5F INC HL
6E60 INC HL
6E61 INC HL
6E62 LD A,(HL)
6E63 DEC HL
6E64 BIT 2,A
6E66 JR Z,MeteorUpdate_13
6E68 AND $F8
6E6A SUB (IX+$01)
6E6D JP P,MeteorUpdate_11
6E70 NEG
6E72 LD C,$08
6E74 JR MeteorUpdate_12
MeteorUpdate_11 6E76 LD C,$20
MeteorUpdate_12 6E78 CP C
6E79 JR NC,MeteorUpdate_13
6E7B DEC HL
6E7C LD A,(HL)
6E7D SUB (IX+$02)
6E80 NEG
6E82 JP M,MeteorUpdate_13
6E85 ADD A,$0C
6E87 CP (IX+$07)
6E8A JP NC,MeteorUpdate_13
6E8D LD C,$01
6E8F INC HL
6E90 LD A,(HL)
6E91 AND $F8
6E93 LD (HL),A
6E94 POP HL
6E95 RET
MeteorUpdate_13 6E96 POP HL
6E97 ADD HL,DE
6E98 DJNZ MeteorUpdate_10 Decrease B by one, and loop back to MeteorUpdate_10 until zero.
6E9A LD C,$00
6E9C RET
MeteorUpdate_14 6E9D LD A,B
6E9E EX AF,AF'
6E9F LD E,$00
6EA1 LD C,(HL)
6EA2 INC HL
6EA3 LD D,(HL)
6EA4 INC HL
6EA5 LD A,B
6EA6 AND A
6EA7 RET Z
MeteorUpdate_15 6EA8 SRL C
6EAA RR D
6EAC RR E
6EAE DJNZ MeteorUpdate_15 Decrease B by one, and loop back to MeteorUpdate_15 until zero.
6EB0 EX AF,AF'
6EB1 LD B,A
6EB2 RET
MeteorUpdate_16 6EB3 PUSH BC
6EB4 LD B,$08
MeteorUpdate_17 6EB6 RRCA
6EB7 RL C
6EB9 DJNZ MeteorUpdate_17 Decrease B by one, and loop back to MeteorUpdate_17 until zero.
6EBB LD A,C
6EBC POP BC
6EBD RET
MeteorUpdate_18 6EBE LD A,B
6EBF EX AF,AF'
6EC0 LD C,$00
6EC2 LD A,(HL)
6EC3 CALL MeteorUpdate_16
6EC6 LD E,A
6EC7 INC HL
6EC8 LD A,(HL)
6EC9 CALL MeteorUpdate_16
6ECC LD D,A
6ECD INC HL
6ECE LD A,B
6ECF AND A
6ED0 RET Z
MeteorUpdate_19 6ED1 SLA E
6ED3 RL D
6ED5 RL C
6ED7 DJNZ MeteorUpdate_19 Decrease B by one, and loop back to MeteorUpdate_19 until zero.
6ED9 EX AF,AF'
6EDA LD B,A
6EDB RET
MeteorUpdate_20 6EDC EXX
6EDD LD A,($5DD2)
6EE0 AND A
6EE1 JR Z,MeteorUpdate_22
6EE3 CALL MeteorUpdate_18
MeteorUpdate_21 6EE6 PUSH DE
6EE7 PUSH BC
6EE8 EXX
6EE9 POP DE
6EEA LD (HL),E
6EEB INC HL
6EEC POP DE
6EED LD (HL),D
6EEE INC HL
6EEF LD (HL),E
6EF0 INC HL
6EF1 DJNZ MeteorUpdate_20 Decrease B by one, and loop back to MeteorUpdate_20 until zero.
6EF3 RET
MeteorUpdate_22 6EF4 CALL MeteorUpdate_14
6EF7 JR MeteorUpdate_21
This entry point is used by the routines at RocketReset, PlayerReset and 651F.
MeteorUpdate_23 6EF9 LD C,A
6EFA LD A,($5DF0) A=ActivePlayer_Level
6EFD RRCA
6EFE AND $06
6F00 OR C
6F01 LD C,A
6F02 LD B,$00
6F04 LD HL,$67C3
6F07 ADD HL,BC
6F08 LD DE,$5ECC
6F0B LD A,$02
6F0D LD ($5DD3),A
6F10 XOR A
6F11 LD ($5DD2),A
6F14 LD C,$04
6F16 XOR A
MeteorUpdate_24 6F17 PUSH BC
6F18 LD B,A
6F19 LD C,$01
6F1B CALL MeteorUpdate_27
6F1E LD A,B
6F1F POP BC
6F20 DEC HL
6F21 DEC HL
6F22 DEC C
6F23 JR NZ,MeteorUpdate_24
6F25 RET
This entry point is used by the routine at 6929.
MeteorUpdate_25 6F26 LD BC,$0002
6F29 LD A,$04
6F2B LD ($5DD3),A
MeteorUpdate_26 6F2E XOR A
6F2F JR MeteorUpdate_30
6F31 LD BC,$0004
6F34 LD A,$02
6F36 LD ($5DD3),A
6F39 JR MeteorUpdate_26
6F3B LD BC,$0004
6F3E LD A,$02
6F40 JR MeteorUpdate_29
MeteorUpdate_27 6F42 PUSH HL
6F43 PUSH DE
6F44 PUSH BC
6F45 LD A,(HL)
6F46 INC HL
6F47 LD H,(HL)
6F48 LD L,A
6F49 INC HL
6F4A INC HL
6F4B JR MeteorUpdate_32
This entry point is used by the routine at 6929.
MeteorUpdate_28 6F4D LD BC,$0002
6F50 LD A,$04
MeteorUpdate_29 6F52 LD A,($5DD3)
6F55 LD A,$01
MeteorUpdate_30 6F57 LD ($5DD2),A
MeteorUpdate_31 6F5A PUSH HL
6F5B PUSH DE
6F5C PUSH BC
6F5D LD A,(HL)
6F5E INC HL
6F5F LD H,(HL)
6F60 LD L,A
MeteorUpdate_32 6F61 PUSH HL
6F62 EX DE,HL
6F63 EXX
6F64 POP HL
6F65 POP BC
6F66 PUSH BC
6F67 LD A,(HL)
6F68 EX AF,AF'
6F69 INC HL
6F6A EXX
6F6B LD (HL),$00
6F6D INC HL
6F6E LD (HL),$03
6F70 INC HL
6F71 EX AF,AF'
6F72 CP $11
6F74 JR C,MeteorUpdate_33
6F76 LD A,$10
MeteorUpdate_33 6F78 LD (HL),A
6F79 INC HL
6F7A LD B,A
6F7B CALL MeteorUpdate_20
6F7E POP BC
6F7F POP HL
6F80 LD DE,$0033
6F83 ADD HL,DE
6F84 POP DE
6F85 EX DE,HL
6F86 INC HL
6F87 INC HL
6F88 LD A,($5DD3)
6F8B ADD A,B
6F8C LD B,A
6F8D DEC C
6F8E JR NZ,MeteorUpdate_31
6F90 RET
Prev: 6CF5 Up: Map Next: 6F91