C2 is an advanced assembler wrapper built on top of a C++ compiler, designed to be highly configurable and architecture-independent. It achieves this flexibility by implementing all assembly pseudo-opcodes through text macros, which are processed using the standard C preprocessor.
Currently, C2 offers robust support for 6502 and its variants, as well as the 6809 architecture. Experimental support for the Z80 is available, and development for the 68000 architecture is actively underway.
The syntax of C2 is intuitive and should feel familiar to those with experience in Assembly, C/C++, Java, JavaScript, or C#.