Prev: 38443 Up: Map Next: 39557
38579: Routine at 96B3
Used by the routine at 30673.
38579 PUSH HL
38580 PUSH IX
38582 PUSH IY
38584 PUSH BC
38585 PUSH DE
38586 CALL ActionClimbOut_22
38589 CALL 38926
38592 SUB A
38593 LD (46832),A
38596 INC A
38597 LD (46843),A
38600 LD (46842),A
38603 LD IY,51844
38607 LD A,(IY+0)
38610 CP 255
38612 JR Z,38683
38614 LD A,(IY+1)
38617 CP 0
38619 JR Z,38675
38621 DEC A
38622 LD (IY+1),A
38625 CP 0
38627 JR NZ,38654
38629 LD A,(46832)
38632 CP 1
38634 LD (IY+1),A
38637 JR Z,38654
38639 INC A
38640 LD (46832),A
38643 LD L,(IY+2)
38646 LD H,(IY+3)
38649 CALL TriggerAction
38652 JR 38675
38654 LD A,(IY+4)
38657 CP 0
38659 JR Z,38675
38661 CP (IY+1)
38664 JR C,38675
38666 LD L,(IY+5)
38669 LD H,(IY+6)
38672 CALL TriggerAction
38675 LD DE,7
38678 ADD IY,DE
38680 JP 38607
38683 LD A,1
38685 LD (46850),A
38688 POP DE
38689 POP BC
38690 POP IY
38692 POP IX
38694 POP HL
38695 RET
This entry point is used by the routine at Action_Examine.
38696 CP 255
38698 RET Z
38699 PUSH IX
38701 PUSH IY
38703 PUSH BC
38704 LD B,A
38705 LD A,(46826)
38708 CP 0
38710 JR Z,38715
38712 XOR A
38713 JR 38774
38715 LD A,B
38716 CALL LocateObject
38719 LD A,(IX+1)
38722 CP 255
38724 JR Z,38774
38726 LD A,B
38727 PUSH IX
38729 POP IY
38731 CALL 40059
38734 JR C,38774
38736 CALL LocateObject
38739 BIT 6,(IX+7)
38743 JR Z,38774
38745 LD A,(49442)
38748 BIT 7,A
38750 JR Z,38774
38752 LD L,(IY+8)
38755 LD H,(IY+9)
38758 PUSH HL
38759 LD L,(IX+8)
38762 LD H,(IX+9)
38765 PUSH HL
38766 LD HL,45028 HL="[0x04] is carrying[0x04][0x15]".
38769 CALL PrintMsg Call PrintMsg.
38772 OR 1
38774 POP BC
38775 POP IY
38777 POP IX
38779 RET
This entry point is used by the routine at ActionBurn.
38780 LD A,(46824)
This entry point is used by the routines at Action_Shoot, Action_Attack, ActionBurn and ActionClimbOut.
38783 AND A
38784 JP Z,YouAreDead
38787 PUSH BC
38788 PUSH IY
38790 PUSH IX
38792 LD C,A
38793 CALL LocateObject
38796 SET 3,(IX+7)
38800 CALL 40275
38803 LD A,C
38804 CALL 39557
38807 CP 255
38809 LD A,C
38810 JR Z,38816
38812 LD (IY+0),0
38816 CALL DisplayExits_6
38819 LD A,C
38820 CALL 32608
38823 POP IX
38825 POP IY
38827 POP BC
38828 RET
This entry point is used by the routine at SquiggleLine.
38829 SUB A
38830 LD (46826),A
38833 LD (46833),A
38836 LD (46841),A
38839 LD HL,49435
38842 LD (46860),HL
38845 LD A,4
38847 CALL GetRandomNum
38850 INC A
38851 LD B,A
38852 LD IY,51208
38856 LD DE,6
38859 ADD IY,DE
38861 DJNZ 38859
38863 LD (42961),IY
38867 LD L,(IY+1)
38870 LD H,(IY+2)
38873 LD B,3
38875 LD (HL),0
38877 INC HL
38878 DJNZ 38875
38880 LD A,3
38882 CALL GetRandomNum
38885 LD E,A
38886 LD D,0
38888 SLA E
38890 SLA E
38892 LD HL,51196
38895 ADD HL,DE
38896 LD (46830),HL
38899 RET
This entry point is used by the routine at ActionClimbOut.
38900 CALL PrintMsg
38903 LD A,46
38905 CALL 34187
38908 JP 34179
This entry point is used by the routines at ActionBurn, ActionCapture and ActionClimbOut.
38911 PUSH BC
38912 LD BC,(46842)
38916 LD A,C
38917 AND B
38918 JR NZ,38921
38920 POP BC
38921 POP BC
38922 RET
38923 NOP
38924 NOP
38925 NOP
38926 CALL Action_None
38929 LD IY,51915
38933 XOR A
38934 LD (38923),A
38937 LD A,(IY+0)
38940 CP 255
38942 JP Z,39177
38945 CP 0
38947 JP Z,39169
38950 LD (46826),A
38953 CALL ObjectFirstLocation
38956 LD (46860),IX
38960 LD (46838),A
38963 SUB A
38964 LD (46850),A
38967 LD A,(IY+0)
38970 PUSH IY
38972 LD IY,49435
38976 CALL 40485
38979 POP IY
38981 JR Z,39016
38983 LD A,(38924)
38986 CP 2
38988 JR Z,39016
38990 LD A,1
38992 LD (46850),A
38995 LD A,(38924)
38998 CP 1
39000 JR NZ,39016
39002 INC A
39003 LD (38924),A
39006 LD HL,45095
39009 CALL PrintMsg
39012 SUB A
39013 LD (46850),A
39016 LD A,255
39018 CP (IX+1)
39021 JP NZ,39702
This entry point is used by the routine at 39702.
39024 LD IX,(46860)
39028 CALL 32528
39031 LD A,0
39033 JR NZ,39036
39035 INC A
39036 LD (46836),A
39039 LD L,(IY+2)
39042 LD H,(IY+3)
39045 LD A,(38923)
39048 CP 6
39050 JR Z,39169
39052 LD A,(HL)
39053 LD DE,4
39056 PUSH HL
39057 POP IX
39059 AND 15
39061 CP 5
39063 JR NC,39115
39065 LD A,(46836)
39068 CP 1
39070 JR NZ,39103
39072 BIT 6,(HL)
39074 JR NZ,39103
39076 SUB A
39077 LD (46836),A
39080 INC A
39081 CALL 32538
39084 JR Z,39103
39086 LD A,1
39088 LD (46842),A
39091 LD (46843),A
39094 LD HL,39169
39097 PUSH HL
39098 PUSH IX
39100 JP 39374
39103 LD A,(HL)
39104 AND 15
39106 CP 4
39108 JP Z,39284
39111 JR C,39208
39113 JR 39169
39115 CP 14
39117 JR NZ,39133
39119 LD E,(IX+1)
39122 LD (IY+2),E
39125 LD E,(IX+2)
39128 LD (IY+3),E
39131 JR 39039
39133 CP 12
39135 JR NZ,39148
39137 LD B,(IX+1)
39140 LD A,(IY+0)
39143 CALL 39584
39146 JR 39039
39148 CP 15
39150 JR NZ,39157
39152 CALL 39513
39155 JR 39039
39157 CP 0
39159 JR NZ,39164
39161 ADD HL,DE
39162 JR 39045
39164 SUB A
39165 LD E,A
39166 CALL 39528
This entry point is used by the routine at 39702.
39169 LD DE,7
39172 ADD IY,DE
39174 JP 38933
39177 SUB A
39178 LD (46826),A
39181 INC A
39182 LD (46850),A
39185 LD HL,49435
39188 LD (46860),HL
39191 RET
39192 ADD HL,DE
39193 BIT 4,(IX+0)
39197 JR Z,39201
39199 INC HL
39200 INC HL
39201 LD (IY+2),L
39204 LD (IY+3),H
39207 RET
39208 CALL 39192
39211 BIT 0,(IX+0)
39215 JR NZ,39242
39217 LD A,(IX+1)
39220 LD (46823),A
39223 LD A,(IX+2)
39226 LD (46824),A
39229 LD A,(IX+3)
39232 LD (46825),A
39235 CALL 39366
39238 JR Z,39338
39240 JR 39271
39242 LD L,(IX+1)
39245 LD H,(IX+2)
39248 SUB A
39249 LD (46842),A
39252 LD (46843),A
39255 CALL TriggerAction
39258 LD A,(46843)
39261 CP 1
39263 JR NZ,39338
39265 LD (46842),A
39268 CALL TriggerAction
39271 BIT 5,(IX+0)
39275 JP Z,39169
39278 LD (IX+0),0
39282 JR 39169
39284 LD DE,2
39287 CALL 39192
39290 LD A,(IX+1)
39293 CP 255
39295 JR Z,39316
39297 LD (46823),A
39300 LD A,255
39302 LD (46824),A
39305 LD (46825),A
39308 CALL 39366
39311 JR Z,39338
39313 JP 39169
39316 BIT 4,(IX+0)
39320 JP Z,39169
39323 LD L,(IX+2)
39326 LD H,(IX+3)
39329 LD (IY+2),L
39332 LD (IY+3),H
39335 JP 39169
39338 LD HL,38923
39341 INC (HL)
39342 BIT 4,(IX+0)
39346 JP Z,39039
39349 ADD IX,DE
39351 LD H,(IX+1)
39354 LD L,(IX+0)
39357 LD (IY+2),L
39360 LD (IY+3),H
39363 JP 39045
This entry point is used by the routine at 39702.
39366 PUSH IX
39368 CALL 31477
39371 JP Z,39510
39374 LD A,(46846)
39377 CP 1
39379 JR Z,39474
39381 LD A,(46823)
39384 CP 30
39386 JR NZ,39397
39388 LD A,(46838)
39391 LD HL,49451
39394 CP (HL)
39395 JR NZ,39474
39397 LD A,(46824)
39400 CP 255
39402 JR Z,39467
39404 CALL ObjectFirstLocation
39407 LD (38925),A
39410 CP 255
39412 JR NZ,39467
39414 LD BC,(46837)
39418 LD A,C
39419 CP B
39420 JR Z,39467
39422 LD B,(IX+0)
39425 CP (IX+16)
39428 JR Z,39436
39430 INC IX
39432 DJNZ 39425
39434 JR 39467
39436 LD A,(46826)
39439 LD B,A
39440 LD A,255
39442 LD (46826),A
39445 LD A,1
39447 LD (46850),A
39450 PUSH IY
39452 CALL 28971
39455 POP IY
39457 SUB A
39458 LD (46850),A
39461 LD A,B
39462 LD (46826),A
39465 JR 39474
39467 PUSH IY
39469 CALL 28971
39472 POP IY
39474 CALL Action_Examine_9
39477 LD A,(46826)
39480 LD HL,46838
39483 LD DE,45079
39486 CALL 39629
39489 LD A,(46846)
39492 CP 1
39494 JR Z,39508
39496 LD A,(46824)
39499 LD HL,38925
39502 LD DE,45084
39505 CALL 39629
39508 OR 1
39510 POP IX
39512 RET
39513 LD A,(IX+1)
39516 CP (IY+1)
39519 JR C,39524
39521 LD A,(IY+1)
39524 CALL GetRandomNum
39527 LD E,A
39528 LD A,(IY+1)
39531 CP E
39532 JR NC,39535
39534 LD E,A
39535 LD L,(IY+4)
39538 LD H,(IY+5)
39541 LD D,0
39543 ADD HL,DE
39544 ADD HL,DE
39545 ADD HL,DE
39546 INC HL
39547 LD E,(HL)
39548 INC HL
39549 LD D,(HL)
39550 LD (IY+2),E
39553 LD (IY+3),D
39556 RET
Prev: 38443 Up: Map Next: 39557