以下内容为插件MASM/TASM 的readme文档,使用它你需要
- 在VSCode官网下载VSCode
- 打开VSCode后,在它的商店里面搜索下载MASM/TASM
- 在一个文件夹中新建一个文件来进行汇编程序的编写
16位/32位汇编语言开发工具
中文|English
在学习《微型计算机原理与接口技术》的汇编语言部分时,苦于没有比较顺手的编程环境,此插件实现了在VSCode中对DOSBox等汇编工具的快速调用。主要功能特性如下:
- 同时支持调用TASM和MASM: 可以在设置(首选项)中修改使用MASM还是TASM工具集
- 提供编辑器右键菜单:在汇编语言的编辑器添加了“打开dosbox,运行,调试”的三个选项
- 提供diagnose问题输出功能:假如汇编未通过,会标明错误信息与位置,可以在命令面板输入
清除MASM/TASM的所有问题信息
清除本插件输出的diagnose问题信息
- 提供悬浮提示,跳转定义,代码格式化,大纲视图等
- 调用dosbox和msdos player模拟16位系统环境,运行相关组件
非常感谢Roncho的Assembly (TASM),Woodykaixa的 masm-code,blindtiger的 masm!插件难免会有一些bug,欢迎到github发issue以及PR,大家一起交流和完善。
安装使用
- windows 无需其他操作,相关软件已打包在插件之中
- linux 请先安装dosbox 详情
Features主要功能
当编辑器为汇编文件时,在编辑器界面右键菜单中会提供以下三个选项:
- 打开dosbox并配置环境(挂载):打开DOSBox,然后就可以手动在打开的DOSBox窗口进行汇编相关操作
- 运行当前程序(汇编+链接+运行):生成exe程序并运行
- 调试当前程序(汇编+链接+调试):生成exe程序并调试,使用MASM则会调用debug调试,使用TASM会调用td调试
DEMO示例
Demo 1: 运行调试代码
默认使用 DOSBox
和 TASM
。可以在设置中修改
Demo 2: 代码格式化与错误输出
如果不喜欢这些“编程语言特性”(悬浮提示,代码格式化,跳到定义,查看引用)可以在设置中关闭,重启之后会生效
Demo 3: 打开DOSBox手动输入命令
- 汇编常用命令: ASM_commands.
- 有些有趣的汇编代码: DOSBox ASM codes
- "
Open DOSBox
"命令 会将编辑器当前文件复制到临时文件夹,并将该文件夹挂载到DOSBox中的“D:”盘,也就是说这时DOSBox中的D盘文件T.ASM就是VSCode当前文件的副本
- "
Doxbox here
"命令 会直接将当前文件所在文件夹挂载到DOSBox中的“E:"盘,也就是说这时DOSBox中的E盘内容就是当前编辑器文件所在文件夹里的内容,注意 在DOSBox中的操作会直接影响电脑中该文件夹中的文件,而且通常都是不可逆的
Extension Settings拓展设置
要实现Demo中的功能有时会需要在拓展中进行设置,同时设置(首选项)中还有一些其他选项,以提供更大的灵活性。
- 汇编工具使用
MASM
还是TASM
- 16位模拟器使用
dosbox
还是msdos-player
- DOSBox: (默认模式)更加完善
- msdos-player: 可以在cmd中运行,不会弹出窗口,但对TD等图形化界面的处理效果不好
- auto: (推荐,但是有时无法工作)根据情况选择模拟工具:
- 汇编链接使用msdos-player模拟,会比较安静
- 运行使用DOSBox,更加直观稳定
- 调试中MASM(debug)使用msdos-palyer在windows集成终端中显示(更加美观一些)
- 调试中TASM(TD)在DOSBox中运行(目前只能这样)
- 调整dosbox窗口大小
- 规定dosbox运行程序之后进行什么操作(是否直接退出程序,还是等待)
- 启动相关功能之前是否先保存文件(不保存的话,只能操作之前保存的版本,建议保存)
- 设置自定义汇编工具路径,详见:自定义汇编工具路径
文档 & 感谢 & 许可
- 这个插件是MIT license.
- 感谢masm-code,msdos player,dosbox
- 一些相关资料:wiki
- 使用终端任务调用dosbox:VSC-ASMtasks
Enjoy!