You are a gallant knight trying to rescue a helpless princess (or you may be a warrior maiden on a similar quest). To succeed, and win the game, you must reach the top of the steps leading to the sorcerer’s tower. Choose a level of difficulty from 1 (easy) to 20 (impossible), then as you set out to climb, the sorcerer will bombard you with magic symbols. To destroy each of these strange missiles you must press the matching key as quickly as possible. Slowly you fight your way up the steps. Every time you are hit by a falling symbol, the strength of your enchanted sword is reduced and the game becomes more difficult. The symbols fall more quickly and drive you down the steps.
Program Notes
Lines 100-150: Define the ‘knight’ graphics characters and set up screen colours.
Lines 160-170: Allow you to choose a level of difficulty.
Lines 180-230: Display the flight of steps and store initial values of the variables.
Lines 240-270: Print the knight and jump to the win/lose message routines if appropriate.
Lines 280-340: Move a randomly selected character down the screen and decide whether the correct key is being pressed.
Lines 350-360: Move the knight one step backwards and reduce the time delay in the character-moving routine.
Lines 400-430: Move the knight one step forward if the correct key has been pressed.
Lines 500-610: Print suitable messages when the game is over.
Improvements
Skilled players can make the game harder by changing the expression for M in line 280 to M = FNR(58) + 32.

