Prev: AD17 Up: Map Next: AD6F
AD47: Reset Text Position
Used by the routines at Update_Berk_State and Update_Timed_Events.
Reset the status/menu text cursor to the glyph bitmap at Data_MenuGlyphBitmaps.
Reset_Text_Position AD47 XOR A Clear A ready to reset the task timer.
AD48 LD ($72F0),A Set the task timer (TaskTimer).
AD4B LD HL,$AD17 Point HL at the menu glyph bitmaps (Data_MenuGlyphBitmaps).
AD4E LD ($72F9),HL Write the pointer in HL to the temporary screen pointer (Pointer_CurrentCharacterSet).
AD51 CALL Print_Menu_Strings Call Print_Menu_Strings to print Menu Strings.
AD54 AND C Mask A with B.
AD55 LD E,D Copy D into E (build a pointer/offset).
AD56 LD (HL),B Write the loop counter through the pointer in HL.
AD57 LD BC,$0302 Load BC with 0302 as a room/position constant.
AD5A LD E,L Copy L into E (build a pointer/offset).
AD5B LD A,$02 Load A with 02.
AD5D LD ($7307),A Set the temporary room/state byte (CurrentTextAttribute).
AD60 LD HL,$5AA4 Point HL at attribute-file address 5AA4 (attribute buffer).
AD63 LD B,$14 Load B with 14 as a loop counter.
AD65 LD DE,$0000 Clear DE (zero offset).
Print the status/menu glyph run across the attribute strip at 5AA4 (attribute buffer).
Reset_Text_Position_PrintLoop AD68 CALL Print_Character Call Print_Character to print Character.
AD6B INC HL Advance 5AA4 (attribute buffer) by one byte.
AD6C DJNZ Reset_Text_Position_PrintLoop Decrease the loop counter in B and jump to Reset_Text_Position_PrintLoop if more iterations remain.
AD6E RET Return.
Prev: AD17 Up: Map Next: AD6F