Prev: 50354 Up: Map Next: 51233
50385: Process Display Action
ProcessDisplayAction 50385 LD A,(41011)
50388 BIT 7,A
50390 JP NZ,ProcessDisplayAction_13
50393 CALL CalculateObjectTableOffset
50396 PUSH HL
50397 POP IX
50399 CALL ExtractObjectAttributes
50402 CALL CheckDisplayFlagBit3
50405 CALL CheckDisplayFlagBit2
50408 XOR A
50409 LD (40971),A
50412 LD A,(40989)
50415 AND 12
50417 JR Z,ProcessDisplayAction_4
50419 LD A,(40975)
50422 CP 5
50424 JR NZ,ProcessDisplayAction_0
50426 LD A,(41012)
50429 CP 254
50431 JP NZ,SaveAndRestorePointers_2
ProcessDisplayAction_0 50434 LD A,(40976)
50437 CP 5
50439 JR NZ,ProcessDisplayAction_1
50441 LD A,(41013)
50444 CP 254
50446 JP NZ,SaveAndRestorePointers_2
ProcessDisplayAction_1 50449 LD A,(40975)
50452 AND A
50453 JR Z,ProcessDisplayAction_3
50455 LD A,(41012)
50458 CP 255
50460 JR NZ,ProcessDisplayAction_3
50462 LD B,255
ProcessDisplayAction_2 50464 INC B
50465 CALL CheckDisplayParameter_0
50468 RET Z
50469 LD (41012),A
50472 PUSH BC
50473 CALL ProcessDisplayAction_7
50476 POP BC
50477 JR NZ,ProcessDisplayAction_4
50479 JR ProcessDisplayAction_2
ProcessDisplayAction_3 50481 CALL ProcessDisplayAction_5
50484 JR Z,ProcessDisplayAction_4
50486 CALL ProcessDisplayAction_8
50489 RET Z
ProcessDisplayAction_4 50490 LD A,1
50492 LD (40971),A
50495 JP ProcessObjectDisplayLogic
ProcessDisplayAction_5 50498 LD A,(40976)
50501 AND A
50502 RET Z
50503 LD A,(41013)
50506 CP 255
50508 JR NZ,ProcessDisplayAction_6
50510 LD A,(40989)
50513 AND 2
50515 JR NZ,ProcessDisplayAction_6
50517 OR 1
50519 RET
ProcessDisplayAction_6 50520 XOR A
50521 RET
ProcessDisplayAction_7 50522 CALL ProcessDisplayAction_5
50525 JP Z,ProcessObjectDisplayLogic
ProcessDisplayAction_8 50528 LD B,255
ProcessDisplayAction_9 50530 INC B
50531 CALL CheckDisplayParameter
50534 JR Z,ProcessDisplayAction_10
50536 LD (41013),A
50539 CALL ProcessObjectDisplayLogic
50542 JR Z,ProcessDisplayAction_9
ProcessDisplayAction_10 50544 RET
ProcessDisplayAction_11 50545 LD A,(IX+0)
50548 AND 15
50550 LD (40975),A
50553 RET
ProcessDisplayAction_12 50554 LD A,(IX+1)
50557 AND 15
50559 LD (40976),A
50562 RET
ProcessDisplayAction_13 50563 AND 127
50565 LD E,A
50566 LD D,0
50568 LD HL,40875
50571 ADD HL,DE
50572 ADD HL,DE
50573 LD E,(HL)
50574 INC HL
50575 LD D,(HL)
50576 EX DE,HL
This entry point is used by the routine at ClearRoomDisplayParameters.
ProcessDisplayAction_14 50577 PUSH HL
50578 POP IX
50580 CALL ProcessDisplayAction_11
50583 CALL ProcessDisplayAction_12
50586 XOR A
50587 LD (40971),A
50590 LD A,(40975)
50593 LD HL,40976
50596 OR (HL)
50597 JR Z,ProcessDisplayAction_21
50599 LD A,(40975)
50602 CP 5
50604 JR Z,ProcessDisplayAction_15
50606 CP 6
50608 JR NZ,ProcessDisplayAction_16
ProcessDisplayAction_15 50610 LD A,(41012)
50613 CP 254
50615 JP NZ,SaveAndRestorePointers_2
ProcessDisplayAction_16 50618 LD A,(40976)
50621 CP 5
50623 JR Z,ProcessDisplayAction_17
50625 CP 6
50627 JR NZ,ProcessDisplayAction_18
ProcessDisplayAction_17 50629 LD A,(41013)
50632 CP 254
50634 JP NZ,SaveAndRestorePointers_2
ProcessDisplayAction_18 50637 LD A,(40975)
50640 AND A
50641 JR Z,ProcessDisplayAction_20
50643 LD A,(41012)
50646 CP 255
50648 JR NZ,ProcessDisplayAction_20
50650 LD B,0
ProcessDisplayAction_19 50652 CALL CheckDisplayParameter_0
50655 RET Z
50656 LD (41012),A
50659 CALL ProcessDisplayAction_24
50662 JR NZ,ProcessDisplayAction_21
50664 INC B
50665 JR ProcessDisplayAction_19
ProcessDisplayAction_20 50667 CALL ProcessDisplayAction_22
50670 JR Z,ProcessDisplayAction_21
50672 CALL ProcessDisplayAction_25
50675 RET Z
ProcessDisplayAction_21 50676 LD A,1
50678 LD (40971),A
50681 JP ProcessObjectDisplayWithPointer
ProcessDisplayAction_22 50684 LD A,(40976)
50687 AND A
50688 RET Z
50689 LD A,(41013)
50692 CP 255
50694 JR NZ,ProcessDisplayAction_23
50696 OR 1
50698 RET
ProcessDisplayAction_23 50699 XOR A
50700 RET
ProcessDisplayAction_24 50701 CALL ProcessDisplayAction_22
50704 JP Z,ProcessObjectDisplayWithPointer
ProcessDisplayAction_25 50707 PUSH BC
50708 LD B,0
ProcessDisplayAction_26 50710 CALL CheckDisplayParameter
50713 JR Z,ProcessDisplayAction_27
50715 LD (41013),A
50718 CALL ProcessObjectDisplayWithPointer
50721 JR NZ,ProcessDisplayAction_27
50723 INC B
50724 JR ProcessDisplayAction_26
ProcessDisplayAction_27 50726 POP BC
50727 RET
This entry point is used by the routine at ProcessObjectDisplayEntry.
ProcessDisplayAction_28 50728 LD A,(IY+0)
50731 AND 15
50733 JR NZ,ProcessDisplayAction_31
ProcessDisplayAction_29 50735 OR 1
50737 RET
ProcessDisplayAction_30 50738 JP ReturnZero
ProcessDisplayAction_31 50741 CP 5
50743 JR C,ProcessDisplayAction_34
50745 CP 7
50747 JR NC,ProcessDisplayAction_36
50749 LD A,(41012)
50752 CP 254
50754 JR NZ,ProcessDisplayAction_32
50756 LD HL,(41007)
50759 LD A,(IY+0)
50762 AND 15
50764 CP 5
50766 JR NZ,ProcessDisplayAction_33
50768 BIT 7,L
50770 JR Z,ProcessDisplayAction_29
ProcessDisplayAction_32 50772 XOR A
50773 LD (40993),A
50776 JR ProcessDisplayAction_30
ProcessDisplayAction_33 50778 BIT 7,L
50780 JR NZ,ProcessDisplayAction_29
50782 JR ProcessDisplayAction_32
ProcessDisplayAction_34 50784 CP 3
50786 JR NC,ProcessDisplayAction_35
50788 LD A,(41012)
50791 CALL FetchLocationDataPointer
50794 BIT 7,(IX+0)
50798 JR Z,ProcessDisplayAction_32
ProcessDisplayAction_35 50800 BIT 0,(IY+0)
50804 JR Z,ProcessDisplayAction_29
50806 LD A,(41012)
50809 CALL ProcessObjectDisplayType
50812 CP 255
50814 JR Z,ProcessDisplayAction_32
50816 JR ProcessDisplayAction_29
ProcessDisplayAction_36 50818 LD A,(41012)
50821 LD (52090),A
50824 LD C,A
50825 LD A,(IY+0)
50828 CALL ProcessDisplayAction_56
50831 JR Z,ProcessDisplayAction_32
50833 BIT 4,(IY+0)
50837 JR Z,ProcessDisplayAction_29
50839 LD A,(IY+2)
50842 LD L,(IY+3)
50845 LD H,(IY+4)
50848 BIT 6,(IY+0)
50852 JR Z,ProcessDisplayAction_37
50854 LD A,(IY+4)
50857 LD L,(IY+5)
50860 LD H,(IY+6)
ProcessDisplayAction_37 50863 RRCA
50864 RRCA
50865 RRCA
50866 RRCA
50867 LD B,A
50868 CALL ProcessDisplayAction_47
50871 RET NZ
ProcessDisplayAction_38 50872 LD A,1
50874 LD (40993),A
50877 RET
This entry point is used by the routine at ProcessObjectDisplayEntry.
ProcessDisplayAction_39 50878 LD A,(IY+1)
50881 AND 15
50883 JR NZ,ProcessDisplayAction_41
ProcessDisplayAction_40 50885 OR 1
50887 RET
50888 JP ReturnZero
ProcessDisplayAction_41 50891 CP 5
50893 JR C,ProcessDisplayAction_43
50895 CP 7
50897 JR NC,ProcessDisplayAction_45
50899 LD A,(41013)
50902 CP 254
50904 JP NZ,ProcessDisplayAction_32
50907 LD HL,(41009)
50910 LD A,(IY+1)
50913 AND 15
50915 CP 5
50917 JR NZ,ProcessDisplayAction_42
50919 BIT 7,L
50921 JR Z,ProcessDisplayAction_40
50923 JP ProcessDisplayAction_32
ProcessDisplayAction_42 50926 BIT 7,L
50928 JR NZ,ProcessDisplayAction_40
50930 JP ProcessDisplayAction_32
ProcessDisplayAction_43 50933 CP 3
50935 JR NC,ProcessDisplayAction_44
50937 LD A,(41013)
50940 CALL FetchLocationDataPointer
50943 BIT 7,(IX+0)
50947 JP Z,ProcessDisplayAction_32
ProcessDisplayAction_44 50950 BIT 0,(IY+1)
50954 JR Z,ProcessDisplayAction_40
50956 LD A,(41013)
50959 CALL ProcessObjectDisplayType
50962 CP 255
50964 JP Z,ProcessDisplayAction_32
50967 JR ProcessDisplayAction_40
ProcessDisplayAction_45 50969 LD A,(41013)
50972 LD (52090),A
50975 LD C,A
50976 LD A,(IY+1)
50979 CALL ProcessDisplayAction_56
50982 RET Z
50983 BIT 4,(IY+0)
50987 JP Z,ProcessDisplayAction_29
50990 LD A,(IY+2)
50993 LD L,(IY+5)
50996 LD H,(IY+6)
50999 BIT 6,(IY+0)
51003 JR Z,ProcessDisplayAction_46
51005 LD A,(IY+4)
51008 LD L,(IY+7)
51011 LD H,(IY+8)
ProcessDisplayAction_46 51014 LD B,A
51015 CALL ProcessDisplayAction_47
51018 RET NZ
51019 JP ProcessDisplayAction_38
ProcessDisplayAction_47 51022 LD A,C
51023 CALL FetchObjectDataPointer
51026 LD C,(IX+5)
51029 LD A,B
51030 RRCA
51031 RRCA
51032 AND 3
51034 LD D,L
51035 CALL ProcessDisplayAction_48
51038 RET Z
51039 LD A,B
51040 AND 3
51042 LD D,H
ProcessDisplayAction_48 51043 JR NZ,ProcessDisplayAction_50
51045 LD A,D
51046 AND C
51047 CP D
ProcessDisplayAction_49 51048 JP Z,ProcessDisplayAction_29
51051 JR ProcessDisplayAction_53
ProcessDisplayAction_50 51053 CP 1
51055 JR NZ,ProcessDisplayAction_51
51057 LD A,D
51058 AND A
51059 JR Z,ProcessDisplayAction_49
51061 AND C
51062 JR Z,ProcessDisplayAction_54
51064 JP ProcessDisplayAction_29
ProcessDisplayAction_51 51067 CP 2
51069 JR NZ,ProcessDisplayAction_52
51071 LD A,D
51072 AND C
51073 JP Z,ProcessDisplayAction_29
51076 OR 128
51078 JR ProcessDisplayAction_55
ProcessDisplayAction_52 51080 LD A,D
51081 AND C
51082 CP D
51083 JP NZ,ProcessDisplayAction_29
51086 OR 128
51088 JR ProcessDisplayAction_55
ProcessDisplayAction_53 51090 XOR 255
51092 AND D
ProcessDisplayAction_54 51093 AND 127
ProcessDisplayAction_55 51095 LD (52089),A
51098 LD A,(40971)
51101 AND A
51102 JP Z,ProcessDisplayAction_29
51105 LD HL,52091
51108 XOR A
51109 RET
ProcessDisplayAction_56 51110 AND 15
51112 CP 7
51114 JP Z,ProcessDisplayAction_29
51117 CP 8
51119 JR NZ,ProcessDisplayAction_58
51121 LD A,C
51122 CALL CheckObjectLocationMatch
ProcessDisplayAction_57 51125 JP Z,ProcessDisplayAction_30
51128 JP ProcessDisplayAction_29
ProcessDisplayAction_58 51131 CP 9
51133 JR NZ,ProcessDisplayAction_59
51135 LD A,C
51136 CALL CheckObjectLocationMatch
51139 JP Z,ProcessDisplayAction_30
51142 LD A,C
51143 CALL GetObjectAttribute
51146 JP NZ,ProcessDisplayAction_30
51149 LD A,C
51150 CALL TestObjectHasSpecialDescription
51153 JP NZ,ProcessDisplayAction_30
51156 LD B,C
51157 LD A,(41014)
51160 CALL ProcessObjectAttribute_C8C6
51163 JP Z,ProcessDisplayAction_30
51166 LD A,C
51167 CALL GetObjectMotherID
51170 JR ProcessDisplayAction_49
ProcessDisplayAction_59 51172 CP 10
51174 JR NZ,ProcessDisplayAction_60
51176 LD A,C
51177 CALL CheckObjectLocationMatch
51180 JP Z,ProcessDisplayAction_30
51183 LD A,C
51184 CALL CheckCharacterIDRange
51187 JP NC,ProcessDisplayAction_30
51190 JP ProcessDisplayAction_29
ProcessDisplayAction_60 51193 CP 11
51195 JR NZ,ProcessDisplayAction_61
51197 LD A,C
51198 CALL CheckObjectLocationMatch
51201 JP Z,ProcessDisplayAction_30
51204 LD A,C
51205 CALL GetObjectAttribute
51208 JR ProcessDisplayAction_57
ProcessDisplayAction_61 51210 CP 12
51212 JR NZ,ProcessDisplayAction_62
51214 LD A,C
51215 CALL TestObjectHasSpecialDescription
51218 JR ProcessDisplayAction_57
ProcessDisplayAction_62 51220 LD A,C
51221 CALL CheckObjectLocationMatch
51224 JP Z,ProcessDisplayAction_30
51227 LD A,C
51228 CALL TestObjectHasSpecialDescription
51231 JR ProcessDisplayAction_57
Prev: 50354 Up: Map Next: 51233