spec-chum / sjasmplus

Command-line cross-compiler of assembly language for Z80 CPU.

Home Page:http://z00m128.github.io/sjasmplus/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sjasmplus

Build Status GitHub repo size in bytes GitHub

Command-line cross-compiler of assembly language for Z80 CPU.

Supports many ZX-Spectrum specific directives, has built-in Lua scripting engine and 3-pass design.

For Linux/BSD/Windows/Dos. Make/Make Install or CMake installation methods for your convenience.

Main Features

  • Z80/R800 documented and undocumented opcodes support
  • Very fast compilation: 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 (STRUCT pseudo-op)
  • Conditional assembly
  • Macro definitions
  • Local labels
  • User messages
  • Temporary labels
  • Defines and array of defines
  • Fake instructions as LD HL,DE (LD H,D:LD L,E) and more
  • Source and binary file inclusion
  • Multiline block comments
  • Multi file output and file updating
  • ZX Spectrum device emulation mode (pseudo op DEVICE)
  • ZX Spectrum specific directives and pseudo ops (SAVESNA, SAVETAP, SAVEHOB, INCHOB, INCTRD...)
  • Suport for the Z80n found in the ZX Spectrum Next

This repository was created by import from original Aprisobal's repository @ https://sourceforge.net/projects/sjasmplus/.

About

Command-line cross-compiler of assembly language for Z80 CPU.

http://z00m128.github.io/sjasmplus/

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C 49.3%Language:C++ 36.8%Language:Assembly 11.1%Language:Shell 1.5%Language:CMake 0.7%Language:Makefile 0.4%Language:HTML 0.2%Language:Lua 0.1%Language:Batchfile 0.0%