home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Programmierung / SOURCE.mdf / programm / msdos / progtool / ae20a / ae.doc < prev    next >
Encoding:
Text File  |  1993-11-11  |  28.3 KB  |  610 lines

  1. AE.COM: A .ASM file editor.
  2.  
  3. This document describes the use of Asm Editor, ver. 2.0.  AE is an editor
  4. intended for creation and maintainance of assembly language source files.
  5. It is not intended as a general purpose editor nor an editor for other
  6. types of source files.
  7.  
  8.  
  9. LEGAL STUFF:
  10.  
  11. First, AE is not in the public domain.  It is freeware, which means it can
  12. be distributed freely, used freely, but not sold.  This is due to Ziff's
  13. copyrights on TED, the ancestor of AE.  Although TED has been so heavily
  14. modified to become AE, I just don't feel right trying to circumvent Ziff's
  15. copyright.
  16.  
  17. Second, the use of this software is entirely at the user's OWN RISK.  It is
  18. not guaranteed to do anything except occupy 0 or more bytes of disk space.
  19. ANY un-desired effects caused by this program, directly or indirectly, are the
  20. responsiblity of the USER, and the USER's sole recourse is to dis-continue use
  21. of the program.  As this program alters data files, normal data processing
  22. techniques dictate keeping reasonable back ups, as AE.COM or AECONFIG.COM
  23. are NOT guaranteed to hold your hardware, software, or data safe from harm.
  24.  
  25. In-other-words, AE.COM and AECONFIG.COM *should* perform in a manner *similar*
  26. to that set forth in this document, but there are NO GUARANTEES!
  27.  
  28. USE AT YOUR OWN RISK!!!
  29.  
  30. WordStar and WS are trademarks of WordStar International.
  31.  
  32.  
  33. 80286+ ONLY!!!
  34.  
  35. As with the 8080 vs. Z-80 question under CP/M, there comes a time when
  36. writing to the lowest common denominator no-longer makes sense.  Especially
  37. when the '286 introduced many space/time saving instructions.  So this program
  38. only works on a '286 or better.  HOWEVER, 8088 based XT users aren't entirely
  39. left out in the cold.  Replace that useless 8088 chip with a Nec V-20 (Nec V-30
  40. if you have an 8086).  For about $10, you will pick up the ability to run this
  41. program, and any other '286 only programs that don't require protected mode
  42. features (almost all 286 only programs fall into this cataogory).  PLUS you
  43. will pick up a little speed.  Instead of a Norton SI of 1.0, you'll have
  44. a SI of about 1.1 or 1.2 - every bit helps.
  45.  
  46.  
  47. Features:
  48.  
  49. o 80286 coded for speed/compactness.
  50. o Very compact program.
  51. o Edit files up to 64K in length.
  52. o Uses TRUE TABS for ease of use, and compact file size.
  53. o Enter key is always a cursor motion key.
  54. o Intelegent TAB key.
  55. o Emulates most applicable WordStar commands.
  56. o Uses cursor keys for DOS weenies.
  57. o User configurable initial insert state.
  58. o User configurable backspace key - distructive or non-distructive.
  59. o Smart, column oriented cursor.
  60. o Intelegent use of EOF.
  61. o Automaticly inserts semi-colon at beginning of comment field if none there.
  62. o FORM7 filter.
  63. o Automaticly appends colons on labels.
  64. o Asm oriented auto-indent.
  65. o Automaticly strips trailing spaces/tabs.
  66. o Automaticly tabs from operand field to comment field.
  67.  
  68. Introduction:
  69.  
  70. AE.COM is an adaptation of Tom Kihlken's TED.COM.  AE.COM is written by
  71. Mark D. Pickerill, a professional assembly language programmer.
  72.  
  73. From the author:
  74.  
  75. C and Pascal programmers have a wide array of specialized editors available
  76. to them to assist in the coding process.  Assembly Language programmers have
  77. always had to make do with a general purpose text editor.  It occured to me
  78. some time back, that much of the process of writing assembly language could
  79. be automated - thus the birth of AE.  AE takes care of most of the mundane
  80. tasks of creating well-documented code.  Keystrokes are minimized as AE
  81. anticipates what comes next, and does it for you.  It can put colons on labels,
  82. make sure you go directly to the next appropiate field, insert the semicolon
  83. for you so you can immediately type your comment, and even take care of caps
  84. lock for you so you can write upper case code with lower case comments - by
  85. far the most readable, and most popular assembly language source formatting
  86. choice.
  87.  
  88. AE closely follows the format and options of Irv Hoff's FORM7 assembly
  89. language source formatter program.  I have used this program daily for many,
  90. many years.  AE minimizes my need to use it.
  91.  
  92. I searched endlessly for an existing editor to modify, as I did not want to
  93. re-invent the wheel.  TED, by Tom Kihlken, fit the bill.  It was small, source
  94. was included, source was reasonably well commented and structured, and most
  95. important, the source was in assembly.
  96.  
  97. Please bear in mind, that while some attempt has been made towards user
  98. configurablity, this editor was created by me, for me, for my coding style.
  99. Naturally, I think my coding style is the best, but others may not agree.
  100. I comment every line, use colons after all labels (NOT allowed by MASM),
  101. etc.
  102.  
  103. *******************************************************************************
  104. If you like AE, and can use it, fine.  If it is incompatable with your coding
  105. style, it is not for you.  I developed my coding style over many years of
  106. writing assembly language for a living, and code this way for a reason.  I like
  107. my assembly source files to be pleasing to the eye, and very well documented.
  108. Nobody's source code meets my documentation standards - including mine!
  109.  
  110. AE is oriented towards a person who is used to, and prefers WordStar keystrokes.
  111. Some attempt has been made to accomodate "DOS Weenies" with F-keys, cursor
  112. arrow keys, etc., but the program remains heavily WordStar-ish.
  113. *******************************************************************************
  114.  
  115.  
  116.  
  117. FEATURES EXPLAINED:
  118.  
  119. Auto-commenting feature:  This is real time saver.  If this configurable
  120. option is turned on, it automaticly inserts semi-colons as needed.  It
  121. inserts them under two circumstances:
  122.  
  123. 1)
  124. The TAB key is pressed, moving the cursor to the comment column specified
  125. in the program installation.  (see configuration, below)  At this time,
  126. a semi-colon is inserted, so the programmer can immediately type his comment.
  127. A space is automaticly placed after the semi-colon, if AE was installed to
  128. do so.  AE does NOT insert a semi-colon if one already exists.  This allows
  129. tabbing in full line comments without conflict.
  130.  
  131. 2)
  132. The <CR> key is pressed on a line that 1) is shorter than the specified
  133. comment column, and 2) has no existing semi-colon.
  134.  
  135. This is for two reasons:
  136. 1) Blank lines in source code (semi-colon present for consistancy)
  137.    (and I don't like semicolons at the beginning of the line for a blank line)
  138. 2) The programmer isn't going to comment this line right now.
  139.    The programmer may want to go back later to comment this line in which
  140.    case the semi-colon is already there, or the line may stay un-commented
  141.    (tsk-tsk!) but the semi-colon remains for consistancy and style.
  142.  
  143. In all cases the semi-colon is inserted at the specified comment column.
  144. If the line is already longer than the specified comment column (long
  145. instructions, DB strings, etc.), no semi colon is placed.
  146.  
  147. This feature is great for going back and re-formatting and adding comments
  148. to someone else's code.  Load the code into AE, and hold down <CR> until
  149. the file as scrolled to the end.  You now have a properly placed semicolon
  150. in all uncommented lines, vastly simplifying the commenting process.
  151.  
  152. See QUIRKS, below.
  153.  
  154.  
  155. FORM7 Filter:  If this configurable option is turned on, the code is
  156. automaticly generated as upper case labels and instructions, with
  157. capitalized lower case comments.  The first non-space character is
  158. capitalized in the comment field, then the caps lock is removed so that
  159. the remaing portion of the comment is in lower case.  The programmer may
  160. use the shift keys and/or re-engage the caps lock normally as needed.  <CR>
  161. switches back to upper case.  This is similar to the output of Irv Hoff's
  162. FORM7 program. (Highly recommended!)
  163.  
  164. The feature that strips trailing spaces and tabs (detailed below), is,
  165. strictly speaking, part of the FORM7 filter.  However, AE strips off trailers
  166. regardless of whether the FORM7 filter is selected or not.
  167.  
  168. Weenies that program with lower case labels and instructions (YUK!), will
  169. want this feature turned off.
  170.  
  171. See QUIRKS, below.
  172.  
  173.  
  174. AUTO-COLONS:  AE has the ability to automaticly place a colon after all
  175. labels.  Just type the label and press either TAB or CR, and the colon is
  176. automaticly generated.  MASM users may not like this feature and want
  177. it turned off as MASM dis-allows colons on labels on EQU's, etc.
  178. Or MASM users can backspace out the colon when it isn't desired, OR
  179. press the space bar after typing the label as AE won't place a colon
  180. after the label in this circumstance.
  181.  
  182. See QUIRKS, below.
  183.  
  184.  
  185. AUTO-INDENT:  AE has a primitive auto-indent feature that is suitable
  186. for ASM programming.  Like many other features, it is user configurable.
  187.  
  188. When on, this feature remembers the state of the previous line, and applies
  189. it to the current line.  If a label or full line comment was typed in the
  190. previous line, when <CR> is pressed, it will set the cursor at the start of
  191. the current line for another label or full line comment.
  192.  
  193. If the previous line has no label or full line comment, the cursor will be
  194. placed at the first tab stop on the current line.  You may then type an
  195. instruction or <BS> to insert a label or full line comment.
  196.  
  197.  
  198. TRAILING SPACES/TABS:  AE automaticly strips any and all trailing spaces or
  199. trailing tabs when <CR> is pressed on a line.  This happens regardless of
  200. the cursor position on the line.  This means any new lines entered into a
  201. source file by AE will not have any trailing spaces/tabs.  To remove these
  202. from existing source files created by editors other than AE, either use
  203. FORM7, or, starting at the top, hold down the <CR> key until the entire file
  204. has scrolled by.  This feature minimizes file size and maximizes assembler
  205. throughput.
  206.  
  207.  
  208. FIND/FIND NEXT:  Unlike WordStar, FIND always starts at the top of the file.
  209. I always *HATED* having to do ^QR before ^QF.  FIND NEXT starts from the current
  210. location.  After entering the search string, FIND asks if you want the search
  211. to be case sensitive.  Any letter other than Y defaults to case insensitive.
  212.  
  213. Search and Replace:  This function also always starts at the top of the file.
  214. This is ALWAYS a global search and replace, the most-often-used.
  215.  
  216. Search and Replace also doesn't waste your time by updating the display while
  217. doing its job - unlike WordStar which shows every single replacement done.
  218.  
  219. TABs:
  220.  
  221. AE uses TRUE TABs.  This means 1) a single TAB replaces up to 8 spaces, and
  222. 2) TABs are the standard length of 8 characters.  Non-standard tab stops, such
  223. as 4 or 10 are not supported.
  224.  
  225. If insert status is on, a tab is inserted.
  226.  
  227. If insert status is off, the cursor is moved to the next tab stop, over
  228. any characters that are there.  Just functions as a cursor move key.
  229.  
  230. If insert status is off, and the next tab stop is beyond the current end
  231. of line, a tab is appended to the end of the line.
  232.  
  233. This is contrary to some editors I've used that either insert a tab
  234. regardless of insert status; or, with insert off, replace the current
  235. character with a tab.  This way is far more useful, especially when
  236. writing assembly code which is TAB oriented anyway.
  237.  
  238. AUTO-TABS:  This configurable option simplifies operation for the programmer
  239. by automaticly tabbing from the operand field to the configured comment column.
  240. Thus:
  241.  
  242. LABEL:    MOV    AL,0FFH        ; Comment
  243.  
  244. ... The operand field starts with the AL,0FFH.  After typing the last of this,
  245. the TAB key is pressed and the cursor moves to the configured comment column,
  246. without stopping at intermediate tab stops along the way.  The semi-colon is
  247. inserted, etc, if AE is configured this way.
  248.  
  249. The <RETURN> key.  This acts differently from any other editor I've ever
  250. used, and I like it this way.  <RETURN> is always a cursor movement key,
  251. regardless of insert status.  Only if the editor needs to append a new
  252. line on the end of the file does it actually do anything.  This allows
  253. the <RETURN> key to be pressed halfway through a line, and just have it
  254. move to the beginning of the next line.  If you need to insert a line in
  255. the middle of a file, or in the middle of a line, use ^N.  Furthermore,
  256. <RETURN> can be configured to turn OFF insert, unless the LAME feature is
  257. turned on.
  258.  
  259. The LAME feature makes AE as lame as any other editor.  Newline is inserted
  260. if insert status is on.  Needless to say, the neat feature of turning off
  261. insert on <CR> doesn't apply here.  This feature was provided by popular
  262. request.  <GRIN>  See configuration, below.
  263.  
  264. The <BACKSPACE> key.  I hate distructive backspaces.  Therefore, backspace
  265. is just another cursor movement key.  I realize a lot of people do like
  266. distructive backspaces.  Therefore it is user configurable to be this way.
  267.  
  268. INITIAL INSERT STATUS.  I think I'm the only person in the world who likes
  269. to fire up an editor with insert turned OFF.  Every other editor in the
  270. world, except WS where it is configurable, comes up with insert ON.  Some
  271. don't even allow you to turn insert off!  Needless to say, AE comes up with
  272. insert OFF.  As I'm probably the only person in the world who will like this,
  273. it is configurable.
  274.  
  275.  
  276. MOVING VERTICALY:  A very nice feature of AE, which I've always wanted, is
  277. the way the cursor column is handled when moving verticaly.  Let's say the
  278. cursor is positioned at the end of a fairly long line.  The up-arrow or ^E
  279. is pressed.  The cursor moves up to the next line.  Let's say the next line
  280. up happens to be a short line.  The cursor moves to the end of the short line.
  281. So far, this is no different from any other editor that does not place trailing
  282. blanks to fill in a line.  Now let's say we move up again.  This next line up
  283. is even longer than the first line we started from.  In this case, the cursor
  284. will be positioned *in the same column it was to start with*!  WS drove me
  285. nuts when moving verticaly in the comment field of an assembly language source
  286. file.  AE is much nicer.  I cannot claim credit for this, it was inheirited
  287. from TED.
  288.  
  289.  
  290. PROCESSOR TECHNOLOGY COMPATIBILITY:  AE is compatable with the Processor
  291. Technology assembler's way of allowing a * in the first location of a line
  292. to mean a full line comment, without having to use a semi-colon.  Now, I
  293. doubt that anyone is using this assembler anymore (or if they are, not on
  294. a MuSh-DOS machine.), but this quirk has crept into several subsequent
  295. products, including ASM for CP/M, and the FORM7 program.  Even my assembler,
  296. the 2500 A.D. assembler allows this, although it carries it a bit farther.
  297. So a * in the first column is the same as a semi-colon, and the FORM7
  298. filter will key off of it.
  299.  
  300. Just in case some flakey future version of MASM uses a * as the first character
  301. in a label to mean something special, there is a config byte to turn this off.
  302.  
  303. The bottom line:  You probably don't care.  Leave on unless you code with a
  304. * as the first character of a LABEL.
  305.  
  306. EDITING BEYOND 80 COLUMNS:
  307.  
  308. AE retains the capability inherited from TED of allowing editing beyond
  309. 80 columns.  Any line longer than 80 columns will have a diamond placed in
  310. the rightmost column.  Using ^LEFTARROW and ^RIGHTARROW will shift the display
  311. 8 characters at a time to be able to "reach" this longer text.  ASM source is
  312. seldom wider than 80 chars anyway, but the capability is there, if needed.
  313.  
  314.  
  315. QUIRKS:
  316.  
  317. Like any program that attempts to do your thinking for you, there are times
  318. where it isn't doing what you want it to.  AE is no exception.  A good deal
  319. of care has gone into the program, in an attempt to make it as un-obtrusive
  320. as possible.  A balance between doing your thinking for you vs. getting in the
  321. way when you want to do something else has been struck.  As mentioned before,
  322. AE assumes that you write your ASM source much like I do.  It assumes that you
  323. use the TAB key to move to the next field.  It assumes you press <CR> when
  324. finished typing in a new line.  Most of the automatic features are keyed off
  325. of either the TAB key or <CR>, or both.
  326.  
  327. Here are some of the quirks you may encounter...
  328.  
  329. FORM7 filter:  If there is a semi-colon inserted in a quoted string,
  330. caps lock will want to fight you.  Pressing the semicolon will turn on
  331. caps lock.  Then 1 or 2 characters later, it will come off.  The editor will
  332. also insert the "space after semicolon" if configured this way.  You'll have
  333. to go back and delete this space manualy.
  334.  
  335. This is due to AE making the assumption that a semi-colon means a comment.
  336. It doesn't know about quoted strings.  As semicolons aren't used too often
  337. in quoted strings, it isn't felt worth the code space to work around this
  338. problem.
  339.  
  340. Code to detect all possible permutations of quoted strings with single quotes,
  341. double quotes, reverse quotes, and things like '' to actually insert the quote
  342. character into the literal string, would be big, clunky, and ugly... Personally,
  343. I can't remember the last time I had a semi-colon in a quoted string anyway.
  344.  
  345. A work-around is to DB 3BH or just toggle the caps lock as needed.
  346.  
  347. Auto commenting:  Similar to the FORM7 quirk, if there is a semi-colon in
  348. a quoted string, the auto comment feature won't work.  You will have to insert
  349. the semi-colon manualy, and handle the formatting of the comment manualy.
  350.     
  351.  
  352. AUTO-COLONS:  Does not automaticly place a colon after the label if any
  353. key besides <CR> or TAB is pressed when typing the label.  This has been
  354. left this way in order to accomodate MASM users who cannot have colons after
  355. some labels.  MASM users are advised to press <SPACE> after a un-coloned label,
  356. or use one of the control keys.  (or turn this feature off).
  357.  
  358. EDITING MARKED TEXT:  Not allowed.  If you have a block defined, you cannot
  359. edit inside it as long as it is visably marked.  Use ^KH to hide the block, edit
  360. it, then ^KH to un-hide it again. Search & Replace, since it is global, will
  361. not function if there is a defined block visable *anywhere* in the file.
  362.  
  363. In a similar vein, block load from file is non-functional while the cursor
  364. is inside a marked block.  Turn off, then load, or move outside the marked
  365. area.
  366.  
  367. FIND, SEARCH & REPLACE:  If using these functions, espcially search & replace
  368. with a large file where there will be a lot of replacements, IF POSSIBLE, use
  369. the case sensitive feature instead of the default case insensitive.  The
  370. exact match routine for the case sensitive routine is MUCH faster than the
  371. "mask and compensate" that must be performed for the case insensitive search.
  372. So you may have a situation where you know the case is the same, or it's
  373. numeric data, or whatever, then you can use the case sensitive search with
  374. the same result.
  375.  
  376.  
  377. ALL QUIRKS:  Yes, it *is* possible to "fix" most of these.  However, doing so
  378. would result in the editor becoming too rigid to be able to work around the
  379. automatic features, when desired.  It is felt that the balance is best served
  380. this way.  It goes without saying, that the way *I* code, minimizes my
  381. encountering these quirks.
  382.  
  383.  
  384. WORDSTAR KEYS:
  385.  
  386. There are 4 catagories of WordStar emlation:
  387.  
  388. Catagory 1:  Absolutely, positively, *MUST* act just like WordStar.  Item
  389. 2, below, and most other implemented commands fit this description.
  390.  
  391. Catagory 2:  Needs to be close, but need not be exact.  Items 1 & 4, below,
  392. fit this description.
  393.  
  394. Catagory 3:  Needs to be close, but needs some kind of improvement.  Items
  395. 3 (in the default configuration), and 6, fit this description.
  396.  
  397. Catagory 4:  Not implemented.  Either non-applicable, or too complicated for
  398. the amount of times the function is required.  ^KN, enter column mode, comes
  399. to mind.  Nice feature when you need it, but you seldom do.
  400.  
  401. Most WordStar keys are catagory 1 implementations.
  402.  
  403. A few exceptions:
  404.  
  405. 1) Word Left and Word Right (^A and ^F).  Merely move to the previous/next
  406. tab stop.  Felt to be good enough for programming.
  407.  
  408. 2) To the best of my knowledge, AE handles tabs just like WS.
  409.  
  410. 3) <CR> acts just like WS if AE has been configured this way.  The default
  411. configuration does not.  See above.
  412.  
  413. 4) ^KS and ^KX.  Save and resume/save and exit.  Invoke just like WS, but
  414. have the added question about file name.  This allows AE to be invoked without
  415. a filename or utilized in a SAVE AS: mode.
  416.  
  417. 5) As stated above, an initial FIND always starts at the top of the file.  Find
  418. next is just like WS.  FIND only asks about case sensitivity, does not have
  419. the other WS options.
  420.  
  421. 6) Depending on what version of WS you may have been using, the handling of
  422. the cursor when moving verticaly over a tab:
  423.  
  424. LAB_L:    MOV    AH,09H        ; Comment
  425.     JMP     SHORT SOMEWHERE    ; Exit
  426.  
  427. ...asuming the _ in the above label is the location  of the cursor, WS 4.0,
  428. when the cursor was moved DOWN (^X), would move the cursor to the beginning
  429. of the JMP instruction, unlike WS 3.3, which would move the cursor to the
  430. beginning of the line (beginning of the TAB).
  431.  
  432. The 4.0 way drove the author nuts!  AE does it the 3.3 way.  In fact, the 4.0
  433. way was the beginning of the reason for AE!
  434.  
  435. 7) Block marking is a catagory two implementation.  Unlike WS, it doesn't matter
  436. if you use ^KB, then move up to do a ^KK.  With AE, always start a block with
  437. ^KB, then move to the end, even if it is a backwards move, then define the
  438. end with ^KK.  AE will swap them internaly for you.  (Rather than printing
  439. a stupid error message.)  ^KK *cannot* be used first. (Nothing happens)
  440.  
  441.  
  442. AE keystrokes:
  443.  
  444. The following is a chart of all keystrokes AE accepts.  It should be noted
  445. that some commands are only present in the WordStar column.  It is next
  446. to impossible to use weenie keys for everything without resorting to a menu.
  447. Most commands missing from the weenie column won't be missed by non-WordStar
  448. users anyway.  (I hope).
  449.  
  450. Some weenie keys may not make much sense and be hard to remember, esp.
  451. the ^F keys.  Tried to make the ^F keys as intuitive as possible.  Most
  452. other weenie keys should be fairly intuitive.  Remember, the program *is*
  453. oriented towards folks used to WordStar (for better or worse).
  454.  
  455.  
  456. WordStar key        DOS weenie key        Action
  457. ---------------------------------------------------------------------------
  458. ^KQ            F1            Abort edit
  459. ^KX                     F2            Save & exit
  460. ^KS            ^F2                Save and resume editing
  461. ^KB            F3            Begin block
  462. ^KR            ^F3            Read block from disk file
  463. ^KK            F4            End block
  464. ^KH            ^F4            Hide/unhide block (toggle)
  465. ^KC            F5            Copy block
  466. ^KW            ^F5            Write block to disk file
  467. ^KV            F6            Move block
  468. ^KY            ^F6                Delete block
  469. ^QF            F7            Find
  470. ^L            ^F7            Find next
  471. ^QA              F8            Search & Replace
  472. ^QI            ^F8            Jump to specified line #
  473. ^QY            F9            Delete to EOL
  474. ^Y            F10            Delete line
  475. ^U            ^F10            Undelete line
  476. ^QB            F11 *            Jump to start of block
  477. ^QK            F12 *            Jump to end of block
  478. ^QR            ^PGUP            Top of file
  479. ^QC            ^PGDWN            End of file
  480. ^R            PGUP            Go up one screen
  481. ^C            PGDWN            Go down one screen
  482. ^QS            HOME            Go to beginning of line
  483. ^QD            END            Go to end of line
  484. ^E            UPARROW            Go up one line
  485. ^X            DOWNARROW        Go down one line
  486. ^S            LEFTARROW        Go left one char
  487. ^D            RIGHTARROW        Go right one char
  488. ^W            ^UPARROW *             Scroll up one line
  489. ^Z            ^DNARROW *             Scroll down one line
  490. ^A            SHIFT-TAB              Move to previous tab stop
  491. ^QE            ^HOME            Go to upper right of screen
  492. ^QX            ^END            Go to lower left of screen
  493. ^F or <TAB>        TAB                    Move to next tab stop
  494. ^V            INS            Toggle insert state
  495. ^G            DEL            Delete character under cursor
  496. ^N            ^ENTER            Insert line
  497. ^K0 - ^K9                    Place marker 0 - 9.
  498. ^Q0 - ^Q9                    Jump to marker 0 - 9
  499. ^T                        Delete word right
  500.                         ^RIGHTARROW        Shift display right 8 chars
  501.                         ^LEFTARROW              Shift display left 8 chars
  502.  
  503.  
  504. * Extended keyboard only.
  505.         
  506. USER CONFIGURABLE ITEMS:
  507.  
  508. You can use the supplied program AECONFIG.COM to configure AE.COM.  This
  509. is a simple get-the-job-done program.  AECONFIG prompts include the
  510. recommended settings, following these will result in an "out of the box"
  511. copy of AE.COM.
  512.  
  513. Or following items can be patched in the .COM file with DEBUG.
  514. All values are hex unless noted.
  515.  
  516.  
  517. OFFSET          Default Meaning
  518. 0103        00    Inital insert status, 00=insert off, FF=insert on
  519. 0104        FF    FF=non-distructive backspace, 00=distructive backspace.
  520. 0105        FF    FF=Handle EOF properly.  Append a single EOF when
  521.                         saving, stop at the first EOF when loading.
  522.                         00=Do MS-DOS style EOF handling.  Ignore when loading,
  523.                         do not append when saving.
  524. 0106        FF    FF=Do backup files, 00=don't do backup files
  525. 0107        FF    FF=Auto comment feature.  Insert semicolons.
  526.             00=Auto comment off.
  527. 0108        FF    FF=Space after auto comment semi-colon
  528.             00=No space.
  529. 0109        FF      FF=FORM7 filter on. 00 = FORM7 filter off
  530. 010A           FF      FF for auto colons, 00 for no auto-colons.
  531. 010B            FF      FF for auto-tab to comment column
  532. 010C        FF    FF for auto indent, 00 for no auto indent
  533. 010D          00    FF to allow <CR> to generate new line with insert on.
  534.             00 for <CR> to be cursor motion only
  535. 010E        FF    FF for Processor Technology compatiblity.  Most
  536.                         users will leave this on.
  537. 010F        FF    FF to allow <CR> to turn OFF insert.  Meaningless if
  538.             LAME is turned on. (010D=FF)
  539. 0110        0A    Color for color users.  Green = 02, intense green = 0A
  540.                         If this byte is 00, AE will use the existing attribute.
  541.                         This is for folks that like to set default colors from
  542.                         DOS with one of the many programs available to do this.
  543. 0111        20    (32 Decimal)  Column comments start in for auto-comment
  544.                         If this byte is not a multiple of 8, AE sets this to
  545.                         the next lowest multiple of 8.
  546. 0112        ;    (ASCII Value)  Comment delimiter.  Normally a semi-colon
  547.             Change to meet your needs.
  548. 0113        2E    DO NOT CHANGE!! (Dot for file extension)
  549. 0114-0116    BAC    (ASCII values)  Backup file extension.
  550. 0117        00    DO NOT CHANGE!! (Termination for file extension)
  551.  
  552.  
  553. FUTURE VERSIONS:
  554.  
  555. A future version of AE will probably be able to at least be able to edit files
  556. as large as available memory, as opposed to the current 64K limit.  The current
  557. 64K limit hasn't been too much of a limitation to me, but it would be nice to
  558. be able to edit larger files.  Rest assured, that an AE capable of larger files
  559. *will* require a '386 or better.  "I don't do segments."
  560. Rumor has it that MS-DOS 7 will have 32 bit extensions.  If this is true, I'll
  561. be using them...
  562.  
  563. Virtualizing.  This is the ability to buffer to disk all but the immediate
  564. portion of the file you're editing.  Would be nice, but probably won't happen.
  565. The program is too hard structured for that to be an easy task.
  566.  
  567. Doubtless, as I and others use the program, other enhancements will be needed.
  568. Look for new releases from time-to-time.  I use this program daily, and continue
  569. to find things that aren't quite right and pop over and tweek the program a
  570. little more.
  571.  
  572. THINGS YOU WON'T SEE:
  573.  
  574. There are several things you won't see, either because I don't do them, or
  575. the necessary coding is beyond the scope of the project.
  576.  
  577. Mouse support:  Mice are great for CAD programs, draw/paint programs, etc.
  578. They don't belong in text editors, nor do they belong in operating systems...
  579.  
  580. Color support:  There is rudimentary color support already built into the
  581. program.  I am willing to listen to suggestions on how to "improve" this.
  582. However, as I am a color refusenik, I'm not going to go overboard on this.
  583. Color monitors HURT my eyes...
  584.  
  585. Tab stops other than 8:  Sorry folks, tab stops are 8 characters each, always
  586. have been.  I have had it suggested to me that the label field be longer, say
  587. 10 characters.  First, the 8 character tab stop thing is hard coded into the
  588. program, inheirited from TED (as it should be).  Second, it is a religious
  589. issue to me, I don't believe in long labels (or non-standard TAB stops).
  590. Long labels can always be placed on their own line, AE makes this very
  591. easy to do.  Third, as stated at the top of the documentation, AE assumes
  592. the user codes in a similar manner to the guy who wrote it. <GRIN>
  593. And fourth, TRUE tabs are 8 characters.  MS-DOS is the only OS I've
  594. encountered that doesn't rigidly enforce this.
  595.  
  596. KUDOS:
  597.  
  598. A number of folks helped test AE and pestered me with bug reports and
  599. "Requests".  The person most responsible for a good BETA cycle was Larry
  600. Alm.  Clarence Dyson, Bob Shepard, and Robert Cabral were also very helpful.
  601.  
  602. SUPPORT:
  603.  
  604. The "home" BBS for AE.COM is the Hacker Heaven BBS at (408) 375-5455.
  605. We currently support baud rates from 300 to 14.4K+v.42bis.
  606.  
  607. In this day of media hype, it is necessary to point out that the word
  608. "Hacker" means computer programmer, NOT computer crimminal.  We do not
  609. tolerate illegal activities of any kind.
  610.