Prev: 63174 Up: Map Next: 63242
63190: Draw Main Menu Logo
Used by the routine at MainMenu.
Draw the eight-cell main-menu logo using the UDG font at Font_MainMenuLogo and the attribute-address table at Table_MainMenuLogoAttributes
main-menu-logo
Point the character set at the logo font and walk eight attribute cells.
Draw_MainMenuLogo 63190 LD HL,63297 Point HL at the logo font + 1 (Font_MainMenuLogo + 1), then store it as the current character set.
63193 LD (29433),HL
63196 XOR A Clear the current text attribute.
63197 LD (29447),A
63200 LD D,A Clear D.
63201 LD IX,63174 Point IX at Table_MainMenuLogoAttributes.
63205 LD B,8 There are 8 logo cells to draw.
Draw one of the eight main-menu logo cells from the UDG font at Font_MainMenuLogo.
Draw_MainMenuLogo_CellLoop 63207 PUSH BC Stash BC on the stack.
63208 LD L,(IX+0) Fetch this cell's attribute address into HL.
63211 LD H,(IX+1)
63214 LD E,1 Start the glyph index at 1.
63216 LD C,6 There are 6 rows in each logo cell.
Draw one 9-character row inside the current logo cell.
Draw_MainMenuLogo_RowLoop 63218 LD B,9 There are 9 characters in each logo row.
Print one logo glyph via Print_Character and advance along the row.
Draw_MainMenuLogo_CharLoop 63220 CALL Print_Character Call Print_Character to print glyph E at HL.
63223 INC HL Move to the next character cell on screen.
63224 INC E Move on to the next logo glyph.
63225 DJNZ Draw_MainMenuLogo_CharLoop Decrease the column counter and jump to Draw_MainMenuLogo_CharLoop while columns remain.
63227 PUSH DE Stash DE on the stack.
63228 LD E,23 Load E with 23 (bytes from row end to the next logo row).
63230 ADD HL,DE Step HL onto the next logo row.
63231 POP DE Restore DE from the stack.
63232 DEC C Decrease the row counter.
63233 JR NZ,Draw_MainMenuLogo_RowLoop Jump to Draw_MainMenuLogo_RowLoop while rows remain.
63235 INC IX Move IX to the next attribute address in the table.
63237 INC IX
63239 POP BC Restore BC from the stack.
63240 DJNZ Draw_MainMenuLogo_CellLoop Decrease the cell counter and jump to Draw_MainMenuLogo_CellLoop while cells remain.
Continue on to ColourCycle_MainMenuLogo.
Prev: 63174 Up: Map Next: 63242