Prev: 36028 Up: Map Next: 36442
36102: Routine at 8D06
36102 CALL HandlerControls Call HandlerControls.
36105 BIT 1,A
36107 JP Z,36549
36110 BIT 0,A
36112 JP Z,36442
36115 LD A,(IX+5)
36118 AND A
36119 JR Z,36154
36121 JP P,36138
36124 ADD A,2
36126 CP 208
36128 JR C,36151
36130 CP 224
36132 JR NC,36151
36134 ADD A,16
36136 JR 36151 Jump to 36151.
36138 ADD A,254
36140 CP 64
36142 JR NC,36151
36144 CP 48
36146 JP C,36151
36149 SUB 16
This entry point is used by the routines at 36442 and 36549.
36151 LD (IX+5),A
This entry point is used by the routines at 36442 and 36549.
36154 CALL HandlerControls Call HandlerControls.
36157 LD B,A B=controls.
36158 LD A,(24719) If FuelLevel_2 is zero, jump to 36174.
36161 AND A
36162 JR Z,36174
36164 BIT 3,B
36166 JP Z,36660
36169 BIT 2,B
36171 JP Z,36705
36174 LD B,0
36176 LD A,(IX+6)
36179 AND A
36180 JP M,36187
36183 CP 64
36185 JR NC,36193
36187 LD C,8
This entry point is used by the routine at 36660.
36189 ADD A,C
36190 LD (IX+6),A
This entry point is used by the routine at 36660.
36193 LD A,(IX+6)
36196 SRA A
36198 SRA A
36200 SRA A
36202 SRA A
36204 ADD A,(IX+4)
36207 CP 64
36209 JP C,36705
36212 CP 176
36214 JR C,36240
36216 CALL 37307
36219 LD A,D
36220 AND A
36221 JR Z,36234
36223 LD A,E
36224 AND A
36225 JR Z,36234
36227 LD A,E
36228 OR D
36229 BIT 3,A
36231 JP Z,36852
36234 LD (IX+6),224
36238 LD A,175
36240 LD (IX+4),A
This entry point is used by the routine at 36705.
36243 LD A,(IX+5)
36246 AND A
36247 JP P,36252
36250 NEG
36252 SRA A
36254 ADD A,B
36255 SLA A
36257 LD C,A
36258 LD B,0
36260 LD HL,(24718) HL=FuelLevel_1.
36263 LD A,H If jetmans fuel has run out, jump to 36283.
36264 OR L
36265 JR Z,36283
36267 AND A Reset flags.
Subtract the fuel expenditure from the current fuel level.
36268 SBC HL,BC HL=HL-BC.
36270 LD A,H If there's any fuel remaining, jump to 36283.
36271 AND A
36272 JR NZ,36283
36274 LD DE,47661 DE=47661.
36277 CALL 47548 Call 47548.
36280 LD HL,0 Write 0000 to FuelLevel_1.
36283 LD (24718),HL
36286 LD A,H A=H.
36287 LD HL,4160 HL=4160.
36290 CALL DrawGauge Call DrawGauge.
This entry point is used by the routine at 36028.
36293 CALL 36987 Call 36987.
36296 LD A,(24130) A=24130.
36299 AND %00000011 Keep bits 0-1.
36301 LD C,A Store the result in C.
36302 LD A,(IX+0) A=IX+0.
36305 DEC A Decrease A by one.
36306 AND %11111100 Keep only bits 2-7.
36308 OR C Set the bits from C.
36309 INC A Increment A by one.
36310 LD (IX+0),A Write A back to IX+0.
This entry point is used by the routines at 36028, 36852 and 36869.
36313 CALL 34561 Call 34561.
36316 CALL 34611 Call 34611.
36319 CALL HandlerControls Call HandlerControls.
36322 BIT 4,A
36324 CALL Z,Handler_LaserBeam
36327 LD A,(65364) A=65364.
36330 CP 81
36332 JR NZ,36359
36334 LD A,(24128) A=24128.
36337 AND %01111111 Keep only bits 0-6.
36339 JR NZ,36359
36341 LD A,(24130) A=24130.
36344 AND %00001110 Keep only bits 1-3.
36346 LD C,A
36347 LD B,0
36349 LD HL,40368 HL=40368.
36352 ADD HL,BC
36353 LD E,(HL)
36354 INC HL
36355 LD D,(HL)
36356 CALL 47548 Call 47548.
36359 LD A,(IX+4)
36362 CP 168
36364 RET C
36365 LD HL,(24698)
36368 LD DE,(24722)
36372 AND A
36373 SBC HL,DE
36375 LD DE,12
36378 ADD HL,DE
36379 LD A,H
36380 AND 31
36382 RET NZ
36383 LD A,L
36384 CP 24
36386 RET NC
36387 LD HL,36864
36390 LD (24718),HL
36393 BIT 0,(IX+8)
36397 RET NZ
36398 CALL 37980
36401 JR Z,36431
36403 LD HL,24816
36406 LD A,(HL)
36407 AND A
36408 RET NZ
36409 LD (HL),46
36411 LD DE,7
36414 ADD HL,DE
36415 LD (HL),67
36417 INC HL
36418 SET 0,(HL)
36420 INC HL
36421 INC HL
36422 LD (HL),0
36424 SET 0,(IX+8)
36428 JP 47293
36431 CALL 37694
36434 RET Z
36435 CALL 34356
36438 CALL 37644
36441 RET
Prev: 36028 Up: Map Next: 36442