SjasmPlus

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search

Here are the informations presented on the official website :

About

SjASMPlus is Z80 Assembly Language Cross Compiler. It is available for Win32, DOS, Linux and FreeBSD(mainly 5.x) systems. It is based on SjASM source code by Sjoerd Mastijn - http://xl2s.tk SJASMPlus is a really powerfull Z80 Cross Compiler.

Features

  • Z80/R800 documented and undocumented opcodes support
  • 3-pass design
  • Built-in Lua scripting engine
  • Compilation performance: 1 million lines by 2-3 seconds on modern computer
  • Code inlining through colon (LD A,C:INC A:PUSH AF:IFDEF FX:LD A,D:ENDIF…)
  • Structures to define data structures in memory more easily (use STRUCT pseudo-op)
  • Conditional assembly
  • Macro definitions
  • Local labels
  • User’s messages
  • Temporary labels
  • Special modes for 8bit computers: ZX-Spectrum 48/128, Scorpion 256, ATM-Turbo 512
  • Defines and array of defines
  • Fake instructions as LD HL,DE (LD H,D:LD L,E)
  • Source and binary file inclusion
  • Multiline block comments
  • Multi file output and file updating
  • Librairies (trough use of MODULE and IFUSED directives)

Missing features

SJASMPlus does not have support for the CPC range of computers. It can of course assemble working z80 code, but does not add an amsdos header, and can't make a snapshot to use with emulators.

However, there is existing code for other platforms, and some minor adaptations should be enough.

Links