Installing ScummVM¶
This page explains how to install ScummVM on a computer. For all other platforms, see the relevant platform guide.
Windows
There are two ways to install ScummVM on Windows: use the installer, or install manually.
Installing ScummVM using the installer
Download the Windows installer for your operating system from the ScummVM downloads page, and double click the downloaded file. The installer guides you through the install process, and adds a shortcut to the Start Menu. There is also an option to add a shortcut to the desktop.
To run ScummVM, either navigate to desktop and double click the ScummVM shortcut, or go to Start > All Apps > ScummVM. For Windows XP, go to Start > All Apps > ScummVM.
Installing ScummVM manually
Download the Windows zip file for your operating system (32bit or 64bit). To extract the files, right-click the folder and select Extract All.
To run ScummVM from the extracted folder, find the scummvm.exe
file and double click it.
macOS
Installing ScummVM using the disk image
Download the recommended disk image file from the ScummVM downloads page. After the download has completed, double click the file to mount the disk image file. A window containing the ScummVM icon opens. Drag this icon into your Applications folder to install ScummVM.
To run ScummVM, click on the icon in the Applications folder.
Note
macOS includes technology called Gatekeeper, which checks to ensure only trusted software is run on your Mac. ScummVM is not available from the App Store, so follow the steps on this Apple support page to allow ScummVM to run.
Linux
There are multiple ways to install ScummVM on Linux: use the Snap Store, Flathub or the software repository, or manually install the release binary.
Installing ScummVM using the Snap Store
A Snap is an app that is bundled with its dependencies, which makes the install on any Linux operating system very easy. Snap comes pre-installed on Debian and Ubuntu-based distributions, but can be installed on any Linux distribution by following the instructions on the Snapcraft website.
The ScummVM Snap comes with a selection of freeware games and demos pre-loaded.
Enter the following on the command line to install the ScummVM Snap:
sudo snap install scummvmTo run ScummVM, enter
scummvm
on the command line, or launch ScummVM through the desktop interface by clicking Menu > Games > ScummVM.Installing ScummVM using Flathub
Flathub is another way to install apps for Linux, by using Flatpak. Flatpak comes standard with Fedora-based distributions, but can be installed on any Linux operating system. The Flathub website has excellent install instructions.
When Flatpak is installed, enter the following on the command line to install ScummVM:
flatpak install flathub org.scummvm.ScummVMSome distributions have the option to install Flatpaks through the graphical desktop interface. Navigate to the ScummVM Flatpak page , click the INSTALL button and then follow the install process.
To run ScummVM, enter the following on the command line:
flatpak run org.scummvm.ScummVMTo pass Command line arguments, add them after the Flatpak
run
command.Note
The Flatpak version of ScummVM is sandboxed, meaning that any games need to be copied into the Documents folder to be accessible by ScummVM.
Installing ScummVM using the software repository
ScummVM is found in the software repositories of many Linux distributions.
Caution
The repositories might not contain the most up-to-date version of ScummVM.
To run ScummVM, enter
scummvm
on the command line, or launch ScummVM through the desktop interface by clicking Menu > Games > ScummVM.Installing ScummVM using the release binaries
Binary packages are only released for Debian and Ubuntu. On the ScummVM downloads page, find and download the ScummVM package that corresponds to your operating system and architecture. To install a DEB package, either double click on the downloaded DEB file to use the graphical installer, or, if that’s not available, use the command line.
sudo apt install /path/to/downloaded/file.debReplace
/path/to/downloaded/file.deb
with the actual path to the downloaded DEB package. The APT software manager handles the installation.To run ScummVM, enter
scummvm
on the command line, or launch ScummVM through the desktop interface by clicking Menu > Games > ScummVM.
Understanding the interface¶
The Launcher¶
The main ScummVM window is called the Launcher. The Launcher opens whenever you start ScummVM, unless you launch a game directly from the command line.

The Launcher, with labels for each GUI element.¶
The games list¶
The pane on the left is the games list, which lists all the games that have been added to ScummVM. The games list usually offers some additional information about each game, such as original platform and language. To highlight any game on the list, type the first letter(s) of its title, or click on it.
The search box¶
The search box lets you filter the games list. It is located at the top of the page next to the magnifying glass icon. The filter is applied as you type, and is not case sensitive. To clear the filter, click X.
There are many ways to filter games. For example, you can type “Monkey Island” to locate all “Monkey Island” games on the list, or you can type “German” to find German games.
The buttons¶
To the right of the games list there are a number of buttons. Their functions are as follows:
Start¶
Launches the highlighted game.
Load¶
Opens the load game window, from which you can go to a saved game without having to start the game first.
See the Saving and loading a game page.
Add Game¶
Opens a file browser. To add a game, select a folder containing game files.
See the Adding and playing a game page.
Edit Game¶
Opens the game settings window. This window also opens whenever a game is added to the games list in the Launcher.
Use this window to configure settings specific to a game. These settings override the global settings. For more information, see the Changing settings page.
Remove Game¶
Removes the highlighted game from the list. This does not remove any saved games, so if you add a game to the games list again, you are able to resume where you left off.
Options¶
Opens the global settings window. Use this window to define global game settings, as well as change a number of the ScummVM Launcher settings. For more information, see the Changing settings page.
About¶
Shows credits and miscellaneous information about ScummVM.
Quit¶
Closes the Launcher and quits the ScummVM application.
Handling game files¶
ScummVM needs access to the data files for each game. A comprehensive list of required data files for each game is found on the ScummVM Wiki Datafiles page. ScummVM can run the game data files from any directory it has access to, including external media.
Note
For ease of use, you can create a dedicated games folder into which folder containing game files can be copied. The resulting directory structure will look somewhat like this:
ScummVM Games
|-- Day of the Tentacle
| |-- MONSTER.SOU
| |-- TENTACLE.000
| `-- TENTACLE.001
`-- Flight of the Amazon Queen
|-- QUEEN.1
`-- queen.tbl
For games on floppies or CDs, if the data files are accessible, the external media can be accessed directly by ScummVM. Alternatively, copy the game files to a folder as described above. If the data files are not accessible, run the installer on the platform the game was designed for, to extract the game files.
For games downloaded from digital distributors or from various freeware sources run the installer to extract the data files, or if the data files are supplied as a zip file, extract the files.
For macOS or Linux users without access to a Windows machine, you can get the data files from games that only have Windows installers. Use Wine to run the Windows installer. Alternatively, for GOG.com games, use innoextract to unpack game files from the installer without actually running it.
Tip
Use ScummVM’s Cloud functionality to share game files and automatically back up and sync your saved game states. For detailed instructions see the Connecting a cloud service guide. For devices on the same local network, ScummVM can also run a web server to allow hassle-free transfer of files. For detailed instructions, see the Using the local web server guide. This is a good option if you do not wish to connect a Cloud service.
Multi-disc games¶
ScummVM needs access to all the data files, so it will not be able to run directly from a CD if the game has multiple discs. To add a multi-CD game, copy the required data files from the CD to a folder on your hard drive. For a comprehensive list of required files, see the ScummVM Wiki Datafiles page.
As a general guideline, where there are duplicate, identical files (same name, same file size) on more than one disc, only one copy of the file is required. Where there are files that have the same name but are different on each disc, rename them. For example, where there is a music.clu
on two discs, rename the file on the first disc to music1.clu
and the file on the second disc to music2.clu
.
CD audio¶
In most cases, ScummVM can use CD audio directly from the game CD. If you don’t always want to insert the game CD to use the CD audio, you can extract the audio tracks from the CD and save them locally:
Extract the CD audio tracks in WAV or AIFF format.
Convert the tracks to either MP3, FLAC or OGG file formats.
Place the converted audio files in the same folder that contains the other game datafiles.
Tip
fre:ac is a multi-platform, open-source software, with the ability to both rip CDs and convert audio between MP3, OGG, FLAC and WAV file formats.
Macintosh games¶
All LucasArts SCUMM games also exist in versions for the Macintosh. Most of the newer games shipped with only a single data file; ScummVM can use this file like it does any other data file. Some discs shipped with hidden files. To view hidden files in macOS, press Cmd+Shift+. in a Finder window.
Mac uses a different file system to other systems (HFS+), so to access the CD or floppy disc on a Windows or Linux system you need additional software to view and copy the files.
For Windows, HFS Explorer is a basic and free option, which gives you read-only access to HFS drives. Use the installer rather than the zip file, to ensure it is installed correctly.
For Linux, hfsplus gives you read-only access to HFS drives. To use hfsplus, use the command line:
Install hfsplus using the software manager. On Debian-based distributions, use
sudo apt install hfsplus
.Find the game disc by running
sudo fdisk -l
and finding the one with typeApple HFS/HFS+
. In this example, this is/dev/fd0
.Create a mount point, for example:
sudo mkdir /media/macgamedrive
Mount the device to that moint point:
sudo mount -t hfsplus /dev/fd0 /media/macgamedrive
Access the device at
/media/macgamedrive
.
Adding and playing a game¶
Where to get the games¶
One of the most frequently asked questions is, “Where do I get the games?!?”. If you still have your old floppy discs or CDs lying around, and have a way to read them, then you can use the game files from those original discs.
If you haven’t had a floppy disc or even a CD in your possession for a while, there is a ScummVM wiki page dedicated to helping you find some games to play.
Tip
ScummVM has an affiliate referrer programme with GOG.com, so if you are going to buy a game, please use this GOG.com link to help the project!
Make sure to check out the compatibility list on the ScummVM website, and the Supported Games page and Platform Overview page on the ScummVM wiki before you buy a game, to ensure it can run with ScummVM.
Adding games to the Launcher¶
The following steps explain how to add a game to ScummVM, and assume you have access to the data files for each game. If you’re not sure how to access the game data files, see the Handling game files page.
Run ScummVM to open the Launcher.
In the Launcher window, click Add Game. This opens a file browser; either the system file browser or the ScummVM file browser.

To add multiple games at once, click the expander arrow next to Add Game, and select Mass Add.

Use the file browser to locate the folder containing the game data files. For the ScummVM file browser: Double click on a folder to open it, and use Go up to go back up one level. Highlight the folder by clicking on it, and then click Choose

Note
The Use Native file browser option in the Misc tab of the global settings controls whether ScummVM uses the system file browser, or its own file browser.
If you are using Mass Add, select Yes to run the mass game detector. A dialog opens to advise which games were added to the games list.


Sometimes, ScummVM detects multiple versions of a single game. In this case, highlight the correct version and click Choose to continue.

Caution
If you are using Mass Add, ScummVM adds all versions of a game.
If you are adding an unknown version of a game, ScummVM is not able to add the game to the games list. An error message appears to warn you that the game has not been added.
The Edit Game dialog opens to allow configuration of various settings for the game. These can be reconfigured at any time, but for now everything should be OK at the default settings. Any settings changed here override the global settings. Click Ok.

Note
The Edit Game dialog does not open when Mass Add is used.
Games are now ready to play! To play, highlight a game in the games list and click Start, or double-click the game in the games list.

Games can also be launched directly from the command line. For more information, see the Command line options page.
A note about copyright¶
ScummVM has a strict anti-piracy stance and the team wil not tolerate discussions around pirated games in any part of the project, including on the Forum or on Discord.
Copy protection screen¶
There are cases where the game companies themselves bundled ‘cracked’ executables with their games. In these cases the data files still contain the copy protection scripts, but the interpreter bypasses them; similar to what an illegally cracked version might do, only that here the producer of the game did it. There is no way for ScummVM to tell the difference between legitimate and pirated data files, so for the games where a cracked version of the original interpreter was sold at some point, ScummVM has to bypass the copy protection.
In some cases ScummVM still shows the copy protection screen. Enter any answer; chances are that it will work.
Saving and loading a game¶
This page explains how to save and load a game from the Global Main Menu, or load a game directly from the Launcher.
Note
Some games use their own load or save entry points within the game, or use their own menu instead of the GMM.
Saving a game¶
When you’re playing a game and you’re ready to save, press Ctrl+F5 (Ctrl+fn+F5 on a Mac) to access the Global Main Menu. Select Save.

The Global Main Menu (GMM).¶
There are two views: list view and tile view. Click the list and tile icons at the bottom left of the window to toggle between the two.
In tile view, click on the New Save tile. Enter a description for the game, then click OK.

Saving a game, tile view.¶

Save game decription, tile view.¶
In list view, click on a slot to save the game to that slot. Enter a description for the game, then click Save.

Saving a game, list view.¶
Autosave¶
ScummVM automatically saves your game every 5 minutes. The autosave period can be changed in the Misc settings tab, or in the configuration file.
Location of saved game files¶
The save directory can be changed with the savepath setting in the Paths tab. It can also be changed in the configuration file.
Default saved game paths are shown below.
Windows
Windows NT4
C:\WINDOWS\Profiles\username\Application Data\ScummVM\Saved games\
Windows 2000/XP
\Documents and Settings\username\Application Data\ScummVM\Saved games\
Window Vista/7/8/10
%APPDATA%\ScummVM\Saved games
macOS
~/Documents/ScummVM Savegames/
Linux/Unix
ScummVM follows the XDG Base Directory Specification, so by default the saved games can be found at ~/.local/share/scummvm/saves/
, but this location might vary depending on the value of the XDG_DATA_HOME
environment variable.
.local
is a hidden directory. To view it use ls -a
on the command line.
If ScummVM was installed using Snap, the saves can be found at ~/snap/scummvm/current/.local/share/scummvm/saves/
Loading a game¶
If you want to load your saved game without having to start the game first, select the Load button directly from the Launcher. To load a saved game while you’re playing a game, press Ctrl+F5 (Ctrl+fn+F5 on a Mac) to access the Global Main Menu, then select Load.
There are two views: list view and tile view. Click the list and tile icons at the bottom left of the window to toggle between the two.
In list view, the pane on the left shows a list of your saved games. Click on a saved game to highlight it. In the pane on the right you can see timestamps, screenshots and playtime for that saved game.
Once you have highlighted the game you want to play, click Load.
To delete a saved game, highlight the saved game and click Delete.

Loading a game, list view.¶
In tile view, each tile shows a screenshot of the saved state, as well as a description and a save slot number. Click on the tile to load that saved game.

Loading a game, tile view.¶
Keyboard shortcuts¶
ScummVM supports various in-game keyboard and mouse shortcuts, and since version 2.2.0 these can be manually configured in the Keymaps tab, or in the configuration file.
For game-specific controls, see the wiki entry for the game you are playing.
Default shortcuts are shown in the table.
Shortcut |
Description |
---|---|
Ctrl+F5 |
Displays the Global Main Menu |
Cmd+q |
Quit (macOS) |
Ctrl+q |
Quit (Linux/Unix) |
Alt+F4 |
Quit (Windows) |
Ctrl+z |
Quit (other platforms) |
Ctrl+u |
Mutes all sounds |
Ctrl+m |
Toggles mouse capture |
Ctrl+Alt+ 1-8 |
Switches between graphics filters |
Ctrl+Alt and + or - |
Increases/decreases the scale factor |
Ctrl+Alt+a |
Toggles aspect ratio correction on/off |
Ctrl+Alt+f |
Toggles between nearest neighbor and bilinear interpolation (graphics filtering on/off) |
Ctrl+Alt+s |
Cycles through stretch modes |
Alt+Enter |
Toggles full screen/windowed mode |
Alt+s |
Takes a screenshot |
Ctrl+F7 |
Opens virtual keyboard (if enabled). This can also be opened with a long press of the middle mouse button or wheel. |
Changing settings¶
From the Launcher¶
The settings are arranged by subject, on different tabs:
Game tab | Engine tab | Graphics tab | Control tab | Keymaps tab | Audio tab | Volume tab | Midi tab | MT-32 tab | Paths tab | Misc tab | Cloud tab | LAN tab | Accessibility tab
To change a setting globally, so that it affects all games, select Options and then select the tab containing the setting you would like to change.
To change a setting for just one game, highlight the game in the games list, then select Edit Game and select the tab containing the setting you would like to change. To make the game use the settings on that tab instead of the global settings tab, tick Override global settings.
Not all settings are available for all games; for example, where there is no MIDI soundtrack for a game, there will be no MIDI or MT-32 tabs.
In the configuration file¶
See the configuration file page for more information on how to do this. Configuration keys are listed in the Settings pages, after the description of each setting, in italics.
Connecting a cloud service¶
Connecting ScummVM to a cloud storage service provides an easy way of sharing game files and saved games between multiple devices. ScummVM currently supports Dropbox, OneDrive, Google Drive and Box, although only one service can be connected at any one time.
Note
Cloud functionality is not supported on all platforms.
This guide explains how to connect a cloud service to ScummVM.
From the Launcher, select Options, click the > scroll arrow until the Cloud tab is visible, and then select the Cloud tab.
Select your preferred cloud storage service from the Active storage dropdown.

Click on the link shown at 1., and sign in to your cloud storage account. A 6-digit code is displayed after you sign in.

Warning
Do not share this 6-digit code with anyone before you connect your cloud storage account.
For devices without a web browser, navigate to the following ScummVM links on a computer or any other device with a web browser:
Dropbox | OneDrive | Google Drive | Box
Copy the 6-digit code, click into the empty field next to Paste, and then click Paste. Alternatively, for devices without a web browser, manually enter the 6-digit code.

Click 3. Connect. After the next page loads, click Enable storage.

Saved games sync automatically on launch, when a game is saved, and when a saved game is loaded. Select Sync now to manually sync.
To download game files from your cloud ScummVM folder, click Download game files.
To change to a different cloud account, or to disconnect your cloud account from ScummVM, click Disconnect.
Using the local web server¶
ScummVM can run a local web server (LAN), to simplify the transfer of game files, saved games and configuration files between devices on the same network. This is a good option if you do not want to use the Cloud, or if ScummVM for your platform does not have cloud functionality.
Note
LAN functionality is not supported on all platforms.
This guide explains how to set up and run a local web server.
From the Launcher, select Options, click the > scroll arrow until the LAN tab is visible, and then select the LAN tab.
Click Run server to start the server.

The LAN tab, with the server running.¶
To access the server, type the URL shown into the address bar of any web browser:

The server’s browser interface.¶
To download a file, click on the file to open the system download dialog.
To create a new directory, click Create Directory.

Create a new directory.¶
To upload files, click Upload Files and select files from the system file browser.

Upload files.¶
To change which files are accessible on the web server, set the /root/ Path to the directory containing the files you wish to access. You can access anything inside that directory, but you cannot access its parent directory. On some platforms ScummVM automatically sets the /root/ Path, but on some other platforms you need to configure this manually before running the web server for the first time.
To stop the web server, click Stop server to stop the server, or click Ok to close the settings dialog.
AmigaOS 4¶
This page contains all the information you need to get ScummVM up and running on AmigaOS 4.
What you’ll need¶
A system running Amiga OS 4
Installing ScummVM¶
ScummVM is available for download from the ScummVM Downloads page or the OS4 Depot.
Download and extract the .lha
file.
Run the extracted ScummVM_Install
script. This installer guides you through the installation process.

The ScummVM installer.¶
To automatically keep ScummVM up to date through AmiUpdate, run the Autoinstall
script.
Transferring game files¶
For games on PC or Mac formatted discs, use the original platform to access the data files, and then transfer these to Amiga. Alternatively, if you have external hardware such as a Catweazel floppy disc controller, you might be able to use this to access the files.
ScummVM for Amiga OS has Cloud and LAN functionality, to help manage the transfer of files. See Connecting a cloud service and Using the local web server.
See Handling game files for more information about game file requirements.
Controls¶
Controls can be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common default keyboard shortcuts.
Settings¶
For more information about Settings, see the Settings section of the documentation. Only platform-specific differences are listed here.
Audio¶
The CAMD driver allows the use of MIDI hardware. Select CAMD as the Preferred device.
Android¶
This page contains all the information you need to get ScummVM up and running on an Android device.
What you’ll need¶
An Android device running Android 4.1 (Jelly Bean) or newer.
Note
ScummVM has been tested to work up to Android 10. Currently there are some file browsing limitations with Android 11. The ScummVM team are working to resolve these.
Installing ScummVM¶
There are two ways to install ScummVM on an Android device; install it from the Google Play Store, or manually download and install the APK package from the ScummVM downloads page.
Installing from the Google Play Store¶
The latest supported version of ScummVM is on the Google Play Store; search for ScummVM on the Google Play Store and select Install.
Manually installing the APK package¶
On your device, use a web browser app to navigate to the ScummVM downloads page. The recommended download section on the page suggests the correct .apk
package, however if it does not, scroll down to select the correct package.
Tip
To find the correct package for your device, find out whether the device has a 32 or 64-bit operating system, and which chipset the device has. Do an internet search using the device model number to find these details.
Click on the correct package to start the download. After it has downloaded, go to the file and tap on it to start the install process. Use either a file manager app, or select the file directly from the web browser downloads. The file manager or the web browser asks for permission to install the package, and after permission is granted, returns to the install.
Note
The downloaded APK package is treated as an app from an unknown source, because it doesn’t originate in the Google Play store. To allow unknown apps:
For Android 7 or lower, go to Settings > Security > Device Administration, scroll down to Device Administration and enable Unknown Sources.
For Android 8 or higher, go to Settings > Apps and Notification and select Install Unknown Apps.
Transferring game files¶
Transfer all the required game data files to your device, into a folder accessible by the ScummVM app.
ScummVM has built-in Cloud functionality, which lets you connect your Google Drive, OneDrive, Box or Dropbox account. For more information, see the Connecting a cloud service page. ScummVM also has the ability to run a local web server. For more information, see the Using the local web server page.
There are a few other options to transfer the game files:
Copy the files directly onto the microSD card, if the device has one.
USB transfer from a computer. To complete file transfer by USB cable, tap the Charging this device via USB notification when the device is connected. Select Use USB for and then File Transfer. An Android File Transfer window opens.
Download games such as freeware games or those from digital distributors directly to your device.
See Handling game files for more information about game file requirements.
Controls¶
Default control mapping¶
Controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Touch screen control |
Action |
---|---|
One finger tap |
Left mouse click |
Two finger tap |
Right mouse click |
One finger touch & hold |
Middle mouse click |
Long press system Back button |
Opens Global Main Menu |
Short press system Back button |
Skip, or Cancel/Quit in the Launcher |
Small keyboard icon (top right) |
Opens/closes Virtual keyboard |
Touch controls¶
The touch control scheme can be switched in the global settings. From the Launcher, go to Options > Control > Touchpad mouse mode.
When touchpad mouse mode is off (default), the touch controls are direct. The pointer jumps to where the finger touches the screen.
When touchpad mouse mode is on, the touch controls are indirect. The finger can be far away from the pointer and still move it, like on a laptop touchpad.
The pointer speed setting in the Controls tab affects how far the pointer moves in response to a finger movement.
Two finger tap¶
To do a two finger tap, hold one finger down and then tap with a second finger.
Immersive Sticky fullscreen mode¶
ScummVM for Android uses the Immersive Sticky fullscreen mode, which means that the Android system bar is hidden until the user swipes from an edge with a system bar. Swipe from the edge to reveal the system bars. They remain semi-transparent and disappear after a few seconds unless you interact with them. Your swipe also registers in the game, so if you need to swipe from an edge with system bars, your game play is not interrupted.
Virtual keyboard¶
To open the virtual keyboard, tap on the small keyboard icon at the top right of the screen, or tap on any editable text field. To hide the virtual keyboard, tap the small keyboard icon again, or tap outside the text field.
To display or hide the small keyboard icon, from the Launcher select Options and then the Control tab. Tick the Show on-screen control box to enable the keyboard icon.
Paths¶
Saved games¶
By default, the saved games are saved in the internal app folder. To change the path, go to the Paths tab in either the global or game-specific settings.
Configuration file¶
The configuration file is in the internal app folder, and this path cannot be changed.
Accessing the internal app folder¶
To access the internal app folder, use ScummVM’s built-in LAN functionality:
From the Launcher, select Options and then the LAN tab.
Select /root/Path.
Use the file browser to Go up to the root of the ScummVM internal app folder.
Select the ScummVM data (int) shortcut, and tap Choose.
Run the server to access the
scummvm.ini`
configuration file.
For more information, see the Using the local web server page.
Known issues¶
On some newer devices, there is an issue if the saved path is outside the app’s internal (or external) storage. The ScummVM team is currently working on a fix.
If ScummVM is uninstalled or downgraded, its internal and external app spaces are fully deleted. If you want to keep saved games use ScummVM’s cloud or LAN functionality to keep those files. Alternatively, change the saved game path to a shared location such as an SD card.
Atari/FreeMiNT¶
This page contains all the information you need to get ScummVM up and running on an Atari system.
What you’ll need¶
A powerful Atari system or clone; recommended minimum CPU 68060.
FreeMiNT, TOS or MagiC operating system.
Installing ScummVM¶
Binary packages are provided for the m68000 CPU, the m68020 to m68060 range of CPUs, and the Coldfire (FireBee) CPU. All are available for download from the ScummVM Downloads page. To install ScummVM, extract the selected ScummVM archive into a folder on the hard disk.
Run scummvm.gtp
to start Scummvm. The scummvm.gtp
command will take command line options to set parameters for the ScummVM session.
To run ScummVM from a FreeMiNT Command Line Interface, make the program executable with the following command:
chmod +x scummvm.gtp
For the best performance, run ScummVM under FreeMiNT, from the command line, and without the AES started.
Transferring game files¶
Transfer files to the Atari as you normally would, such as through a network connection or by optical disc.
See Handling game files for more information about game file requirements.
Controls¶
Controls can be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Paths¶
FreeMiNT¶
Saved games and the configuration file are found in the user’s defined home directory.
MagiC/TOS¶
Saved games and the configuration file are found in the ScummVM installation directory.
Settings¶
For more information, see the Settings section of the documentation. Only platform-specific differences are listed here.
Graphics¶
For video rendering, define the variable SDL_VIDEODRIVER=XBIOS
in your environmental variables. Either XBIOS or GEM might be set by default. This is not a ScummVM setting, but rather a system-wide setting.
Tip
XBIOS works better than GEM, because GEM rendering is generally slower.
Known issues¶
There is no cloud/LAN functionality.
The Atari built-in MIDI driver (STMIDI) does not work.
FLAC, OGG and MP3 decoding libraries are extremely CPU intensive and greatly slow down the user experience. ScummVM is best run with uncompressed audio, when available.
While all supported engines are included in the Atari ScummVM release, not all games will run well due to the lack of resources. For example, the Curse of Monkey Island will run on a CT60-equipped Atari Falcon, but very poorly.
iOS¶
This page contains all the information you need to get ScummVM up and running on an iOS device.
Installing ScummVM¶
There are two ways to install ScummVM on an iOS device, and the method you use depends on whether or not the device has custom firmware installed.
Devices without custom firmware¶
To installing ScummVM on an iOS device without custom firmware you need to build the app from the source code, and then install it on your device. While a basic knowledge of the command line would be useful, the following instructions, if followed carefully, can be completed by anyone.
What you’ll need¶
A Mac computer with Xcode installed. Xcode is a free App, available from the Mac App Store.
An Apple Developer account. You can sign up for a free account on the Apple Developer Member Center with your Apple ID.
The ScummVM iOS Libraries downloaded, and the zip file extracted.
Note
If you have a free Apple developer account, each build will only be valid for 7 days, which means you will need to repeat these steps and rebuild ScummVM every week.
Step 1: Setting up the Xcode project¶
The first step is to download the repository containing the code required to build the app. The next steps require use of the command line. Go to Applications > Utilities > Terminal and copy and paste the following, then press return. This downloads (clones) the source code into your Home directory, into a folder called scummvm
:
git clone --depth 1 -b branch-2-2-0 https://github.com/scummvm/scummvm.git
Tip
To view the Home directory in the Finder, select Go > Home in the menu bar, or press command+shift+H.
If you haven’t done so before now, open Xcode from the Applications folder, and accept the End User License Agreement. Starting Xcode for the first time also installs the command line tools required.
Create a new directory called build
at the same level as the repository you just cloned, using either the Finder, or the command line as follows:
mkdir build
Copy the contents of the scummvm-ios7-libs-v2
folder you extracted earlier into the build
directory, using either the Finder, or the command line as follows:
cp -r ~/Downloads/scummvm-ios7-libs-v2/* ~/build/
If your downloaded iOS library folder is not in the Downloads folder as it is in the preceding example, change the path to where the folder actually is.
Now let’s change the present working directory and then set up the tools required to create the Xcode project:
cd scummvm/devtools/create_project/xcode
xcodebuild
Step 2: Generating the Xcode project¶
Change your present working directory to the build
directory:
cd ~/build
It’s time to generate the Xcode project. Run the following on the command line:
../scummvm/devtools/create_project/xcode/build/Release/create_project ../scummvm --xcode --enable-fluidsynth --disable-nasm --disable-opengl --disable-theora --disable-taskbar --disable-tts --disable-fribidi
The resulting directory structure looks like this:
Home
|--scummvm
'--build
|-- include
|-- lib
|-- engines
'-- scummvm.xcodeproj
Open the scummvm.xcodeproj
file from the Finder, or from the command line:
open scummvm.xcodeproj
Step 3: Building the ScummVM app¶
When Xcode is open, connect a device to install ScummVM onto. At the top of the window, select ScummVM-iOS and then select the device you just connected. You will need to “Trust” the device for it to show up on the list of connected devices.

The last step before building ScummVM is to change the bundle identifier and manage signing. Click on the scummvm project in the left pane, and then click on ScummVM - iOS under TARGETS. On the menu bar above, click on General. Under Identity there is a field labeled Bundle Identifier. Enter a unique identifier in reverse-DNS format. This can be as simple as com.yournamehere.

Next to General, click on Signing & Capabilities. Under Signing, tick the Automatically manage signing box, and select your developer account from the Team dropdown menu.

If you have not added your developer account to Xcode, do this now. Click Add an Account in the dropdown menu.
In the upper left-hand corner, press the play button to build ScummVM. When the build is finished, it launches on your connected device.
If ScummVM does not launch and you get an error message advising that the app failed to launch due to an invalid code signature, inadequate entitlements or because its profile has not been explicitly trusted by the user, you need to trust the apps that you have built. On your iOS device, go to Settings > General > Device Management > Developer App > Trust “Apple Development:yourAppleIDhere” > Trust.
Devices with custom firmware¶
What you’ll need¶
An iOS device with custom firmware installed (jailbroken). How to jailbreak a device is outside the scope of this documentation.
A file manager app such as Filza installed on the device.
Downloading and installing ScummVM¶
Go to the ScummVM downloads page and download the recommended .deb
or .ipa
package. When the device asks how to open the file, choose Filza.
Ensure the package is saved somewhere in the /var/mobile/
directory. It defaults to /var/mobile/Documents/
, which is fine. Tap on the file and then tap Install in the upper right corner to install ScummVM.
Restart your device for the install to complete.
Transferring game files¶
There are multiple ways to transfer game files to your iOS device.
ScummVM has built-in cloud functionality, which lets you connect your Google Drive, OneDrive, Box or Dropbox account. For more information, see the Connecting a cloud service page. ScummVM also has the ability to run a local web server. For more information, see the Using the local web server page.
Note
ScummVM’s cloud functionality does not currently support iCloud, however you can upload game folders to your iCloud and then use the Files app on your iOS device to copy these folders into the local ScummVM folder.
Another way to transfer files (for macOS Catalina and newer) to your device is by using the Finder while your device is connected to your Mac. In the Finder app on your Mac, navigate to Locations in the left pane, and click on the connected device. Click on Files, then drag the folder containing the game files into the ScummVM folder. For older versions of macOS, and for Windows users, file transfer can be done in iTunes.

See Handling game files for more information about game file requirements.
Controls¶
Game Controller Mapping |
|
---|---|
Touch screen control |
Action |
One finger tap |
Left mouse click |
Right mouse click |
|
ESC |
|
Two finger swipe (bottom to top) |
Toggles Click and drag mode |
Two finger swipe (left to right) |
Toggles between touch direct mode and touchpad mode. |
Two finger swipe (top to bottom) |
Global Main Menu |
Three finger swipe |
Arrow keys |
Pinch gesture |
Enables/disables keyboard |
Keyboard spacebar |
Pause |
Touch controls¶
The touch control scheme can be switched in the global settings. From the Launcher, go to Options > Control > Touchpad mouse mode.
When touchpad mouse mode is off, the touch controls are direct. The pointer jumps to where the finger touches the screen.
When touchpad mouse mode is on, the touch controls are indirect. The finger can be far away from the pointer and still move it, like on a laptop touchpad.
The pointer speed setting in the Controls tab affects how far the pointer moves in response to a finger movement.
Two finger tap¶
For a two finger tap, hold one finger down and then tap with a second finger.
Two finger double tap¶
For a two finger double tap, hold one finger down and then double tap with a second finger.
Click and drag mode¶
Simulates a left mouse click when you touch the screen. The mouse pointer drags to wherever you slide your finger, and releases where you lift your finger.
If you press down a second finger in this mode, it releases the simulated left mouse button, and presses down the simulated right mouse button. The right mouse button is released when you lift your finger again.
Keyboard¶
If no external keyboard is connected, the pinch gesture shows and hides the onscreen keyboard. When an external keyboard is connected, the pinch gesture enables/disables inputs from the external keyboard.
Paths¶
Saved games¶
/var/mobile/Library/ScummVM/Savegames/
if the device is jailbroken, or Savegames/
in the ScummVM folder for a non-jailbroken device. Access this folder through the Finder or iTunes.
Configuration file¶
/var/mobile/Library/ScummVM/Preferences
if the device is jailbroken, or Preferences
in the ScummVM folder for a non-jailbroken device. Access this folder through the Finder or iTunes.
Nintendo 3DS¶
This page contains all the information you need to get ScummVM up and running on a Nintendo 3DS.
What you’ll need¶
A Nintendo 3DS with a Homebrew Launcher or custom firmware. How to enable homebrew is outside the scope of this documentation.
Installing ScummVM¶
Download the Nintendo 3DS package from the ScummVM Downloads page. Extract the archive.
There are two ways to install ScummVM: using the 3DSX format, or the CIA format.
Using the 3DSX format¶
Copy the extracted files to your SD card into the /3ds/scummvm
directory.
Launch ScummVM using the Homebrew Launcher.
Using the CIA format¶
Use any CIA installation software to install the scummvm.cia
file.
The CIA format requires a DSP binary dump saved on your SD card as /3ds/dspfirm.cdc
. This is not an optional step, because without this you will not have proper audio support. Documenting this process is outside the scope of this documentation.
Transferring game files¶
Transfer game folders onto the SD card. The exact location is not important.
ScummVM for the Nintendo 3DS also has cloud functionality. See Connecting a cloud service.
See Handling game files for more information about game file requirements.
Controls¶
Default control mapping¶
Controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Game Controller Mapping: |
|
---|---|
Button |
Action |
Circle Pad |
Moves the cursor |
R + Circle Pad |
Slow Mouse |
Ⓐ |
Left mouse button |
Ⓑ |
Right mouse button |
Ⓧ |
Opens the virtual keyboard |
Ⓨ |
ESC |
Control Pad |
Keypad cursor keys |
L Button |
Toggles magnify mode on/off |
R Button |
Toggles between hover/drag modes |
START |
Opens global main menu |
SELECT |
Opens 3DS config menu |
Hover mode¶
When using the touchscreen, hover mode simulates the movement of the mouse. You can click with taps, however you can’t drag or hold down a mouse button unless you use the buttons mapped to the right/left mouse buttons.
Drag mode¶
Simulates the click and release of the mouse buttons every time you touch and release the touchscreen. At the moment, this is only a left mouse button click.
Magnify mode¶
Due to the low resolutions of the 3DS screens (400x240 for the top, and 320x240 for the bottom), games that run at a higher resolution will inevitably lose some visual detail from being scaled down. This can result in situations where essential information, such as text, is indiscernable.
Magnify mode increases the scale factor of the top screen back to 1, but the bottom screen remains unchanged. The touchscreen can then be used to change which part of the game display is being magnified. This can be done even in situations where the cursor is disabled, such as during full-motion video segments.
When activating magnify mode, touchscreen controls are automatically switched to Hover mode mode to reduce the risk of the user accidentally inputting a click when changing the magnified area with the stylus. Clicking can still be done as in normal hover mode. Turning off magnify mode will revert controls back to what was used previously. It will also restore the top screen’s previous scale factor.
Magnify mode can only be used when the following conditions are met:
In the 3DS config menu, the Use Screen option is set to Both.
The horizontal and/or vertical in-game resolution is greater than that of the top screen.
You’re playing a game.
Magnify mode cannot be used in the Launcher menu.
Settings¶
For more information about Settings, see the Settings section of the documentation. Only platform-specific differences are listed here.
Known issues¶
Some games are not playable due to the slow CPU speed on the 3DS. If there are any games that run really slowly, this is considered a hardware limitation, not a bug.
Nintendo Switch¶
This page contains all the information you need to get ScummVM up and running on a Nintendo Switch.
What you’ll need¶
A homebrew-enabled Nintendo Switch console. How to enable homebrew is outside the scope of this documentation.
Installing ScummVM¶
The Nintendo Switch package is available for download on the ScummVM Downloads page.
Download the zip file to a computer, and extract the files.
Copy the extracted scummvm
folder to your Nintendo Switch microSD card, into the /switch/
folder.
Transferring game files¶
Copy the folders containing game files into the /switch/scummvm/
folder on the microSD card.
ScummVM on the Nintendo switch supports cloud functionality.
See Handling game files for more information about game file requirements.
Controls¶
Default control map¶
These controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Button |
Action |
---|---|
Left stick |
Mouse |
Left stick + R button |
Slow Mouse |
Ⓑ |
Left mouse button |
Ⓐ |
Right mouse button |
Directional buttons |
Keypad ‘Cursor’ Keys |
Directional buttons + R button |
Diagonal Keypad ‘Cursor’ Keys |
L button |
Game menu (F5) |
R button |
Shift |
Ⓨ |
Period |
Ⓨ + R button |
Space |
Ⓧ |
Escape |
Ⓧ + R button |
Return |
Global main menu (GMM) |
|
Toggle virtual keyboard |
|
+ R button |
AGI predictive input dialog |
Touch Controls (Touchpad Mouse Mode Off, Default) |
|
---|---|
Touch |
Action |
Short single finger tap |
Move pointer to finger position and left mouse button click |
Short second finger tap while holding one finger |
Move pointer to first finger position and right mouse button click |
Single finger drag |
Move pointer directly with finger |
Move pointer while left mouse button is held down (drag and drop). The pointer directly follows the first finger. The drag is ended when the last finger is removed. |
|
Move pointer while right mouse button is held down (drag and drop). The pointer directly follows the first finger. The drag is ended when the last finger is removed. |
Touch Controls (Touchpad Mouse Mode On) |
|
---|---|
Touch |
Action |
Short single finger tap |
Left mouse button click |
Short second finger tap while holding one finger |
Right mouse button click |
Single finger drag |
Move pointer indirectly with finger, pointer speed can be adjusted in control settings |
Move pointer while left mouse button is held down (drag-and-drop). The pointer motion is affected by the first finger. The drag is ended when the last finger is removed. |
|
Move pointer while right mouse button is held down (drag-and-drop). The pointer motion is affected by the first finger. The drag is ended when the last finger is removed. |
Keyboard and mouse support¶
Physical USB mice and keyboards work on the Switch and are supported by ScummVM. All keyboards work but not all mice work. A mouse compatibility list is available on this Google Sheet.
Touch support¶
For multi-touch gestures, the fingers have to be far enough apart from each other that the Switch does not recognize them as a single finger, otherwise the pointer jumps around.
The touch control scheme can be switched in the global settings. From the Launcher, go to Options > Control > Touchpad mouse mode.
When touchpad mouse mode is off (default), the touch controls are direct. The pointer always jumps to where the finger touches the screen.
When touchpad mouse mode is on, the touch controls are indirect. The finger can be far away from the pointer and still move it, like on a laptop touchpad.
The pointer speed setting in the Controls tab affects how far the pointer moves in response to a finger movement.
Two finger drag¶
Hold down two fingers to initiate a drag-and-drop feature. The two finger drag simulates the left mouse button being held down.
The first finger affects mouse motion during the drag, the second finger can be removed without affecting the drag.
When the last finger is removed, the left mouse button is released and the drag is over.
The second finger can be anywhere, it doesn’t have to be close to the first finger, and it doesn’t have to be put down simultaneously with the first finger.
Three finger drag¶
Hold down the three fingers to initiate a drag-and-drop feature. The three finger drag simulates the right mouse button being held down.
Settings¶
For more information, see the Settings section of the documentation. Only platform-specific differences are listed here.
Audio¶
Supported devices:
MT-32 emulator
FluidSynth (General MIDI emulator)
AdLib emulator
Supported audio file formats:
MP3
OGG
FLAC
Uncompressed audio
Controls¶
See the Touch support section.
PlayStation 3¶
This page contains all the information you need to get ScummVM up and running on a PlayStation 3.
What you’ll need¶
A Homebrew enabled Playstation 3 console. How to enable homebrew is outside the scope of this documentation.
A USB drive
A computer
Installing ScummVM¶
Download the Playstation 3 package from the ScummVM Downloads page. Copy the .pkg
file to a USB drive.
Plug the USB drive into the PS3. Go to the XMB, then go to Games > Install Package to install the ScummVM package.
To launch ScummVM, go to the XMB, then go to Games > PlayStation 3 > ScummVM.
Transferring game files¶
Games can be launched from either a USB drive, or from the internal hard drive. The hard drive has better performance.
To copy game files to the hard drive, use the USB drive, or use ScummVM’s cloud functionality.
See Handling game files for more information about game file requirements.
Controls¶
Controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Default control map¶
Touchscreen: |
|
---|---|
Buttons/Control |
Action |
Left stick |
Moves pointer |
Left mouse button |
|
Right mouse button |
|
Game menu |
|
Esc |
|
START |
Global Main Menu |
SELECT |
Toggle virtual keyboard |
L1 button |
AGI predictive input dialog |
PlayStation Portable¶
This page contains all the information you need to get ScummVM up and running on a PSP.
What you’ll need¶
A homebrew-enabled PSP. How to enable homebrew is outside the scope of this documentation.
A computer to download an extract the install files.
Installing ScummVM¶
The PSP package is available for download ScummVM’s Downloads page.
Download the zip file to a computer, and extract the files.
Connect the PSP to the computer by USB cable. Go to Settings > USB Connection on the PSP. Ensure the USB Device option is set to Memory Stick. The computer automatically opens the root folder of the PSP. Alternatively, if you have a Memory Stick adapter, copy the files directly to the Memory Stick.
Copy the extracted scummvm
folder to your PSP, into the /PSP/GAME/
folder.
Go to Game > Memory Stick and choose ScummVM to launch ScummVM!
Transferring game files¶
Transfer game files onto the PSP as described in the installation section above. They can be copied to any folder; location doesn’t matter.
See Handling game files for more information about game file requirements.
Controls¶
Default control map¶
These controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Game Controller Mapping |
|
---|---|
Button |
Action |
R button |
Modifier key |
L button |
ESC |
Analog stick |
Mouse movement |
Analog stick + R button |
Fine mouse movement |
Directional buttons |
Arrow keys |
Directional buttons + R button |
Diagonal arrow keys |
Enter |
|
Left Mouse Button |
|
Right Mouse Button |
|
Period |
|
+ R button |
Spacebar |
SELECT |
Shows/Hides the virtual Keyboard. Hold down with Directional buttons to move the keyboard. |
SELECT + R button |
Shows Image Viewer |
START |
Global Main Menu |
START + R button |
F5 |
Virtual Keyboard Mode |
|
---|---|
START |
Enter. Also exits virtual keyboard mode |
SELECT |
Exits the virtual keyboard mode |
R button |
Input: lowercase/uppercase letters (press to toggle) |
L button |
Input: numbers/symbols (press to toggle) |
Directional buttons |
Selects square of characters (up, down, left or right) |
and L/R buttons |
Chooses a specific character in the square. The four center characters are chosen by the button in the corresponding position. The 2 top characters are chosen by the L/R buttons. |
Analog stick |
Moves in a direction (left/right/up/down) |
Image Viewer |
|
---|---|
Left/right directional buttons |
Previous/next image |
Up/down directional buttons |
Zooms in/out |
Analog stick |
Moves around the image |
L/R buttons + START |
Exits image viewer |
1st Person Game Mode |
|
---|---|
+ R button + L button |
Enables 1st Person Mode |
Modifier key (instead of R button) |
|
L/R button |
Strafes left/right |
Directional buttons left/right |
Turns left/right |
+ Directional buttons |
F1/F2/F3/F4 |
+ SELECT |
Image Viewer |
+ START |
Esc |
Settings¶
For more information, see the Settings section of the documentation. Only platform-specific differences are listed here.
Audio¶
Supported audio file formats:
MP3
OGG
Uncompressed audio
Tip
Games run faster if audio files are in the .mp3
file format.
Known issues¶
Plugin files are not interchangeable between ScummVM versions. You must copy all the plugin files found in the
/PSP/GAME/scummvm/plugin/
folder for every new version you install. If ScummVM crashes on startup, delete the existing plugin files in the plugin directory and copy the new ones again.If the virtual keyboard does not show up on the screen, ensure the
kbd.zip
file is in thescummvm
folder.
PlayStation Vita¶
This page contains all the information you need to get ScummVM up and running on a PS Vita.
What you’ll need¶
A homebrew-enabled PS Vita console with Vitashell installed. How to enable homebrew is outside the scope of this documentation.
Installing ScummVM¶
The PS Vita package is available for download on the ScummVM Downloads page.
Copy the .vpk
to the PS Vita and install it using VitaShell.
Transferring game files¶
There are a few ways to transfer game files to the PS Vita.
Use VitaShell to transfer the files by USB or FTP, or use SD2Vita to transfer the files directly to the microSD card.
Folders containing game files can be copied anywhere on the SD card.
ScummVM on the PS Vita supports cloud functionality.
See Handling game files for more information about game file requirements.
Controls¶
Default control map¶
These controls can also be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common keyboard shortcuts.
Game Controller Mapping |
|
---|---|
Button |
Action |
Left stick |
Mouse |
Left stick + R button |
Slow Mouse |
Left mouse click |
|
Right mouse click |
|
Directional buttons |
Keypad ‘Cursor’ Keys |
Directional buttons + R button |
Diagonal Keypad ‘Cursor’ Keys |
L button |
Game menu (F5) |
R button |
Shift |
Period (.) |
|
R button + |
Spacebar |
Escape |
|
R button + |
Return |
START |
Global main menu (GMM) |
SELECT |
Toggle virtual keyboard |
SELECT + R button |
AGI predictive input dialog |
Front Touchscreen Controls, always enabled |
|
---|---|
Touch |
Action |
One finger tap |
Moves pointer to finger position and left mouse click |
Two finger tap |
Moves pointer to first finger position and right mouse click |
Single finger drag |
Moves pointer directly with finger |
Moves pointer while left mouse button is held down (drag-and-drop). |
|
Moves pointer while right mouse button is held down (drag-and-drop). |
Back Touchpad Controls, enabled through settings |
|
---|---|
Touch |
Action |
One finger tap |
Left mouse button click |
Two finger tap |
Right mouse button click |
Single finger drag |
Moves pointer indirectly with finger, pointer speed can be adjusted in control settings |
Moves pointer while left mouse button is held down (drag-and-drop). |
|
Moves pointer while right mouse button is held down (drag-and-drop). |
Keyboard and mouse support¶
Real bluetooth mice and keyboards work on the Vita and are supported by ScummVM. Go to Settings > Devices on the Vita home screen to pair your devices.
Note
Not all bluetooth keyboards or mice pair successfully with the Vita. The ScummVM team tested the Jelly Bean BT keyboard and mouse combo (ASIN:B06Y56BBYP) and with the standalone Jelly Comb Bluetooth Wireless Mouse (ASIN:B075HBDWCF).
Touch support¶
For multi-touch gestures, the fingers have to be far enough apart from each other that the Vita will not recognize them as a single finger, otherwise the pointer will jump around.
Touchpad mouse mode¶
The touch control scheme can be switched in the global settings. Go to Options > Control:
When Touchpad mouse mode is off:
The touch controls are direct, which means the pointer always jumps to the finger position.
The rear touch pad is disabled.
When Touchpad mouse mode is on:
The touch controls are indirect. The finger can be far away from the pointer and still move it, like on a laptop touchpad.
The pointer speed setting in the Control tab affects how far the pointer moves in response to a finger movement.
The rear touch pad is enabled.
The front touchscreen uses the direct mode by default, but this can be changed by editing the configuration file with the following keyword:
frontpanel_touchpad_mode
When set to true, the touch controls on the front touchscreen are indirect.
Two finger tap¶
For a two finger tap, hold one finger down and then tap with a second finger.
Two finger drag¶
Hold down two fingers to initiate a drag-and-drop feature. The two finger drag simulates the left mouse button being held down.
The first finger affects mouse motion during the drag, the second finger can be removed without affecting the drag.
When the last finger is removed, the left mouse button is released and the drag is over.
The second finger can be anywhere, it doesn’t have to be close to the first finger, and it doesn’t have to be put down simultaneously with the first finger.
Three finger drag¶
Hold down the three fingers to initiate a drag-and-drop feature. The three finger drag simulates the right mouse button being held down.
Settings¶
For more information, see the Settings section of the documentation. Only platform-specific differences are listed here.
Controls¶
See the Touch support section.
Known Issues¶
MT-32 emulation is not available on the PS Vita.
RISC OS¶
This page contains all the information you need to get ScummVM up and running on the RISC operating system.
What you’ll need¶
A system running RISC OS 5
The SharedUnixLibrary, DRenderer and Iconv modules installed. SharedUnixLibrary and DRenderer can be installed using Packman.
Installing ScummVM¶
Download the RISC OS package from the ScummVM Downloads page.
Use a tool such as SparkFS to extract the archive. It is important that the archive is not extracted on any other system, because this results in a loss of file type information. ScummVM requires the file type information to run properly.
Transferring game files¶
Copy data files directly from the original discs on machines that have CD and/or floppy drives, or use a USB drive to transfer the files from another system.
See Handling game files for more information about game file requirements.
Controls¶
Controls can be manually configured in the Keymaps tab. See the Keyboard shortcuts page for common default keyboard shortcuts.
Paths¶
Saved games¶
<Choices$Write>.ScummVM.Saves
Configuration file¶
<Choices$Write>.ScummVM.scummvmrc
The <Choices$Write>
environment variable is usually $.!Boot.Choices
.
Settings¶
For more information about settings, see the Settings section of the documentation. Only platform-specific differences are listed here.
There is one additional configuration option, enable_reporter. When set to true in Configuration file, log messages are sent to the !Reporter application. This is useful mostly for developers.
Known issues¶
ScummVM for RISC OS does not have cloud or LAN functionality.
FluidSynth is not supported.
ScummVM is not compatible with RISC OS 3, 4 or 6.
Sega Dreamcast¶
This page contains all the information you need to get ScummVM up and running on a Sega Dreamcast.
What you’ll need¶
A CD-R disc (80min/700mb).
A CD-RW drive.
A computer running Windows.
Software to create a bootable disc image, such as BootDreams
CD burning software such as Nero Burning ROM, ImgBurn or Alcohol120%.
Running ScummVM¶
There are two ways to get ScummVM running on the Dreamcast:
Download the ready-to-go Nero Image and Demos package and burn the extracted
.nrg
image to a CD-R using Nero Burning ROM.Download the Dreamcast plain files package and use the extracted files to create a custom disc image to burn to a CD-R.
Both packages are available from the ScummVM Downloads page
Creating a disc from the Dreamcast Nero Image and Demos package¶
Use Nero Burning ROM to burn the .nrg
file contained in the package to a CD-R disc.
Creating a disc from the Dreamcast plain files package¶
Create a directory on your computer. In this example, the directory is called ScummVMDC
.
Copy the downloaded SCUMMVM.BIN
and IP.BIN
files into the ScummVMDC
directory. These are the main boot and engine files required for ScummVM to run.
The .PLG
files in the plain files package are the plugins that are required to run the games. For the best performance, only include the plugins for games you want to play. For example, if you want to play LucasArts games, include SCUMM.PLG
.
In the plain files package there are also .DAT
files. These files might be listed as required Datafiles on the Datafiles wiki page.
Copy the required .PLG
and .DAT
files into the root of the ScummVMDC
directory.
Next, make a new directory for each game. In this example, all the required Day of the Tentacle data files have been copied into a subdirectory named DOTT
.
Our file structure now looks like this:
ScummVMDC
|--DOTT
| |-- MONSTER.SOU
| |-- TENTACLE.000
| `-- TENTACLE.001
|--IP.BIN
|-- SCUMM.PLG
`-- SCUMMVM.BIN
The next step is to create a bootable disc image from the ScummVMDC
folder.
Use Bootdreams to create either a Discjuggler, Nero or Alcohol120% disc image.

Choose the preferred disc image type by clicking on the corresponding icon at the top of the window.
Choose the
ScummVMDC
folder as the Selfboot folderEnter a title for the disc image in the CD label field.
Leave the Disc format as Audio/Data
Click Process to create the disc image.
To burn the resulting image to disc, use any software capable of using those image formats, such as Nero Burning ROM for NRG, Alcohol120% for MDS, and Padus DiscJuggler or ImgBurn for CDI disc images.
Tip
The image created from the plain files package can also be used with Optical Disc Emulators and similar external hardware.
Caution
Use the lowest possible burning speed for best results; the Dreamcast is an older system and as such can have problems reading discs burned at high speeds. If available, the 4x speed is ideal. Ensure that you use good quality discs from a reputable manufacturer. If possible, use archival grade discs.
Transferring game files¶
Game files can be included on the same CD as the ScummVM binary file, or on a separate disc.
The Dreamcast port does not use the normal ScummVM Launcher. It uses its own custom graphical user interface, which automatically scans the disc for games, and adds the games to a games list through ScummVM’s built-in autodetection.
ScummVM for the Dreamcast supports disc swapping from the GUI. It rescans after a new disc is inserted and repopulates the games list.
See Handling game files for more information about game file requirements.
Controls¶
Default control map¶
Game Controller Mapping: |
||
---|---|---|
Button |
Action |
Notes |
Joystick |
Moves pointer |
|
Directional pad |
Moves pointer slowly |
Also controls the on-screen keyboard |
Ⓐ |
Left Click |
|
Ⓑ |
Right Click |
|
Ⓨ |
Spacebar |
Pause |
Start |
F5 |
Load and save |
Trigger L |
Toggles the virtual keyboard on/off |
|
Ⓧ |
5 |
For boxing in Indiana Jones and the Last Crusade |
Ⓧ + Directional pad |
1, 2, 3, 4, 6, 7, 8, 9 |
For boxing in Indiana Jones and the Last Crusade |
The mouse cursor is controlled with the standard Dreamcast controller. The Dreamcast mouse and keyboard peripherals are also supported.
Paths¶
Saved games¶
The Visual Memory Unit (VMU) is used to save and load games.
Autosave is enabled on the Dreamcast, so each game will use some memory blocks (between 2 and 13) for the autosave in save slot 0.
When a game is saved, the VMU beeps, and a prompt is displayed on the screen to let you know that the game has been saved.
Games are saved and loaded through the built-in game menus.
Configuration file¶
ScummVM for the Dreamcast does not use a configuration file.
Settings¶
There is no way to change ScummVM settings on the Dreamcast.
Known issues¶
The Dreamcast has no external storage medium, and only has 16MB of RAM. As such, the Dreamcast port of ScummVM does not support The Curse of Monkey Island or the Dig. The resources required for these games are too great for the Dreamcast to handle. Full Throttle is not completable.
There is currently no way to manually add games to the games list. The autodetect feature usually works well, but sometimes games will show up on the list twice, incorrect games will show up with the correct game, and, quite rarely, the game will not show up on the list at all.
Some games, for example SPY Fox 1: Dry Cereal, use filenames which are incompatible with the ISO 9660 filesystem standard. The Dreamcast port does not support filename extensions like RockRidge or Joliet, so the CD mastering software needs to be instructed not to change the filenames to comply to ISO 9660, or the engine will not be able to open the files.
Game¶
Use the Game tab to display and change information about how the game is identified by ScummVM.
From the Launcher, highlight a game on the games list, then select Edit Game. The Game tab is the first tab shown.

The Game tab in the game-specific settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- ID
Shows the short name of the game. This ID can be used for launching the game from the command line.
gameid
- Name
Shows the full title of the game, as well as some basic information such as original platform and language.
description
- Language
For games that were released with support for multiple languages, this options changes the language of the game. For games that have a single language hardcoded, this option does not change the language of the game, it only affects the subtitles. Select the correct language to ensure that subtitles display correctly, especially for non-English games.
language
- Platform
Specifies the original platform of the game.
platform
Engine¶
Use the Engine tab to change settings that are unique to the game being played.
From the Launcher, highlight a game on the games list, select Edit Game, and then select the Engine tab. This tab is not available for all games.
To find out which engine powers your game, have a look at the ScummVM Supported Games wiki page.
Engines: ADL | AGI | BLADERUNNER | CGE | CINE | DRASCULA | DREAMWEB | HDB | HOPKINS | KYRA | LURE | MADS | NEVERHOOD | SCI | SCUMM | SHERLOCK | SKY | SUPERNOVA | TOLTECS | WINTERMUTE | XEEN |

The Engine tab in the game-specific settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
ADL¶
- TV emulation
Emulates the composite output to an NTSC TV.
ntsc
- Color Graphics
Uses color graphics instead of monochrome graphics.
color
- Show scanlines
Darkens every other scanline to mimic the look of a CRT display.
scanlines
- Always use sharp monochrome text
Does not emulate NTSC artifacts for text.
monotext
AGI¶
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Use an alternative palette
Uses an alternative palette, common to all Amiga games.
altamigapalette
- Mouse support
Enables mouse support for movement and in game menus.
mousesupport
- Use Hercules hires font
Uses the Hercules hi-resolution font, when the font file is available.
herculesfont
- Pause when entering commands
Shows a command prompt window and pauses the game, instead of a real-time prompt.
commandpromptwindow
- Add speed menu
Adds a game speed menu, similar to the PC version.
apple2gs_speedmenu
BLADERUNNER¶
- Sitcom mode
Adds laughter after the actor’s line or narration.
sitcom
- Shorty mode
Shrinks the actors and makes their voices high pitched.
shorty
- Frame limiter high performance mode
Avoids use of
delayMillis()
function. This mode might result in high CPU usage.nodelaymillisfl
- Max frames per second limit
Targets a maximum of 120 frames per second (fps). When disabled, the game targets 60 fps.
frames_per_secondfl
- Disable McCoy’s quick stamina drain
When running, McCoy won’t start slowing down as soon as the player stops clicking the mouse.
disable_stamina_drain
CINE¶
- Use original save/load screen
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Use transparent dialog boxes in 16 color scenes
Uses transparent dialog boxes in 16 color scenes even if the original game version did not support them.
transparentdialogboxes
DRASCULA¶
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
DREAMWEB¶
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Use bright palette mode
Displays graphics using the game’s bright palette.
bright_palette
KYRA¶
- Enable studio audience
Studio audience adds an applause and cheering sounds whenever Malcolm makes a joke.
studio_audience
- Skip support
Lets the user skip text and cutscenes.
skip_support
- Enable helium mode
Makes characters sound like they inhaled Helium.
helium_mode
- Enable smooth scrolling when walking
Makes scrolling smoother when changing from one screen to another.
smooth_scrolling
- Enable floating cursors
Changes the cursor when it floats to the edge of the screen to a directional arrow. Click to walk in that direction.
floating_cursors
- Suggest save names
Fills in an autogenerated save game description into the input prompt.
auto_savenames
- HP bar graphs
Enables hit point bar graphs.
hpbargraphs
- Fight Button L/R Swap
Swaps the buttons so that the left button attacks, and the right button picks up items.
mousebtswap
LURE¶
- TTS Narrator
Uses text-to-speech to read the descriptions, if text-to-speech is available.
tts_narrator
MADS¶
- Easy mouse interface
Shows object names when the mouse pointer is held over the object.
EasyMouse
- Animated inventory items
Animates the inventory items.
InvObjectsAnimated
- Animated game interface
Animates the game interface.
TextWindowAnimated
- Naughty game mode
Enables naughty game mode.
NaughtyMode
- Graphics dithering
Enables graphics dithering.
GraphicsDithering
NEVERHOOD¶
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Skip the Hall of Records storyboard scenes
Lets the player skip past the Hall of Records storyboard scenes.
skiphallofrecordsscenes
- Scale the making of videos to full screen
Scales the making-of videos, so that they use the whole screen.
scalemakingofvideos
SCI¶
- Skip EGA dithering pass (full color backgrounds)
Skips dithering pass in EGA games. Graphics are shown with full colors.
disable_dithering
- Enable high resolution graphics
Enables high resolution graphics and content.
enable_high_resolution_graphics
- Enable black-lined video
Draws black lines over videos to increase their apparent sharpness.
enable_black_lined_video
- Use high-quality video scaling
Uses linear interpolation when upscaling videos, where possible.
enable_hq_video
- Use high-quality “LarryScale” cel scaling
Uses special cartoon scaler for drawing character sprites.
enable_larryscale
- Prefer digital sound effects
Prefers digital (sampled) sound effects instead of synthesized ones.
prefer_digitalsfx
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Use IMF/Yamaha FB-01 for MIDI output
Uses an IBM Music Feature card or a Yamaha FB-01 FM synth module for MIDI output.
native_fb01
- Use CD audio
Uses CD audio instead of in-game audio, if available.
use_cdaudio
- Use Windows cursors
Uses the Windows cursor (smaller and monochrome) instead of the DOS cursor.
windows_cursors
- Use silver cursors
Uses the alternate set of silver cursors instead of the normal golden cursors.
silver_cursors
- Upscale videos
Upscales videos to double their size
enable_video_upscale
- Enable content censoring
Enables the game’s built-in optional content censoring.
enable_censoring
SCUMM¶
- Show Object Line
Show the names of objects at the bottom of the screen.
object_labels
- Use NES Classic Palette
Uses a more neutral color palette that closely emulates the NES Classic.
mm_nes_classic_palette
SHERLOCK¶
- Use original load/save screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
- Pixellated scene transitions
Enables randomized pixel transitions between scenes.
fade_style
- Don’t show hotspots when moving mouse
Only shows hotspot names after you click on a hotspot or action button.
help_style
- Show character portraits
Shows portraits of the characters when the characters converse.
portraits_on
- Slide dialogs into view
Slides UI dialogs into view.
window_style
- Transparent windows
Shows windows with a partially transparent background.
transparent_windows
- TTS Narrator
Uses text-to-speech to read the descriptions, if text-to-speech is available.
tts_narrator
SUPERNOVA¶
- Improved mode
Removes some repetitive actions, and adds the possibility to change verbs by keyboard.
improved
TOLTECS¶
- Use original save/load screens
Uses the original save/load screens instead of the ScummVM screens.
originalsaveload
WINTERMUTE¶
- Show FPS-counter
Shows the current number of frames per second in the upper left corner.
show_fps
- Sprite bilinear filtering (SLOW)
Applies bilinear filtering to individual sprites.
bilinear_filtering
XEEN¶
- Show item costs in standard inventory mode
Shows item costs in standard inventory mode, which lets the value of items be compared.
ShowItemCosts
- More durable armor
Armor won’t break until character is at -80HP, instead of the default -10HP.
DurableArmor
Graphics¶
Use the Graphics tab to change how games look when they are played.
To change settings globally:
From the Launcher, select Options. The Graphics tab is the first tab shown.
To change settings for a specific game:
Highlight the game in the games list, select Edit Game then select the Graphics tab.
For a comprehensive look at how to use these settings, check out our Understanding the graphics settings guide.

The Graphics tab in the global settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Graphics mode
Changes the resolution of the game. For example, a 2x graphics mode will take a 320x200 resolution game and scale it up to 640x400.
gfx_mode
- Render mode
Changes how the game is rendered.
render_mode
- Stretch mode
Changes the way the game is displayed in relation to the window or screen size.
stretch_mode
- Aspect ratio correction
If ticked, corrects the aspect ratio so that games appear the same as they would on original 320x200 resolution displays.
aspect_ratio
- Fullscreen mode
Switches between playing games in a window, or playing them in fullscreen mode. Switch between the two by using Alt+F5 while in a game.
fullscreen
- Filter graphics
If ticked, uses bilinear interpolation instead of nearest neighbor resampling for the aspect ratio correction and stretch mode. It does not affect the graphics mode.
filtering
Control¶
Use the Control tab to change settings for joysticks, game controllers, and touch screens. This tab is not always available.
From the Launcher, select Options, and then select the Control tab.

The Control tab in the global settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Pointer Speed
Sets the speed for the mouse pointer, when it is controlled by the keyboard or a joystick.
kbdmouse_speed
- Joy deadzone
Sets the deadzone for an analog joystick. A lower value will reduce the size of the deadzone.
joystick_deadzone
- Show on-screen control
Toggles the small on-screen keyboard icon on and off.
- Touchpad mouse mode
Toggles between direct mode and touchpad mode.
Keymaps¶
Use the Keymaps tab to assign actions to keyboard keys or shortcuts, or to mouse or joystick buttons.
To change settings globally:
From the Launcher, select Options, then select the Keymaps tab.
To change settings for a specific game:
Highlight the game in the games list, select Edit Game then select the Keymaps tab.

The Keymaps tab in the global settings¶

The Keymaps dropdown options.¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
Click on the button next to the desired action to add an additional key or button. Click on the ▼ dropdown expander for more options.
If all the mapped keys are not visible, hold the pointer over the button to see all the mapped keys.
- Reset
Resets all keymaps to default.
- Reset to defaults
Resets the keymaps for that action to default.
- Clear mapping
Clears all keymaps for that action.
Global settings¶
The following are the available global keymap options. Listed in italics are the configuration keywords. For more information, see the Configuration file page.
Global¶
- Global Main Menu
keymap_global_MENU
- Toggle mute
keymap_global_MUTE
- Quit
keymap_global_QUIT
- Open Debugger
keymap_global_DEBUGGER
- Virtual mouse up
keymap_global_VMOUSEUP
- Virtual mouse down
keymap_global_VMOUSEDOWN
- Virtual mouse left
keymap_global_VMOUSELEFT
- Virtual mouse right
keymap_global_VMOUSERIGHT
- Slow down virtual mouse
keymap_global_VMOUSESLOW
Graphics¶
- Toggle fullscreen
keymap_sdl-graphics_FULS
- Toggle mouse capture
keymap_sdl-graphics_CAPT
- Save screenshot
keymap_sdl-graphics_SCRS
- Toggle aspect ratio correction
keymap_sdl-graphics_ASPT
- Toggle linear filtered scaling
keymap_sdl-graphics_FILT
- Cycle through stretch modes
keymap_sdl-graphics_STCH
- Increase the scale factor
keymap_sdl-graphics_SCL+
- Decrease the scale factor
keymap_sdl-graphics_SCL-
- Switch to nearest neighbour scaling
keymap_sdl-graphics_FLT1
- Switch to AdvMame 2x/3x scaling
keymap_sdl-graphics_FLT2
- Switch to HQ 2x/3x scaling
keymap_sdl-graphics_FLT3
- Switch to 2XSai scaling
keymap_sdl-graphics_FLT4
- Switch to Super2xSai scaling
keymap_sdl-graphics_FLT5
- Switch to SuperEagle scaling
keymap_sdl-graphics_FLT6
- Switch to TV 2x scaling
keymap_sdl-graphics_FLT7
- Switch to DotMatrix scaling
keymap_sdl-graphics_FLT8
GUI¶
- Interact
keymap_gui_INTRCT
- Close
keymap_gui_CLOS
- Up
keymap_gui_UP
- Down
keymap_gui_DOWN
- Left
keymap_gui_LEFT
- Right
keymap_gui_RIGHT
Game settings¶
The following are the available keymap game-specific keymaps options. Listed in italics are the configuration keywords. For more information, see the Configuration file page.
Default game keymap¶
- Left mouse button
keymap_engine-default_LCLK
- Middle click
keymap_engine-default_MCLK
- Right click
keymap_engine-default_RCLK
- Pause
keymap_engine-default_PAUSE
- Skip
keymap_engine-default_SKIP
- Skip line
keymap_engine-default_SKLI
- Predictive input dialog
keymap_engine-default_PIND
- Confirm
keymap_engine-default_RETURN
- Up
keymap_engine-default_UP
- Down
keymap_engine-default_DOWN
- Left
keymap_engine-default_LEFT
- Right
keymap_engine-default_RIGHT
Audio¶
Audio settings are found on four tabs:
To change settings globally:
From the Launcher, select Options, then select the applicable tab.
To change settings for a specific game:
From the Launcher, highlight the game in the games list, select Edit Game, and then select the applicable tab.
For a comprehensive look at how to use ScummVM’s extensive audio settings, check out our Understanding the audio settings guide.
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
The Audio tab¶
Use the Audio tab to change the sound output for games.

The Audio tab in the global settings¶

The Audio tab in the game-specific settings.¶
- Preferred device (global settings) or Music device (game-specific settings)
Specifies the device ScummVM uses to output audio. When set to <default>, ScummVM automatically chooses the most appropriate option for the played game. If set to an MT-32 or a MIDI device, or if ScummVM chooses one of these automatically, the settings on the MT-32 or MIDI tabs also apply.
music_driver
- AdLib Emulator
Chooses which emulator is used by ScummVM when the AdLib emulator is chosen as the Preferred device.
opl_driver
- Text and Speech
For games with digitized speech, this setting lets the user decide whether to play the game with speech only, subtitles only, or both.
speech_mute
subtitles
- Subtitle speed
Adjusts the length of time that the subtitles are displayed on screen. The lower the speed is set, the longer the subtitles are displayed.
talkspeed
The Volume tab¶
Use the Volume tab to set the relative volumes for various in-game sounds.

The Volume tab in the game-specific settings.¶
- Music volume
Adjusts the volume of the music in the game.
music_volume
- SFX volume
Adjusts the volume of the sound effects in the game.
sfx_volume
- Speech volume
Adjusts the volume of the digitized speech in the game, if it has any.
speech_volume
- Mute All
Mutes all game audio.
mute
The MIDI tab¶
Use the MIDI tab to change the settings of General MIDI (GM) devices.

The MIDI tab in the global settings.¶
- GM Device
Specifies a preferred General MIDI device, which ScummVM uses if the Preferred device is set to <default> and General MIDI playback is required.
gm_device
- Soundfont
Specifies the path to a soundfont file, if this is required by the GM device.
soundfont
- Mixed AdLib/MIDI mode
Combines MIDI music with AdLib sound effects.
multi_midi
- MIDI gain
Adjusts the relative volume of the MIDI music. This is only supported by some music devices.
midi_gain
FluidSynth¶
Opens a new dialog, with three further tabs: Reverb | Chorus | Misc

The FluidSynth dialog, reached from the MIDI tab.¶
Reverb¶
Reverberation, or reverb, describes the pattern of echoes and reflections that occur when a sound is heard in an enclosed closed space, such as a room or a concert hall.
- Active
If ticked, reverb is added to the software synthesizer output.
fluidsynth_reverb_activate
- Room
Sets the room size, which determines how much reverb there is.
fluidsynth_reverb_roomsize
- Damp
Dampens higher-frequency reverb, which produces a warmer sound.
fluidsynth_reverb_damping
- Width
Sets the stereo spread of the reverb signal.
fluidsynth_reverb_width
- Level
Sets the reverb output amplitude.
fluidsynth_reverb_level
Chorus¶
The chorus effect thickens and colors the audio signal so that it sounds as if there are a chorus of instruments playing one part.
- Active
If ticked, chorus effects are added to the software synthesizer output.
fluidsynth_chorus_activate
- N
Sets the voice count of the chorus, in other words, how many instruments are playing one part.
fluidsynth_chorus_nr
- Level
Specifies the output amplitude of the chorus signal.
fluidsynth_chorus_level
- Speed
Sets the modulation speed of the output, in Hz.
fluidsynth_chorus_speed
- Depth
Specifies the modulation depth of the chorus.
fluidsynth_chorus_depth
- Type
Specifies the chorus modulation waveform type.
fluidsynth_chorus_waveform
Misc¶
- Interpolation
Sets the interpolation method used by the software synthesizer.
fluidsynth_misc_interpolation
The MT-32 tab¶
Use the MT-32 tab to change the settings of Roland MT-32 devices.

The MT-32 tab in the global settings.¶
- MT-32 Device
Specifies a preferred MT-32 device, which ScummVM uses if the Preferred device is set to <default> and MT-32 playback is required.
mt32_device
- True Roland MT-32 (disable GM emulation)
Tells ScummVM that the MIDI device is an actual Roland MT-32, LAPC-I, CM-64, CM-32L, CM-500 or other MT-32 device. Note that this cannot be used in conjuntion with the Roland GS device option.
native_mt32
- Roland GS device (enable MT-32 mappings)
Tells ScummVM that the MIDI device is a GS device that has an MT-32 map, such as an SC-55, SC-88 or SC-8820. Note that this cannot be used in conjunction with the True Roland MT-32 option.
enable_gs
Paths¶
Use the Paths tab to tell ScummVM where to look for files.
To change settings globally:
From the Launcher, select Options, then select the Paths tab.
To change settings for a specific game:
Highlight the game in the games list, select Edit Game then select the Paths tab.

The Paths tab in the global settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Save Path
Sets the path to the folder in which ScummVM stores saved games. For more information on the default location of saved games, see the Save and Load games page, or the guide for the platform you’re using.
savepath
- Theme Path
Sets the path to the folder in which ScummVM stores additional themes.
themepath
- Extra Path
Sets the path to the folder in which ScummVM will look for various extra files. These could include additional datafiles required for certain games, Soundfonts or MT-32 ROMs.
extrapath
Miscellaneous¶
Use the Misc tab to change miscellaneous settings that don’t belong on any of the other tabs.
From the Launcher, select Options, click the > scroll arrow until the Misc tab is visible, and then select the Misc tab.

The Misc tab in the global settings.¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Theme
Changes the visual appearance of the ScummVM Launcher
gui_theme
- GUI Renderer
Defines how the ScummVM GUI is rendered; normal or antialiased.
gui_renderer
- Autosave
Adjusts the time period between autosaves. The default setting is 5 minutes.
autosave_period
- GUI Language
Chooses the language of the ScummVM Launcher.
gui_language
- Switch the ScummVM GUI language to the game language
If ticked, the Launcher language is the same as the game language.
gui_use_game_language
- Use native system file browser
Uses the system file browser instead of the ScummVM browser.
gui_browser_native
Cloud¶
Use the Cloud tab to manage connected cloud storage services.
For a comprehensive look at how to use ScummVM’s built-in cloud functionality, check out our Connecting a cloud service guide.
From the Launcher, select Options, click the > scroll arrow until the Cloud tab is visible, and then select the Cloud tab.

The Cloud tab in the global settings¶
- Active storage
Choose from Dropbox, OneDrive, Google Drive, or Box.
After a Cloud service has been selected, further options are available:
- Sync Now
Manually syncs saved games with the cloud service. Saved games automatically sync on launch, after saving, and on game load.
- Download game files
Downloads game files from your Cloud ScummVM folder.
- Disconnect
Disconnects the cloud storage account. To change accounts, disconnect and connect a new account.
Note
Cloud functionality is not supported on all platforms.
LAN¶
Use the LAN tab to control the Local Area Network (local web server).
For a comprehensive look at how to use ScummVM’s built-in LAN functionality, check out our Using the local web server guide.
From the Launcher, select Options, click the > scroll arrow until the LAN tab is visible, and then select the LAN tab.

The LAN tab in the global settings¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Run server
Starts the web server. When running, this displays the URL at which the web server can be accessed.
- Stop server
Stops the web server.
- Server’s port
The port on which the web server is available.
local_server_port
- /root/ Path
Specifies the root path of the server. Any sub-directories will be accessible.
rootpath
Accessibility¶
Use the Accessibility tab to change accessibility settings.
From the Launcher, select Options, click the > scroll arrow until the LAN tab is visible, and then select the LAN tab.

The Accessibility tab in the global settings.¶
All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.
- Use Text to Speech
Enables text to speech. As the pointer is held over any text field in the Launcher it is converted to speech. Use the dropdown list to choose from a variety of voices.
tts_enabled
Command line interface¶
Launching ScummVM from the command line lets you pass a number of options, some of which override the applicable global or game-specific settings. It also lets you launch straight into a game without going to the Launcher first.
Some options, such as --help
or --list-audio-devices
, allow you to view information about ScummVM directly on the command line without starting the Launcher or starting a game.
Usage¶
scummvm [option] [game]
To launch ScummVM, enter the path to ScummVM. Optionally, follow this with any of the options documented below, and/or the path to the game you wish to start. If a game has already been added to the games list in the Launcher, you can pass the game id instead of the path to the game.
Windows
The following examples assume that the path to ScummVM is C:\Program Files\ScummVM\scummvm.exe
.
To run Monkey Island, fullscreen (-f
):
C:\Program Files\ScummVM\scummvm.exe -f monkey
To run Full Throttle, fullscreen (-f
) and with subtitles enabled (-n
), specifying the path to the game on a CD (-p
):
C:\Program Files\ScummVM\scummvm.exe -f -n -pD:``resource``ft
macOS
The following examples assume the path to the ScummVM app is Applications/ScummVM.app
.
If you are unsure of the path to the app, drag the ScummVM app icon into the Terminal window. This prints the path to the ScummVM app.
To run ScummVM from the command line, add /Contents/MacOS/scummvm
to that path.
To run Monkey Island, fullscreen (-f
):
/Applications/ScummVM.app/Contents/MacOS/scummvm -f monkey
To run Full Throttle, fullscreen (-f
) and with subtitles enabled (-n
), specifying the path to the game on a CD (-p
):
/Applications/ScummVM.app/Contents/MacOS/scummvm -f -n -p/cdrom/resource/ft
Linux
The following examples assume the path to ScummVM is /usr/games/scummvm
.
To run Monkey Island, fullscreen (-f
):
/usr/games/scummvm -f monkey
To run Full Throttle, fullscreen (-f
) and with subtitles enabled (-n
), specifying the path to the game on a CD (-p
):
/usr/games/scummvm -f -n -p/cdrom/resource/ft
Tip
If ScummVM is on PATH, there is no need to enter the full path to ScummVM. Similarly, if a game is already added to the Launcher, there is no need to specify the path to the game.
Options¶
The meaning of most options can be inverted by prefixing them with no-
. For example, --no-aspect-ratio
will turn aspect ratio correction off. This does not apply to short options.
Option parameters are shown below in capitals, and need to be replaced with real values.
Short options are listed where they are available.
Option |
Short |
Description |
---|---|---|
|
|
Adds all games from current or specified directory. If |
|
||
|
||
|
Displays a list of games from the current or specified directory and starts the first game. Use |
|
|
|
Pass number to the boot script (boot param). |
|
Sets the CD drive to play CD audio from. This can be a drive, path, or numeric index (default: 0) |
|
|
|
Uses alternate configuration file |
|
Enables the console window (default: enabled). Win32 and Symbian32 only. |
|
|
Enables copy protection |
|
|
Shows only the specified debug channels |
|
|
Enables engine specific debug flags |
|
|
|
Sets debug verbosity level |
|
Starts demo mode of Maniac Mansion or The 7th Guest |
|
|
Displays a list of games with their game id from the current or specified directory. This does not add the game to the games list. Use |
|
|
Sets internal Digital iMuse tempo (10 - 100) per second (default: 10) |
|
|
Sets frames per second limit (0 - 100) for Grim Fandango or Escape from Monkey Island (default: 60). |
|
|
|
Enables script dumping if a directory called ‘dumps’ exists in the current directory |
|
||
|
||
|
||
|
|
|
|
In combination with |
|
|
|
|
|
||
|
|
Displays a brief help text and exit |
|
Enables joystick input (default: 0 = first joystick) |
|
|
|
Selects language (en, de, fr, it, pt, es, jp, zh, kr, se, gb, hb, ru, cz) |
|
Lists all available audio devices |
|
|
Displays a list of saved games for the game (TARGET) specified |
|
|
|
Displays list of configured targets and exits |
|
Displays list of all usable GUI themes |
|
|
-l |
Uses alternate path for log file (SDL backend only). |
|
Sets the gain for MIDI playback. 0-1000 (default: 100). Only supported by some MIDI drivers |
|
|
||
|
|
|
|
|
Sets the music volume, 0-255 (default: 192) |
|
||
|
Forces unfiltered graphics mode |
|
|
|
Forces windowed mode |
|
||
|
Selects output sample rate in Hz |
|
|
|
Sets path to where the game is installed |
|
Specifes platform of game. Allowed values: 2gs, 3do, acorn, amiga, atari, c64, fmtowns, nes, mac, pc pc98, pce, segacd, wii, windows. |
|
|
In combination with |
|
|
||
|
|
Specifies the saved game slot to load (default: autosave) |
|
||
|
|
Sets the sfx volume, 0-255 (default: 192) |
|
Selects the SoundFont for MIDI playback.. Only supported by some MIDI drivers. |
|
|
|
Sets the speech volume, 0-255 (default: 192) |
|
|
|
|
Sets talk speed for games (default: 60) |
|
|
Sets music tempo (in percent, 50-200) for SCUMM games (default: 100) |
|
|
||
|
|
Displays ScummVM version information and exits |
Configuration file¶
The configuration file provides a way to edit both global and game-specific settings. It is a text file containing configuration keys and parameters.
Settings are also accessible directly from the Launcher. See Changing settings.
Location¶
The configuration file saves to different default locations, depending on the platform.
Windows
95/98/ME
C:\WINDOWS\scummvm.ini
Windows NT4
C:\WINDOWS\Profiles\username\Application Data\ScummVM\scummvm.ini
Windows 2000/XP
\Documents and Settings\username\Application Data\ScummVM\scummvm.ini
Window Vista/7/8/10
%APPDATA%\ScummVM\scummvm.ini
macOS
~/Library/Preferences/ScummVM Preferences
Note
If an earlier version of ScummVM was installed on your system, the configuration file remains in the previous default location of ~/.scummvmrc
.
Tip
To see the Library folder, press Option when clicking Go in the Finder menu.
Linux
ScummVM follows the XDG Base Directory Specification, so by default the configuration file is found at ~/.config/scummvm/scummvm.ini
, but its location might vary depending on the value of the XDG_CONFIG_HOME
environment variable.
If ScummVM was installed using Snap, the configuration file is found at ~/snap/scummvm/current/.config/scummvm/scummvm.ini
Note
.config
is a hidden directory. To view it use ls -a
on the command line.
Using the configuration file¶
Global settings are listed under the [scummvm]
heading. Global keymaps settings are listed under the [keymapper]
heading. Game-specific settings, including keymaps, are listed under the heading for that game, for example [queen]
for Flight of the Amazon Queen. Use the configuration keys to change settings.
Example of a configuration file¶
[scummvm]
gfx_mode=supereagle
fullscreen=true
savepath=C:\saves\
[sky]
path=C:\games\SteelSky\
[germansky]
gameid=sky
language=de
path=C:\games\SteelSky\
description=Beneath a Steel Sky w/ German subtitles
[germandott]
gameid=tentacle
path=C:\german\tentacle\
description=German version of DOTT
[tentacle]
path=C:\tentacle\
subtitles=true
music_volume=40
sfx_volume=255
[loomcd]
cdrom=1
path=C:\loom\
talkspeed=5
savepath=C:\loom\saves\
[monkey2]
path=C:\amiga_mi2\
music_driver=windows
Configuration keys¶
There are many recognized configuration keys. In the table below, each key is either linked to an explanatory description in the Settings pages, or has further information in the Decription/Options column.
Key |
Type |
Default |
Description/Options |
---|---|---|---|
alsa_port |
integer |
Specifies which ALSA port ScummVM uses when using the ALSA music driver (Linux). |
|
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
integer |
Calculated based on output sampling frequency to keep audio latency below 45ms. |
Overrides the size of the audio buffer. Allowed values:
|
|
integer |
300 |
||
auto_savenames |
boolean |
false |
Automatically generates names for saved games |
boolean |
false |
||
integer |
none |
||
boolean |
true |
||
cdrom |
integer |
0 |
Sets which CD drive to play CD audio from (as a numeric index). If a negative number is set, ScummVM does not access the CD drive. |
boolean |
|||
boolean |
false |
||
confirm_exit |
boolean |
false |
ScummVM requests confirmation before quitting (SDL backend only) |
console |
boolean |
true |
Enables the console window for Win32/Symbian32. |
controller_map_db |
string |
|
Specifies the custom controller mapping file to load to complete the default database (SDL backend only). |
copy_protection |
boolean |
false |
Enables copy protection |
demo_mode |
boolean |
false |
Starts demo mode of Maniac Mansion or the 7th Guest |
string |
|||
desired_screen_aspect_ratio |
string |
auto |
|
dimuse_tempo |
integer |
10 |
Sets internal Digital iMuse tempo per second; 0 - 100 |
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
true |
||
false |
|||
boolean |
false |
||
boolean |
false |
||
boolean |
|||
boolean |
|||
boolean |
true |
||
boolean |
true |
||
boolean |
true |
||
boolean |
false |
RISC OS only. |
|
boolean |
true |
||
boolean |
false |
||
enable_unsupported_game_warning |
boolean |
true |
Shows a warning when adding a game that is unsupported. |
extra |
string |
Shows additional information about a game, such as version |
|
string |
None |
||
boolean |
true |
||
boolean |
false |
||
boolean |
false |
||
boolean |
true |
||
integer |
80 |
|
|
integer |
100 |
|
|
integer |
3 |
|
|
integer |
30 |
|
|
string |
Sine |
|
|
string |
4th |
|
|
boolean |
true |
||
integer |
0 |
|
|
integer |
90 |
|
|
integer |
20 |
|
|
integer |
1 |
|
|
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
string |
|||
gamepath |
string |
Specifies the path to the game |
|
string |
normal (1x) |
|
|
string |
null |
|
|
boolean |
true |
||
boolean |
true |
||
gui_browser_show_hidden |
boolean |
false |
Shows hidden files/folders in the ScummVM file browser. |
gui_list_max_scan_entries |
integer |
-1 |
Specifies the threshold for scanning directories in the Launcher. If the number of game entires exceeds the specified number, then scanning is skipped. |
gui_saveload_chooser |
string |
grid |
|
gui_saveload_last_pos |
string |
0 |
|
boolean |
|||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
true |
||
boolean |
false |
||
iconpath |
string |
Specifies the path to icons to use as overlay for the ScummVM icon in the Windows taskbar or the macOS Dock when running a game. The icon files should be named after the gameid, and be an ICO file on Windows, or a PNG file on macOS. |
|
boolean |
true |
||
boolean |
true |
||
integer |
3 |
||
joystick_num |
integer |
0 |
Enables joystick input and selects which joystick to use. The default is the first joystick. |
integer |
10 |
||
string |
JOY_DOWN |
||
string |
MOUSE_LEFT JOY_A |
||
string |
JOY_LEFT |
||
string |
MOUSE_MIDDLE |
||
string |
F5 JOY_LEFT_SHOULDER |
||
string |
SPACE |
||
string |
|||
string |
MOUSE_RIGHT JOY_B |
||
string |
RETURN |
||
string |
JOY_RIGHT |
||
string |
ESCAPE JOY |
||
string |
PERIOD JOY_X |
||
string |
JOY_UP |
||
string |
C+A+d |
||
string |
C+F5 JOY_START |
||
string |
C+u |
||
string |
C+q |
||
string |
JOY_LEFT_STICK_Y+ |
||
string |
JOY_LEFT_STICK_X- |
||
string |
JOY_LEFT_STICK_X+ |
||
string |
JOY_RIGHT_SHOULDER |
||
string |
JOY_LEFT_STICK_Y- |
||
string |
ESCAPE JOY_Y |
||
string |
JOY_DOWN |
||
string |
JOY_A |
||
string |
|||
string |
JOY_RIGHT |
||
string |
JOY_UP |
||
string |
C+A+a |
||
string |
C+m |
||
string |
C+A+f |
||
string |
C+A+1 |
||
string |
C+A+2 |
||
string |
C+A+3 |
||
string |
C+A+4 |
||
string |
C+A+5 |
||
string |
C+A+6 |
||
string |
C+A+7 |
||
string |
C+A+8 |
||
string |
A+RETURN |
||
string |
C+A+MINUS |
||
string |
C+A+PLUS |
||
string |
A+s |
||
string |
C+A+s |
||
string |
|||
integer |
12345 |
||
integer |
|
||
boolean |
false |
||
boolean |
true |
||
boolean |
false |
||
boolean |
true |
||
string |
auto |
|
|
boolean |
|||
string |
auto |
|
|
music_driver [game] |
string |
auto |
The same options as
|
music_mute |
boolean |
false |
Mutes the game music. |
integer |
192 |
|
|
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
true |
||
boolean |
false |
||
boolean |
|||
boolean |
true |
||
opl2lpt_parport |
null |
||
string |
|
||
boolean |
false |
||
integer |
Sensible values are:
|
||
string |
|||
boolean |
true |
||
boolean |
true |
||
string |
default |
|
|
string |
|||
string |
|||
save_slot |
integer |
autosave |
Specifies the saved game slot to load |
boolean |
false |
||
boolean |
false |
||
screenshotpath |
string |
Specifies where screenshots are saved |
|
sfx_mute |
boolean |
false |
Mutes the game sound effects. |
integer |
192 |
||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
boolean |
true |
||
boolean |
false |
||
boolean |
true |
||
boolean |
false |
||
integer |
192 |
||
string |
|
||
boolean |
true |
||
boolean |
false |
||
integer |
60 |
|
|
tempo |
integer |
100 |
Sets the music tempo, in percent, for SCUMM games.
|
boolean |
true |
||
string |
none |
||
boolean |
true |
||
boolean |
false |
||
boolean |
false |
||
boolean |
false |
||
use_cdaudio |
boolean |
true |
If true, ScummVM uses audio from the game CD. |
versioninfo |
string |
Shows the ScummVM version that created the configuration file. |
|
boolean |
true |
||
boolean |
false |
Understanding the audio settings¶
This guide expands on the information contained on the audio settings page.
How do the audio settings work together?¶
The Preferred device in the global settings Audio tab, or the Music device in the game-specific settings Audio tab, specifies the device that ScummVM uses to output audio. This device can be an emulated sound device or a software synthesizer, or an actual hardware device such as a soundcard or a hardware MIDI synthesizer. When set to <default>, ScummVM will automatically choose the most appropriate option for the played game.
If Preferred device or Music device is set to <default> and ScummVM chooses either an MT-32 or General MIDI device automatically, the settings on the MT-32 or MIDI tabs also apply, and the devices selected on these tabs are the ones that will be used. If Preferred device or Music device is set to either an MT-32 device or a GM device, ScummVM will use that device and ignore the devices chosen on the MT-32 and MIDI tabs.
Not all settings are applicable to all games. For example, changing the General MIDI settings will not have any effect on a game that only has CD audio.
The evolution of PC audio¶
For a look at the evolution of PC audio, see this video on YouTube, or this excellent post.
Many of these old-school audio devices can be emulated by ScummVM:
PC Speaker: emulates the built-in PC speaker. This is mostly supported by older games, and was the only option before sound cards became widely used.
pcspk
IBM PCjr: emulates the sound of the 1984 IBM PCjr computer, which, enhanced with a Texas Instruments chip, provided three-voice sound and a white noise generator.
pcjr
Creative Music System (C/MS): emulates the first sound card developed by Creative Technology (later Creative Labs), the precursor to the SoundBlaster line of sound cards. The C/MS provided 12 channels of square-wave stereo sound.
cms
C64 Audio: emulates the sound chip (Sound Interface Device) in the Commodore 64 computer. The SID was a three-voice synthesizer module, with a fourth voice for sampled drums or speech.
C64
Amiga Audio: emulates the Amiga audio chip, Paula, which had four 8-bit PCM sound channels.
CAMD
FM-Towns Audio: emulates the audio of the FM Towns PC. Games on FM Towns computers often used audio CD standard tracks. The soundchips were capable of eight PCM voices and six FM channels.
towns
PC-98 Audio: emulates the audio of the NEC PC-9801-26 and PC-9801-86 sound cards.
pc98
SegaCD Audio: emulates the audio of the Sega CD add-on for the Sega Genesis/32x.
segacd
To find out which emulation is compatible with the game you’re playing, have a look at the manual that comes with the game.
What is MIDI?¶
MIDI is a communications protocol for musical information; it can be likened to digital sheet music. By itself, MIDI is not sound. Hardware or software synthesizers create (synthesize) audio by interpreting the information given to them by the MIDI protocol.
While some older soundcards (and a few modern ones) have their own hardware-based synthesizers, this is relatively rare. Generally, soundcard drivers work with software synthesizers to interpret MIDI and output audio.
Some games only contain MIDI audio data. In the past this prevented audio for these games from working on platforms that did not support MIDI, or with soundcards that did not provide MIDI drivers. ScummVM can now convert MIDI data to sampled audio using MIDI device emulators.
What is General MIDI?¶
General MIDI is a MIDI standard which is implemented by a large number of devices. While using MIDI as its protocol, it also specifies an instrument map and some other information that devices must implement.
General MIDI device emulation (FluidSynth)¶
If the ScummVM you’re using has libfluidsynth support it will be able to play MIDI music by using the FluidSynth emulator if set as the Preferred device or Music device, or if specified in the MIDI tab when Preferred device or Music device is set to <default> and ScummVM chooses General MIDI output automatically.
You will have to specify a SoundFont in the MIDI tab for ScummVM to use FluidSynth. MIDI is like digital sheet music; it needs a library of sound samples known as a SoundFont to draw from to synthesize music. See the ScummVM forum for an example of a great SoundFont.
The default output volume from FluidSynth can be fairly low, so ScummVM automatically sets the gain to get a stronger signal. Use the MIDI gain setting to further adjust this.
The processor requirements for FluidSynth are quite high; a fast CPU is recommended.
What is MT-32?¶
The MT-32 is a Roland sound module, although the term also commonly refers to a range of devices that are fully compatible with the MT-32. MT-32 devices also use MIDI as the communications protocol.
MT-32 device emulation¶
Some games which contain MIDI music data have tracks designed specifically for the Roland MT-32. ScummVM can emulate the MT-32 device, however you must provide the original MT-32 ROMs, taken from the MT-32 module, for the emulator to work. These files are:
MT32_PCM.ROM - IC21 (512KB)
MT32_CONTROL.ROM - IC26 (32KB) and IC27 (32KB)
Place these ROMs in the game directory, in your extrapath, or in the directory where your ScummVM executable resides. ScummVM also looks for CM32L_PCM.ROM
and CM32L_CONTROL.ROM
—the ROMs from the CM-32L device—and uses these instead of the MT32 ROMs if they are available.
Note
The MT-32 ROMs are copyrighted, and are not provided by ScummVM. These must be taken from your own MT-32 module.
ScummVM uses the MT-32 emulator if it is set as the Preferred device or Music device, or if it is specified in the MT-32 tab when Preferred device or Music device is set to <default> and ScummVM chooses MT-32 output automatically.
You don’t need to enable True Roland MT-32 in the MT-32 tab, ScummVM does this automatically.
Tip
Some games work better with some MT-32 devices than others. As an example, Lure of the Temptress makes use of extra sound effects included with the CM-32L and won’t sound right with an MT-32. Likewise, The Colonel’s Bequest uses some bugs in the early MT-32 modules, which means that later devices will play incorrect sound effects!
This Wikipedia article provides a comprehensive list of MT-32 compatible games, including which games work best with which device.
The processor requirements for the MT-32 emulator are quite high; a fast CPU is strongly recommended.
Built-in MIDI support¶
All MIDI ports show up in the Preferred device or Music device dropdown selector. If you have selected a MIDI port, you need to specify what type of MIDI device this is with the options in the MT-32 tab.
Enable True Roland MT-32 to tell ScummVM that the MIDI device is an MT-32 (or fully compatible) device.
Enable Roland GS device to tell ScummVM to use an MT-32 soundtrack on a GS device. This is not supported by all games.
If no options are selected, ScummVM treats the device on the port as a General MIDI device.
If you select an option that does not match the actual device, this might have unintended consequences. For example, if a game only has support for MT-32 and you have a General MIDI device selected as the Preferred device or Music device, ScummVM will convert the MT-32 MIDI data to GM-compatible MIDI data. While this might work fine for some games, it really depends on how the game has made use of the MT-32.
macOS/Mac OSX¶
Mac has a built-in MIDI synthesizer; Apple DLS software synthesizer. It uses the Mac’s built-in sounds (which are based on Roland GS).
The Apple Support page has further information about setting up MIDI devices on a Mac.
Windows¶
Windows has a generic built-in MIDI synthesizer—GS WaveTable Synth—also based on Roland’s GS sounds.
For an in-depth look at audio and MIDI device setup on a Windows computer, see this very helpful article.
Linux¶
MIDI device setup might vary depending on your Linux distro.
If you do not have a hardware MIDI device, there are two options: FluidSynth and TiMidity. FluidSynth is recommended as TiMidity might have some lag, depending on the system.
Here are a couple of helpful articles from the Ubuntu community documentation to get you started.
How to: Hardware synthesizer soundcard setup
What is AdLib?¶
AdLib devices do not use MIDI. They instead have a chip that produces sound through FM synthesis. While some games do store their audio data using a MIDI-derived format, this is converted by the game to work with the AdLib chip. ScummVM emulates a few different AdLib configurations, and selects the most appropriate for the game:
The original AdLib and SoundBlaster card had one OPL2 chip.
The SoundBlaster Pro 1 had two OPL2 chips
The SoundBlaster Pro 2 and 16 had an OPL3 chip.
The AdLib emulator setting offers MAME, DOSBox and Nuked emulation, with MAME being the least accurate and using the least CPU power, and Nuked being the most accurate and also using the most CPU power - DOSBox is somewhere in between.
There is also the option to select the OPL2LPT and OPL3LPT devices, which are external hardware devices with a real OPL chip, connected through the parallel port of a computer.
AdLib does not require a SoundFont or ROMs, so for many games it might be the easiest to configure. However, if an MT-32 or GS emulator or device is available, ScummVM will prioritize this over AdLib.
Mixed AdLib/MIDI mode¶
Some games contain sound effects that are exclusive to the AdLib soundtrack, or the AdLib soundtrack might provide better sound effects. For these games, you can combine MIDI music with AdLib sound effects by using the mixed AdLib/MIDI mode.
Note
Mixed AdLib/MIDI mode is not supported by all games.
Digital Sound effects¶
Some games have both sampled and synthesized sound effects. ScummVM will usually use the sampled sound effects, even if you select Adlib, MT-32 or GM as your audio device. Some games allow you to choose between sampled and synthesized sound effects by using the Prefer digital sound effects option in the Engine tab.
Sample output rate¶
The output sample rate tells ScummVM how many sound samples to play per channel per second.
Most of the sounds were originally sampled at either 22050Hz or 11025Hz, so using a higher sample rate in these cases will not improve the quality of the audio.
For games that use CD audio, the sounds were probably sampled at 44100Hz, so that is a better sample rate to choose for these games.
ScummVM generates the samples when using AdLib, FM-Towns, PC Speaker or IBM PCjr emulated sound. 22050Hz will usually be fine for these options, although for Beneath a Steel Sky 44100Hz is recommended.
ScummVM has to resample all sounds to the selected output frequency. It is recommended to choose an output frequency that is a multiple of the original frequency. Choosing an in-between number might not be supported by your sound card.
Audio buffer size¶
There is no option to control audio buffer size through the GUI, but the default value can be overridden in the the configuration file with the audio_buffer_size configuration keyword. The default value is calculated based on output sampling frequency to keep audio latency below 45ms.
Appropriate values are normally between 512 and 8192, but the value must be one of: 256, 512, 1024, 2048, 4096, 8192, 16384, or 32768.
Smaller values yield faster response time, but can lead to stuttering if your CPU isn’t able to catch up with audio sampling when using the sound emulators. Large buffer sizes might lead to minor audio delays (high latency).
Understanding the graphics settings¶
This guide expands on the information contained on the graphics settings page.
How do the graphics settings work together?¶
The graphics mode, aspect ratio, and stretch mode settings work together to change the resolution and display of each game. The first setting applied to the image is the graphics mode, then the aspect ratio correction, and then the stretch mode setting. The only exception to this is OpenGL mode, which applies all settings in one pass to arrive at a final image.
Render modes are only applicable to some older games that were designed to be played on multiple systems, and lets us choose which system’s graphics to replicate.
Graphics modes¶
The original game graphics are upscaled using different graphical filters, which are specialized algorithms used to ensure that low resolution pixel-art still looks good when it is displayed at a higher resolution.
If the game originally ran at a resolution of 320x200—which is typical for most SCUMM games—then using a graphics mode with a scale factor of 2x yields 640x400 graphics. A 3x scale factor yields 960x600.
There is always a speed penalty when using any form of filtering.
A comparison of graphics modes¶

1x: No filtering, no scaling. Fastest.¶

2x: No filtering, scales the image by a factor of 2. Default for non 640x480 games.¶

3x: No filtering, scales the image by a factor of 3.¶

2xSaI: SaI filter, factor 2x.¶

Super2xSaI: Enhanced 2xSAI filtering, factor 2x.¶

SuperEagle: Less blurry than 2xSAI, but slower. Factor 2x.¶

AdvMAME2x: Doesn’t rely on blurring like 2xSAI, fast. Factor 2x.¶

AdvMAME3x: Doesn’t rely on blurring like 2xSAI, fast. Factor 3x.¶

HQ2x: Very nice high quality filter, but slow. Uses lookup tables to create anti-aliased output. Factor 2x.¶

HQ3x: Very nice high quality filter, but slow. Uses lookup tables to create anti-aliased output. Factor 3x.¶

TV2x: Interlace filter. Introduces scan lines to emulate a TV. Factor 2x.¶

DotMatrix: Dot matrix effect. Factor 2x.¶
Note
Not all platforms support all the graphics modes.
To switch between graphics modes, press Ctrl + Alt and 1 to 8.
OpenGL mode¶
OpenGL graphics mode works a little differently to the other graphics modes. Instead of applying the aspect ratio and stretch mode settings one after the other (and after the graphics mode scaling has been applied), it does all the scaling and stretching in one step, going directly from the original game resolution to the final display resolution. OpenGL mode uses hardware rendering, instead of software rendering.
Output is controlled by your window size (or screen resolution if in full screen) and the stretch mode selected, as well as the Filter graphics option.
Aspect ratio correction¶
Older games were designed to be run at 320x200 pixels, but on systems where each pixel was rectangular instead of square. This means that on modern systems these games look wider and flatter than they are supposed to. Aspect ratio correction duplicates lines of pixels to correct this.
For a game with an original resolution of 320x200, aspect ratio correction results in a resolution of 320x240.

No aspect ratio correction applied.¶

Aspect ratio correction applied. The moon is actually round, as it should be!¶
To toggle aspect ratio on and off, press Ctrl+Alt+a.
Stretch modes¶
There are five stretch modes:
Center: centers the image in the window.
Pixel-perfect scaling: scales the image to the highest multiple of the game resolution that fits the window, or that fits the screen if in fullscreen mode. Any empty space is filled with black bars.
For example, a game with an original resolution of 320x200 with aspect ratio correction applied (320x240) and a 3x graphics mode, will be stretched to a multiple of 900x720 pixels: 1800x1440, 2700x2160 and so on.
Fit to window: fits the image to the window, but maintains the aspect ratio and does not stretch it to fill the window.
Stretch: stretches the image to fill the window
Fit to window (4:3): fits the image to the window, at a forced 4:3 aspect ratio.
To switch between stretch modes, press Ctrl+Alt+s.
Render mode¶
For most games this setting will have no effect. For some of the older games that could be played on different systems and graphics cards, this control lets you decide which system you want ScummVM to reproduce.
Below are some of the common render modes, to illustrate how the render mode setting works.

Maniac Mansion with <default> render mode¶

Maniac Mansion with Hercules Green render mode¶

Maniac Mansion with Hercules Amber render mode¶

Maniac Mansion with CGA (4 color) render mode¶

Maniac Mansion with EGA (16 color) render mode¶

Maniac Mansion with Amiga (32 color) render mode¶
Filter graphics¶
When enabled, ScummVM uses bilinear interpolation instead of nearest neighbor for the aspect ratio and stretch mode. It does not affect the graphics mode scaling unless OpenGL is selected, in which case it determines how the OpenGL scaling is done.
Nearest neighbor is a simple way to scale an image; each pixel becomes multiple pixels of the same color. While this preserves the sharper details in a pixel art image, it also creates “jagged” edges as the image is scaled up. Bilinear interpolation finds the average color between pixel color values and fills in missing pixel, which results in a “smoothed” image.
To toggle between bilinear interpolation and nearest neighbor, press Ctrl+Alt+f.
Report a bug¶
To report a bug, go to the ScummVM Issue Tracker and log in with your GitHub account.
Please make sure the bug is reproducible, and still occurs in the latest git/Daily build version. Also check the compatibility list for that game, to ensure the issue is not already known. Please do not report bugs for games that are not listed as completeable on the Supported Games wiki page, or on the compatibility list. We already know those games have bugs!
Please include the following information in the bug report:
ScummVM version (test the latest git/Daily build)
Bug details, including instructions for how to reproduce the bug. If possible, include log files, screenshots, and any other relevant information.
Game language
Game version (for example, talkie or floppy)
Platform and Compiler (for example, Win32, Linux or FreeBSD)
An attached saved game, if possible.
If this bug only occurred recently, include the last version without the bug, and the first version with the bug. That way we can fix it quicker by looking at the changes made.
Finally, please report each issue separately; do not file multiple issues on the same ticket. It is difficult to track the status of each individual bug when they aren’t on their own tickets.
The ScummVM log file¶
To help you report a bug, you can find error messages in the ScummVM log file. The location of this file varies depending on your operating system.
macOS
~/Library/Logs/scummvm.log
Linux
We use the XDG Base Directory Specification, so by default the file will be ~/.cache/scummvm/logs/scummvm.log
but its location might vary depending on the value of the XDG_CACHE_HOME
environment variable.
Windows
Window Vista/7/8/10
%APPDATA%\ScummVM\scummvm.log
Contact us¶
There are a few ways to become a part of the ScummVM community:
Chat with us on Discord or the IRC Channel . It’s a great place to hang out with developers and other ScummVM users.
Post on the ScummVM Forum . We have several forums; the Help and Support forum if you need help while using ScummVM, the General discussion forum for all general questions, and The Junkyard for almost everything else! We also have some platform-specific forums, in case you have a specific question. Make sure to read the Forum Rules before posting.
There are three ScummVM mailing lists, which you can join here.
If you find a bug, Report a bug.
Feature requests can be made to our Feature request tracker.
If you have made modifications to the ScummVM source code and would like to see them merged into the main code, open a Pull Request on our GitHub page.
We look forward to meeting you!
Frequently Asked Questions¶
Contents
General¶
About¶
Is ScummVM an emulator?¶
No! ScummVM actually replaces the original executable file that shipped with the game. This means that your games can run on platforms they were never designed for! For an in-depth look at how ScummVM works, see the About ScummVM wiki page.
Is ScummVM free?¶
ScummVM is released under the GPL (General Public License), so it’s more than just free. ScummVM source code is available for you to do whatever you want with it, but if you make modifications and redistribute your work, you must make your source code available.
The ScummVM team would be delighted if you send them your modifications, so that the changes you’ve made can be merged into the main source code. See the Developer Central wiki page for contributing guidelines.
How do I get game files onto my device?¶
For general guidance, see the Handling game files page. For platform-specific information, see the relevant page in the OTHER PLATFORMS section of the sidebar.
ScummVM has cloud and LAN functionality to simplify the file transfer process. For more information, see Connecting a cloud service and Using the local web server.
On what platform(s) will ScummVM run?¶
See our Platforms wiki page for a full list. We have guides available for many of the supported platforms, see the relevant page in the OTHER PLATFORMS section of the sidebar.
Games¶
Can I only play LucasArts SCUMM games?¶
Although the ScummVM project started by reverse-engineering just the LucasArts SCUMM games, the project now supports hundreds of games from many different game developers. See the full list of supported games here. There is a caveat; not all supported games are playable on all platforms. Often this is because the game is simply too CPU intensive for the device, or because of some other hardware or software limitation. If a game is not available on a platform, you will not be able to add it to ScummVM.
Where do I get the games?¶
See the ScummVM Where to get the games wiki page.
How do I install games from my floppy discs/CDs?¶
Generally speaking, you do not need to install the games. You only need to point ScummVM to the game files contained on these discs. For a complete guide, see Handling game files.
Do I need the original game discs?¶
Ideally yes, however we know that a lot of people don’t! If you do not have any hard copy games, there are some digital options available, including some games that have been released as freeware. See the ScummVM Where to get the games wiki page.
How do I know if I can play my game using ScummVM?¶
The best place to check is the Compatibility page on the ScummVM website. You can also have a look at the full list of supported games here.
I have saved games from when I played the original game - can I use these with ScummVM?¶
This is only supported for a select number of games. See the wiki page for the game you are playing.
How do I launch a game straight from the game folder?¶
Games must be added to and started from the ScummVM Launcher; they cannot be started directly from the game files. See Adding and playing a game.
What are the in-game keyboard shortcuts?¶
A list of default shortcuts can be found on the Keyboard shortcuts page. Since version 2.2.0 you can also create custom shortcuts on the Keymaps tab.
Troubleshooting¶
ScummVM¶
ScummVM crashes, but the console window disappears too quickly to see the error message.¶
If you are using a computer, you can run ScummVM from the command line. By doing this, error messages remain visible even after ScummVM exits.
You can also find error messages in the ScummVM log file. See The ScummVM log file.
Games¶
Help! My game won’t run!¶
Make sure your game is supported. Check the Compatibility page on the ScummVM website, and the Platform Overview page on the wiki.
Check that you have all the required datafiles. See the Handling game files page.
Ask for advice on the ScummVM forums or on Discord. See the Contact us page.
If you think the game should run, and it doesn’t, report it as a bug. See Report a bug.
I installed my game but ScummVM can’t find it… What do I do?¶
Installing the game does not necessarily provide ScummVM with the files it needs. In most cases you will need to copy the files from the disc into a folder ScummVM can access. See Handling game files.
Why are the subtitles in my non-English game messed up?¶
You need to specify the correct language in the game-specific settings.
Audio¶
Help! There’s no sound!¶
Sometimes it’s worth checking the obvious.
Are your speakers on? Are your headphones properly connected?
Try playing an audio clip from another source to see if you have sound in general.
If you narrow it down to an issue with ScummVM, check the audio settings. ScummVM falls back on an audio setting that works, but if for some reason it doesn’t, you might need to change the settings yourself. A safe bet is usually to set the Preferred device to <default> and allow ScummVM to choose for you.
Help! There’s no sound on my iPhone/iPad!¶
ScummVM will not play any sound if your device is in Silent Mode. If this is not the problem, see Help! There’s no sound!.
I have a “talkie” version of a LucasArts game but I can’t hear the voices. What’s the problem?¶
The original games shipped with an uncompressed voice file (MONSTER.SOU
). If you have compressed this file to an mp3 file (MONSTER.SO3
), an Ogg Vorbis file (MONSTER.SOG
), or a FLAC file (MONSTER.SOF
), make sure that the ScummVM you’re using has support for those formats.
The audio is really glitchy. What can I do?¶
There are a few things you can try:
Try to increase the audio buffer size in the configuration file.
If you are using the MT-32 emulator, your CPU might not have the processing power to keep up. In this case, you might have some success with running an external MT-32 emulator (Munt), as described in this forum post, provided your platform supports it.
If you are using FluidSynth, in particular with a large Soundfont, your CPU might not have the processing power to keep up. Try selecting a different Preferred device.
If you are using the AdLib emulator, try selecting the least CPU-intensive option; MAME.
Graphics¶
There are so many options… How do I know what to pick?¶
Start by checking out our Understanding the graphics settings page. It has comprehensive information on how all this stuff works.
Can I just make the image larger (for example, 1 pixel becomes 4 pixels) without any smoothing or antialiasing?¶
Yes. Using the Normal (no scaling) graphics mode in conjunction with pixel-perfect scaling will result in a larger image without any smoothing. The 2x and 3x graphics modes also do not involve any filtering. Also check that Filter graphics is not enabled.
The game colors are messed up, how do I fix them?¶
Ensure the correct game platform has been detected. For example, with Amiga game files, check that the platform is set to Amiga.
Version 2.2.0 - “Interactive Fantasy”¶
New games¶
Currently, more than 1600 games are detected and supported.
Added support for Blazing Dragons.
Added support for Griffon Legend.
Added support for Interactive Fiction games based on the following engines:
ADRIFT (except for version 5)
AdvSys
AGT
Alan 2 & 3
Archetype (newly reimplemented for Glk from the original Pascal sources)
Hugo
JACL
Level 9
Magnetic Scrolls
Quest
Scott Adams
ZCode (all ZCode games except the Infocom graphical version 6 games).
Added support for Operation Stealth.
Added support for Police Quest: SWAT.
Added support for English translation of Prince and the Coward.
Added support for Ultima IV - Quest of the Avatar.
Added support for Ultima VI - The False Prophet.
Added support for Ultima VIII - Pagan.
New ports¶
MorphOS port got a major rewrite.
Engines¶
General¶
Autosaves are now supported for all the engines.
Errors are more likely to open the debugger, and be displayed, than just crash ScummVM.
Games are sorted in GUI ignoring the articles.
Now Hebrew is displayed correctly in GUI (requires FriBiDi library).
Updated the Roland MT-32 emulation code to Munt 2.4.0.
Added option to select the default voice for ports that support Text-to-Speech.
Added support for Discord Rich Presence integration on supported platforms (Windows Vista+, macOS 10.9+ 64 Bit)
Major improvements to the keymapper.
BBVS¶
Added support for the demo, available from our website.
Added support for the Loogie minigame demo.
Dreamweb¶
Added support for Russian fan-translation.
Fixed animation speed.
Illusions¶
Fixed subtitle speed (set it to max for good speed).
Added support for Russian Duckman.
Kyra¶
Added support for the SegaCD version of Eye of the Beholder I (with CD-Audio, animated cutscenes and map function).
Added support for the PC-98 version of Eye of the Beholder I.
Added support for the Spanish versions of Eye of the Beholder I and II, Legend of Kyrandia 1 (CD-ROM fan translation) and Legend of Kyrandia 2 (floppy version and CD-ROM fan translation). Fix Spanish Lands of Lore support (floppy version and CD-ROM fan translation).
Lab¶
Fixed sound looping in some rooms.
Neverhood¶
Added support for bigger demo, available from our website.
Prince¶
Fixed inventory item descriptions display.
Added English translation.
Fixed bug with infinite loop when looking at some objects.
Queen¶
Fixed loading a save game from the launcher.
Fixed random long delays when starting a game.
SCI¶
Major improvements to Amiga and Mac sound drivers.
Improved MIDI playback and fixed many audio issues.
Fixed 30 original script bugs in ECO2, GK1, KQ4, KQ5, KQ6, KQ7, LB1, LONGBOW, PHANT2, QFG1, QFG3, QFG4, SQ5 and SQ6.
Fixed a script bug responsible for rare and random lockups in most Sierra games between 1992-1996.
Added support for Inside the Chest / Behind the Developer’s Shield.
Added support for German LSL6-Floppy.
Added support for Hebrew Torin’s Passage.
Added support for Italian Lighthouse.
Added support for Polish KQ5, LSL2, LSL3, LSL5 and LSL6-Floppy.
Fixed Russian LSL1 error when hailing a taxi.
Fixed Phantasmagoria 2 error when attempting easter eggs.
Fixed QFG3 auto-saves.
Fixed QFG4 and Shivers save game thumbnails being obscured by control panels.
Fixed a random crash in the Windows version when exiting a game.
Added support for Roland D-110 sound driver.
The Prefer digital sound effects checkbox now works correctly for SCI01/SCI1 games.
SCUMM¶
Fixed palette issues leading to incorrect colors in MM NES intro and dark rooms.
Fixed the rendering of the flashlight in MM NES to match the original version.
Replaced the existing NES palette to a more accurate NTSC palette based on Mesen.
Added a new GUI option to switch to an alternative NES palette based on the NES Classic.
Improved colors in Apple IIGS Maniac Mansion.
Fixed crash when entering garage in Apple IIGS Maniac Mansion.
Added support from Classic Full Throttle from Remastered release.
Supernova¶
Improved English translation.
Sky¶
Fixed syncing of music volume between built-in settings panel and ScummVM configuration.
Sword1¶
Added support for localized menus in Novy Disk Russian Trilogy release.
Added support for Spanish playable Demo available from our website.
Sword2¶
Added support for Spanish playable Demo available from our website.
Titanic¶
Fixed Barbot crash after asking what else he needs.
Wintermute¶
Added subsystem for tracking achievements, implemented for 10+ games.
Xeen¶
Added missing sprite drawer for enemies hit by Energy Blast.
Fixed freeze due to bad mob data at the top of Witches Tower.
Fixed crash loading some savegames directly from the launcher.
Fixed curing the well in Nightshadow.
Fixed loading of wall items from savegames.
Fixed U/D keys not working on Quests dialog
Fixed incorrect mirror destination for Dragon Tower
Fixed crash reading book in Great Pyramid safe
Prevent attributes from going negative
Fixed border faces animation during Clairvoyance
ZVision¶
Fixed regression in the safe puzzle in Zork Nemesis: The Forbidden Lands.
Fixed getting perfect score in Zork: Grand Inquisitor.
Ports¶
Android port¶
Added support for immersive fullscreen mode.
Improved keyboard and mouse input.
iOS port¶
Fixed unsupported graphic mode for some games (such as SCI games with high quality video scaling enabled).
Removed Quit button to follow the iOS design guidelines.
Removed virtual keyboard input assistant bar. In particular this means that we no longer see a bar at the bottom of the screen when using an external keyboard.
Added save of current game state if possible when switching to a different task and restore game state when returning to the ScummVM task.
Linux port¶
Added option to use the system file browser instead of the ScummVM file browser.
MacOS X port¶
Fixed blurry on Retina screens. Unfortunately this required dropping support for the dark theme for window decorations.
Fixed Taskbar icon display when running a game (this was broken since ScummVM 1.9.0).
RISC OS port¶
Added a VFP optimized build for newer hardware.
Windows port¶
Added support for using additional OneCore voices for text to speech.
Active support for Windows Vista and lower is now discontinued. While we still provide builds for those systems in the foreseeable future, some newer features might be missing.
Welcome to ScummVM!¶
ScummVM allows you to play classic graphic point-and-click adventure games, text adventure games, and RPGs, as long as you already have the game data files. ScummVM replaces the executable files shipped with the games, which means you can now play your favorite games on all your favorite devices.
So how did ScummVM get its name? Many of the famous LucasArts adventure games, such as Maniac Mansion and the Monkey Island series, were created using a utility called SCUMM (Script Creation Utility for Maniac Mansion). The ‘VM’ in ScummVM stands for Virtual Machine.
While ScummVM was originally designed to run LucasArts’ SCUMM games, over time support has been added for many other games: see the full list here. Noteworthy titles include Broken Sword, Myst and Blade Runner, although there are countless other hidden gems to explore.
Start here!¶
We have a user manual section covering THE BASICS:
Controls and settings
Useful features
We also have guides on how to get ScummVM running on a wide range of other platforms:
Handheld consoles
Other consoles
Other operating systems
Advanced topics¶
For our more experienced users, ScummVM features a command line interface, as well as the ability to edit settings directly in a configuration file.
In this section, we also take a deep dive into understanding the graphics and audio settings.
Advanced features
Understanding the settings
Getting help¶
ScummVM is still under development. While we do our best to make sure that as many games as possible can be completed with no major bugs, crashes can happen!
If you are having problems with any aspect of ScummVM, take a look at our help section.
What’s changed since I was last here?¶
We have a RELEASE NOTES section on the sidebar; here you can see what’s changed in both current and past releases.
The ScummVM Project¶
ScummVM is an open-source project created, maintained and constantly improved by a team of passionate volunteers from all around the world. If you enjoy using ScummVM and would like to support the team, you can use the PayPal Donate button below.
Another way to support us is to buy your games from GOG.com using the ScummVM Affiliate link.

If you have software development or technical writing skills, we would love for you to join the ScummVM team! Check out Developer Central on the ScummVM wiki for more information on contributing to ScummVM.