CASM
CASM is a portable (it shouldn't be using anything more than ANSI/ISO features) macro cross-assembler in C. Though I have a feeling it will get upset if an int isn't at least 32 bits. It currently supports the following processors:
- Z80
- 6502
- Gameboy Z80 derivative
- 65c816 (the CPU used in the SNES)
- SPC700 (the CPU used for sound in the SNES)
It can also produce output in the following formats:
- Raw binary (works well for Atari VCS images)
- Spectrum TAP file
- Commodore 64 T64 tape file
- ZX81 P file
- Gameboy ROM
- SNES ROM
- A simple library format for larger projects
- NES ROM
- Amstrad CPC CDT tape file
- Commodore 64/VIC-20 PRG file
- Intel HEX format
The CPC tape output has been tried on a real CPC, so it has the honour of being the first bit of real Z80 silicon to run the output of CASM.
Version 1.13 of it is available here. The latest version of the sources are available here.
The latest version of the included HTML documentation is here.