A Search: “Z80” cross-assembler, written in Python. It should therefore work on MacOS X, Linux, un*x (and even Windows, if you have the appropriate interpreter installed). This is intended for producing code to run on the Sam Coupe, but it may be useful for other Z80-based platforms as well.
The input files are text files, formatted using the Syntax of the Sam's popular Search: “COMET assembler”. The output files are a compressed disk image which can be loaded by the SimCoupe emulator, containing the object code file.