Skip to content

Compatibility tool to run DOS games on Steam through native Linux DOSBox

License

Notifications You must be signed in to change notification settings

Faalagorn/steam-dos

 
 

Repository files navigation

steam-dos

Build Status steam-dos discord Say Thanks!

Compatibility tool to run DOS games on Steam through native Linux DOSBox.

steam-dos

Official mirrors: GitHub, GitLab.

Game compatibility reports: Steam, GOG.

Features

  • Lower input lag (compared to DOSBox inside Proton)
  • Steam features working as expected (e.g. Steam Cloud, Controller settings or recording of time played)
  • Better fullscreen support, especially on multi-monitor setups*
  • Steam Overlay working out of the box*
  • More configuration options and better defaults*
  • Auto-start of software MIDI synthesiser
  • Auto-setup of MIDI for supported titles (click Play and enjoy pre-configured MIDI music)

* - compared to vanilla DOSBox

Prerequisites

You will need Python (>= 3.5), DOSBox (>= 0.74) and inotify-tools. Optionally for MIDI support: TiMidity++ or FluidSynth and a soundfont.

Fedora

$ sudo dnf install dosbox inotify-tools timidity++ fluid-soundfont-gm

OpenSUSE

$ sudo zypper install dosbox inotify-tools timidity fluid-soundfont

Debian, Ubuntu et consortes

$ sudo apt install dosbox inotify-tools timidity fluid-soundfont-gm

Arch, Manjaro

$ sudo pacman -S dosbox inotify-tools timidity++ soundfont-fluid

Installation (using tarball)

  1. Close Steam.

  2. Download and unpack tarball:

    $ cd ~/.local/share/Steam/compatibilitytools.d/ || cd ~/.steam/root/compatibilitytools.d/
    $ curl -L https://github.com/dreamer/steam-dos/releases/download/v0.4.0/steam-dos.tar.xz | tar xJf -
    
  3. Start Steam.

  4. In game properties window select "Force the use of a specific Steam Play compatibility tool" and select "DOSBox (native)".

Configuration

Read Configuration article on project Wiki.

GOG Games

To easily install a DOS game from GOG to your Steam library, use included script:

$ ./install-gog-game ~/Downloads/setup_warcraft_orcs__humans_1.2_\(28330\).exe

It will unpack the game to ~/.local/share/games, prepare a setup that works around all known Steam bugs and generate .desktop file to be added to your Steam library. After that you can play the game using steam-dos or Proton.

Installation script depends only on Python standard library, you can put it in your PATH or wherever you like.

MIDI auto-setup

steam-dos preconfigures selected titles to turn MIDI music on/off, depending on user preferences. Supported games are:

Just click "Play" and enjoy glorious MIDI music, there's no need to hunt those pesky SETSOUND.EXE programs.

Other games

Sythesiser running does not automagically turn on MIDI music in every game, sometimes you need to enable it manually (usually there's a file called SETUP.EXE, IMUSE.EXE or similar somewhere in the game directory). Use following settings:

Music/device: Roland MPU401/General MIDI, Music Port: 330

If you'll find a game, that supports MIDI and you need to enable it manually, create a bug report, please!

Sierra Launcher

Some game collections on Steam use "Sierra Classics Launcher" graphical frontend. There's no support for graphical version of this launcher - the first game in a collection will be started by default. You can select different game to run with SDOS_SIERRA_GAME environment variable.

For example, to start King's Quest 6 from King's Quest Collection:

SDOS_SIERRA_GAME=6 %command%

Check SierraLauncher.ini file in game's installation dir to learn which number corresponds to which game.

Development

Read all about it in the contributing guide :)

Known issues

As of June/July 2019 you are likely to encounter one of these bugs:

  • Steam Overlay causes visual glitch. DOSBox issue, fixed in 0.74-3.
  • Mouse cursor issues in Gnome 3.30. Gnome issue, fixed in 3.32.
  • Some games experience random KeyUp events. DOSBox issue.
  • Alt+Tab does not work in fullscreen. DOSBox does not support borderless window mode (yet) - use Alt+Enter to leave fullscreen and interact with your desktop.

About

Compatibility tool to run DOS games on Steam through native Linux DOSBox

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 95.9%
  • Makefile 2.8%
  • Other 1.3%