Patch:F10 T Cheat

From KeenWiki
Jump to navigation Jump to search

The F10 + T or sprite test cheat in Keen Galaxy displays information about the current level's cached sprites. This is useful for modders as it shows how every single sprite bitmap the level can use and the memory they take up, so they can see if any are wrong or missing. This is the original purpose of the cheat and it is of little value to players.

The text is interesting; two different lines are used for 'sprite test' and a dividing '----' then the rest of the window text is one single line, with 'Shift:' being a separate piece of text placed at the top of the window. Finally if a sprite is not cached '-----' is displayed in the 'Memory' row, this too needs a call. In Keen 5 the dashed lines are not separate and are also shared with the Patch:F10 M Cheat (Instead of three different dashed lines the game uses the same dashed line but calls it from different places, resulting in dashed lines of different lengths being displayed.) The last piece of text written is a simple 'move down a line' used to position the sprite image away from the 'shift:' text. Again in Keen 5 it is shared with other windows.

Removing the cheat window frees up a considerable amount of space.


Cheat window

Keen 4

#F10 + T window
%patch $6D48  [$0011W] #Window height
%patch $6D4B  [$001EW] #Window width
%patch $6D61  [$0427W] #Text call (Sprite Test)
%patch $6D6D  [$0433W] #Text call (--)
%patch $6D91  [$043FW] #Text call (Chunk)
%patch $6F6B  [$0493W] #Text call (Memory -----)
%patch $6FEF  [$049BW] #Text call (Shift)
%patch $7008  [$04A2W] #Text call (Move down a line)

#Text
%patch $2F297 "Sprite Test" $00
%patch $2F2A3 "-----------" $00
%patch $2F2AF "Chunk:" $0A
              "Width:" $0A
              "Height:" $0A
              "Orgx:" $0A
              "Orgy:" $0A
              "Xl:" $0A
              "Yl:" $0A
              "Xh:" $0A
              "Yh:" $0A
              "Shifts:" $0A
              "Mem:" $0A $00
%patch $2F303 "-----" $00
%patch $2F30B "Shift:" $00
%patch $2F312 $0A $00

Keen 5

#F10 + T window
%patch $6CFC  [$0011W] #Window height
%patch $6D00  [$001EW] #Window width
%patch $6D16  [$03CBW] #Text call (Sprite Test)
%patch $6D22  [$0394W] #Text call (--)
%patch $6D46  [$03D7W] #Text call (Chunk)
%patch $6F1F  [$039AW] #Text call (Memory -----)
%patch $6FA4  [$0419W] #Text call (Shift)
%patch $6FBD  [$03C9W] #Text call (Move down a line)

#Text
%patch $3070B "Sprite Test" $00
%patch $306D3 "------------" $00 #This belongs to the F10 M window too!
%patch $30717 "Chunk:" $0A
              "Width:" $0A
              "Height:" $0A
              "Orgx:" $0A
              "Orgy:" $0A
              "Xl:" $0A
              "Yl:" $0A
              "Xh:" $0A
              "Yh:" $0A
              "Shifts:" $0A
              "Mem:" $0A $00
%patch $30759 "Shift:" $00

Keen 6

#F10 + T window
%patch $6B16  [$0011W] #Window height
%patch $6B1A  [$001EW] #Window width
%patch $6B30  [$039FW] #Text call (Sprite Test)
%patch $6B3C  [$03ABW] #Text call (--)
%patch $6B60  [$03B7W] #Text call (Chunk)
%patch $6D3A  [$040BW] #Text call (Memory -----)
%patch $6DBE  [$0413W] #Text call (Shift)
%patch $6DD7  [$041AW] #Text call (Move down a line)

#Text
%patch $310CF "Sprite Test" $00
%patch $310DB "-----------" $00
%patch $310E7 "Chunk:" $0A
              "Width:" $0A
              "Height:" $0A
              "Orgx:" $0A
              "Orgy:" $0A
              "Xl:" $0A
              "Yl:" $0A
              "Xh:" $0A
              "Yh:" $0A
              "Shifts:" $0A
              "Mem:" $0A $00
%patch $3113B "-----" $00
%patch $31143 "Shift:" $00
%patch $3114A $0A $00


Key that activates cheat

This patch alters what key activates the sprite test cheat. (See Patch:Scancodes.) By default this is 't' Setting this to $C647, $BCAF or $C7D5 (in Keen 4, Keen 5 and Keen 6 respectively.) will disable the cheat .

Keen 4

#F10-T key
%patch $76C6 {$C66FW}

Keen 5

#F10-T key
%patch $767B {$BCD7W}

Keen 6

#F10-T key
%patch $749B {$C7FDW}


Disable F10-T

This cheat will disable the sprite test cheat entirely. It frees up 390 bytes of space.

Keen 4

#Disable sprite test cheat (Free $6D39-$6EBF)
%patch $76C4 $EB $12

Keen 5

#Disable sprite test cheat (Free $6CEE-$6E74)
%patch $7679 $EB $12

Keen 6

#Disable sprite test cheat (Free $6B08-$6C8E)
%patch $7499 $EB $12


Disable F10-T and F10-V

This cheat will disable the sprite test cheat entirely as well as the Add VBLs cheat.

Keen 4

#Disable sprite test cheat (Free 390 bytes at $6D39, $76DB-$7760)
%patch $76C4 $E9 $009AW

Keen 5

#Disable sprite test cheat (Free 390 bytes at $6CEE, $767C-$7715)
%patch $7679 $E9 $009AW

Keen 6

#Disable sprite test cheat (Free 390 bytes at $6B08, $74B0-$7535)
%patch $7499 $E9 $009AW