Here are the informations presented on the official website :
Contents
About
SjASMPlus is Z80 Assembly Language Cross Compiler. It is available for Win32, Linux and FreeBSD (mainly 5.x) systems. It is based on SjASM source code by Sjoerd Mastijn (http://xl2s.tk).
Main Features
- Full source of assembler available under BSD license, modify and extend as you wish
- Z80/R800/Z80N/i8080/LR35902 documented and undocumented opcodes support
- Macro language, defines, array of defines
- Built-in Lua scripting engine
- Conditional assembly, block repeating
- Modules (namespaces), local and temporary labels
- Source and binary file inclusion, include paths
- Multi file output, file updating, various types of exports
- Structures to work easily with structured data in memory
- Relocation data generator to support SymbOS-like relocation of executables
- Virtual device mode for common machines: ZX 128, ZX Next, Amstrad CPC, … (pseudo op DEVICE)
- ZX Spectrum specific directives and pseudo ops (SAVESNA, SAVETAP, SAVEHOB, INCHOB, INCTRD…)
- ZX Spectrum Next specific features and directives (Z80N, 8ki memory paging, SAVENEX)
- Amstrad CPC 464/6128 specific directives (SAVECPCSNA)
- Correctness is assured by Cirrus-CI with 400+ automated tests (that's also 400+ examples of usage!)
- Fake instructions as LD HL,DE (LD H,D:LD L,E) and more
- Code inlining through colon (LD A,C:INC A:PUSH AF:IFDEF FX:LD A,D:ENDIF…)
- Very fast compilation: 1 million lines by 2-3 seconds on modern computer
- Multiline block comments and user’s messages