Prev: 57997 Up: Map Next: 58235
58050: Routine at 58050
Used by the routine PLAY_GAME.
L58050 58050 LD HL,60237
58053 LD IX,60057
58057 LD B,104
58059 LD C,0
58061 LD E,C
L58050_0 58062 LD A,(HL)
58063 LD D,A
58064 INC HL
58065 RES 0,A
58067 CP 24
58069 JP NZ,L58050_2
58072 LD A,D
58073 CP E
58074 LD E,A
58075 JP NZ,L58050_1
58078 DEC IX
L58050_1 58080 LD (IX+0),C
58083 INC IX
L58050_2 58085 INC C
58086 LD A,C
58087 CP 56
58089 JR NZ,L58050_3
58091 LD C,80
58093 LD HL,60317
L58050_3 58096 DJNZ L58050_0
58098 LD (IX+0),255
This entry point is used by the routine PLAY_GAME.
L58050_4 58102 LD IX,60057
58106 LD C,(IX+0)
58109 LD B,0
58111 LD HL,60237
58114 ADD HL,BC
58115 LD A,(HL)
58116 CP 25
58118 JP NZ,L58050_5
58121 INC IX
L58050_5 58123 LD A,(IX+1)
58126 CP 255
58128 RET Z
58129 LD A,(IX+0)
58132 CP 255
58134 RET Z
58135 RLA
58136 AND 14
58138 ADD A,2
58140 LD D,A
58141 LD A,(IX+0)
58144 RRA
58145 RRA
58146 AND 30
58148 ADD A,3
58150 LD E,A
58151 LD A,(59786)
58154 SRL A
58156 XOR 1
58158 ADD A,E
58159 LD E,A
58160 LD HL,60387 Point HL at SCREEN_BUFFER
58163 ADD HL,DE
58164 LD A,(IX+1)
58167 SUB (IX+0)
58170 DEC A
58171 RLA
58172 RLA
58173 AND 28
58175 LD B,A
58176 LD A,(59786)
58179 RRCA
58180 RRCA
58181 RRCA
58182 AND 96
58184 LD E,A
58185 LD D,0
58187 ADD HL,DE
58188 LD DE,128
58191 LD A,(59786)
58194 RRA
58195 JP NC,L58050_7
58198 LD C,24
L58050_6 58200 LD A,(HL)
58201 XOR C
58202 LD (HL),A
58203 ADD HL,DE
58204 DJNZ L58050_6
58206 INC IX
58208 INC IX
58210 JP L58050_5
L58050_7 58213 LD DE,127
L58050_8 58216 LD A,(HL)
58217 XOR 1
58219 LD (HL),A
58220 INC HL
58221 LD A,(HL)
58222 XOR 128
58224 LD (HL),A
58225 ADD HL,DE
58226 DJNZ L58050_8
58228 INC IX
58230 INC IX
58232 JP L58050_5
Prev: 57997 Up: Map Next: 58235