zoukankan      html  css  js  c++  java
  • Ubuntu18.04/Linux下安装DosBox进行8086汇编

    在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 团队添加补丁。

    官方网站:https://www.dosbox.com/

     

    二、软件安装:

    ------------------------------------------------------

    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

     
  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/pipci/p/12382824.html
Copyright © 2011-2022 走看看