Prev: B77E Up: Map Next: BF59
B77F: Routine at B77F
Used by the routine at B6FD.
B77F LD A,($B77E) Jump to B7AA if *B77E is not equal to FF.
B782 CP $FF
B784 JR NZ,$B7AA
B786 LD HL,($B6D6) HL=*B6D6.
B789 LD A,L Return if HL is zero.
B78A OR H
B78B RET Z
B78C XOR A Write 00 to *B77E.
B78D LD ($B77E),A
B790 PUSH HL IX=HL (using the stack).
B791 POP IX
B793 LD L,(IX-$02) L=*IX-02.
B796 LD H,(IX-$01) H=*IX-01.
B799 LD ($B6D6),HL Write HL to *B6D6.
B79C LD L,(IX+$00) L=*IX+00.
B79F LD H,(IX+$01) H=*IX+01.
B7A2 CALL $A1C7 Call A1C7.
B7A5 INC HL Increment HL by two.
B7A6 INC HL
B7A7 PUSH HL IX=HL (using the stack).
B7A8 POP IX
B7AA LD A,(IX+$00) A=*IX+00.
B7AD INC IX Increment IX by one.
B7AF BIT 7,A Jump to B7CD if bit 7 of A is not set.
B7B1 JR Z,$B7CD
B7B3 LD D,A D=A.
B7B4 LD E,(IX+$00) E=*IX+00.
B7B7 INC IX Increment IX by one.
B7B9 AND %01110000 Keep only bits 4-6.
B7BB CP $60 Jump to B7C6 if A is equal to 60.
B7BD JR Z,$B7C6
B7BF CP $30 Jump to B7C6 if A is equal to 30.
B7C1 JR Z,$B7C6
B7C3 CP $20 Return if A is not equal to 20.
B7C5 RET NZ
B7C6 LD A,$FF Write FF to *B77E.
B7C8 LD ($B77E),A
B7CB AND A Set flags.
B7CC RET Return.
B7CD CP $20 Jump to B7F7 if A is less than 20.
B7CF JR C,$B7F7
B7D1 CP $60 Jump to B7DD if A is less than 60.
B7D3 JR C,$B7DD
B7D5 CALL GetCommonWord Call GetCommonWord.
B7D8 OR %00000001 Set bit 0.
B7DA LD A,$00 A=00.
B7DC RET Return.
B7DD AND %00011111 Keep only bits 0-4.
B7DF INC A Increment A by one.
B7E0 LD B,A B=A.
B7E1 PUSH IX HL=IX (using the stack).
B7E3 POP HL
B7E4 INC HL Increment HL by one.
B7E5 LD C,$00 C=00.
B7E7 CALL $A990 Call A990.
B7EA DJNZ $B7E7 Decrease counter by one and loop back to B7E7 until counter is zero.
B7EC PUSH HL IX=HL (using the stack).
B7ED POP IX
B7EF LD A,C A=C.
B7F0 AND A Jump to B7AA if HL is not equal to A.
B7F1 JR NZ,$B7AA
B7F3 DEC IX Decrease IX by one.
B7F5 JR $B7AA Jump to B7AA.
B7F7 CP $02
B7F9 JR NZ,$B807
B7FB LD E,(IX+$00)
B7FE LD D,(IX+$01)
B801 ADD IX,DE
B803 DEC IX
B805 JR $B7AA
B807 CP $0B
B809 JR NZ,$B834
B80B LD E,(IX+$00)
B80E LD D,(IX+$01)
B811 PUSH IX
B813 POP HL
B814 LD A,$02
B816 CALL $A11C
B819 LD (IX+$00),L
B81C LD (IX+$01),H
B81F PUSH HL
B820 LD HL,($B6D6)
B823 LD ($B6D6),IX
B827 LD (IX-$02),L
B82A LD (IX-$01),H
B82D POP HL
B82E ADD HL,DE
B82F PUSH HL
B830 POP IX
B832 JR $B803
B834 CP $1D
B836 JP C,$B7AA
B839 JP $B786
This entry point is used by the routines at B54A, B6DA and B6F0.
B83C POP IX
B83E LD B,$03
B840 LD E,(HL)
B841 INC HL
B842 LD D,(HL)
B843 INC HL
B844 PUSH DE
B845 DJNZ $B840
B847 POP HL
B848 EX (SP),HL
B849 PUSH HL
B84A JP (IX)
B84C LD HL,($B18A)
B84F PUSH HL
B850 LD HL,($B188)
B853 PUSH HL
B854 LD HL,($B186)
B857 PUSH HL
B858 LD HL,($B18C)
B85B PUSH HL
B85C LD HL,$686A
B85F CALL $A59F
B862 RET
B863 JP $C929
B866 NOP
B867 NOP
B868 NOP
B869 NOP
This entry point is used by the routine at DC6C.
B86A PUSH AF
B86B LD IX,$9FEE
B86F CALL $A0F7
B872 JR Z,$B8A8
B874 LD C,(IX+$00)
B877 LD B,(IX+$01)
B87A LD ($B868),BC
B87E LD L,(IX-$02)
B881 LD H,(IX-$01)
B884 LD ($9FEC),HL
B887 CALL $A1C7
B88A POP AF
B88B PUSH AF
B88C AND A
B88D JR Z,$B894
B88F CALL $B8AA
B892 JR Z,$B8A8
B894 LD BC,($B868)
B898 LD ($A02B),BC
B89C CALL $AE7F
B89F CP $C0
B8A1 JR NZ,$B89C
B8A3 LD HL,($A029)
B8A6 LD (HL),$90
B8A8 POP AF
B8A9 RET
B8AA LD HL,($B868)
B8AD LD ($A02B),HL
B8B0 XOR A
B8B1 LD ($A024),A
B8B4 LD HL,($9FF0)
B8B7 PUSH HL
B8B8 LD HL,$0000
B8BB LD ($9FF0),HL
B8BE CALL $AAB2
B8C1 JR Z,$B8C7
B8C3 CP $02
B8C5 JR NZ,$B904
B8C7 LD HL,($A02B)
B8CA LD A,(HL)
B8CB AND $F0
B8CD CP $C0
B8CF JR NZ,$B8BE
B8D1 LD (HL),$90
B8D3 LD A,$08
B8D5 CALL $A11C
B8D8 LD HL,($9FEE)
B8DB LD ($9FEE),IX
B8DF LD (IX-$02),L
B8E2 LD (IX-$01),H
B8E5 LD HL,($9FF0)
B8E8 LD (IX+$05),L
B8EB LD (IX+$06),H
B8EE POP HL
B8EF LD ($9FF0),HL
B8F2 XOR A
B8F3 LD (IX+$01),A
B8F6 LD A,($A034)
B8F9 LD (IX+$00),A
B8FC LD A,($A024)
B8FF LD (IX+$07),A
B902 XOR A
B903 RET
B904 PUSH AF
B905 CALL $D87D
B908 POP AF
B909 POP HL
B90A LD ($9FF0),HL
B90D RET
B90E CALL $B91F
B911 LD ($B866),IX
B915 LD E,(IX+$05)
B918 LD D,(IX+$06)
B91B PUSH DE
B91C POP IY
B91E RET
This entry point is used by the routine at CC37.
B91F LD IX,$9FF0
B923 CALL $A0F7
B926 JR Z,$B931
B928 LD A,($A036)
B92B CP (IX+$00)
B92E RET Z
B92F JR $B923
B931 OR $01
B933 RET
B934 NOP
B935 NOP
This entry point is used by the routine at ScriptInterpreter.
B936 PUSH IX
B938 PUSH IY
B93A PUSH HL
B93B LD ($B935),A
B93E CALL $B90E
B941 LD A,(IX+$07)
B944 CP $02
B946 JP Z,$BA20
B949 LD A,(IX+$01)
B94C CP $FF
B94E JR Z,$B98C
B950 LD A,($B935)
B953 LD ($B934),A
B956 LD A,(IX+$02)
B959 LD ($A01C),A
B95C LD C,(IX+$03)
B95F LD B,(IX+$04)
B962 LD ($B17E),BC
B966 CALL $B191
B969 JR Z,$B9B4
B96B LD IX,($B866)
B96F LD BC,($B17E)
B973 LD (IX+$03),C
B976 LD (IX+$04),B
B979 LD A,($A01C)
B97C LD (IX+$02),A
B97F AND A
B980 CALL Z,$B9CA
B983 LD A,$01
B985 POP HL
B986 POP IY
B988 POP IX
B98A AND A
B98B RET
B98C LD A,(IX+$02)
B98F CALL $CEDE
B992 LD ($A033),A
B995 LD A,(IX+$03)
B998 CALL $CEDE
B99B LD ($A034),A
B99E LD A,(IX+$04)
B9A1 CALL $CEDE
B9A4 LD ($A035),A
B9A7 CALL $B9FA
B9AA JR $B983
B9AC CALL $B9CA
B9AF JR NZ,$B9AC
B9B1 XOR A
B9B2 JR $B985
B9B4 LD A,($A01C)
B9B7 AND A
B9B8 JR Z,$B9AC
B9BA LD IX,($B866)
B9BE LD (IX+$02),$00
B9C2 CALL $B9CA
B9C5 JR Z,$B9B1
B9C7 JP $B93E
B9CA LD IX,($B866)
B9CE LD L,(IY-$02)
B9D1 LD H,(IY-$01)
B9D4 LD (IX+$05),L
B9D7 LD (IX+$06),H
B9DA PUSH IX
B9DC PUSH IY
B9DE POP IX
B9E0 CALL $A1C7
B9E3 POP IX
B9E5 LD A,L
B9E6 OR H
B9E7 JR Z,$B9F5
B9E9 PUSH HL
B9EA POP IY
B9EC BIT 6,(IY+$01)
B9F0 JR NZ,$B9CE
B9F2 OR $01
B9F4 RET
B9F5 CALL $B9FA
B9F8 XOR A
B9F9 RET
B9FA LD IY,$9FEE
B9FE PUSH IX
BA00 POP DE
BA01 CALL $A104
BA04 LD L,(IX-$02)
BA07 LD H,(IX-$01)
BA0A LD (IY-$02),L
BA0D LD (IY-$01),H
BA10 JP $A1C7
BA13 NOP
BA14 NOP
BA15 NOP
BA16 NOP
BA17 NOP
BA18 NOP
BA19 NOP
BA1A NOP
BA1B NOP
BA1C NOP
BA1D NOP
BA1E NOP
BA1F NOP
BA20 LD A,($A036)
BA23 LD HL,$BA67
BA26 CP $03
BA28 JR Z,$BA31
BA2A LD HL,$BB67
BA2D CP $02
BA2F JR NZ,$BA34
BA31 CALL $BA3E
BA34 LD A,$01
BA36 POP HL
BA37 POP IY
BA39 POP IX
BA3B AND A
BA3C SCF
BA3D RET
BA3E PUSH IX
BA40 XOR A
BA41 LD ($9FEB),A
BA44 LD E,(IX+$05)
BA47 LD D,(IX+$06)
BA4A PUSH DE
BA4B PUSH DE
BA4C POP IY
BA4E CALL $D1DB
BA51 POP IX
BA53 PUSH AF
BA54 CALL $A1AF
BA57 POP AF
BA58 POP IX
BA5A PUSH AF
BA5B CALL $B9FA
BA5E POP AF
BA5F RET
BA60 NOP
BA61 NOP
BA62 NOP
BA63 NOP
BA64 NOP
BA65 NOP
BA66 NOP
BA67 LD ($BA60),A
BA6A LD ($BA61),A
BA6D CALL $BD7E
BA70 JP C,$BBBE
BA73 JR Z,$BAA6
BA75 CALL $BD4B
BA78 JR NZ,$BA85
BA7A LD A,$01
BA7C CALL $BB46
BA7F LD ($BA65),IX
BA83 JR $BAAB
BA85 CALL $BD51
BA88 JR NZ,$BA9D
BA8A LD A,$02
BA8C BIT 5,(IX+$03)
BA90 JR NZ,$BA7C
BA92 CALL $D29D
BA95 CP $32
BA97 LD A,$03
BA99 JR C,$BA7C
BA9B JR $BAA6
BA9D CALL $D29D
BAA0 CP $46
BAA2 LD A,$04
BAA4 JR C,$BA7C
BAA6 CALL $AEA9
BAA9 JR NZ,$BA6D
BAAB LD A,($BA60)
BAAE AND A
BAAF JP Z,$BB3F
BAB2 LD A,($BA61)
BAB5 AND A
BAB6 JR Z,$BB16
BAB8 LD IX,$9FF6
BABC CALL $A0F7
BABF JR Z,$BAF5
BAC1 LD A,($BA62)
BAC4 CP (IX+$00)
BAC7 JR NZ,$BABC
BAC9 LD A,($BA63)
BACC CP (IX+$01)
BACF JR NZ,$BABC
BAD1 LD A,($BA64)
BAD4 CP (IX+$02)
BAD7 JR NZ,$BABC
BAD9 PUSH IY
BADB PUSH IX
BADD POP DE
BADE LD IY,$9FF4
BAE2 CALL $A104
BAE5 LD A,(IX-$02)
BAE8 LD (IY-$02),A
BAEB LD A,(IX-$01)
BAEE LD (IY-$01),A
BAF1 POP IY
BAF3 JR $BAFA
BAF5 LD A,$05
BAF7 CALL $A11C
BAFA LD A,($BA62)
BAFD LD HL,($BA63)
BB00 LD (IX+$00),A
BB03 LD (IX+$01),L
BB06 LD (IX+$02),H
BB09 LD HL,($9FF4)
BB0C LD ($9FF4),IX
BB10 LD (IX-$02),L
BB13 LD (IX-$01),H
BB16 LD A,($BA60)
BB19 CP $01
BB1B JR Z,$BB5C
BB1D CALL $D29D
BB20 CP $19
BB22 JR C,$BB3F
BB24 LD IX,$BA62
BB28 CALL $BD06
BB2B JR NZ,$BB3F
BB2D LD A,C
BB2E PUSH BC
BB2F CALL $A4BC
BB32 POP AF
BB33 PUSH HL
BB34 CALL $A4BC
BB37 PUSH HL
BB38 LD HL,$6F62
BB3B CALL $A59F
BB3E RET
BB3F LD HL,$6F54
BB42 CALL $A59F
BB45 RET
BB46 PUSH AF
BB47 LD A,$01
BB49 LD ($BA61),A
BB4C POP AF
BB4D LD ($BA60),A
BB50 LD HL,$BA19
BB53 LD DE,$BA62
BB56 LD BC,$0003
BB59 LDIR
BB5B RET
BB5C LD IX,($BA65)
BB60 LD L,(IX+$03)
BB63 LD H,(IX+$04)
BB66 JP (HL)
BB67 LD ($BA1D),A
BB6A LD ($BA1C),A
BB6D CALL $BD7E
BB70 JP C,$BBBE
BB73 CALL $BC21
BB76 JR Z,$BB7C
BB78 LD HL,$BA1C
BB7B INC (HL)
BB7C CALL $AEA9
BB7F JR NZ,$BB6D
BB81 LD A,($BA1C)
BB84 AND A
BB85 JR NZ,$BB8E
BB87 LD HL,$725F
BB8A CALL $A59F
BB8D RET
BB8E LD A,($BA1D)
BB91 AND A
BB92 JR Z,$BBC9
BB94 LD IX,($BA1E)
BB98 PUSH IX
BB9A CALL $BE5A
BB9D LD A,(IX+$03)
BBA0 AND $C0
BBA2 CP $80
BBA4 JR Z,$BBB1
BBA6 BIT 3,(IX+$03)
BBAA JR NZ,$BBB1
BBAC CALL $BE72
BBAF JR $BB9D
BBB1 POP IX
BBB3 JR NZ,$BBC4
BBB5 LD HL,$7295
BBB8 PUSH IX
BBBA CALL $A59F
BBBD RET
BBBE LD HL,$7243
BBC1 JP $A59F
BBC4 LD HL,$72A6
BBC7 JR $BBB8
BBC9 CALL $BC46
BBCC CALL $BC9C
BBCF LD A,B
BBD0 AND A
BBD1 JR NZ,$BBE5
BBD3 CALL $BC74
BBD6 AND A
BBD7 JR Z,$BBDE
BBD9 LD HL,$72BD
BBDC JR $BBB8
BBDE LD HL,$727E
BBE1 CALL $A59F
BBE4 RET
This entry point is used by the routine at 9D95.
BBE5 PUSH AF
BBE6 LD HL,$67FF
BBE9 CALL $A59F
BBEC POP AF
BBED CP $01
BBEF LD HL,$72D6
BBF2 CALL NZ,$A59F
BBF5 BIT 4,(IX+$03)
BBF9 JR Z,$BC1A
BBFB RES 1,(IX+$03)
BBFF PUSH IX
BC01 LD HL,$72E1
BC04 CALL $A59F
BC07 LD L,(IX+$04)
BC0A LD H,(IX+$05)
BC0D LD A,L
BC0E OR H
BC0F JP NZ,$A59F
BC12 LD A,$22
BC14 CALL $A9B7
BC17 JP $A414
BC1A LD L,(IX+$04)
BC1D LD H,(IX+$05)
BC20 JP (HL)
BC21 CALL $BD51
BC24 JR NZ,$BC2F
BC26 LD A,(IX+$03)
BC29 AND $C0
BC2B CP $80
BC2D JR Z,$BC31
BC2F XOR A
BC30 RET
BC31 LD ($BA1E),IX
BC35 CALL $BCC9
BC38 JR Z,$BC43
BC3A LD A,$01
BC3C LD ($BA1D),A
BC3F SET 0,(IX+$03)
BC43 OR $01
BC45 RET
This entry point is used by the routine at 9D95.
BC46 LD IX,$9965
BC4A LD HL,$0000
BC4D PUSH HL
BC4E LD A,(IX+$00)
BC51 CP $FF
BC53 JR Z,$BC68
BC55 BIT 0,(IX+$03)
BC59 JR Z,$BC63
BC5B BIT 5,(IX+$03)
BC5F JR NZ,$BC63
BC61 PUSH IX
BC63 CALL $BE5A
BC66 JR $BC4E
BC68 POP HL
BC69 LD A,H
BC6A OR L
BC6B RET Z
BC6C PUSH HL
BC6D POP IX
BC6F CALL $BCC9
BC72 JR $BC68
This entry point is used by the routine at 9D95.
BC74 LD IX,$9965
BC78 LD B,$00
BC7A LD A,(IX+$00)
BC7D CP $FF
BC7F JR Z,$BC96
BC81 BIT 0,(IX+$03)
BC85 JR Z,$BC91
BC87 CALL $BCC9
BC8A JR Z,$BC91
BC8C LD ($BA1E),IX
BC90 INC B
BC91 CALL $BE5A
BC94 JR $BC7A
BC96 LD A,B
BC97 LD IX,($BA1E)
BC9B RET
This entry point is used by the routine at 9D95.
BC9C LD IX,$9965
BCA0 LD B,$00
BCA2 LD A,(IX+$00)
BCA5 CP $FF
BCA7 JR Z,$BCC4
BCA9 BIT 0,(IX+$03)
BCAD JR Z,$BCBD
BCAF CALL $BCC9
BCB2 JR NZ,$BCBD
BCB4 LD A,B
BCB5 INC B
BCB6 AND A
BCB7 JR NZ,$BCBD
BCB9 LD ($BA1E),IX
BCBD PUSH BC
BCBE CALL $BE72
BCC1 POP BC
BCC2 JR $BCA2
BCC4 LD IX,($BA1E)
BCC8 RET
BCC9 BIT 2,(IX+$03)
BCCD JR Z,$BCDA
BCCF PUSH IX
BCD1 PUSH BC
BCD2 CALL $BF08
BCD5 POP BC
BCD6 POP IX
BCD8 JR Z,$BD03
BCDA BIT 5,(IX+$03)
BCDE JR Z,$BCE6
BCE0 SET 0,(IX+$03)
BCE4 JR $BD01
BCE6 SET 1,(IX+$03)
BCEA RES 0,(IX+$03)
BCEE BIT 4,(IX+$03)
BCF2 JR Z,$BD01
BCF4 LD L,(IX+$04)
BCF7 LD H,(IX+$05)
BCFA PUSH IX
BCFC CALL $D1DB
BCFF POP IX
BD01 XOR A
BD02 RET
BD03 OR $01
BD05 RET
BD06 PUSH IY
BD08 PUSH IX
BD0A POP IY
BD0C LD IX,$9FF6
BD10 CALL $A0F7
BD13 JR Z,$BD46
BD15 LD B,(IX+$02)
BD18 LD C,(IY+$02)
BD1B LD A,(IX+$00)
BD1E CP (IY+$00)
BD21 JR Z,$BD3E
BD23 LD C,(IY+$00)
BD26 CP (IY+$02)
BD29 JR Z,$BD3E
BD2B LD B,(IX+$00)
BD2E LD A,(IX+$02)
BD31 CP (IY+$02)
BD34 JR Z,$BD3E
BD36 LD C,(IY+$02)
BD39 CP (IY+$00)
BD3C JR NZ,$BD10
BD3E LD A,B
BD3F CP C
BD40 JR Z,$BD10
BD42 POP IY
BD44 XOR A
BD45 RET
BD46 OR $01
BD48 POP IY
BD4A RET
BD4B LD IX,$9A7D
BD4F JR $BD55
BD51 LD IX,$9965
BD55 LD A,(IX+$00)
BD58 CP $FF
BD5A JR Z,$BD66
BD5C CALL $BD69
BD5F JR Z,$BD68
BD61 CALL $BE5A
BD64 JR $BD55
BD66 OR $01
BD68 RET
BD69 LD A,($BA1A)
BD6C CP (IX+$01)
BD6F RET NZ
BD70 LD A,($BA19)
BD73 CP (IX+$00)
BD76 RET NZ
BD77 LD A,($BA1B)
BD7A CP (IX+$02)
BD7D RET
BD7E PUSH IY
BD80 POP HL
BD81 LD DE,$0018
BD84 ADD HL,DE
BD85 BIT 7,(IY+$19)
BD89 JR Z,$BD8E
BD8B LD HL,$9FF6
BD8E BIT 6,(IY+$19)
BD92 JR Z,$BD97
BD94 LD HL,$9FFC
BD97 LD DE,$B172
BD9A LD BC,$0006
BD9D LDIR
BD9F PUSH IY
BDA1 POP HL
BDA2 LD DE,$0008
BDA5 ADD HL,DE
BDA6 LD DE,$B178
BDA9 LD BC,$0006
BDAC LDIR
BDAE LD L,(IY+$00)
BDB1 LD A,(IY+$01)
BDB4 AND $0F
BDB6 LD H,A
BDB7 LD ($BA17),HL
BDBA PUSH IY
BDBC CALL $BDC2
BDBF POP IY
BDC1 RET
BDC2 CALL AdjustObjectTableForSum
BDC5 LD ($BA13),IX
BDC9 LD ($BA15),IX
BDCD LD DE,($BA17)
BDD1 LD HL,$994D
BDD4 LD B,$01
BDD6 LD A,(HL)
BDD7 INC HL
BDD8 OR (HL)
BDD9 DEC HL
BDDA RET Z
BDDB LD A,E
BDDC CP (HL)
BDDD JR NZ,$BDE5
BDDF INC HL
BDE0 LD A,D
BDE1 CP (HL)
BDE2 DEC HL
BDE3 JR Z,$BDEA
BDE5 INC HL
BDE6 INC HL
BDE7 INC B
BDE8 JR $BDD6
BDEA LD A,B
BDEB LD ($BA1A),A
BDEE LD A,$02
BDF0 LD ($A038),A
BDF3 CALL $BE3C
BDF6 CP $FF
BDF8 RET Z
BDF9 LD ($BA19),A
BDFC CALL $BE3C
BDFF CP $FF
BE01 JR NZ,$BE3A
BE03 LD A,($BA19)
BE06 CALL $BE22
BE09 CALL $BE4B
BE0C CP $FF
BE0E RET Z
BE0F LD ($BA1B),A
BE12 CALL $BE4B
BE15 CP $FF
BE17 JR NZ,$BE3A
BE19 LD A,($BA1B)
BE1C CALL $BE22
BE1F OR $01
BE21 RET
BE22 CALL $D237
BE25 PUSH IX
BE27 POP HL
BE28 BIT 6,(IX+$05)
BE2C LD DE,$9FF6
BE2F JR NZ,$BE34
BE31 LD DE,$9FFC
BE34 LD BC,$0006
BE37 LDIR
BE39 RET
BE3A SCF
BE3B RET
BE3C LD IX,($BA13)
BE40 LD HL,$B172
BE43 CALL $D36A
BE46 LD ($BA13),IX
BE4A RET
BE4B LD IX,($BA15)
BE4F LD HL,$B178
BE52 CALL $D36A
BE55 LD ($BA15),IX
BE59 RET
BE5A PUSH AF
BE5B LD DE,$0002
BE5E ADD IX,DE
BE60 ADD IX,DE
BE62 BIT 5,(IX-$01)
BE66 JR NZ,$BE6E
BE68 BIT 4,(IX-$01)
BE6C JR Z,$BE70
BE6E ADD IX,DE
BE70 POP AF
BE71 RET
BE72 PUSH AF
BE73 LD B,$00
BE75 LD C,(IX+$03)
BE78 CALL $BE5A
BE7B BIT 3,C
BE7D JR Z,$BE84
BE7F LD A,B
BE80 AND A
BE81 JR Z,$BE84
BE83 DEC B
BE84 BIT 2,C
BE86 JR Z,$BE8B
BE88 INC B
BE89 JR $BE75
BE8B LD A,B
BE8C AND A
BE8D JR NZ,$BE75
BE8F POP AF
BE90 RET
BE91 BIT 1,(IX+$03)
BE95 JR NZ,$BE72
BE97 LD A,(IX+$03)
BE9A AND $C0
BE9C CP $00
BE9E JR NZ,$BECD
BEA0 LD A,(IX+$00)
BEA3 PUSH IX
BEA5 CALL $D237
BEA8 BIT 7,(IX+$06)
BEAC POP IX
BEAE JR Z,$BE72
BEB0 LD A,(IX+$02)
BEB3 PUSH IX
BEB5 CALL $D237
BEB8 BIT 7,(IX+$06)
BEBC POP IX
BEBE JR Z,$BE72
BEC0 SET 1,(IX+$03)
BEC4 RES 0,(IX+$03)
BEC8 OR $01
BECA JP $BE72
BECD CP $80
BECF JR Z,$BE72
BED1 CP $40
BED3 JR NZ,$BEF6
BED5 LD A,(IX+$00)
BED8 PUSH IX
BEDA CALL $D237
BEDD BIT 6,(IX+$06)
BEE1 POP IX
BEE3 JR Z,$BE72
BEE5 LD A,(IX+$02)
BEE8 PUSH IX
BEEA CALL $D237
BEED BIT 6,(IX+$06)
BEF1 POP IX
BEF3 JP Z,$BE72
BEF6 BIT 2,(IX+$03)
BEFA JR Z,$BEC0
BEFC PUSH IX
BEFE CALL $BF08
BF01 POP IX
BF03 JR NZ,$BEC0
BF05 JP $BE72
BF08 CALL $BE5A
BF0B BIT 3,(IX+$03)
BF0F PUSH AF
BF10 CALL $BE91
BF13 JR NZ,$BF18
BF15 POP AF
BF16 XOR A
BF17 RET
BF18 POP AF
BF19 JR Z,$BF0B
BF1B RET
This entry point is used by the routine at A711.
BF1C LD A,(IX+$00)
BF1F CALL $A4BC
BF22 PUSH HL
BF23 POP IY
BF25 CALL $D3E8
BF28 CALL $BF45
BF2B JR Z,$BF3D
BF2D CALL $A887
BF30 LD A,(IX+$02)
BF33 CALL $A4BC
BF36 PUSH HL
BF37 POP IY
BF39 CALL $D3E8
BF3C RET
BF3D LD DE,$005D
BF40 CALL $A887
BF43 JR $BF30
BF45 LD A,(IX+$01)
BF48 AND A
BF49 RET Z
BF4A DEC A
BF4B LD E,A
BF4C LD D,$00
BF4E LD HL,$994D
BF51 ADD HL,DE
BF52 ADD HL,DE
BF53 LD E,(HL)
BF54 INC HL
BF55 LD D,(HL)
BF56 OR $01
BF58 RET
Prev: B77E Up: Map Next: BF59