Prev: 51593 Up: Map Next: 52008
51606: Process Object Display Entry
ProcessObjectDisplayEntry 51606 PUSH IY
51608 PUSH BC
51609 CALL ProcessObjectDisplayEntry_1
51612 POP BC
51613 POP IY
51615 JR C,ProcessObjectDisplayEntry_0
51617 JP Z,ProcessDisplayWithLocationCheck
51620 OR 1
51622 RET
ProcessObjectDisplayEntry_0 51623 PUSH HL
51624 PUSH BC
51625 LD HL,(40921)
51628 LD B,1
51630 CALL AllocateMemoryAndStoreCharacter
51633 POP BC
51634 POP HL
51635 LD IX,(40923)
51639 LD (IX+1),L
51642 LD (IX+2),H
51645 SCF
51646 RET
ProcessObjectDisplayEntry_1 51647 PUSH HL
51648 POP IY
51650 CALL CheckObjectVisibility
51653 JR NC,ProcessObjectDisplayEntry_3
51655 LD A,(IY+0)
51658 AND 32
51660 JR Z,ProcessObjectDisplayEntry_3
51662 LD HL,52155
ProcessObjectDisplayEntry_2 51665 XOR A
51666 RET
ProcessObjectDisplayEntry_3 51667 CALL ProcessDisplayAction_28
51670 JR Z,ProcessObjectDisplayEntry_2
51672 CALL ProcessDisplayAction_39
51675 JR Z,ProcessObjectDisplayEntry_2
51677 BIT 6,(IY+0)
51681 JR Z,ProcessObjectDisplayEntry_4
51683 LD L,(IY+2)
51686 LD H,(IY+3)
51689 PUSH IY
51691 CALL SaveAndRestorePointers_0
51694 POP IY
51696 JR Z,ProcessObjectDisplayEntry_2
ProcessObjectDisplayEntry_4 51698 LD A,(40971)
51701 AND A
51702 JR NZ,ProcessObjectDisplayEntry_5
51704 OR 1
51706 RET
ProcessObjectDisplayEntry_5 51707 PUSH IY
51709 LD A,(IY+1)
51712 RRCA
51713 RRCA
51714 RRCA
51715 RRCA
51716 AND 15
51718 LD L,A
51719 LD H,0
51721 LD (40991),HL
51724 POP HL
51725 LD DE,2
51728 ADD HL,DE
51729 BIT 6,(IY+0)
51733 JR Z,ProcessObjectDisplayEntry_6
51735 ADD HL,DE
ProcessObjectDisplayEntry_6 51736 LD DE,5
51739 BIT 4,(IY+0)
51743 JR Z,ProcessObjectDisplayEntry_7
51745 ADD HL,DE
ProcessObjectDisplayEntry_7 51746 LD A,(40970)
51749 LD (50321),A
51752 LD IX,(40979)
51756 LD A,(IX+15)
51759 LD (50322),A
51762 PUSH HL
51763 PUSH IY
51765 LD A,1
51767 LD (40972),A
51770 CALL ProcessObjectDisplayEntry_11
51773 POP IY
51775 POP HL
51776 BIT 7,(IY+0)
51780 JR Z,ProcessObjectDisplayEntry_8
51782 SCF
51783 RET
ProcessObjectDisplayEntry_8 51784 LD A,(40919)
51787 INC A
51788 JR NZ,ProcessObjectDisplayEntry_9
51790 LD A,(41012)
51793 LD (40919),A
ProcessObjectDisplayEntry_9 51796 LD A,(40920)
51799 INC A
51800 JR NZ,ProcessObjectDisplayEntry_10
51802 LD A,(41013)
51805 LD (40920),A
ProcessObjectDisplayEntry_10 51808 XOR A
51809 LD (51886),A
51812 CALL SaveAndRestorePointers
51815 PUSH AF
51816 PUSH HL
51817 CALL ProcessObjectDisplayEntry_12
51820 LD A,(51886)
51823 AND A
51824 CALL Z,ProcessObjectDisplayEntry_14
51827 POP HL
51828 POP AF
51829 RET
This entry point is used by the routine at ProcessDisplayWithLocationCheck.
ProcessObjectDisplayEntry_11 51830 LD A,(41011)
51833 AND 128
51835 CALL Z,ProcessObjectDisplay
51838 RET
ProcessObjectDisplayEntry_12 51839 LD A,(39008)
51842 CALL FetchObjectDataPointer
51845 LD A,(40969)
51848 CP (IX+15)
51851 RET Z
51852 LD A,(41014)
51855 PUSH AF
51856 LD A,(39008)
51859 LD (41014),A
51862 CALL ProcessObjectDisplayEntry_13
51865 POP AF
51866 LD (41014),A
51869 RET
ProcessObjectDisplayEntry_13 51870 LD A,(56577)
51873 LD HL,(56575)
51876 BIT 6,(HL)
51878 JP NZ,ProcessObjectDisplayWithCheck
51881 SET 6,(HL)
51883 JP ProcessLocationTokenDisplay
51886 NOP
ProcessObjectDisplayEntry_14 51887 CALL CheckCharacterID
51890 RET Z
51891 LD A,(50321)
51894 LD HL,40969
51897 CP (HL)
51898 RET Z
51899 LD A,(41014)
51902 CALL IsCharacterTheChinaMan
51905 LD HL,40969
51908 CP (HL)
51909 JR NZ,ProcessObjectDisplayEntry_15
51911 LD A,(41014)
51914 LD DE,26861
51917 CALL ProcessCharacterDisplay_CBC2
ProcessObjectDisplayEntry_15 51920 LD A,(40975)
51923 CP 7
51925 RET C
51926 LD A,(41012)
51929 CALL IsCharacterTheChinaMan
51932 CP 255
51934 JR NZ,ProcessObjectDisplayEntry_18
51936 LD B,(IX+0)
51939 LD A,(40969)
ProcessObjectDisplayEntry_16 51942 CP (IX+15)
51945 JR Z,ProcessObjectDisplayEntry_17
51947 INC IX
51949 DJNZ ProcessObjectDisplayEntry_16
51951 RET
ProcessObjectDisplayEntry_17 51952 LD A,(41014)
51955 LD B,A
51956 LD A,255
51958 LD (41014),A
51961 LD A,1
51963 LD (23612),A
51966 LD A,(40969)
51969 CALL ProcessObjectDisplayType
51972 CP 255
51974 CALL NZ,ProcessObjectDisplayEntry_11
51977 SUB A
51978 LD (23612),A
51981 LD A,B
51982 LD (41014),A
51985 RET
ProcessObjectDisplayEntry_18 51986 LD A,(50322)
51989 LD HL,40969
51992 CP (HL)
51993 RET Z
51994 LD A,(41012)
51997 LD HL,41014
52000 CP (HL)
52001 RET Z
52002 LD DE,26861
52005 JP ProcessCharacterDisplay_CBC2
Prev: 51593 Up: Map Next: 52008