Prev: 44773 Up: Map Next: 44873
44784: Routine at AEF0
Used by the routines at Messaging_PrintPlayerCurrentTotal, 44567 and 44981.
44784 PUSH HL Stash HL, DE and BC on the stack.
44785 PUSH DE
44786 PUSH BC
44787 XOR A A=0.
44788 LD (DE),A Write A to *DE.
44789 LD BC,100 BC=0100.
44792 PUSH HL Stash HL on the stack.
44793 SBC HL,BC HL-=BC.
44795 POP HL Restore HL from the stack.
44796 JR C,44806 Jump to 44806 if ?? is less than 0.
44798 AND A Set flags.
44799 SBC HL,BC HL-=BC.
44801 LD A,(DE) A=*DE.
44802 INC A Increment A by one.
44803 LD (DE),A Write A to *DE.
44804 JR 44792 Jump to 44792.
44806 OR A Set the bits from A.
44807 JR NZ,44811 Jump to 44811 if A is not equal to A.
44809 LD A,32 Write 32 to *DE.
44811 LD (DE),A
44812 INC DE Increment DE by one.
44813 XOR A Write 0 to *DE.
44814 LD (DE),A
44815 LD BC,10 BC=0010.
44818 PUSH HL Stash HL on the stack.
44819 SBC HL,BC HL-=BC.
44821 POP HL Restore HL from the stack.
44822 JR C,44832 Jump to 44832 if DE is less than A.
44824 AND A Set flags.
44825 SBC HL,BC HL-=BC.
44827 LD A,(DE) A=*DE.
44828 INC A Increment A by one.
44829 LD (DE),A Write A to *DE.
44830 JR 44818 Jump to 44818.
44832 OR A Set the bits from A.
44833 LD B,A B=A.
44834 JR NZ,44847 Jump to 44847 if A is not equal to A.
44836 DEC DE Decrease DE by one.
44837 LD A,(DE) A=*DE.
44838 CP 32 Compare A with 32.
44840 INC DE Increment DE by one.
44841 JR NZ,44847 Jump to 44847 if DE is not equal to 32.
44843 LD A,32 A=32.
44845 JR 44848 Jump to 44848.
44847 LD A,B A=B.
44848 LD (DE),A Write A to *DE.
44849 INC DE Increment DE by one.
44850 LD A,L A=L.
44851 LD (DE),A Write A to *DE.
44852 POP BC Restore BC, DE and HL from the stack.
44853 POP DE
44854 POP HL
44855 RET Return.
44856 LD HL,(44873) HL=*44873.
44859 LD DE,(44875) DE=*44875.
44863 LD BC,(44877) BC=*44877.
44867 ADD HL,BC HL+=BC.
44868 ADD HL,DE HL+=DE.
44869 LD (44879),HL Write HL to *44879.
44872 RET Return.
Prev: 44773 Up: Map Next: 44873