Prev: EA02 Up: Map Next: ED2D
ECF2: Print Inventory
Used by the routines at Unpack_Rooms, Event_BumpDigit and Event_RandomCombination.
Prints the four CollectionSlots digits and flashes them when every slot is 09.
Print_Inventory ECF2 LD A,$0F Write WHITE to *ATTR_T.
ECF4 LD ($5C8F),A
ECF7 LD HL,$3C00 Write 3C00 to *CHARS.
ECFA LD ($5C36),HL
ECFD LD BC,$0107 Call JumpTable_SetPrintPosition at column 07 row 01.
ED00 CALL JumpTable_SetPrintPosition
Print the four combination digits.
ED03 LD BC,$0400 BC=0400.
ED06 LD HL,$64C1 HL=CollectionSlots.
Print_Inventory_Target ED09 LD A,(HL) Jump to Print_Inventory_Continue unless this digit is 09.
ED0A CP $09
ED0C JR NZ,Print_Inventory_Continue
ED0E INC C Increase the "09" count.
Print_Inventory_Continue ED0F ADD A,$30 Convert the digit into ASCII.
ED11 CALL JumpTable_PrintCharacter Call JumpTable_PrintCharacter.
ED14 INC HL Advance the digit pointer and loop back to Print_Inventory_Target.
ED15 DJNZ Print_Inventory_Target
Flash the four cells when every digit is 09.
ED17 LD A,C Return unless all four digits were 09.
ED18 CP $04
ED1A RET NZ
ED1B LD BC,$0107 Convert column 07 row 01 into a Buffer_RoomTiles offset.
ED1E CALL JumpTable_ConvertCoordinate
ED21 LD DE,$5800 Point HL at the matching attribute cells.
ED24 ADD HL,DE
ED25 LD B,$04
Print_Inventory_Target2 ED27 SET 7,(HL) Set FLASH on each of the four cells.
ED29 INC HL
ED2A DJNZ Print_Inventory_Target2
ED2C RET Return.
Prev: EA02 Up: Map Next: ED2D