Prev: 44159 Up: Map Next: 44604
44474: Routine at ADBA
Used by the routines at Handler_Move_Characters and 44637.
44474 LD A,(IY+15) A=current room ID (*IY+15).
44477 CP (IY+90)
44480 JR NZ,44487
44482 LD (IY-20),1 Write 1 to *IY-20.
44486 RET Return.
44487 LD D,255 D=255.
44489 CALL 44137 Call 44137.
44492 LD A,(IY+15) A=current room ID (*IY+15).
44495 CALL 44592 Call 44592.
44498 OR A
44499 JR Z,44568
44501 LD A,(HL)
44502 CP 255
44504 JR Z,44582
44506 CALL 44592 Call 44592.
44509 CP 1
44511 JR Z,44522
44513 LD A,(HL)
44514 CP (IY+90)
44517 JR NZ,44576
44519 XOR A
44520 JR 44568 Jump to 44568.
44522 LD A,(HL)
44523 CP (IY+110)
44526 JR Z,44576
44528 EXX
44529 ADD A,A
44530 LD D,0 Create an offset in DE.
44532 LD E,A
44533 LD HL,44408 HL=44408+DE.
44536 ADD HL,DE
44537 LD C,(HL)
44538 INC HL
44539 LD B,(HL)
44540 LD A,(IY+90)
44543 ADD A,A
44544 LD E,A
44545 LD HL,44408
44548 ADD HL,DE
44549 LD A,C
44550 SUB (HL)
44551 JR NC,44555
44553 NEG
44555 LD C,A
44556 LD A,B
44557 INC HL
44558 SUB (HL)
44559 JR NC,44563
44561 NEG
44563 ADD A,C
44564 EXX
44565 CP D
44566 JR NC,44576
44568 LD D,A
44569 LD B,(HL)
44570 INC HL
44571 LD C,(HL)
44572 INC HL
44573 LD E,(HL)
44574 JR 44578
44576 INC HL
44577 INC HL
44578 INC HL
44579 JP 44501
44582 LD (IY+100),C
44585 LD (IY+105),B
44588 LD (IY+115),E
44591 RET
44592 EXX
44593 LD HL,44604
44596 ADD A,L
44597 JR NC,44600
44599 INC H
44600 LD L,A
44601 LD A,(HL)
44602 EXX
44603 RET
Prev: 44159 Up: Map Next: 44604