which runs on one type of processor and produces machine code
There is a set of 6502
, 68xx and Zilog Z80
and 8085 cross-assemblers in C
by and Alan R. Baldwin. They run under MS-DOS and could be compiled to run under Unix and on the Amiga and Atari ST.
See also fas.