.PrintHeaderChecks LDY #1 \ We are about to print two chequered lines, so set a \ line counter in Y .head1 LDA endChecks,Y \ Set T to the screen address offset of the end of the STA T \ Y-th chequered line LDX startChecks,Y \ Set A to the screen address offset of the start of the \ Y-th chequered line LDA #151 \ Poke the "white graphics" character into the X-th byte STA row2_column1,X \ of screen memory at column 1, row 2, so the subsequent \ bytes are shown as graphics characters LDA #226 \ Set A to the graphics character with the top-right and \ bottom-right blocks set to white, to form the first \ character of the line (i.e. the first two checks in \ the chequered line) .head2 INX \ Increment the screen address offset to move along one \ character STA row2_column1,X \ Poke character A into screen memory LDA #230 \ Set A to the graphics character with the top-right, \ bottom-right and centre-left blocks set to white, to \ form the rest of the checks on the chequered line CPX T \ Loop back to print the next character in the line BNE head2 \ until we have reached the screen address in T DEY \ Decrement the line counter BPL head1 \ Loop back to print the second line RTS \ Return from the subroutineName: PrintHeaderChecks [Show more] Type: Subroutine Category: Text Summary: Print chequered lines above and below the headerContext: See this subroutine in context in the source code References: This subroutine is called as follows: * MainLoop (Part 1 of 6) calls PrintHeaderChecks
[X]
Variable endChecks (category: Text)
The screen address offset of the end of each chequered header line
[X]
Label head1 is local to this routine
[X]
Label head2 is local to this routine
[X]
Configuration variable row2_column1 = &7C79
Chequered flag mode 7 screen address
[X]
Variable startChecks (category: Text)
The screen address offset of the start of each chequered header line