Prev: 9DE0 Up: Map Next: A172
9F50: INTERO
Used by the routine at main_routine.
INTERO 9F50 LD HL,map_object_table
9F53 LD (object_table_entry_pointer),HL
9F56 CALL WALKYS
9F59 LD B,$9F
INTERO_0 9F5B PUSH BC
9F5C LD HL,(object_table_entry_pointer)
9F5F LD (D_ADD),HL
9F62 LD DE,$01E1
9F65 ADD HL,DE
9F66 BIT 7,(HL)
9F68 JP NZ,INTERO_10
9F6B LD HL,(D_ADD)
9F6E LD A,(HL)
9F6F CP $22
9F71 JP M,INTERO_10
9F74 CP $24
9F76 JP P,INTERO_10
9F79 LD DE,$01E1
9F7C ADD HL,DE
9F7D LD A,(HL)
9F7E AND $07
9F80 LD (current_player),A
9F83 CALL get_random
9F86 CP $09
9F88 JP P,INTERO_6
9F8B LD HL,(D_ADD)
9F8E LD A,(HL)
9F8F CP $23
9F91 JR Z,INTERO_1
9F93 CALL get_random
9F96 CP $08
9F98 JP P,INTERO_6
INTERO_1 9F9B CALL get_random
9F9E CP $08
9FA0 JP P,INTERO_1
9FA3 LD HL,SPATAB
9FA6 LD D,$00
9FA8 SLA A
9FAA LD E,A
9FAB ADD HL,DE
9FAC LD (SPADAT),HL
9FAF CALL ADSPA
9FB2 LD HL,(D_ADD)
9FB5 LD A,H
9FB6 ADD A,L
9FB7 JP Z,INTERO_10
9FBA CALL routine10
9FBD LD A,(total_distance)
9FC0 CP $04
9FC2 JP P,INTERO_10
9FC5 LD HL,(D_ADD)
9FC8 LD A,(HL)
9FC9 OR A
9FCA JP Z,INTERO_5
9FCD CP $29
9FCF JP P,INTERO_2
9FD2 CP $26
9FD4 JP P,INTERO_6
9FD7 CP $24
9FD9 JP Z,INTERO_6
9FDC LD DE,$0141
9FDF ADD HL,DE
9FE0 LD A,(HL)
9FE1 CP $04
9FE3 JP Z,INTERO_5
9FE6 LD DE,$00A0
9FE9 ADD HL,DE
9FEA LD A,(HL)
9FEB AND $07
9FED LD HL,current_player
9FF0 CP (HL)
9FF1 JP Z,INTERO_10
9FF4 LD HL,(D_ADD)
9FF7 LD A,(HL)
9FF8 CP $16
9FFA JP P,INTERO_3
9FFD CP $10
9FFF JP M,INTERO_3
A002 CP $29
A004 JP P,INTERO_2
A007 LD DE,$0281
A00A ADD HL,DE
A00B LD A,(HL)
A00C CP $29
A00E JP M,INTERO_3
INTERO_2 A011 LD HL,current_player
A014 SUB $29
A016 CP (HL)
A017 JP Z,INTERO_10
A01A ADD A,$29
A01C LD HL,(object_table_entry_pointer)
A01F PUSH HL
A020 LD HL,(D_ADD)
A023 LD DE,$0281
A026 ADD HL,DE
A027 LD (HL),$00
A029 LD HL,(D_ADD)
A02C LD (object_table_entry_pointer),HL
A02F LD (HL),A
A030 CALL routine50
A033 CALL WIZKIL
A036 POP HL
A037 LD (object_table_entry_pointer),HL
A03A JP INTERO_5
INTERO_3 A03D LD HL,(object_table_entry_pointer)
A040 LD A,(HL)
A041 CP $23
A043 JR Z,INTERO_4
A045 LD HL,(D_ADD)
A048 LD A,(HL)
A049 CP $23
A04B JP P,INTERO_6
A04E LD DE,$0141
A051 ADD HL,DE
A052 LD A,(HL)
A053 CP $04
A055 JR Z,INTERO_5
A057 LD HL,(D_ADD)
A05A LD A,(HL)
A05B LD DE,$0281
A05E ADD HL,DE
A05F LD (HL),A
A060 LD DE,$00A0
A063 SBC HL,DE
A065 LD A,(HL)
A066 AND $07
A068 LD DE,$0140
A06B ADD HL,DE
A06C LD (HL),A
A06D JR INTERO_5
A06F LD HL,sound_effect_05
A072 LD (sound_effect_pointer),HL
INTERO_4 A075 LD HL,(D_ADD)
A078 LD D,(HL)
A079 LD E,$10
A07B CALL GETCHR
A07E LD (STRENG),A
A081 CALL get_random
A084 LD HL,STRENG
A087 ADD A,(HL)
A088 LD (HL),A
A089 CALL get_random
A08C ADD A,$05
A08E LD HL,STRENG
A091 CP (HL)
A092 JP P,INTERO_6
A095 LD HL,sound_effect_06
A098 LD (sound_effect_pointer),HL
INTERO_5 A09B LD HL,(object_table_entry_pointer)
A09E LD A,(HL)
A09F LD HL,(D_ADD)
A0A2 LD (HL),A
A0A3 LD DE,$0141
A0A6 ADD HL,DE
A0A7 LD (HL),$00
A0A9 LD DE,$00A0
A0AC ADD HL,DE
A0AD LD A,(current_player)
A0B0 ADD A,$80
A0B2 LD (HL),A
A0B3 LD HL,(object_table_entry_pointer)
A0B6 ADD HL,DE
A0B7 SET 7,(HL)
A0B9 LD HL,(object_table_entry_pointer)
A0BC LD (D_ADD),HL
A0BF CALL routine50
A0C2 CALL play_sound_effect_pointer
A0C5 EI
INTERO_6 A0C6 CALL get_random
A0C9 CP $02
A0CB JP P,INTERO_10
A0CE LD HL,(D_ADD)
A0D1 LD A,(HL)
A0D2 CP $23
A0D4 JR Z,INTERO_7
A0D6 CALL get_random
A0D9 CP $03
A0DB JP P,INTERO_10
INTERO_7 A0DE LD HL,(object_table_entry_pointer)
A0E1 LD DE,$0281
A0E4 ADD HL,DE
A0E5 LD A,(HL)
A0E6 OR A
A0E7 JR Z,INTERO_8
A0E9 LD (HL),$00
A0EB LD HL,(object_table_entry_pointer)
A0EE LD (HL),A
A0EF LD DE,$0321
A0F2 ADD HL,DE
A0F3 LD A,(HL)
A0F4 LD (HL),$00
A0F6 LD DE,$0140
A0F9 SBC HL,DE
A0FB LD (HL),A
A0FC JR INTERO_9
INTERO_8 A0FE LD HL,(object_table_entry_pointer)
A101 LD (HL),$01
A103 LD DE,$0321
A106 ADD HL,DE
A107 LD (HL),$00
INTERO_9 A109 CALL routine50
A10C LD HL,sound_effect_07
A10F CALL play_sound_effect_in_HL
A112 EI
A113 HALT
INTERO_10 A114 POP BC
A115 LD HL,(object_table_entry_pointer)
A118 INC HL
A119 LD (object_table_entry_pointer),HL
A11C DEC B
A11D JP NZ,INTERO_0
A120 LD HL,map_object_table
A123 LD (object_table_entry_pointer),HL
A126 LD B,$9F
INTERO_11 A128 PUSH BC
A129 LD HL,(object_table_entry_pointer)
A12C LD A,(HL)
A12D CP $26
A12F JP M,INTERO_13
A132 CP $28
A134 JP P,INTERO_13
A137 CALL get_random
A13A CP $02
A13C JP P,INTERO_13
A13F LD HL,(object_table_entry_pointer)
A142 LD DE,$0281
A145 ADD HL,DE
A146 LD A,(HL)
A147 LD (HL),$00
A149 OR A
A14A JR NZ,INTERO_12
A14C LD A,$01
INTERO_12 A14E LD HL,(object_table_entry_pointer)
A151 LD (HL),A
A152 CALL disbelieve_spell_4
A155 CALL routine50
INTERO_13 A158 POP BC
A159 LD HL,(object_table_entry_pointer)
A15C INC HL
A15D LD (object_table_entry_pointer),HL
A160 DJNZ INTERO_11
A162 LD HL,$E076
A165 LD (object_table_entry_pointer),HL
A168 LD (D_ADD),HL
A16B CALL routine53
A16E LD (cursor_coordinates),HL
A171 RET
Prev: 9DE0 Up: Map Next: A172