在windowsXP等32位系统会自带有debug等汇编调试工具,但是到之后的win7等64位系统之后移除了这个功能,其他系统诸如linux,Mac OS等等则没有,学习汇编,需要用到一些工具及软件,其中dosbox则是一个很好的选择,这里只介绍在汇编中如何使用dosbox。1、系统:ubuntu18.04
一、DOSBox简介
1、DOSBox 是一款模拟的 X86 机器,集成了 DOS 系统,可以运行旧的 DOS 游戏。这个模拟机允许你控制老游戏的速度,以及模拟旧的硬件,比如声卡和显卡,不管操作系统。这个集成的DOS系统还可以使你直接的启动游戏而无须安装DOS在虚拟机上。
2、DOSBox 开始在2002年,也就是window2000发布时间左右。win2000这个版本与微软过去的版本断绝了关系,并且导致大量的DOS游戏变得不能使用。有一些其他的办法在windows2000下面运行DOS游戏,但是他们并不提供Windows下运行这些游戏的能力。这样DOSBox诞生了。
3、现在的版本是DOSBox 0.74 ,很难得的更新维护版本,它支持 Linux、Windows(7、8、10)、Mac OS、FreeBSD 平台,可以在这些平台中运行旧的 DOS 游戏。
DOSBox 0.74主要更新:
Windows:修复 Windows 7 上的 auto/max 循环算法。Mac OS X:带来 64 位版本并提高性能。Linux:修复 64 位 dynrec cpu 核心和很多编译问题。为 WINE 团队添加补丁。
二、软件安装:
------------------------------------------------------
root@HP:~# apt install dosbox
------------------------------------------------------
三、编译环境准备
MASM、Debug.exe、Link.exe,这是进行汇编的三个基本软件,其中MASM的部分高版本是不支持8086汇编的,这也是为什么VS2017下的8086汇编失败的原因(笔者个人观点)
Vim:文本编辑软件不再多做说明
上述软件均打包在:
链接:https://pan.baidu.com/s/1euPutS16fZmbsQq9Kolinw
四、编译环境配置
1、创建目录
~$ mkdir DOSBox #在用户主目录创建DOSBox目录(这个目录的名字和位置可以自由指定)作为C盘的映射地址,在DOSBox里通过挂载后C盘的目录其实就是DOSBox目录了,DOSBox的盘符为c:> 其实是个虚拟C盘,
在DOSBox里你可以在该文件夹下运行任何的DOS程序. 如果这些DOS程序是独立的可执行文件,仅仅需要把它们复制到~/DOSBox目录下并在DOSBox内运行它们.对于另外的程序,你可能需要它们的安装程序,进行安装。
~$ cd DOSBox #进入DOSBox 目录创建下面的目录
~$ mkdir MASM #MASM编译程序存放目录
~$ mkdir -p VIM/VIM71 #VIM安装的路径
~$ mkdir ASM #汇编程序存放的目录
~$ mkdir FILE #备用
2、放置软件
将链接下载的软件解压,并将:
MASM.EXE、debug.exe、LINK.EXE移动到:文件夹~/MASM,构建编译环境
vim-install.zip解压后,将里面的所以文件移动到文件夹 ~/VIM/VIM71
3、配置DOSbox环境文件
------------------------------------------------
~$ vim .dosbox/dosbox-0.74.conf #dosbox程序运行后才会生产这个文件
-----------------------------------------------
末尾添加:
-----------------------------------------------
mount c ~/DOSDox
path=%path%;MASM
path=%path%;VIMVIM71
c:
-----------------------------------------------
mount c ~/DOSBox : 这行是挂载驱动器c盘到目录~/DOSbox(这里我们也可以用绝对路径),从而使C盘映射到~/DOSBox目录
默认情况下DOSBox并没有开启C:.如果要给一个,我们必须在虚拟机挂载一个. 实际上, 这意味着我们必须为DOSBox创建一个可以做为C:的目录.
path=%path%;MASM : 相当于将目录MASM路径加入了path中,当执行masm,link,debug命令时不用进入目录MASM。不添加该路径必须进入MASM目录才能够进行masm,link,debug操作。
path=%path%;VIMVIM71 : 相当于将目录VIMVIM71路径加入了path中,当执行vim命令时不用进入目录VIMVIM71。不添加该路径必须进入VIMVIM71目录才能够进行vim操作。
五、在上面的配置完成后在打开DOSBox进行VIM的安装,实际上现在是可以使用的,只是没有高亮等配置,完整安装:
-----------------------------------------------
c:>cd VIMVIM71
c:VIMVIM71>install
-----------------------------------------------
打开vim
c:>vim
六、Ubuntu下安装DOSbox,及窗口缩放配置(解决字太小问题)
这里主要讲一下DOSbox的缩放。
装完DOSbox之后发现字真的非常小,快瞎了,找到了一个解决方法。
使用vim(或者其他软件)修改配置文件:
-----------------------------------------------
~$ vim .dosbox/dosbox-0.74.conf
-----------------------------------------------
修改配置文件中的
-----------------------------------------------
#fullresolution=original
fullresolution=1024x768
#windowresolution=original
windowresolution=1024x768
output=opengl
hwscale=2.00
-----------------------------------------------
注意事项:
1.其中1024x768的x是字母不能用星号(×)
2.需要添加一句hwscale=2.00,原本是不存在的。
七、DOSBOX 快捷键及 MS-DOS 命令
1、全屏/退出全屏:alt+enter
2、释放鼠标:ctrl+F10
3、exit:退出DOSBOX
4、dir 显示目录内容,可选参数:/w 只显示文件名,/P 显示部分内容,*.exe 筛选出可执行文件
5、cd 进入目录,cd .. 退回上一级目录
6、md 新建目录
7、rd 删除目录
8、cls 清空屏幕
9、copy 复制文件
10、del 删除文件
11、deltree 删除整个文件夹
12、ren 重命名
13、ver显示当前版本号
14、type 输出文本文件内容
15、echo 显示消息
参考:
https://wiki.ubuntu.org.cn/DOSBox
https://www.jianshu.com/p/b0ff4da31480
https://www.bbsmax.com/A/VGzlBQEw5b/
http://blog.sina.com.cn/s/blog_14f9d2b790102x3at.html
https://blog.csdn.net/weixin_38709708/article/details/83057207
https://blog.csdn.net/qq_41584385/article/details/101855795