BETA 1.5:

Fixed the FORM7 filter bug.  The automatic setting/resetting of caps lock
wasn't working in all cases...

Improved the auto-indent feature.  It now remembers what it did in the last
column and repeats it for the current column.

Turned on shift-TAB (backtab).

Fixed bug in auto-colon feature that would insert a colon in the middle
of an existing, long label.

1.5a:

Under overwhelming pressure, have added a switch to allow line insert on
<CR>.  Needless to say, I *Hate* it, but if you guys like it, that's OK.

1.5b:

Oops, forgot to reset the cursor location after doing that line insert...

1.5c:

No real changes, just cleaned up the source somewhat.

1.5d:

Added Processor Technology compatability switch.  Good for those who might
be coding for Z-80.  Wouldn't have even bothered adding a switch to turn it
off, but if I don't, some flakey version of MASM would screw it up...

1.5e:

Changed caps lock a little bit.  Relaxed caps lock twiddle for left/right/
backspace keys.

1.5f:

1.5e didn't do caps lock correctly if AE was configured for no space after
auto-comment (auto-semicolon).  1.5f fixes this, although "everyone" seems
to be using the space, and thus wouldn't see it.


BETA 1.6:

Turned on block operations.  Begin, end, copy, move, and delete.  This does
away with the clumsy, paper-oriented Mark, Cut, and Paste inherited from TED.

Also RE-ARRANGED THE FUNCTION KEY ASSIGNMENTS into meaningful functional
groups.

1.6a

Added feature that makes adding comments to existing lines easier.  If the
program is configured with the FORM7 filter on, and the "space after
semi-colon" feature is also turned on; the program will now automaticly
place the trailing space when adding a comment.

1.6b

Inhanced the 1.6a feature such that the auto-space thing works regardless of
which column the semi-colon is in, *and* regardless of how it got there.

1.6c

At the request of a beta tester, have made the character for delimiting
comments a configurable option.  So all references in the documentation about
semi-colons really mean "the configured comment delimiter".

1.6d

If the lame feature is turned off (line insert on <CR> if insert on), <CR>
now turns off insert.  Great for inserting stuff in a line, then hitting
<CR> to get out of it, and not worrying about insert status later...

BETA 1.7:

Now search & replace is working...
Also added an expiration timer in the code.  1.7 will expire on Jan 1, 1994.
Of course, this timer will be removed in the final, released, non-BETA version.

1.7a

Now exits with ERRORLEVEL 255 if some kinda error happened...

1.7b

Fixed bug in block operations.  Now if a block is defined, the program
WILL NOT allow editing inside the defined block.  You must hide the block
(^KH), do your edit, then un-hide (if needed (^KH again)).

Also fixed cutsie bug that would fill the file buffer with garbage from memory
if the specified file was a zero length file.

BETA 1.8:

Now block save & load are supported.  This is the last major feature to be
added to the program.

1.8a

Re-arranged some of the config bytes to simplify the writing of the config
program.

Re-wrote the control-F key routine.  Fixed several potential stack imbalance
problems.  Stack would get outta balance if invalid keys were pressed.

Fixed ^Z and ^W to be just like WS

BETA 1.9:

First semi-public release.  Added AECONFIG.COM so program can be customized
without having to resort to DEBUG.

Fixed bug in the load block routine.  Didn't handle EOF properly.

1.9a

Found bug minutes after 1.9 was officially released.  When using FIND,
then using block load or block save, the FIND function would forget what
it was looking for.  (due to using the same buffer).  Added a seperate
buffer for the block load/save filename to fix this.

1.9b

FIND would confuse the program if the search string was never found.  AE
wouldn't be in the right place in the edited file.  This has been fixed.

1.9c

Added support for ^UPARROW and ^DNARROW as alternates for ^W and ^Z,
respectively.  Required detection of an extended keyboard as the XT architecture
doesn't support these keystrokes for some reason.

1.9d

What the hell.  Since we are now detecting an extended keyboard, might as
well take advantage of it.  Turned on F11 and F12 as alternates for ^QB and
^QK respectively.

1.9e

Fixed bug that screwed up screen if save block was aborted with no filename.
Fixed bug that would prevent FIND or SEARCH & REPLACE from finding the search
string if it started with the very first byte of the file.

Also installed lookup table for the misc keys that had no relation to each
other.  Takes two lookup tables if the data is non-contiguous.  Results in
much more maintainable code, and saved 28 bytes to boot.


1.9f

Change of 1.5e actually didn't apply to the back space key, only the right/left
keys.  Now it also applies to the backspace key...

Also altered the page up and page down routines to be more compatable with
WordStar.  Ditto for the ^QX routine.

Then I discovered that neither ^QX nor ^QE were mentioned in the DOC file.
Corrected this, and turned on ^HOME and ^END as weenie key alternates.

1.9g

Thought I'd better make the "Insert off on <CR>" configurable so that
someone who configures for LAME off (smart), but likes insert on all
the time (i.e. initial insert on (dumb)), won't have a problem with the
program...

2.0 NON-BETA:

Now we release this onto the world.  The beta features are turned off, so it
no-longer prints BETA, nor does it ever time out and refuse to run.  This is
the final version, at least until 2.1 comes out.  No more beta.

Of course, could not resist the temptation to add just one more feature.
Turned on ^QI - jump to specified line number.  ^F8 is the weenie key alternate.
This is very useful when your assembler tells you that line so-and-so has an
error.  Just hit ^QI (or ^F8), and type in that line number.  You will be moved
straight to that line so you can fix it.

2.0a

Also fixed complicated bug relating to the search and replace function.  Didn't
work correctly under certain, oddball circumstances.  Calling it 2.0a due to
foolishly giving out a pre-release 2.0...  Dated 15 November 1993


2.0b

(Unreleased development version)

Turned on ^KP to print either marked block or whole file.

2.0c

(Unreleased development version)

Added ^B/^F9 as a "zero MSB" function.  Strips bit 7 off all bytes in the file.
Useful for converting some types of text files created with WordStar DOCument
mode (or others).

Also discovered that the AECONFIG.COM program still said it was for AE ver. 1.9.
This has been fixed to avoid confusion.

2.0d

(Unreleased development version)

Found yet another BUG in the search and replace function.  If the replace
string was the same as the find string prepended with something, a gross
recursion of replacements would commence until the remaining free space in
the file would fill with the replace string.  This has been fixed.

This fix REPLACES the fix installed in 2.0a.  This is the way it should
have been done in the first place.

2.0e

(Unreleased development version)

Added shell to DOS feature ^KF.  Very handy to be able to do this.

2.0f

(Unreleased development version)

Added auto-save feature.

2.1

Changed auto-save feature to make it transparent.  See documentation for
details

Changed insert/overstrike indicator from I/O to the more intuitive Ins/Ovr.

Status line may now be configured off, if desired.

A default file extension may now be installed into the program.

Auto-tabbing now won't if the cursor is past an existing semi-colon.  This
effectivly turns this off in a full line comment.

Various little tweeks and ehancements.

Dated 24 January 1994

2.1a

(Unreleased development version)

Fixed file name question (Save As:) so that control-x would work properly.
(Abort entry to nul)  Now also accept control-u in addition to <ESC> for
questions that wait for <ESC>. (More WS compatiblity)


2.1b

(Unreleased development version)

Fixed obscure bug in search and replace that only occurred if the status
line was turned off.  Not a serious bug, but a bug none the less.

2.1c

(Unreleased development version)

Re wrote the prompted input routine used for functions such as load and
save block, find, search and replace.  Now handles Control-X, control-U, esc.
properly and remains in the same color rather than defaulting to B&W.

This prompts me to tell fellow programmers one of MS-DOS's hidden gotcha's:
While writing this routine, I had an INT 10H call that under certain
circumstances would not get register BL (Video page select) initialized.
(Before the call.)  Instead of merely rejecting the invalid value, MS-DOS
would crash in strange and mysterious ways.  INT 10H is a Video BIOS call
that obviously isn't too well written if invalid values can cause it to
crash MS-DOS.  Moral of the story:  If your program crashes MS-DOS, suspect
poorly written BIOS and/or MS-DOS function calls that barf on invalid
data that your program is passing.

2.1d

(Unreleased development version)

Added support for ^P, insert literal keystroke.  Allows entering most
control codes directly into the file.  Use with caution!

2.2

Now all strings printed, including the signoff message, abort with error
messages, etc. are printed with an internal string print routine.  This
allowed me to eliminate a couple of almost duplicate strings (one with $
termination, one with 00 termination) AND use the default screen color instead
of B&W.  I have no idea why I've gone to all this trouble about color as I
don't use it!!!

Also resets typematic rate to default.  It came to my attention (the hard way)
that WinDOZE sets the typematic rate to ultra-fast, and doesn't bother to
reset it back to normal upon termination. (Typical MS).  This was driving me
NUTS!  If this causes a bunch of problems for folks, we can make it a
configurable option of some kind, but I don't think it will...
(yea, right...)

Double key commands (^K, ^Q) now time out after 10 seconds and revert to normal
input mode.  This helps to prevent confusion when the operator presses the first
key, then falls asleep at the switch.  (Similar to WS)

Dated 1 April 1994

2.2a

Naturally, the day after release a bug is discovered.  An internal protection
mechanism would crash on certain XT machines.  This has been removed.

Dated 4 April 1994

2.2b

(Unreleased development version)

Added feature to load block (^KR) to query about deleting the file just
loaded.  As I usually use ^KR to load a temp snippet hacked out of some
other file, I usually don't want to keep it around after I've loaded it
into the file I'm currently working on.  Any key other than Y will prevent
AE from erasing the loadfile...

2.2c

(Unreleased development version)

Beeps have been signifigantly improved.  All beeping is now handled internally.
This allows the program to have pleasant beeps, instead of utilizing the often
piercing tone that MS-DOS gives us.  There are also 3 different beeps to
indicate different conditions.

2.2d

(Unreleased development version)

Added a new config byte to turn off beeping, if desired.

2.2e

(Unreleased development version)

Prompted inputs for search string, file load/save, etc. now support ^R in
a manner similar to WordStar.  Without going into a 5K discussion of how it
is different, I'll leave that to the user.  It isn't quite the same, but very
similar.  99% of the time, the differences shouldn't matter...

2.2f

(Unreleased development version)

Line undelete (^U) is improved, and more WS compatable.  (And saved several
bytes!)

2.2g

(Unreleased development version)

Auto-Save now will upon execution of the Shell to MS-DOS feature.  This
allows shelling to MS-DOS without worrying about saving a changed file.

2.2h

(Unreleased development version)

If the program is configured to turn off insert on <CR> it will now also
turn off insert on line delete as well.

2.3

Now releasing all this development work.

Dated 1 July 1994
