TranslateProject/translated/tech/20180905 How To Run MS-DOS Games And Programs In Linux.md

251 lines
7.2 KiB
Markdown
Raw Normal View History

在Linux中怎么运行Ms-Dos游戏和程序
======
![](https://www.ostechnix.com/wp-content/uploads/2018/09/dosbox-720x340.png)
你是否想过尝试一些经典的MS-DOS游戏和像Turbo C++这样的C++ 编译器?这篇教程将会介绍如何使用**DOSBox**在Linux环境下运行MS-DOS的游戏和程序。**DOSBox**是一个x86平台的DOS模拟器可以用来运行经典的DOS游戏和程序。 DOSBox模拟带有声音图形鼠标操纵杆和调制解调器等的因特尔 x86 电脑它允许你运行许多旧的MS-DOS游戏和程序这些游戏和程序根本无法在任何现代PC和操作系统上运行例如Microsoft Windows XP及更高版本Linux和FreeBSD。 DOSBox是免费的使用C ++编程语言编写并在GPL下分发。
### 在Linux上安装DOSBox
DOSBox在大多数Linux发行版的默认仓库中都能找的到
在Arch Linux及其衍生版如AntergosManjaro Linux上
```
$ sudo pacman -S dosbox
```
在 Debian, Ubuntu, Linux Mint上:
```
$ sudo apt-get install dosbox
```
在 Fedora上:
```
$ sudo dnf install dosbox
```
### 配置DOSBox
DOSBox是一个开箱即用的软件它不需要进行初始化配置。 它的配置文件位于**`〜/ .dosbox` **文件夹中,名为`dosbox-x.xx.conf`。 在此配置文件中,你可以编辑/修改各种设置例如以全屏模式启动DOSBox全屏使用双缓冲设置首选分辨率鼠标灵敏度启用或禁用声音扬声器操纵杆等等。 如前所述,默认设置即可正常工作。 你可以不用进行任何更改。
### 在Linux中运行MS-DOS上的游戏和程序
终端运行以下命令启动DOSBox:
```
$ dosbox
```
下图就是DOSBox的界面
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt.png)
正如你所看到的DOSBox带有自己的类似DOS的命令提示符和一个虚拟的`Z\`Drive如果你熟悉MS-DOS的话你会发现在DOSBox环境下工作不会有任何问题。
这是`dir`命令在Linux中等同于`ls`命令)的输出:
![](http://www.ostechnix.com/wp-content/uploads/2018/09/dir-command-output.png)
如果你是第一次使用DOSBox你可以通过在DOSBox提示符中输入以下命令来查看关于DOSBox的简介
```
intro
```
在介绍部分按ENTER进入下一页
要查看DOS中最常用命令的列表请使用此命令:
```
help
```
要查看DOSBox中所有支持的命令的列表请键入
```
help /all
```
记好了这些命令应该在DOSBox提示符中使用而不是在Linux终端中使用。
DOSBox还支持一些实用的键盘组合键。 下图是能有效使用DOSBox的默认键盘快捷键。
![](http://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-keyboard-shortcuts.png)
要退出DOSBox只需键入并按Enter
```
exit
```
默认情况下DOSBox开始运行时的正常屏幕窗口大小如上所示
要直接在全屏启动dosbox请编辑`dosbox-x.xx.conf`文件并将**fullscreen**变量的值设置为**enable**。 之后DosBox将以全屏模式启动。 如果要返回正常屏幕,请按 **ALT+ENTER**
希望你能掌握DOSBox的这些基本用法
让我们继续安装一些DOS程序和游戏。
首先我们需要在Linux系统中创建目录来保存程序和游戏。 我将创建两个名为**`〜/ dosprograms` **和**`〜/ dosgames` **的目录,第一个用于存储程序,后者用于存储游戏。
```
$ mkdir ~/dosprograms ~/dosgames
```
出于本指南的目的,我将向你展示如何安装**Turbo C ++**程序和Mario游戏。我们首先将看到如何安装Turbo。
下载最新的Turbo C ++编译器并将其解压到**`〜/ dosprograms` **目录中。 我已经将turbo c ++保存在在我的**〜/ dosprograms / TC /**目录中了。
```
$ ls dosprograms/tc/
BGI BIN CLASSLIB DOC EXAMPLES FILELIST.DOC INCLUDE LIB README README.COM
```
运行 Dosbox:
```
$ dosbox
```
将**`〜/ dosprograms` **目录挂载为DOSBox中的虚拟驱动器 **C:\**
```
Z:\>mount c ~/dosprograms
```
你会看到类似下面的输出
```
Drive C is mounted as local directory /home/sk/dosprograms.
```
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt-1.png)
现在使用命令切换到C盘
```
Z:\>c:
```
然后切换到**tc / bin**目录:
```
Z:\>cd tc/bin
```
最后运行turbo c ++可执行文件:
```
Z:\>tc.exe
```
**备注:**只需输入前几个字母然后按ENTER键自动填充文件名。
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt-4.png)
你现在将进入Turbo C ++控制台。
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt-5.png)
创建新文件ATL + F并开始编程
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt-6.png)
你可以同样安装和运行其他经典DOS程序。
**故障排除:**
运行turbo c ++或其他任何dos程序时你可能会遇到以下错误
```
DOSBox switched to max cycles, because of the setting: cycles=auto. If the game runs too fast try a fixed cycles amount in DOSBox's options. Exit to error: DRC64:Unhandled memory reference
```
要解决此问题,编辑**〜/ .dosbox / dosbox-x.xx.conf **文件:
```
$ nano ~/.dosbox/dosbox-0.74.conf
```
找到以下变量:
```
core=auto
```
并更改其值为:
```
core=normal
```
现在让我们看看如何运行基于DOS的游戏例如 **Mario Bros VGA**
从 [**这里**][1]下载Mario游戏并将其解压到Linux中的**〜/ dosgames **目录
运行 DOSBox:
```
$ dosbox
```
我们刚才使用了虚拟驱动器 **c:** 来运行dos程序。现在让我们使用 **d:** 作为虚拟驱动器来运行游戏。
在DOSBox提示符下运行以下命令将 **~/dosgames** 目录挂载为虚拟驱动器 **d**
```
Z:\>mount d ~/dosgames
```
进入驱动器D
```
Z:\>d:
```
然后进入mario游戏目录并运行 **mario.exe** 文件来启动游戏
```
Z:\>cd mario
Z:\>mario.exe
```
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Dosbox-prompt-7.png)
开始玩游戏:
![](https://www.ostechnix.com/wp-content/uploads/2018/09/Mario-game-in-dosbox.png)
你可以同样像上面所说的那样运行任何基于DOS的游戏。 [**点击这里**] [2]查看可以使用DOSBOX运行的游戏的完整列表。
### 总结
尽管DOSBOX并不能作为MS-DOS的完全替代品并且还缺少MS-DOS中的许多功能但它足以安装和运行大多数的DOS游戏和程序。
有关更多详细信息,请参阅官方[**DOSBox手册**][3]
这就是全部内容。希望这对你有用。更多优秀指南即将到来。 敬请关注!
干杯!
--------------------------------------------------------------------------------
via: https://www.ostechnix.com/how-to-run-ms-dos-games-and-programs-in-linux/
作者:[SK][a]
选题:[lujun9972](https://github.com/lujun9972)
译者:[way-ww](https://github.com/way-ww)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.ostechnix.com/author/sk/
[1]: https://www.dosgames.com/game/mario-bros-vga
[2]: https://www.dosbox.com/comp_list.php
[3]: https://www.dosbox.com/DOSBoxManual.html