annotate old-trunk/ChangeLog @ 372:90de73ba0cac

Created a useful debug framework and adjusted lw_expr_print() to return a "static" dynamic string
author lost@starbug
date Thu, 22 Apr 2010 18:19:06 -0600
parents eb230fa7d28e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
339
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
1 The following includes the various changes in each release of LWTOOLS.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
2
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
3 Each item is prefixed by a flag in []. The flags mean:
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
4
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
5 [*] Project structure or other "meta" change
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
6 [!] critical bug fix - code generation error, etc.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
7 [+] new feature
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
8 [-] feature removed
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
9 [b] minor bugfix
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
10 [ ] general improvement
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
11
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
12 Also, the software affected may follow in [].
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
13
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
14 Version 3.0
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
15
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
16 [*] Completely new architecture
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
17 [b] Fixed bug that caused segfault on pass 2 if bad expression [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
18
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
19 Version 2.5
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
20
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
21 [!] Fixed error in the fix for invalid operands included in 2.4 [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
22 [b] Fixed bug with "include" directive operand parsing [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
23 [b] Fixed additional parsing errors with pseudo ops [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
24 [b] Fixed parsing error with various conditional nesting situations [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
25 [+] Added includebin directive to include the literal contents of a binary
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
26 file at the current assembly address. [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
27 [+] Added || and && as boolean or and boolean and respectively [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
28 [+] Added COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, TFRR as alternatives to
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
29 the TFM instruction variations for compatibility with other assemblers
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
30 [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
31 [+] Added --6809/-9 switch to cause 6309 instructions to be rejected; also
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
32 included --6309/-3 switch to force default allow of 6309 instructions
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
33 [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
34 [+] ALIGN now takes an optional padding value (ALIGN align,pad) to specify
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
35 the byte value that will be used for padding if needed [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
36 [+] Added OS9 module target along with the OS9, MOD, and EMOD pseudo ops
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
37 to allow building OS9 modules [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
38 [+] Added pragma "dollarlocal"/"nodollarlocal" and "dollarnotlocal"/
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
39 "nodollarnotlocal" to control whether $ localizes a symbol [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
40 [ ] Fixed a few cosmetic issues with error reporting
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
41
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
42 Version 2.4
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
43
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
44 [!] Fixed off by one relocation offest for base page external references
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
45 generated by lwasm [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
46 [b] Fixed segfault in "extern" pseudo op and allowed a symbol list as the
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
47 operand just like "export" [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
48 [b] Fixed lack of error when there are extraneous characters at the end
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
49 of the operand. This did not cause incorrect code generation for correct
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
50 code but would silently generate incorrect code for some easy errors
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
51 [+] 8 bit immediate operands can now be external references [LWASM]
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
52
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
53 Version 2.3
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
54
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
55 [*] added support for compiling using MinGW and added portions of gnulib
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
56 to support argp, among other things. Yah! A Windows build!
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
57 [+] added library search path (-L) and library specification (-l) to LWLINK
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
58 [+] added ability to specify section base addresses on the command line to
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
59 LWLINK (they get prepended to the built in link script)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
60 [+] added ability to output a "linkmap" to lwlink (--map, -m)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
61 [+] added LWEX0 (LWOS simple binary) target to LWLINK
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
62 [+] added ability to extract files in LWAR
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
63 [+] added ability to "replace" members in LWAR
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
64 [+] added support for "sym=expr" in the opcode field; this will define a
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
65 global symbol (non-section) if it resolves to a constant
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
66 [+] added operator ~ as a prefix operator for a 1s complement in LWASM
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
67 [+] allow exporting multiple symbols (export sym,sym,sym...)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
68 [+] allow extern references in base page addresing mode, possibly buggy
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
69 still (LWASM)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
70 [+] handle 8 bit external references, possibly buggy still (LWLINK)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
71 [+] arranged for unused members of library files (archives) to be ignored
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
72 during linking to keep the final size of the binary down (LWLINK)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
73 [b] arranged for output files for lwasm/lwlink to be removed if the assembly
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
74 or linking fails
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
75 [b] fixed incorrect handling of library search path which caused only the
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
76 last directory to ever matter
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
77 [ ] DECB output of LWLINK now collapses contiguous output blocks into single
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
78 single blocks in the output file; this eliminates the explosion of
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
79 preambles that previously occurred
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
80 [ ] LWLINK now displays *all* undefined symbols and references instead of
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
81 bailing out after the first one
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
82
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
83 Version 2.2
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
84
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
85 [*] created LWAR to manage library/archive files
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
86 [+] cescapes pragma to allow C-style string escapes in FCC, FCS, and FCN
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
87 [+] .area alias for SECTION
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
88 [+] .globl alias for EXPORT; also accept name of symbol as operand
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
89 [+] various compatibility directive aliases for FCB, FDB, FQB, RMB, FCC,
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
90 FCS, and FCN
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
91 [+] accept "*" has a prefix for base page addressing mode
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
92 [+] sections named "bss" or ".bss" in any case are now assumed to be
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
93 BSS sections. The "!bss" flag can be used to remove that assumption.
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
94 [+] ignore lines starting with # to permit C pre-processor output to be used
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
95 as input to lwasm
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
96 [+] allow "0x" and "0X" as prefixes to identify hexadecimal numbers
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
97 [+] added support for a simple library/archive file format to LWLINK
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
98 [b] actually show assembly errors when no list requested
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
99 [b] pragma and --pragma now actually take multiple pragmas as documented
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
100
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
101 Version 2.1
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
102
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
103 [*] merged LWLINK (1.0) and LWASM to create LWTOOLS
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
104 [+] [LWASM] pragmas can be specified on the command line
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
105 [+] [LWASM] undefextern pragma added (undefined symbols treated as external)
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
106 [+] documentation
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
107 [b] [LWASM] made pragmas case insensitive
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
108 [b] [LWASM] made EXTERN symbols never be part of a section in symbol table
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
109
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
110
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
111 LWASM Version 2.0
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
112
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
113 [*] major rewrite of the entire assembler
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
114 [+] object file support
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
115
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
116
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
117 LWLINK Version 1.0
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
118
eb230fa7d28e Prepare for migration to hg
lost
parents:
diff changeset
119 [*] initial released version