Mercurial > hg-old > index.cgi
annotate ChangeLog @ 243:f9f01a499525 2.x
Added zero-width external references
author | lost |
---|---|
date | Tue, 15 Sep 2009 03:16:17 +0000 |
parents | a58f49a77441 |
children | c8bcc396ec59 |
rev | line source |
---|---|
148 | 1 The following includes the various changes in each release of LWTOOLS. |
2 | |
3 Each item is prefixed by a flag in []. The flags mean: | |
4 | |
5 [*] Project structure or other "meta" change | |
6 [!] critical bug fix - code generation error, etc. | |
7 [+] new feature | |
8 [-] feature removed | |
9 [b] minor bugfix | |
183
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
10 [ ] general improvement |
148 | 11 |
12 Also, the software affected may follow in []. | |
13 | |
243 | 14 Version 2.6 |
15 | |
16 [+] Added "EXTDEP" pseudo op to force a dependency on an external symbol | |
17 without an actual external reference - a zero-width external reference | |
18 so to speak [LWASM,LWLINK] | |
19 [+] Decode known incomplete expression flags [LWOBJDUMP] | |
20 [b] Treat incomplete reference flags as specified in docs [LWLINK] | |
21 | |
224 | 22 Version 2.5 |
23 | |
24 [!] Fixed error in the fix for invalid operands included in 2.4 [LWASM] | |
225
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
25 [b] Fixed bug with "include" directive operand parsing [LWASM] |
229 | 26 [b] Fixed additional parsing errors with pseudo ops [LWASM] |
236
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
27 [b] Fixed parsing error with various conditional nesting situations [LWASM] |
225
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
28 [+] Added includebin directive to include the literal contents of a binary |
058f18119025
Fixed filename parsing bug in include directive and added includebin directive
lost
parents:
224
diff
changeset
|
29 file at the current assembly address. [LWASM] |
226 | 30 [+] Added || and && as boolean or and boolean and respectively [LWASM] |
228 | 31 [+] Added COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, TFRR as alternatives to |
32 the TFM instruction variations for compatibility with other assemblers | |
33 [LWASM] | |
230
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
34 [+] Added --6809/-9 switch to cause 6309 instructions to be rejected; also |
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
35 included --6309/-3 switch to force default allow of 6309 instructions |
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
36 [LWASM] |
235 | 37 [+] ALIGN now takes an optional padding value (ALIGN align,pad) to specify |
38 the byte value that will be used for padding if needed [LWASM] | |
236
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
39 [+] Added OS9 module target along with the OS9, MOD, and EMOD pseudo ops |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
40 to allow building OS9 modules [LWASM] |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
41 [+] Added pragma "dollarlocal"/"nodollarlocal" and "dollarnotlocal"/ |
a58f49a77441
Added os9 target, pragma to control whether $ localizes a symbol, and fixed some condition nesting bugs
lost
parents:
235
diff
changeset
|
42 "nodollarnotlocal" to control whether $ localizes a symbol [LWASM] |
230
0df2a39a268c
Added --6809/--6309 switches and some cleanups in error reporting
lost
parents:
229
diff
changeset
|
43 [ ] Fixed a few cosmetic issues with error reporting |
224 | 44 |
220
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
45 Version 2.4 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
46 |
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
47 [!] Fixed off by one relocation offest for base page external references |
221 | 48 generated by lwasm [LWASM] |
49 [b] Fixed segfault in "extern" pseudo op and allowed a symbol list as the | |
50 operand just like "export" [LWASM] | |
223
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
51 [b] Fixed lack of error when there are extraneous characters at the end |
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
52 of the operand. This did not cause incorrect code generation for correct |
436b36214e35
Fixed lack of error when there are extraneous characters at the end of the operand.
lost
parents:
222
diff
changeset
|
53 code but would silently generate incorrect code for some easy errors |
222
7803d2d09993
Allow 8 bit immediate operands to be external references
lost
parents:
221
diff
changeset
|
54 [+] 8 bit immediate operands can now be external references [LWASM] |
220
2b254f02b252
Fixed off by one relocation offset for direct page external references
lost
parents:
216
diff
changeset
|
55 |
180 | 56 Version 2.3 |
57 | |
216 | 58 [*] added support for compiling using MinGW and added portions of gnulib |
59 to support argp, among other things. Yah! A Windows build! | |
187 | 60 [+] added library search path (-L) and library specification (-l) to LWLINK |
61 [+] added ability to specify section base addresses on the command line to | |
180 | 62 LWLINK (they get prepended to the built in link script) |
187 | 63 [+] added ability to output a "linkmap" to lwlink (--map, -m) |
64 [+] added LWEX0 (LWOS simple binary) target to LWLINK | |
188 | 65 [+] added ability to extract files in LWAR |
66 [+] added ability to "replace" members in LWAR | |
190 | 67 [+] added support for "sym=expr" in the opcode field; this will define a |
68 global symbol (non-section) if it resolves to a constant | |
191 | 69 [+] added operator ~ as a prefix operator for a 1s complement in LWASM |
192
bfd0fb0a85c2
Allow exporting multiple symbols on a single directive
lost
parents:
191
diff
changeset
|
70 [+] allow exporting multiple symbols (export sym,sym,sym...) |
216 | 71 [+] allow extern references in base page addresing mode, possibly buggy |
72 still (LWASM) | |
73 [+] handle 8 bit external references, possibly buggy still (LWLINK) | |
206
299c5d793aca
Made lwlink smarter about not included unneeded (unreferenced) members of a library file
lost
parents:
204
diff
changeset
|
74 [+] arranged for unused members of library files (archives) to be ignored |
299c5d793aca
Made lwlink smarter about not included unneeded (unreferenced) members of a library file
lost
parents:
204
diff
changeset
|
75 during linking to keep the final size of the binary down (LWLINK) |
182
833d392fec82
Arranged for lwasm and lwlink to remove the output file in case they fail
lost
parents:
180
diff
changeset
|
76 [b] arranged for output files for lwasm/lwlink to be removed if the assembly |
833d392fec82
Arranged for lwasm and lwlink to remove the output file in case they fail
lost
parents:
180
diff
changeset
|
77 or linking fails |
209 | 78 [b] fixed incorrect handling of library search path which caused only the |
79 last directory to ever matter | |
183
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
80 [ ] DECB output of LWLINK now collapses contiguous output blocks into single |
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
81 single blocks in the output file; this eliminates the explosion of |
302b8db5fd89
modified lwlink to merge contiguous sections in the DECB output file to avoid the explosion of preambles
lost
parents:
182
diff
changeset
|
82 preambles that previously occurred |
184
220a760ec654
Make lwlink display all undefined references instead of bailing after the first one
lost
parents:
183
diff
changeset
|
83 [ ] LWLINK now displays *all* undefined symbols and references instead of |
220a760ec654
Make lwlink display all undefined references instead of bailing after the first one
lost
parents:
183
diff
changeset
|
84 bailing out after the first one |
180 | 85 |
166 | 86 Version 2.2 |
87 | |
171 | 88 [*] created LWAR to manage library/archive files |
166 | 89 [+] cescapes pragma to allow C-style string escapes in FCC, FCS, and FCN |
90 [+] .area alias for SECTION | |
91 [+] .globl alias for EXPORT; also accept name of symbol as operand | |
92 [+] various compatibility directive aliases for FCB, FDB, FQB, RMB, FCC, | |
93 FCS, and FCN | |
94 [+] accept "*" has a prefix for base page addressing mode | |
168 | 95 [+] sections named "bss" or ".bss" in any case are now assumed to be |
96 BSS sections. The "!bss" flag can be used to remove that assumption. | |
169 | 97 [+] ignore lines starting with # to permit C pre-processor output to be used |
98 as input to lwasm | |
170
bf69160da467
Added ability to use 0x and 0X as prefixes for hexadecimal numbers
lost
parents:
169
diff
changeset
|
99 [+] allow "0x" and "0X" as prefixes to identify hexadecimal numbers |
171 | 100 [+] added support for a simple library/archive file format to LWLINK |
166 | 101 [b] actually show assembly errors when no list requested |
102 [b] pragma and --pragma now actually take multiple pragmas as documented | |
103 | |
148 | 104 Version 2.1 |
105 | |
106 [*] merged LWLINK (1.0) and LWASM to create LWTOOLS | |
107 [+] [LWASM] pragmas can be specified on the command line | |
108 [+] [LWASM] undefextern pragma added (undefined symbols treated as external) | |
109 [+] documentation | |
110 [b] [LWASM] made pragmas case insensitive | |
111 [b] [LWASM] made EXTERN symbols never be part of a section in symbol table | |
112 | |
113 | |
114 LWASM Version 2.0 | |
115 | |
116 [*] major rewrite of the entire assembler | |
117 [+] object file support | |
118 | |
119 | |
120 LWLINK Version 1.0 | |
121 | |
122 [*] initial released version |