.PrintDigit CMP #'0' \ If the character in A is not a zero, jump to zero1 to BNE zero1 \ skip the following LDA #'O' \ The character in A is a zero, so set A to ASCII "O" so \ we print zero as capital "O" instead .zero1 BIT printTextIn3D \ If bit 7 of printTextIn3D is set then we are printing BMI SpawnCharacter3D \ 3D text, so jump to SpawnCharacter3D to spawn the \ character in 3D text blocks JMP PrintCharacter \ Otherwise jump to PrintCharacter to print the single- \ byte VDU command or character in A, returning from the \ subroutine using a tail callName: PrintDigit [Show more] Type: Subroutine Category: Text Summary: Print a numerical digit, printing zero as a capital "O"Context: See this subroutine in context in the source code References: This subroutine is called as follows: * PrintInputBuffer calls PrintDigit
Arguments: A The numerical digit to be printed as an ASCII code
[X]
Subroutine PrintCharacter (category: Text)
Print a single-byte VDU command or character from a text token, optionally printing a drop shadow if the character is alphanumeric
[X]
Subroutine SpawnCharacter3D (Part 1 of 2) (category: Title screen)
Spawn a character on the landscape in large 3D blocks for drawing on the main title screen or secret code screen
[X]
Variable printTextIn3D in workspace Main variable workspace
Controls whether we are printing text normally or in 3D (as in the game's title on the title screen)
[X]
Label zero1 is local to this routine