There is a bunch of new Z80 enthusiasts out there making their own computers. I've been building mine for quite long, and I developped a few software tools for it.

This software is a preprocessor that allows the use of structured programming similar to higher level languages. Of course, you can program in C with SDCC or other compilers for the Z80, but this makes assembler code much easier to read. How about a do { } while structure, but in assembler? And nested? It generates all the local labels automatically!

The preprocessor is written in Awk, for use with the SDCC assembler. It can be easily modifed to support other assemblers.