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 the as yet unreleased LWTOOLS version 3.0 online
as a single HTML page, multiple HTML pages, or as a PDF.
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 3.0
Beta 1. This is the first preliminary release of LWTOOLS 3.0 featuring a
completely rewritten LWASM. The biggest feature improvement of the rewrite
is that forward references are now optimized rather than being forced to 16
bits. This is beta software so it is likely to have even more bugs than
the usual releases. You have been warned. Download the source
code or the Windows
binaries.
- LWTOOLS
2.6.1. This release fixes a crash bug related to structure handling. If
you do not use structures, you do not need to upgrade. Download the source code
or the Windows
binaries.
- LWTOOLS
2.6. This release adds several new features including an include path fo
the INCLUDE directive, structure support, and a few other things. It also
fixes a number of bugs, including a couple of important ones in LWLINK. It
is recommended that all users upgrade to this release. Download the source code
or the Windows
binaries.
- LWTOOLS
2.5. This release fixes a few niggly bugs. It also adds a few features.
Of note are the compatibility mneumonics for TFM (COPY, COPY-, IMP, EXP,
TFRP, TFRM, TFRS, TFRR) and a switch to select 6809 mode or 6309 mode. Also,
LWASM has gained the ability to create OS9 modules. Download the source code
or the Windows
binaries.
- LWTOOLS
2.4.1. Also know as the "Egg on Face Redux" release. This
fixes a showstopper which prevented assembly of sourcecode that used
inherent addressing modes and also included comments on the same line. You
might think testing would have revealed such a bug but, alas, errors were made
during testing. Download the source code
or the Windows
binaries.
- LWTOOLS
2.4. ***Don't use this release - see 2.4.1 above*** This version fixes a nasty problem with external references and
8 bit addressing modes which caused linking to generate garbage. It also
fixes a problem where some obviously incorrect operands were silently
accepted but unexpected code was generated. This version allows 8 bit
immediate operands to be external references as well. Download
the source code
or the Windows
binaries.
- LWTOOLS
2.3.1. Also know as the "Egg on Face" release. This
fixes a particuarly ugly bug with LWLINK that caused the contents of linked
library files to not be included if there were no external references. While
this is not a problem for a regular library, it is if you are relying on the
somewhat undocumented behaviour of all contents being included if the -l
switch is not used to include the library. This bug was believed to have
been fixed in the 2.3 release below but, alas, it was still present. Download
the source code
or the Windows
binaries.
- LWTOOLS
2.3. ***Don't use this release - see 2.3.1 above*** This release features a number of updates and bugfixes. There is
some infrastructure for using LWTOOLS as the binutils for gcc6809.
Additionally, this release features additional portability as well as the
ability to build it with MinGW. That means there are Windows
binaries available this time, too! (Note that testing is done on Linux
so there may be problems with the Windows build. Please report bugs.)
- LWTOOLS
2.2. This release adds LWAR (libraries!). It also adds some features to
LWASM to allow it to assemble the output of gcc6809 more easily.
- LWTOOLS
2.1. This release marks the first release after joining LWLINK and LWASM
into a single package.
The source code is also available from the project's mercurial
repository which can be found at http://snarf.l-w.ca:42042/.
Note that the project originally used subversion. However, on March 18,
2010, it was switched over to mercurial.
Back to CoCo 3 Stuff.