Support for Z80 macro-assemblers in Visual Studio Code
The Z80 Macro-Assembler extension for Visual Studio Code provides the following features inside VS Code:
- syntax highlighting for Z80 assembly sources of well known Z80 macro-assemblers, for example:
- problem matchers for SjASMPlus, Macroassembler AS, rasm and tniASM compilation output
- label and symbol documenter on hover, defintion provider, completition proposer and rename provider
- macro documenter and argument definition provider
- snippets for macros and source control keywords
Problem matchers
There are some predefined problem matchers to handle reported errors from compilation output:
errmatcher-as for Macroassembler AS
errmatcher-sjasmplus for SjASMPlus
errmatcher-rasm for rasm
errmatcher-tniasm and errmatcher-tniasm-preprocessor for tniASM
These values can be used in .vscode/tasks.json of your project's build task, for example:
...
"problemMatcher": "$errmatcher-sjasmplus"
...
IntelliSense showcase
Symbol Provider:
- provide symbols or labels in current file in "Go to Symbol in File..." [
Ctrl+Shift+O , Cmd+Shift+O ]
- provide symbols or labels also in all includes in "Go to Symbol in Workspace..." [
Ctrl+T , Cmd+T ]
Definition Provider:

- Generated map of every symbol defined considers also modules or temporal labels:

Completion Proposer

- Inteligent completion of directives, pseudo-instructions, Z80 instructions, registers, labels or symbols:

Hover over symbol:
- Show symbol's value or specific definiton:

Rename Provider
- Allow to rename labels, temporal labels, module names or macro indetifiers in InteliSense meaning.

Credits
This extension was done by Martin Bórik as a compilation of derived work inspired by these VS Code extensions:
License
The Z80 Assembly extension is subject to these license terms.
The source code to this extension is available on github and licensed under the MIT license.
| |