This code appears in the following versions (click to see it in the source code):
Code variations between these versions are shown below.
Name: CLYNS Type: Subroutine Category: Drawing the screen
Summary: Clear the bottom three text rows of the space view
This routine clears some space at the bottom of the screen and moves the text cursor to column 1, row 20.
Specifically, it zeroes the following screen locations: &7507 to &75F0 &7607 to &76F0 &7707 to &77F0 which clears the three bottom text rows of the mode 4 screen (rows 21 to 23), clearing each row from text column 1 to 30 (so it doesn't overwrite the box border in columns 0 and 32, or the last usable column in column 31). Returns: A A is set to 0 Y Y is set to 0
This variation is blank in the Cassette, Disc (flight), Disc (docked), 6502 Second Processor and Master versions.
Other entry points: SC5 Contains an RTS
.CLYNS
This variation is blank in the Cassette, Disc (flight), Disc (docked), 6502 Second Processor and Electron versions.
STZ DLY \ Set the delay in DLY to 0, to indicate that we are \ no longer showing an in-flight message, so any new \ in-flight messages will be shown instantly STZ de \ Clear de, the flag that appends " DESTROYED" to the \ end of the next text token, so that it doesn't
This variation is blank in the Cassette, Disc (flight), 6502 Second Processor and Electron versions.
LDA #%11111111 \ Set DTW2 = %11111111 to denote that we are not STA DTW2 \ currently printing a word
This variation is blank in the Cassette, Disc (flight), Disc (docked), 6502 Second Processor and Electron versions.
LDA #%10000000 \ Set bit 7 of QQ17 to switch standard tokens to STA QQ17 \ Sentence Case
This variation is blank in the Cassette, Disc (flight), Disc (docked), 6502 Second Processor and Master versions.
JSR BORDER \ Redraw the space view's border, which removes it \ from the screen LDX #&71 \ Call LYN with X = &71 to clear the screen from page JSR LYN \ &71 to page &75, which clears the bottom three lines \ of the screen JSR BORDER \ Redraw the space view's border
LDA #20 \ Move the text cursor to row 20, near the bottom of STA YC \ the screen
This variation is blank in the Cassette, Disc (flight), Disc (docked) and Electron versions.
Tap on a block to expand it, and tap it again to revert.
This variation is blank in the Cassette, Disc (flight), Disc (docked) and Electron versions.
INC SC+1 \ We have now blanked a whole text row, so increment \ SC+1 so that SC(1 0) points to the next row DEX \ Decrement the row counter in X BNE CLYL \ Loop back to blank another row, until we have done the \ number of rows in X
This variation is blank in the Cassette, Disc (flight), Disc (docked), Master and Electron versions.
\INX \ These instructions are commented out in the original \STX SC \ source