KeenEdit is a Commander Keen Episode 1 editor. It should work
with episodes 2 and 3, but as I don't have them, I don't know.
If you use this editor to make a level or more, even if you
don't register it, I would appreciate it if you gave me a copy
of the levels you make. Also, if you find any bugs, have any
questions, or would like to see any things added to it, please
e-mail (or snail mail) me and let me know.

If you are making a bug report, please give me all available
data about what you were doing, when the error occurred, and
what the error was.

Snail mail address:

Jeremy Haubold
1401 Lincolnway West
South Bend, Indiana
46628

E-mail address:

ak620@torfree.net

Requirements:
500K of free conventional memory
286+
KeenEdit will run on any speed of computer, but at least 16
Mhz is recommended.

Sorry, but there is no mouse support. This is coming soon!

Files in this package should include:

KEENEDIT.EXE  Main program
START.EXE     Initialization program: run this one rather than
              KEENEDIT.EXE
KEENEDIT.TXT  This file
LEGAL.TXT     Legal documentation
ORDER.FRM     Order form for registration
FILE_ID.DIZ   Description file
KEENDATA.TXT  Description of blocks used
              in Commander Keen

The following is a list of the keys used to control KeenEdit.
They are divided into five sections:

(1) Movement keys: these maneuver you around the level
(2) Block management keys: these have to do with putting blocks
    on the screen
(3) Sprite management keys: these have to do with putting sprites
    on the screen
(4) Level management keys: these keys are used to change the level
    parameters
(5) Miscellaneous: the other keys

Movement keys:

The arrow keys (with Num Lock off) scroll the viewing area.
The arrow keys (with Num Lock on) move the little white cursor.
PgUp and PgDn (With Num Lock off) scroll the viewing area up
   and down one page.
/ and * scroll the viewing area left and right one page.
On the keypad with Num Lock on, the following five keys are:
7: moves the white cursor to the upper left corner of the screen.
9: moves the white cursor to the upper right corner of the screen.
1:    "                       "  lower left    "              "
3:    "                       "  lower right   "              "
5:    "                       "  center of the screen.

Block management keys:

C: Allows you to input a new block value. (in hexadecimal)
G: Gets the block at the current cursor position. (This is a simple
   way of copying a certain block if you don't know its hexadecimal
   value.
Space Bar: Puts the current block where the white cursor is.
]: Increases the value of the current block by one.
[: Decreases the value of the current block by one.
F: Fills the area marked by the markers (explained below) with a
   custom block.
D: Replaces the blocks of a certain type in the marked area with
   another block.
M: Copys the marked section of blocks to the current cursor location.


Sprite management keys:

Alt+1: Erases the sprite where the cursor is.
Alt+2: Puts sprite value 1 where the cursor is.
Alt+3: Puts sprite value 2 where the cursor is.
...
Alt+0: Puts sprite value 9 where the cursor is.
Alt+-: Puts sprite value 10 where the cursor is.
Alt+=: Puts sprite value 255 where the cursor is.
   (Sprite value 255 is the starting place for Keen)
! (Shift+1): Erases all the sprites on the level. (After confirmation)
S: Counts the number of sprites and displays the number at the bottom
   of the screen. For some reason you can't put more then seventy-some
   sprites on a level.
P: Puts the current sprite at the cursor location.
O: Allows you to input a new sprite value. This is the sprite value
   which is used when P is pressed.
I: Gets the sprite from the cursor location and replaces the above value
   with it.

Level management keys:
- and =: Increase and decrease the level width.
\ and Backspace: Increase and decrease the level height.
Alt+S: Saves the current level
Alt+L: Loads a new level
~: Erases the entire level. (After confirmation)

Miscellaneous:
Q and W: Set two markers on the level where the cursor is.
E: Erases both of the markers.
Enter: Redraws the screen. (In case something messes the
       screen up.

B: Puts a border around the level at its current size. This border is
   necessary because Keen disregards the outer two layers of the level.
V: Erases everything outside the border.
Control-Escape: Quits to DOS without saving the level.
Shift-F1: Shifts all the sprites left one block
Shift-F2: Shifts all the sprites right one block
          I put these two in because sometimes when a level is loaded,
          the sprites are skewed to one side or another. If this happens,
          just use these two.
