Prev: 45438 Up: Map Next: 45980
45457: Initialise Display Buffer
Used by the routine at ProcessScriptDisplay.
InitialiseDisplayBuffer 45457 LD A,255
45459 LD (41013),A
45462 LD (41012),A
45465 LD HL,45421
45468 LD B,17
45470 CALL ClearBuffer
45473 CALL ProcessDisplayPointer
45476 JR NZ,InitialiseDisplayBuffer_0
45478 LD HL,47180
45481 XOR A
45482 RET
InitialiseDisplayBuffer_0 45483 LD A,1
45485 PUSH IX
45487 POP HL
45488 LD DE,33369
45491 SBC HL,DE
45493 JR Z,InitialiseDisplayBuffer_2
45495 LD DE,8
InitialiseDisplayBuffer_1 45498 INC A
45499 SBC HL,DE
45501 JR NZ,InitialiseDisplayBuffer_1
InitialiseDisplayBuffer_2 45503 LD (41011),A
45506 LD (45454),IX
45510 CP 46
45512 JR NZ,InitialiseDisplayBuffer_4
45514 LD HL,45421
45517 BIT 0,(HL)
45519 LD HL,40962
45522 LD DE,45426
45525 LD BC,6
45528 JR Z,InitialiseDisplayBuffer_3
45530 EX DE,HL
InitialiseDisplayBuffer_3 45531 LDIR
InitialiseDisplayBuffer_4 45533 CALL CheckDisplayFlagBit3
45536 CALL CheckDisplayFlagBit2
45539 LD A,(40988)
45542 AND A
45543 JR NZ,InitialiseDisplayBuffer_5
45545 LD A,(45980)
45548 LD (40988),A
45551 CALL InitialiseDisplayBuffer_27
InitialiseDisplayBuffer_5 45554 LD A,(40990)
45557 AND 16
45559 LD (45456),A
45562 JR Z,InitialiseDisplayBuffer_6
45564 XOR A
45565 LD (40988),A
InitialiseDisplayBuffer_6 45568 XOR A
45569 LD (40971),A
45572 LD A,(40989)
45575 AND 12
45577 JR NZ,InitialiseDisplayBuffer_8
InitialiseDisplayBuffer_7 45579 CALL ProcessObjectDisplayLogic
45582 RET NZ
45583 LD HL,47203
45586 RET
InitialiseDisplayBuffer_8 45587 CALL InitialiseDisplayBuffer_31
45590 JR NZ,InitialiseDisplayBuffer_13
45592 LD A,(40988)
45595 AND A
45596 JR NZ,InitialiseDisplayBuffer_9
45598 CALL InitialiseDisplayBuffer_21
45601 AND A
45602 JR Z,InitialiseDisplayBuffer_11
InitialiseDisplayBuffer_9 45604 CALL CheckFlagAndSetDisplay_Entry
45607 JR Z,InitialiseDisplayBuffer_10
45609 CALL ProcessObjectDisplayLogic
45612 JR Z,InitialiseDisplayBuffer_9
45614 LD A,(41012)
45617 LD (45444),A
45620 LD HL,45424
45623 INC (HL)
45624 LD A,(45456)
45627 AND A
45628 JR NZ,InitialiseDisplayBuffer_10
45630 LD A,(40988)
45633 AND A
45634 JR Z,InitialiseDisplayBuffer_9
InitialiseDisplayBuffer_10 45636 LD A,(45444)
45639 LD (41012),A
45642 LD A,(45424)
45645 AND A
45646 JR Z,InitialiseDisplayBuffer_11
45648 CP 1
45650 JR Z,InitialiseDisplayBuffer_7
45652 LD HL,46562
45655 XOR A
45656 RET
InitialiseDisplayBuffer_11 45657 LD A,(41011)
45660 CP 46
45662 JR NZ,InitialiseDisplayBuffer_12
45664 LD A,(40988)
45667 AND A
45668 JR NZ,InitialiseDisplayBuffer_12
45670 LD HL,45421
45673 BIT 0,(HL)
45675 JR NZ,InitialiseDisplayBuffer_12
45677 LD HL,0
45680 LD (45426),HL
45683 LD (45428),HL
45686 LD (45430),HL
45689 JR InitialiseDisplayBuffer_8
InitialiseDisplayBuffer_12 45691 LD HL,46687
45694 XOR A
45695 RET
InitialiseDisplayBuffer_13 45696 LD A,(40988)
45699 AND A
45700 JR NZ,InitialiseDisplayBuffer_14
45702 CALL InitialiseDisplayBuffer_21
45705 AND A
45706 JR Z,InitialiseDisplayBuffer_11
45708 CALL InitialiseDisplayBuffer_24
45711 AND A
45712 JR Z,InitialiseDisplayBuffer_20
InitialiseDisplayBuffer_14 45714 CALL CheckFlagAndSetDisplay_Entry
45717 JR Z,InitialiseDisplayBuffer_15
45719 CALL InitialiseDisplayBuffer_17
45722 LD A,(45425)
45725 CP 1
45727 JR NZ,InitialiseDisplayBuffer_14
45729 LD A,(41012)
45732 LD (45444),A
45735 LD HL,45424
45738 INC (HL)
45739 LD A,(45456)
45742 AND A
45743 JR NZ,InitialiseDisplayBuffer_15
45745 LD A,(40988)
45748 AND A
45749 JR Z,InitialiseDisplayBuffer_14
InitialiseDisplayBuffer_15 45751 LD A,(45444)
45754 LD (41012),A
45757 LD A,(45424)
45760 AND A
45761 JR Z,InitialiseDisplayBuffer_11
45763 CP 1
45765 JR NZ,InitialiseDisplayBuffer_16
45767 CALL InitialiseDisplayBuffer_17
45770 LD A,(45425)
45773 AND A
45774 JR Z,InitialiseDisplayBuffer_20
45776 CP 1
45778 JP Z,InitialiseDisplayBuffer_7
45781 LD HL,46547
45784 XOR A
45785 RET
InitialiseDisplayBuffer_16 45786 LD HL,46562
45789 XOR A
45790 RET
InitialiseDisplayBuffer_17 45791 CALL InitialiseDisplayBuffer_29
InitialiseDisplayBuffer_18 45794 CALL CheckFlagAndSetDisplayParameter_0
45797 JR Z,InitialiseDisplayBuffer_19
45799 CALL ProcessObjectDisplayLogic
45802 JR Z,InitialiseDisplayBuffer_18
45804 LD A,(41013)
45807 LD (45445),A
45810 LD HL,45425
45813 INC (HL)
45814 LD A,(45456)
45817 AND A
45818 JR Z,InitialiseDisplayBuffer_18
InitialiseDisplayBuffer_19 45820 LD A,(45445)
45823 LD (41013),A
45826 RET
InitialiseDisplayBuffer_20 45827 LD HL,46766
45830 XOR A
45831 RET
InitialiseDisplayBuffer_21 45832 LD HL,(45438)
45835 PUSH HL
45836 LD A,(46242)
45839 PUSH AF
45840 CALL InitialiseDisplayBuffer_27
InitialiseDisplayBuffer_22 45843 CALL CheckFlagAndSetDisplay_Entry
45846 JR Z,InitialiseDisplayBuffer_23
45848 LD HL,45424
45851 INC (HL)
45852 JR InitialiseDisplayBuffer_22
InitialiseDisplayBuffer_23 45854 POP AF
45855 LD (46242),A
45858 LD HL,45424
45861 LD A,(HL)
45862 LD (HL),0
45864 POP HL
45865 LD (45438),HL
45868 RET
InitialiseDisplayBuffer_24 45869 LD HL,(45440)
45872 PUSH HL
45873 CALL InitialiseDisplayBuffer_29
45876 LD A,(46409)
45879 PUSH AF
InitialiseDisplayBuffer_25 45880 CALL CheckFlagAndSetDisplayParameter_0
45883 JR Z,InitialiseDisplayBuffer_26
45885 LD HL,45425
45888 INC (HL)
45889 JR InitialiseDisplayBuffer_25
InitialiseDisplayBuffer_26 45891 POP AF
45892 LD (46409),A
45895 LD A,(45425)
45898 POP HL
45899 LD (45440),HL
45902 RET
InitialiseDisplayBuffer_27 45903 XOR A
45904 LD (45424),A
45907 LD A,255
45909 LD (46242),A
45912 CALL AdjustObjectTableForSum
45915 LD A,(40975)
45918 CP 7
45920 JR NC,InitialiseDisplayBuffer_28
45922 LD IX,0
InitialiseDisplayBuffer_28 45926 LD (45438),IX
45930 RET
InitialiseDisplayBuffer_29 45931 XOR A
45932 LD (45425),A
45935 LD A,255
45937 LD (46409),A
45940 CALL AdjustObjectTableForSum
45943 LD A,(40976)
45946 CP 7
45948 JR NC,InitialiseDisplayBuffer_30
45950 LD IX,0
InitialiseDisplayBuffer_30 45954 LD (45440),IX
45958 RET
InitialiseDisplayBuffer_31 45959 LD A,(40989)
45962 BIT 2,A
45964 RET Z
45965 LD HL,45422
45968 BIT 0,(HL)
45970 RET NZ
45971 BIT 1,A
45973 JR NZ,InitialiseDisplayBuffer_32
45975 OR 1
45977 RET
InitialiseDisplayBuffer_32 45978 XOR A
45979 RET
Prev: 45438 Up: Map Next: 45980