/z80-macroasm-vscode

Support for Z80 macro-assemblers in Visual Studio Code

Primary LanguageTypeScriptMIT LicenseMIT

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 and Macroassembler AS compilation output
  • label and symbol documenter on hover, defintion provider, completition proposer
  • 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

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:

Definition provider

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

Peek Definition demo

Completion Proposer

Completion Proposer

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

Completion and snippets demo

Hover over symbol:

  • Show symbol's value or specific definiton:

Hover over symbol

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.