home *** CD-ROM | disk | FTP | other *** search
- CHAPTER 15 RELEASE HISTORY OF A86
-
- Virtually all releases of A86 include bug fixes. If I don't say
- anything about a release, then it was essentially only bug fixes.
-
- V2.10 June 1986. Initial public release of the MSDOS version of
- A86. The last previous version ran under the Xenix
- operating system on the Altos series of computers. For
- this "public offering", I cleanup up the invocation
- syntax, upgraded the error-reporting facility, and started
- added compatbility features.
-
- V2.11 June 1986. Added RADIX command.
-
- V2.13 July 1986. Reduced memory requirements.
-
- V2.15 August 1986. Implemented COMMENT directive for
- compatibility; added floating point instruction set and DQ
- and DT directives.
-
- V2.16 August 1986. Made internal changes to accommodate forward
- referencing in D86's patch-memory mode.
-
- V2.18 November 1986.
-
- V2.90 March 1987. Test release for .OBJ support.
-
- V3.00 April 1987. Major upgrade:
-
- * added support for linkable .OBJ files
-
- * added long constants and floating-point constants
-
- * added A86LIB library tool and A86LIB support
-
- * added ability to forward-reference variables, and to add
- to and index forward references
-
- * added 286 protected-mode and NEC-specific instructions
-
- * added options not to insert errors in source, long
- forward JMP for local labels, and default decimal
-
- * added "=" equate compatibility feature
-
- * added double-quoted strings compatibility feature
-
- * parentheses no longer required for most DUP right
- operands
-
- V3.01 April 1987. Minor enhancements:
-
- * original file had been renamed to no extension, not OLD
-
- * segment overrides outlawed in 3-operand MOV
-
- * forward references outlawed in numeric-operand INC/DEC
- 15-2
-
- * add "S" suppress-symtab and "C" case-sensitivity
- switches
-
- V3.02 May 1987.
-
- V3.03 May 1987.
-
- V3.04 May 1987.
-
- V3.05 June 1987. Added the following features for MASM
- compatibility:
-
- * recognition of SEGMENT AT in non-OBJ mode
-
- * ignore END directive in non-OBJ mode
-
- V3.07 July 1987. Added features necessary for Turbo C support
- (+c, +f, +F switches; ignore DGROUP:). Generalized the
- environment variable to include macro files. Added the
- ampersand feature. Made = compatible with MASM.
-
- V3.08 July 1987.
-
- V3.09 August 1987. Legalized MOV segreg,immediate. Duplicated
- MASM functionality for case sensitive mode (A86's +C
- switch). Added ability to make aliasing EQU to an
- external name. Made FAKE.EXE into an honest EXE file,
- instead of a COM masquerading as EXE.
-
- V3.10 September 1987. Added a printed version of the manual.
- Added +c switch, reinstating case sensitivity during
- assembly, but this time without sensitivity in built-in
- symbols.
-
- V3.11 November 1987. Added the SEG operator for compatibility
- with Turbo C, and made it possible to define relocatable
- segments called CODE, DATA, or STACK, for compatibility
- with Turbo Pascal.
-
- V3.12 February 1988. Added features:
-
- * Changed the format of SYM files, so that they are much
- smaller yet hold more information. This allows D86,
- XREF, and EXMAC to work better with A86.
-
- * A86 now allows an aribtrary expression to appear in a
- conditional assembly (#IF) directive.
-
- * Added macro features, for compatibility: #V value
- operator, #S size operator, #N number operator, #EX exit
- directive, string comparison of operands, and large
- operand numbers (up to 255).
-
- * To overcome a Turbo C bug, allowed embedded blanks in
- symbols declared via an EXTRN directive. I dropped this
- feature in V3.13; see below.
- 15-3
-
- V3.13 March 1988. Made memory management more flexible, to
- allow A86 to run with less available memory. Added a
- small feature to ease Turbo C compatibility: if there is a
- segment override to a forward refernce, the reference is
- assumed to be a variable, not an immediate value. This
- eliminates the need for the EXTRN kluge of the above
- paragraph, so I dropped that kluge.
-
- V3.14 March 1988.
-
- V3.15 May 1988. Allowed up-arrow in place of equals-sign in
- invocation equates. Allowed MOV mem,mem and XCHG of a
- variety of new forms, generating sequences of instructions
- to implement the unavailable forms.
-
- V3.17 June 1988.
-
- V3.18 July 1988. For compatibility: allowed OFFSET segname, and
- implicitly converted a constant with a segment override
- into a memory type.
-
- V3.19 August 1988.
-
- V3.20 July 1989. Made internal redesign of handling of size-
- override operators (B, W, D, F, etc.) so they are handled
- more consistently. Outlawed first DATA SEGMENT without a
- strating ORG statement, forcing an explicit ORG 0 for
- future compatibility. Allowed more forward references,
- including immediate-byte quantities in all applicable
- instruction forms.
-
- V3.21 August 1989.
-
- V3.22 January 1990. Added support for additional coprocessors:
- the 80387 and the IIT-2C87. Made numerous minor changes
- to enhance MASM-compatibility.
-
-