Skip to content

Latest commit

 

History

History
83 lines (43 loc) · 3.94 KB

README.md

File metadata and controls

83 lines (43 loc) · 3.94 KB

Dasm macro assembler for VSCode

This is a dasm macro assembler extension for Visual Studio Code. It aims to provide the following in-editor features:

  • Powerful assembly source editing for the 6502 (and others) using the dasm macro assembler
  • Assembling and exporting generated byte code (ROMs)
  • Running Atari VCS 2600 code with full debugging and run-as-you-type abilities

Notice, however, that this extension is a work-in-progress and that many features do not work yet. More importantly, it doesn't yet create a separate ROM file nor does it open the emulator preview tab. You would need to rely on the command-line dasm and the Stella emulator (or others) for that.

See more about the motivation for this extension in the Why Atari? document.

Features

So far, the following features are supported:

Basic syntax highlighting

Syntax highlighting

Auto-completion (instructions, pseudo-ops, symbols, and labels)

Auto completion

Real error checking as you type

Errors

Hover support for more information

Errors

Quick navigate to document labels and symbols

Navigate to document symbols

Quick navigate to workspace labels and symbols

Navigate to workspace symbols

Navigate to/peek at definitions for labels and symbols

Peek at definitions

Highlight all occurrences of a symbol on selection

Highlight symbols

Find all uses of a symbol or label across files

Symbols references

Rename/refactor symbols or labels across files

Rename symbols

TODO

For more information on what's left to be done for this extension, please check the roadmap.

Release Notes

Check the changelog for a list of all released versions and their notes.

Contributing

Bug reports, fixes, and other changes are welcomed. Our repository is on GitHub, and issues and pull requests are accepted. Check the contributing file on information of what the project needs, and how to run the extension locally for development and testing.

Acknowledgements

This extension uses the original dasm macro assembler via dasmjs, an emscripten-compiled version of the original C code. This is ran on the background, as a language server tracked as a separate part of this repository.

And finally, this extension was heavily inspired by the 8bitworkshop web-based Atari development IDE (but shares no code with it). One could say this extension is an attempt to create a similar Atari development experience, but within a dedicated standalone desktop application. Buy their book to show your support.

References

The following references were used in creating the documentation provided by this extension:

License

This follows dasm itself and uses the GNU Public License v2.0.