About LWTOOLS
LWTOOLS is a set of cross-development tools for the Motorola 6809 and Hitachi 6309
microprocessors. It supports assembling to raw binaries, CoCo LOADM
binaries, and a proprietary object file format for later linking. It
also supports macros and file inclusion among other things.
LWTOOLS was born in 2006 when William Astle decided that none of the
crossassemblers available at the time supported all the features he wanted
to use. After over two years of intermittent development, and three separate releases
of LWASM and one separate release of LWLINK, LWTOOLS had it's initial
release on January 29, 2009.
You can read the manual for LWTOOLS version 4.0 online
as a single HTML page, multiple HTML pages, or as a PDF.
If anyone wishes to support further development of LWTOOLS, I accept
bitcoin donations at the following address:
1EcdzmbwuqY4ydBtmyzP58wJywvLUqkGzE. I also accept USD and CAD by post.
Contact me for details. If you have a pet feature you want added to the
tools, you might be able to motivate me to implement it for a sufficient
bribe.
Downloads
The following released versions are available. Please do not report bugs
in older releases unless they are present in the latest release. Old
releases are provided for archaeological purposes only.
- LWTOOLS 4.5. This
version comes with a raft of minor fixes including a major speedup in
resolving forward references which will be most noticeable on large source
files. Download the source
code.
- LWTOOLS 4.4.
This version fixes a critical code generation bug with 16 bit relative
branch instructions which was introduced in version 4.3.
Download the source
code.
- LWTOOLS 4.3.
*** Don't use this release--See 4.4 above***
This release fixes several bugs, notably related to building OS9 modules. It
also contains a new pragma, autobranchlength, which allows the assembler to
decide whether to use a long or short branch as needed for any branch
instruction. It also comes with a --define command line switch to allow
specifying symbol values on the command line.
I do not have a properly
functional build environment for Windows so no binaries at this time. If
anyone is willing to contribute such, let me know. Download the source
code.
- LWTOOLS 4.2.
This version fixes a number of memory leaks, an incorrect malloc() size,
problems with *pragma and ifdef, and adds a "nolist" pramga to
suppress portions of the listing when using --list. It also corrects errors
handling &-prefixed decimal constants and %-prefixed binary constants.
This version may or may not compile and work properly under Windows. I am
informed that some of the fixes have helped. I do not have a properly
functional build environment for Windows so no binaries at this time. If
anyone is willing to contribute such, let me know. Download the source
code.
- LWTOOLS 4.1.
This version fixes a couple of code generation errors, one of which affects
a relatively uncommon indexed mode. It also has a few functional regressions
against the 3.x versions fixed so it should now work as a backend for
gcc6809. See the extras/ folder for more information.
Download the source
code. Sorry, no Windows binaries at this time. I don't have Windows so I
can't test Windows builds and given the problems that have occurred with
them in the past, I feel it would be a disservice to provide binaries that
may or may not work. If anyone with a function Windows build environment (32
or 64 bit) is willing to compile, I'll post the resulting binaries here.
- LWTOOLS 4.0.
A new version of lwtools is out, now freshly freed from autotools hell. This
is the first release after a major reorganization and retooling of the code
to remove dependence on autotools for portability. As such, there may be
bugs. It is, however, capable of assembling Color Basic and Extended Color
Basic correctly. Download the source
code or the win32/win64
binaries. Note that there have been reports of problems with the windows
builds on some systems, notably Windows 7. If someone is willing to take on
the task of maintaining a Windows port of lwtools, please contact me.
Aaron Wolfe has kindly provided these win64
binaries which may work better than the ones in the windows binaries
package above.
- Older release notices are archived
here.
The source code is also available from the project's mercurial
repository which can be found at http://lwtools.projects.l-w.ca/hg/.
Note that the project originally used subversion. However, on March 18,
2010, it was switched over to mercurial.
Note also that as of January 19, 2011, the old repository was
decommissioned in favour of a new, clean repository. The old repository is
available at http://lwtools.projects.l-w.ca/hg-old/
in case anyone wishes to inspect it.
Back to CoCo 3 Stuff.