In my retrocomputing projects with various processors I have used a number of cross-assemblers to build code. I've had to use several in order to support different processors as well as for compatibility with different software packages. For the most part they are similar, but have their own unique features and quirks.
I put this table together, mostly for my own reference, that others may also find useful. It is by no means a complete list -- just those that I have used.
Name | Author | Source | Supported Processors | Key Features | Comments |
as9 | Motorola, with changes by Albert van der Horst and others | https://home.hccnet.nl/a.w.m.van.der.horst/m6809.html | 6809 | macros | 100% compatible with Motorola assembler |
asl | Alfred Arnold and others | http://john.ccac.rwth-aachen.de:8000/as/ | many (over 50) | Macros | I have used with several processors |
asm6809 | Ciaran Anscomb | https://www.6809.org.uk/asm6809/ | 6809, 6309 | macros | Good choice if 6309 support needed. |
cc65 | John R. Dunning, Ullrich von Bassewitz, and others | https://www.cc65.org/ | 6502, 65C02 | C compiler, assembler, linker, librarian | Supports several 8-bit computer platforms. |
crasm | Leon Bottou | https://github.com/colinbourassa/crasm | 6800, 6801, 6803, 6502, 65C02, Z80 | macros | Included in most Linux distributions. |
gcc | Richard Stallman and others | https://gcc.gnu.org/git/ | Many | Compilers and assemblers | I used for 68000. Included in most Linux distributions. |
lwasm | William Astle and others | http://lwtools.projects.l-w.ca/ | 6809, 6309 | Cross-assembler and linker. | macros |
vasmm68k_mot | Volker Barthelmann | http://sun.hasenbraten.de/vasm/ | Many | Cross-assembler | I used for 68000. |
z80asm | Bas Wijnen | http://savannah.nongnu.org/projects/z80asm | Z80 | Z80 cross-assembler | Included in most Linux distributions. |
Nico tip to add here is sbasm, written in python but supports a lot of 8bit cpu's
ReplyDeleteSee at https://www.sbprojects.net/sbasm/