Running DOS Programs on Linux: Duke Nukem Lives!
If I play video games they're usually pretty low tech ones. One of the few games I miss from the old days is Duke Nukem, and I'm talking about the Duke before he went 3D. If you have an old DOS game that you'd like to run, or for that matter any old DOS program, check out DOSBox. Even if you don't have any DOS programs that you'd like to run, you might want to try downloading some of the old DOS games that are now available free online.
DOSBox is a DOS emulator that runs under Linux as well as OS X and Windows. To quote from the website:
DOSBox is a DOS-emulator that uses the SDL-library which makes DOSBox very easy to port to different platforms. DOSBox has already been ported to many different platforms, such as Windows, BeOS, Linux, MacOS X...
DOSBox also emulates CPU:286/386 realmode/protected mode, Directory FileSystem/XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA graphics, a SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with older games...
DOSBox is fairly easy to use, if it's not included in your distro's repo (openSuSE has it), download it here. Once it's installed just type dosbox. When the DOSBox window appears the first thing you have to do is mount the directory that contains your DOS program as a DOS drive. You do this by typing a mount command in the DOSBox window, for example I did:
mount c ~/bindirs/dukenukem/DUKE
To start your DOS program change to the drive that you just mounted and type the name of the program:
And now you're playing Duke Nukem, or possibly doing something useful.
If you don't have a copy of Duke Nukem you can download it here. I already had a copy that I had saved years ago but I did download a copy of Duke Nukem 2. This required a few installation steps before I was able to run. Under Linux:
$ cd ~/bindirs/dukenukem $ mkdir DUKE2 $ cd DUKE2 $ unzip ~/tar/d/dnukem2.zip $ dosbox
Then in the DOSBox window:
mount c ~/bindirs/dukenukem/DUKE2 c: install.bat nukem2.exe
Note that this actually ended up installing it in ~/bindirs/dukenukem/DUKE2/DUKE2 but this is easy enough to move around from Linux to eliminate the extra DUKE2 from the path.
Running on a Quad Core Phenom, DOSBox's performance was good: I encountered no performance problems with video or sound. I also noticed that while running it didn't appear to require any more CPU than any other program I tend to use so I suspect performance should be good on most modern systems.
Mitch Frazier is an Associate Editor for Linux Journal.
|The True Internet of Things||Sep 02, 2015|
|September 2015 Issue of Linux Journal: HOW-TOs||Sep 01, 2015|
|September 2015 Video Preview||Sep 01, 2015|
|Using tshark to Watch and Inspect Network Traffic||Aug 31, 2015|
|Where's That Pesky Hidden Word?||Aug 28, 2015|
|A Project to Guarantee Better Security for Open-Source Projects||Aug 27, 2015|
- The True Internet of Things
- Using tshark to Watch and Inspect Network Traffic
- September 2015 Issue of Linux Journal: HOW-TOs
- Problems with Ubuntu's Software Center and How Canonical Plans to Fix Them
- Firefox Security Exploit Targets Linux Users and Web Developers
- Concerning Containers' Connections: on Docker Networking
- Where's That Pesky Hidden Word?
- A Project to Guarantee Better Security for Open-Source Projects
- My Network Go-Bag
- Build a “Virtual SuperComputer” with Process Virtualization