Patch:Quit Windows
Quit windows are windows that ask whether the player wants to quit. In Keen Vorticons there are two such windows. One appears in the title screen and allows the player to quit to DOS, the other in-game, allowing the player to quit to Dos or the Title screen. These are treated in the first section of this page.
In Keen Galaxy and Dreams there is one such window in the main menu. If 'Y' is pressed it temporarily displays a second 'Quitting...' window while the game shuts down. These are treated in the second section of this page.
Vorticons windows
Disable
These patches disable various aspects of the quit windows. This can be a bad idea as it will give players less opportunities to end things.
Always use 'Quit Y/N' or 'DOS\Title'
These patches make it so that only one quit window appears, whether or not Keen is playing a game. If the Y\N window is disable selecting 'Title' in the titlescreen will do nothing. If the DOS\Title window is disabled then the player can't end a game and start a new one, they can only quit entirely.
Always use 'Quit Y\N' in Vorticons
#Always use 'Quit Y\N' in Vorticons
%patch $0836 $90 $90
#Always use 'Quit DOS\Title' -Keen 2
%patch $0836 $90 $90
#Always use 'Quit DOS\Title' -Keen 3
%patch $0893 $90 $90
Always use 'Quit DOS\Title' in Vorticons
#Always use 'Quit DOS\Title' -Keen 1
%patch $0836 $EB
#Always use 'Quit DOS\Title' -Keen 2
%patch $0836 $EB
#Always use 'Quit DOS\Title' -Keen 3
%patch $0893 $EB
Disable Y/N
This disables the 'Quit Y\N' window meaning that the player cannot quit from the Titlescreen or similar screens by pressing Esc. Instead they will need to either start a new game and quit or have some other method patched in.
Disable 'Quit Y/N' window in Vorticons
#Disable 'Quit Y/N' window -Keen 1
%patch $0838 $5D $C3
#Disable 'Quit Y/N' window -Keen 2
%patch $0838 $5D $C3
#Disable 'Quit Y/N' window -Keen 3
%patch $0895 $5D $C3
Disable DOS\Title
This disables the DOS\Title window; this means the player cannot quit their game by pressing Esc and must do so some other way, such as a Game Over.
Disable 'DOS\Title' window in Vorticons
#Disable 'DOS\Title' window -Keen 1
%patch $086A $5D $C3
#Disable 'DOS\Title' window -Keen 2
%patch $086A $5D $C3
#Disable 'DOS\Title' window -Keen 3
%patch $08C6 $5D $C3
Completely disable
The patches here completely disable quitting; this means that the modder must patch in some alternate means of quitting or the game cannot be exited.
Completely disable quitting in Vorticons
#Completely disable quitting in Keen 1
%patch $082B $C3
#Completely disable quitting in Keen 2
%patch $082B $C3
#Completely disable quitting in Keen 3
%patch $0888 $C3
Quit Y/N window
These patches alter the window that appears in the title screen. It has two options; 'Y' quits the game and any other key closes the window. The height and width are in 8x8 tiles. See also Patch:Text patches.
Keen Vorticons Quit window patches
#Keen 1:
%patch $0839 [$0001W] #Height
%patch $083D [$000CW] #Width
%patch $0847 [$1D5BW] #Text called from
%patch $14DAB "Quit (Y/N)?" $00
#Keen 2:
%patch $0839 [$0001W] #Height
%patch $083D [$000CW] #Width
%patch $0847 [$2103W] #Text called from
%patch $19883 "Quit (Y/N)?" $00
#Keen 3:
%patch $0896 [$0001W] #Height
%patch $089A [$000CW] #Width
%patch $08A3 [$223BW] #Text called from
%patch $1BA5B "Quit (Y/N)?" $00
Keys used for options
The quit window uses an alphanumeric scancode to discern which key has been pressed. By default it responds to the 'Y' key by exiting. (All other keys close the window.) In this scheme 'A' has a value of $41, 'B' $42, etc.
Keen Vorticons Quit keypress patches
#'Y' key -Keen 1:
%patch $085C $59
#'Y' key -Keen 2:
%patch $085C $59
#'Y' key -Keen 3:
%patch $08B9 $59
'Restart Demo' quits to DOS
This patch alters things so that the player only has to select 'Restart Demo' in the Main Menu to immediately exit to DOS. (It also alters the text to be more explanatory.) It will of course conflict with many main menu patches.
Keen Vorticons Quit window patches
#Restart demo quits to DOS
%patch $95C2 $E8 $7C9CW $44 $44
%patch $15F52 "Quit to DOS" $00
Quit to DOS\Title window
These patches alter the window that appears ingame when the player presses Esc. It has two options; 'D' quits the game and exits to DOS while 'T' quits the current game and exits to the title screen. (Any other key closes the window.) The height and width are in 8x8 tiles. See also Patch:Text patches.
Keen Vorticons Quit window patches
#Keen 1:
%patch $086B [$0002W] #Height
%patch $086F [$0014W] #Width
%patch $879 [$1D68W] #Text called from 1
%patch $882 [$1D7AW] #Text called from 2
%patch $14DB8 "Quit to (D)os or" $0A $00
%patch $14DCA "(T)itle:" $00
#Keen 2:
%patch $086B [$0002W] #Height
%patch $086F [$0014W] #Width
%patch $879 [$2110W] #Text called from 1
%patch $882 [$2122W] #Text called from 2
%patch $19890 "Quit to (D)os or" $0A $00
%patch $198A2 "(T)itle:" $00
#Keen 3:
%patch $08C7 [$0002W] #Height
%patch $08CB [$0014W] #Width
%patch $8D4 [$2248W] #Text called from 1
%patch $8DC [$225AW] #Text called from 2
%patch $1BA68 "Quit to (D)os or" $0A $00
%patch $1BA7A "(T)itle:" $00
Keys used for options
The quit window uses an alphanumeric scancode to discern which key has been pressed. By default it has two options; 'D' quits the game and exits to DOS while 'T' quits the current game and exits to the title screen. (Any other key closes the window.) In this scheme 'A' has a value of $41, 'B' $42, etc.
Keen Vorticons Quit keypress patches
#Quit keys -Keen 1:
%patch $0897 $44 #D
%patch $08A7 $54 #T
#Quit keys -Keen 2:
%patch $0897 $44 #D
%patch $08A7 $54 #T
#Quit keys -Keen 3:
%patch $08F2 $44 #D
%patch $0901 $54 #T
Dreams window
The Dreams window appears when the player quits, while the game shuts down. It contains a single line of text that is light red by default. (This value can be changed to any value from $01-$0F.)
Exiting text
#Quitting window
%patch $168E4 [$0003W] #Height
%patch $168E8 [$0014W] #Width
%patch $168F6 [$4EA1W] #Text called from
%patch $168F6 [$03] #Text color (Red)
#Text
%patch $296CF "Now Exiting to DOS..." $00
Galaxy windows
The Galaxy Quit Window is accessed in the Main menu by pressing 'Esc'. It shares a setup with the 'Really end current game?' and the 'You're in a game' windows. All three windows respond similarly and patching one can affect others.
Window list
This is the list controlling which windows are displayed under various circumstances. The first option is used when the player elects to end a currently running game. The second is used when 'Esc' is pressed in the Main Menu. The third seems to be invalid and thus quit and crash the game. The Fourth, fifth and sixth all ask if the player wants to start a new game.
All pointers here require $1A890 to be added to them to give the actual address of code they refer to. Replacing any value with $07AEW (Keen 4) will disable that option from doing anything.
Keen 4
#List location
%patch $1AFAE [$07B8W]
#List length
%patch $1AFA6 [$05]
#List
%patch $1B048 [$0720W] #End current game
[$073DW] #Really quit
[$074AW] #INVALID (Quits)
[$0767W] #In a game 1
[$0767W] #In a game 2
[$0767W] #In a game 3
Quit Y/N window
The Quit window shares a setup with several other windows, the only unique thing being the text displayed and what happens when 'Y' is pressed. As such only the text is easily altered.
Keen 4
#Text
%patch $1AFCE [$495DW] #Really
%patch $1AFD3 [$496AW] #Press
%patch $337CD "REALLY QUIT?" $00
%patch $337DA "PRESS Y TO QUIT" $00
Keen 5
#Text
%patch $1BF6C [$3F4EW] #Really
%patch $1AFD3 [$3F5BW] #Press
%patch $3428E "REALLY QUIT?" $00
%patch $3429B "PRESS Y TO QUIT" $00
Keen 6
#Text
%patch $1AC3E [$43D7W] #Really
%patch $1AC43 [$43E4W] #Press
%patch $35107 "REALLY QUIT?" $00
%patch $35114 "PRESS Y TO QUIT" $00
Don't ask to quit
This patch removes the quit window; instead the player will simply exit the game when they press Esc in the main menu (Or select the quit option.)
Keen 4
#Don't ask if player wants to quit
%patch $1B04A $82
Disable quitting in Main Menu
This patch stops the player from being able to exit from the Main Menu.
Keen 4
#Can't quit from Main Menu
%patch $1B04A $AE
'Y' key in Galaxy
A single patch controls the 'Y' key for all options in Keen Galaxy. Altering this will alter not just one window or option but all that use the 'Y' key as an input. Note that it uses a standard scancode. By and large these options are 'quit related.'
Keen Galaxy 'Y' scancodes
#Y key -Keen 4:
%patch $1AF68 $15
#Y key -Keen 5:
%patch $1BF06 $15
#Y key -Keen 6:
%patch $1ABD8 $15
Quitting... window
When the player selects the QUIT option in the Main menu an presses 'Y' the game is exited. Before the game's final B800 screen appears a window will appear informing the player that the game is being quit. Nothing can interrupt this.
Galaxy Quitting window
#Keen 4:
%patch $1CDBB [$0003W] #Height
%patch $1CDBF [$0014W] #Width
%patch $1CDD0 [$4EA1W] #Text called from
%patch $33D11 "Quitting..." $00
#Keen 5:
%patch $1DD57 [$0003W] #Height
%patch $1DD5B [$0014W] #Width
%patch $1DD6C [$43A1W] #Text called from
%patch $346E1 "Quitting..." $00
#Keen 6:
%patch $1CA29 [$0003W] #Height
%patch $1CA2D [$0014W] #Width
%patch $1CA3E [$491BW] #Text called from
%patch $3564B "Quitting..." $00