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 . 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 if insert on), now turns off insert. Great for inserting stuff in a line, then hitting 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 " 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 for questions that wait for . (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 it will now also turn off insert on line delete as well. 2.3 Now releasing all this development work. Dated 1 July 1994