.BR1 JSR ZEKTRAN \ Reset the key logger buffer that gets returned from \ the I/O processor LDA #3 \ Move the text cursor to column 3 JSR DOXC LDX #3 \ Set X = 3 for the call to FX200 JSR FX200 \ Disable the ESCAPE key and clear memory if the BREAK \ key is pressed (*FX 200,3) IF _EXECUTIVE LDX #3 \ Call TALK with X = 3 to say "Elite" using the Watford JSR TALK \ Electronics Beeb Speech Synthesiser (if one is fitted \ and speech has been enabled) ENDIF LDX #CYL \ Call TITLE to show a rotating Cobra Mk III (#CYL) and LDA #6 \ token 6 ("LOAD NEW {single cap}COMMANDER {all caps} JSR TITLE \ (Y/N)?{sentence case}{cr}{cr}"), returning with the \ internal number of the key pressed in A CMP #&60 \ Did we press TAB? If not, skip the following BNE P%+5 \ instruction .BRGO JMP DEMON \ We pressed TAB, so jump to DEMON to show the demo CMP #&44 \ Did we press "Y"? If not, jump to QU5, otherwise BNE QU5 \ continue on to load a new commander JSR DFAULT \ Call DFAULT to reset the current commander data block \ to the last saved commander JSR SVE \ Call SVE to load a new commander into the last saved \ commander data block .QU5 JSR DFAULT \ Call DFAULT to reset the current commander data block \ to the last saved commanderName: BR1 (Part 1 of 2) [Show more] Type: Subroutine Category: Start and end Summary: Show the "Load New Commander (Y/N)?" screen and start the gameContext: See this subroutine in context in the source code Variations: See code variations for this subroutine in the different versions References: This subroutine is called as follows: * BRBR calls BR1 * TT102 calls via QU5
Other entry points: QU5 Restart the game using the last saved commander without asking whether to load a new commander file
[X]
Configuration variable CYL = 11
Ship type for a Cobra Mk III
[X]
Subroutine DEMON (category: Demo)
Show the demo
[X]
Subroutine DFAULT (category: Start and end)
Reset the current commander data block to the last saved commander
[X]
Subroutine DOXC (category: Text)
Move the text cursor to a specified column by sending a #SETXC command to the I/O processor
[X]
Subroutine FX200 (category: Utility routines)
Set the behaviour of the ESCAPE and BREAK keys
[X]
Entry point QU5 in subroutine BR1 (Part 1 of 2) (category: Start and end)
Restart the game using the last saved commander without asking whether to load a new commander file
[X]
Subroutine SVE (category: Save and load)
Display the disc access menu and process saving of commander files
[X]
Subroutine TALK (category: Sound)
Speak using the Watford Electronics Beeb Speech Synthesiser
[X]
Subroutine TITLE (category: Start and end)
Display a title screen with a rotating ship and prompt
[X]
Subroutine ZEKTRAN (category: Keyboard)
Reset the key logger buffer at KTRAN