6 Star 112 Fork 9

DOS汇编/VSCode下DOS汇编插件

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

16 位/32 位 DOS 汇编语言支持

中文|English

实现对 DOSBox 等汇编工具的快速调用。主要针对 DOS 下的单文件汇编语言学习,可能适合学习《汇编语言》、《微机原理》等课程,主要功能特性如下:

  • 语法支持)代码高亮,大纲信息,悬浮提示,代码格式化,错误信息标注功能
  • 运行调试)提供编辑器右键菜单选项:在汇编语言的编辑器添加了“打开 dosbox,运行,调试”的三个选项
  • 提供 diagnose错误信息标注功能:假如汇编未通过,会根据汇编器输出来标明错误信息与位置,可以在命令面板输入清除MASM/TASM的所有问题信息清除本插件输出的 diagnose 问题信息
  • 支持包括 Web 在内的所有 VSCode 版本和平台,参见平台支持
  • 注:该插件为学习 DOS 下的汇编语言开发,可能并不适合复杂的多文件汇编

DEMO 示例

jsdos demo

Demo 1 代码格式化与错误输出

格式化代码 错误信息输出

提供一些“编程语言特性”(悬浮提示,代码格式化,跳到定义,查看引用)来方便代码编写与阅读,如果不喜欢可以在设置masmtasm.language.Hovermasmtasm.language.programmaticFeatures中关闭,重启之后会生效。同时也可以使用其他插件提供的语言功能如ASM Code Lens 提供的 language ID asm-collection

Demo 2 : 运行调试代码

调用 DOSBox 运行 TASM 调用 msdos-player 运行 MASM

当打开一个ASM后缀的汇编文件时,可以在编辑器右击,会出现以下三个选项:

  1. 打开 DOS 环境:打开 DOSBox,然后就可以手动在打开的 DOSBox 窗口输入指令进行操作
  2. 运行当前程序(汇编+链接+运行):生成 exe 程序并运行
  3. 调试当前程序(汇编+链接+调试):生成 exe 程序并调试,使用 MASM 则会调用 debug 调试,使用 TASM 会调用 td 调试

运行调试说明

  • 如果所有汇编代码都存放在一个文件中,建议使用单文件模式将masmtasm.ASM.mode设置为single file,插件将会首先复制文件到插件的独立地址中,再进行操作。
  • 如果代码非常复杂,建议设置masmtasm.ASM.modeworkspace,插件会直接挂载当前工作文件夹,可能会污染当天工作目录(对于 jsdos 会直接复制当前文件夹中的所有文件)。

平台支持

插件依赖vscode-dosbox 来与 DOS 模拟器交互。 vscode-dosbox打包了 win 平台上的二进制文件,参考它的文档 在其他平台安装相关 DOS 模拟器。

自定义 Actions

可以通过设置masmtasm.ASM.actions来修改运行和调试的 DOS 命令。比如,需要编译成 COM 文件,可以添加如下设置。同时将masmtasm.ASM.assembler设置为 Action 的键TASM-com

"masmtasm.ASM.actions": {
     "TASM-com": {
      "baseBundle": "<built-in>/TASM.jsdos",
      "before": [
        "set PATH=C:\\TASM"
      ],
      "run": [
        "TASM ${file}",
        "TLINK /t ${filename}",
        "${filename}"
      ],
      "debug": [
        "TASM /zi ${file}",
        "TLINK /t/v/3 ${filename}.obj",
        "TD ${filename}.exe"
      ]
    }
}
"masmtasm.ASM.assembler":"TASM-com"

插件调用 dosbox 时会挂载哪些目录

DOSBox 电脑中的真实目录
C: 汇编工具目录
D: 插件汇编工作目录

编译成 COM 文件

插件安装路径一般在哪里

VSCode 文档中关于插件安装路径的说明VSCode-doc,摘录如下

  • Windows %USERPROFILE%\.vscode\extensions
  • macOS ~/.vscode/extensions
  • Linux ~/.vscode/extensions

文档 & 感谢 & 许可

Enjoy!

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
TypeScript
1
https://gitee.com/dosasm/masm-tasm.git
git@gitee.com:dosasm/masm-tasm.git
dosasm
masm-tasm
VSCode下DOS汇编插件
main

搜索帮助