Prev: E3FD Up: Map Next: E468
E41D: Print Characters Items
Used by the routines at Handler_PickUpObjects, EB0F and EC4A.
E41D CALL ClearCharacterItems Call ClearCharacterItems.
Fetch item 1 (IY+50) for the current character and calculate an offset.
PrintCharacterItems E420 LD A,(IY+$50) E=(IY+50)*02.
E423 ADD A,A
E424 LD E,A
E425 LD D,$00 D=00.
E427 LD HL,$E728 HL=Table_ItemLabels+DE.
E42A ADD HL,DE
Fetch the item 1 label memory location.
E42B LD E,(HL) E=*HL.
E42C INC HL Increment HL by one.
E42D LD D,(HL) D=*HL.
Fetch item 2 (IY+55) for the current character and calculate an offset.
E42E LD A,(IY+$55) C=(IY+55)*02.
E431 ADD A,A
E432 LD C,A
E433 LD B,$00 B=00.
E435 LD HL,$E728 HL=Table_ItemLabels+BC.
E438 ADD HL,BC
Fetch the item 2 label memory location.
E439 LD C,(HL) C=*HL.
E43A INC HL Increment HL by one.
E43B LD B,(HL) B=*HL.
E43C PUSH BC Stash the item 2 label memory location (BC) on the stack.
E43D EX DE,HL Switch the DE and HL registers.
E43E LD DE,$DFDC Write Font to B7E9.
E441 LD ($B7E9),DE
Print the item labels to the screen.
E445 LD DE,$0003 DE=0003 (screen co-ordinates).
E448 LD C,$43 C=43 (INK: MAGENTA, PAPER: BLACK (BRIGHT) ).
E44A CALL DrawCharacterItemLabel Call DrawCharacterItemLabel.
E44D POP HL Restore the item 2 label memory location from the stack.
E44E LD DE,$0203 DE=0203 (screen co-ordinates).
E451 LD C,$45 C=45 (INK: CYAN, PAPER: BLACK (BRIGHT) ).
E453 CALL DrawCharacterItemLabel Call DrawCharacterItemLabel.
Fetch item 1 (IY+50) for the current character.
E456 LD A,(IY+$50) A=(IY+50).
E459 LD DE,$0000 DE=0000 (screen co-ordinates).
E45C CALL DrawCharacterItemGraphics Call DrawCharacterItemGraphics.
Fetch item 2 (IY+55) for the current character.
E45F LD A,(IY+$55) A=(IY+55).
E462 LD D,$02 D=02 (update screen co-ordinates).
E464 CALL DrawCharacterItemGraphics Call DrawCharacterItemGraphics.
E467 RET Return.
Prev: E3FD Up: Map Next: E468