Prev: 9E64 Up: Map Next: 9F6A
9E72: Routine at 9E72
9E72 CALL StoreEntity Call StoreEntity.
9E75 CALL $AD93 Call AD93.
9E78 LD A,$20 Write 20 to 96AD.
9E7A LD ($96AD),A
9E7D LD A,(IX+$02)
9E80 AND A
9E81 JR NZ,$9E99
9E83 CALL $AFE8 Call AFE8.
9E86 LD BC,$171F BC=171F.
9E89 CALL $B81C Call B81C.
9E8C CALL $AAED Call AAED.
9E8F JP NZ,$AD28
9E92 SET 2,(IX+$00)
9E96 JP $AD46 Jump to AD46.
9E99 DEC A
9E9A LD (IX+$02),A
9E9D LD E,(IX+$03)
9EA0 LD D,(IX+$04)
9EA3 LD A,(IX+$00)
9EA6 RRCA
9EA7 AND %00000001 Keep only bit 0.
9EA9 LD D,A Store the result in D.
9EAA LD BC,$0F1C BC=0F1C.
9EAD CALL $AB36 Call AB36.
9EB0 JP $AD46 Jump to AD46.
9EB3 LD C,(IX+$01)
9EB6 PUSH BC
9EB7 CALL $A630 Call A630.
9EBA POP BC
9EBB LD A,(IX+$01)
9EBE CP C
9EBF CALL NZ,$9F06
9EC2 LD A,($9703)
9EC5 CP (IX+$01)
9EC8 RET NZ
9EC9 CALL StoreEntity Call StoreEntity.
9ECC LD A,$20 Write 20 to 96AD.
9ECE LD ($96AD),A
9ED1 LD A,(IX+$00)
9ED4 RRCA
9ED5 AND %00000001 Keep only bit 0.
9ED7 LD D,A
9ED8 LD BC,$0F1C BC=0F1C.
9EDB LD A,($96B5) If GameDelayTimer is not zero, jump to 9F01.
9EDE AND A
9EDF JR NZ,$9F01
9EE1 LD A,($9702)
9EE4 SUB $10
9EE6 CP $20
9EE8 JR NC,$9F01
9EEA CALL $AB36 Call AB36.
9EED JP NC,$AD5D
9EF0 RES 2,(IX+$00)
9EF4 CALL $ADA2 Call ADA2.
9EF7 LD (IX+$02),$0F
9EFB CALL $AD5D Call AD5D.
9EFE JP $BF17 Jump to BF17.
9F01 CALL $AB0E Call AB0E.
9F04 JR $9EED Jump to 9EED.
9F06 LD A,($9695)
9F09 AND $08
9F0B LD C,A
9F0C LD A,(IX+$00)
9F0F AND $F3
9F11 OR C
9F12 LD (IX+$00),A
9F15 RET
9F16 LD A,($9703)
9F19 CP (IX+$01)
9F1C RET NZ
9F1D CALL StoreEntity
9F20 LD A,($970D)
9F23 AND $0F
9F25 CP $0F
9F27 JR Z,$9F40
9F29 CALL $AD93
9F2C LD BC,$170F
9F2F CALL $AB3D
9F32 JP NC,$AD5D
9F35 LD A,$80
9F37 LD ($9704),A
9F3A CALL $BF17
9F3D JP $AD5D
9F40 LD A,($9705)
9F43 BIT 7,A
9F45 JR Z,$9F5D
9F47 LD (IX+$06),$E0
9F4B CALL $AFE8
9F4E LD A,E
9F4F CP $40
9F51 JP C,$AD5D
9F54 LD (IX+$03),E
9F57 CALL $AD93
9F5A JP $AD5D
9F5D LD (IX+$06),$20
9F61 CALL $AFE8
9F64 LD A,E
9F65 CP $C0
9F67 CCF
9F68 JR $9F51
Prev: 9E64 Up: Map Next: 9F6A