DOSBox Pure for RetroArch aims to simplify classic MS-DOS gaming
Recently, indie developer Bernard Schilling published a new fork of the DOSBox classic-gaming emulator. If you’re not familiar with DOSBox, it’s a way to play classic MS-DOS games from the 1980s and 1990s on a modern Windows, Mac, or Linux PC. DOSBox Pure is an attempt to simplify and eliminate some of the donkeywork involved in actually loading and playing games in DOSBox itself.
DOSBox Pure isn’t a standalone app
For those among us who aren’t already intimately familiar with retrogaming—even those of us who lived through the period when those games were new—it isn’t necessarily the most welcoming scene to get into. Although DOSBox Pure is specifically trying to alleviate that, it falls afoul of the same nest of expectations of what “everybody already knows,” and I found it rather frustrating digging all the way to the bottom of “what is and how can I make it work.”
The very first thing you’ll need to know is that DOSBox Pure itself runs underneath the broader RetroArch application. RetroArch, in its own words, is “a frontend for emulators, game engines, and media players.” DOSBox Pure is a “core” for RetroArch—meaning, when properly installed, it serves as one of the engines that RetroArch can use to run an older game.
None of this is made clear anywhere in DOSBox Pure’s rather sparse documentation, which assumes you’re a past master with RetroArch specifically and MS-DOS game-emulator environments in general.
Installing RetroArch and DOSBox Pure on Windows 10
After downloading RetroArch, its initial setup will be fairly straightforward for most users. If installing it on a machine that doesn’t already have old DirectX libraries available, however, you’ll get a dialog warning you that you need them. Don’t panic—RetroArch can download and install them for you, you just need to tick a checkbox that defaults to off.
If you do end up needing to accept RetroArch’s offer to download DirectX 9c, be warned that ancient libraries come with ancient bundle offers. The DirectX 9c installer also offers to install the Bing bar in your browser—we didn’t recommend doing that 15 years ago, and we still don’t recommend doing it now! Uncheck the Bing bar checkbox and proceed.
Although RetroArch offers to run itself automatically once the installer finishes, we found it frequently doesn’t actually pop up despite ticking that box. If it doesn’t open in a few seconds, you can find it under your Start menu, and it will open from there just fine. This, however, leaves you staring at a rather opaque set of menus offering to let you load or save “cores,” “configurations,” and “content” with little to no explanation of what those mean.
DOSBox Pure itself is a “core,” and as such, its .dll
file should be copied into RetroArch’s cores
directory, while its .info
file goes into RetroArch’s info
directory. Where those are is far from immediately clear, and you may be distracted by RetroArch’s offer to install cores from the Downloads
directory.
When RetroArch says “the Downloads directory,” it doesn’t mean your Downloads directory—it means RetroArch’s Downloads directory, which will generally be found directly beneath %PROFILEDIR%/AppData/Roaming/RetroArch/
. The cores
and info
directories are right there along with it. Once you drop DOSBox Pure’s one .dll
and one .info
in their respective directories, you’re ready to rock!
Well, sort of.
Finding, installing, and launching DOS games
Now that you’ve got RetroArch installed, and DOSBox Pure installed inside it, it’s time to find games! The quickest source is Classic DOS Games, a free website that hosts quite a few of the old MS-DOS classics. (You can also, of course, buy many more games—such as the classic Wing Commander—directly from GOG.)
Once you’ve downloaded a game or three, the next step is to dump them into RetroArch’s downloads directory—remember, that’s not your Downloads
folder, it’s RetroArch’s, and you can find it beneath your user profile (usually C:\Users\yourname) in AppData\Roaming\Retroarch\downloads
. You don’t need to unzip the games—just put the ZIP files themselves in there, as is.
Once your new games are placed in the proper directory, fire up RetroArch, navigate to Load Content, and you’ll see them listed. Pick one, and the DOSBox Pure core will fire up automatically (or you can choose it from a list if you’ve installed other cores like MAME) and show you a list of potential files to execute within the game you’ve opened.
I played two games: Quake and Jazz Jackrabbit. Both games require an installation routine prior to actually playing; in Jazz Jackrabbit‘s case, all it does is set a couple of config options about sound—and SoundBlaster 16 works, if anybody needs to know. Quake is considerably more involved, as it needs to extract a bunch of data from a quaint, old .PAK
compressed file type. In either case, once the setup routine finishes, you have no option to play the game—when the executable exits, so does DOSBox Pure, and you’re dumped back into RetroArch.
However, once you’ve run the game’s installer, the next time you hit Load Content on the game from RetroArch, it actually fires up and plays. Behold, classic Quake in all its glory! Depending on the game, you may have some fairly serious issues with RetroArch’s key bindings, unfortunately—the defaults seem to assume console emulation rather than MS-DOS. In particular, RetroArch by default binds the space bar to its speedup function, which makes playing most FPSes unpossible.
To fix that issue, you can go into Settings–>Input–>Hotkeys within RetroArch itself with no game running, and there you can unbind or rebind hotkeys—or hide all of the bindings behind another key that enables them. While this fixed my first Quake issue—not being able to jump without sending the system into warp overdrive—it didn’t fix the second, which was the right and left arrow keys mysteriously changing weapons as well as pivoting the hero left and right.
DOSBox Pure vs. classic DOSBox
As someone who had significant experience with MAME, NESticle, Fusion, several Apple ][ emulators, and classic DOSBox—but not with RetroArch—I found my introduction to DOSBox Pure pretty frustrating. I could install DOSBox, download the Quake installer, and install and play with no difficulty—but getting the same thing done in DOSBox Pure was an exercise in frustration.
If you’re already intimately familiar with RetroArch itself, DOSBox Pure is a snap to install and use. But before you can get to that point, you need to learn what the difference between a “Core” and “Content” is in RetroArch, figure out where it keeps its files, whether you should be running a Core or starting Content, and more—and the RetroArch community seems to expect that everybody already knows these things.
The “Pure” part of the name particularly confused me—instead of feeling that I got the “pure” experience of installing and playing games like Quake, I felt buried neck-deep in details and quirks native to software born long after the demise of the platform being emulated.
The intent seems to be to “purify” the experience of the game by distilling it away from the experience of the operating system (MS-DOS) underneath it. But without significant RetroArch experience, it doesn’t remove the need to mess with the underlying infrastructure; it just adds new layers of RetroArch infrastructure to the existing MS-DOS layers.
Whether you use DOSBox Pure or the classic, standalone DOSBox, you’ll still need to make your way through game installers, configure emulated hardware such as sound and video cards, and so forth.
Is it worth the trouble?
For those who lived and breathed the MS-DOS era, just running DOSBox itself will almost certainly be simpler. Doing so gives you an instantly available MS-DOS “computer,” with a “hard drive” rooted in a folder on your real PC. This avoids confusion with RetroArch’s infrastructure and terminology, and it also avoids conflicts with RetroArch hotkeys that seem better suited to console or arcade gaming than keyboard-and-mouse gaming.
The major benefit I see in DOSBox Pure over DOSBox Classic is a sort of built-in containerization for games. DOSBox Pure creates a separate environment for each game automatically when it’s “opened” from the downloaded ZIP file, including a persistent, game-specific “hard drive” where the game’s dynamic data (configuration files, game saves, etc.) live, independent from other games.
Listing image by psyraven
https://arstechnica.com/?p=1731787