diff old-trunk/ChangeLog @ 339:eb230fa7d28e

Prepare for migration to hg
author lost
date Fri, 19 Mar 2010 02:54:14 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/old-trunk/ChangeLog	Fri Mar 19 02:54:14 2010 +0000
@@ -0,0 +1,119 @@
+The following includes the various changes in each release of LWTOOLS.
+
+Each item is prefixed by a flag in []. The flags mean:
+
+[*] Project structure or other "meta" change
+[!] critical bug fix - code generation error, etc.
+[+] new feature
+[-] feature removed
+[b] minor bugfix
+[ ] general improvement
+
+Also, the software affected may follow in [].
+
+Version 3.0
+
+[*] Completely new architecture
+[b] Fixed bug that caused segfault on pass 2 if bad expression [LWASM]
+
+Version 2.5
+
+[!] Fixed error in the fix for invalid operands included in 2.4 [LWASM]
+[b] Fixed bug with "include" directive operand parsing [LWASM]
+[b] Fixed additional parsing errors with pseudo ops [LWASM]
+[b] Fixed parsing error with various conditional nesting situations [LWASM]
+[+] Added includebin directive to include the literal contents of a binary
+    file at the current assembly address. [LWASM]
+[+] Added || and && as boolean or and boolean and respectively [LWASM]
+[+] Added COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, TFRR as alternatives to
+    the TFM instruction variations for compatibility with other assemblers
+    [LWASM]
+[+] Added --6809/-9 switch to cause 6309 instructions to be rejected; also
+    included --6309/-3 switch to force default allow of 6309 instructions
+    [LWASM]
+[+] ALIGN now takes an optional padding value (ALIGN align,pad) to specify
+    the byte value that will be used for padding if needed [LWASM]
+[+] Added OS9 module target along with the OS9, MOD, and EMOD pseudo ops
+    to allow building OS9 modules [LWASM]
+[+] Added pragma "dollarlocal"/"nodollarlocal" and "dollarnotlocal"/
+    "nodollarnotlocal" to control whether $ localizes a symbol [LWASM]
+[ ] Fixed a few cosmetic issues with error reporting
+
+Version 2.4
+
+[!] Fixed off by one relocation offest for base page external references
+    generated by lwasm [LWASM]
+[b] Fixed segfault in "extern" pseudo op and allowed a symbol list as the
+    operand just like "export" [LWASM]
+[b] Fixed lack of error when there are extraneous characters at the end
+    of the operand. This did not cause incorrect code generation for correct
+    code but would silently generate incorrect code for some easy errors
+[+] 8 bit immediate operands can now be external references [LWASM]
+
+Version 2.3
+
+[*] added support for compiling using MinGW and added portions of gnulib
+    to support argp, among other things. Yah! A Windows build!
+[+] added library search path (-L) and library specification (-l) to LWLINK
+[+] added ability to specify section base addresses on the command line to
+    LWLINK (they get prepended to the built in link script)
+[+] added ability to output a "linkmap" to lwlink (--map, -m)
+[+] added LWEX0 (LWOS simple binary) target to LWLINK
+[+] added ability to extract files in LWAR
+[+] added ability to "replace" members in LWAR
+[+] added support for "sym=expr" in the opcode field; this will define a
+    global symbol (non-section) if it resolves to a constant
+[+] added operator ~ as a prefix operator for a 1s complement in LWASM
+[+] allow exporting multiple symbols (export sym,sym,sym...)
+[+] allow extern references in base page addresing mode, possibly buggy
+    still (LWASM)
+[+] handle 8 bit external references, possibly buggy still (LWLINK)
+[+] arranged for unused members of library files (archives) to be ignored
+    during linking to keep the final size of the binary down (LWLINK)
+[b] arranged for output files for lwasm/lwlink to be removed if the assembly
+    or linking fails
+[b] fixed incorrect handling of library search path which caused only the
+    last directory to ever matter
+[ ] DECB output of LWLINK now collapses contiguous output blocks into single
+    single blocks in the output file; this eliminates the explosion of
+    preambles that previously occurred
+[ ] LWLINK now displays *all* undefined symbols and references instead of
+    bailing out after the first one
+
+Version 2.2
+
+[*] created LWAR to manage library/archive files
+[+] cescapes pragma to allow C-style string escapes in FCC, FCS, and FCN
+[+] .area alias for SECTION
+[+] .globl alias for EXPORT; also accept name of symbol as operand
+[+] various compatibility directive aliases for FCB, FDB, FQB, RMB, FCC,
+    FCS, and FCN
+[+] accept "*" has a prefix for base page addressing mode
+[+] sections named "bss" or ".bss" in any case are now assumed to be
+    BSS sections. The "!bss" flag can be used to remove that assumption.
+[+] ignore lines starting with # to permit C pre-processor output to be used
+    as input to lwasm
+[+] allow "0x" and "0X" as prefixes to identify hexadecimal numbers
+[+] added support for a simple library/archive file format to LWLINK
+[b] actually show assembly errors when no list requested
+[b] pragma and --pragma now actually take multiple pragmas as documented
+
+Version 2.1
+
+[*] merged LWLINK (1.0) and LWASM to create LWTOOLS
+[+] [LWASM] pragmas can be specified on the command line
+[+] [LWASM] undefextern pragma added (undefined symbols treated as external)
+[+] documentation
+[b] [LWASM] made pragmas case insensitive
+[b] [LWASM] made EXTERN symbols never be part of a section in symbol table
+
+
+LWASM Version 2.0
+
+[*] major rewrite of the entire assembler
+[+] object file support
+
+
+LWLINK Version 1.0
+
+[*] initial released version