I just published version 2 of the asm2650 assembler. This is a major update that includes a number of features that have been on my wish list for a long time:
- Include source files! Often you have common definitions that are shared between multiple projects. You either create elaborate scripts to preprocess input files, or you duplicate the definitions. Either way is far from ideal. With a simple INCLUDE keyword you can now import text from another file. Files can be nested without any set limit.
- Complex expressions! Version 1 could do addition and subtraction, and that was it. With version 2 you can now have full expressions, including multiplication, division, modulo, shift left and right, and logical operations. And you can use whitespace in expressions to improve readability.
- Multiple code segments! Each ORG pseudo-op in your input file creates a new code sections. All code sections are combined into the output file. Any memory space between them is padded with zeroes.
And loads of smaller features and bug fixes.
Version 2 should be compatible with virtually all popular formats. There may be minor incompatibilities with certain features, but these will be easy to correct.
Have a look at the manual.