asmx multi-CPU assembler

This is a multi-CPU macro assembler for many major 8-bit and 16-bit CPUs, which can assemble code for multiple CPUs in the same source file.

It started out as a college assignment to write an 8080 assembler, then was translated from PL/I to Pascal to C. Along the way it got macro support, then it got multi-CPU support. It should compile in any standard Posix-compatible command-line environment.

Current CPUs supported

Downloads

asmx-2.0b5.zip Version 2.0 beta 5
asmx-1.8.2.zip Version 1.8.2 (before same-file multi-CPU support)
makerom-1.2.zip Intel Hex/Motorola S-record to ROM image converter

Older versions

asmx-1.8.1.zip Version 1.8.1 (2007-01-14)
asmx-1.8.zip Version 1.8 (2007-01-11)
asmx-1.7.4.zip Version 1.7.4 (2006-11-09)
asmx-1.7.3.zip Version 1.7.3 (2006-01-23)
asmx-1.7.2.zip Version 1.7.2 (2005-08-21)
asmx-1.7.1.zip Version 1.7.1 (2004-10-20)
asmx-1.7.zip Version 1.7 (2004-08-25)
asm6502-z80-1.6.tgz 6502/Z80 version 1.6 for C (2004-04-30)
asm6502-1.5.tgz 6502 version 1.5 for C (2004-02-24)
asmz80-1.2.zip Z80 version 1.2 for Turbo Pascal (1998-03-15)
asm6502-1.4.pas 6502 version 1.4 for Turbo Pascal (1998-02-??)
asm6502-1.3.zip 6502 Version 1.3 for Turbo Pascal (1996-12-17)
asm6502-1.2.pas 6502 Version 1.2 for Turbo Pascal (1996-09-??)
asmz80-1.0 Z80 version 1.0 for Turbo Pascal (1996-09-02)
asm8080.pas 8080 version 1.0 for Turbo Pascal (1996-04-30)
asm6502-1.1.zip 6502 Version 1.1 for Turbo Pascal (1995-12-11)
asm6502-1.0.zip 6502 Version 1.0 for Turbo Pascal (1995-04-26)
asm8080.pli Original PL/I version (1987-03-31)