Installing ScummVM

This page explains how to install ScummVM on a computer. For all other platforms, see the relevant platform guide.

There are two ways to install ScummVM on Windows: use the installer, or install manually.

There are multiple ways to install ScummVM on Linux: use the Snap Store, Flathub or the software repository, or manually install the release binary.

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. Use the buttons on the bottom left of the screen to toggle between list and grid view.

_images/launcher_list.png

The Launcher in list view.

_images/launcher_grid.png

The Launcher in grid view.

The games list

The pane on the left, when the Launcher is in list view, shows the games list, which shows 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.

In grid view, all game icons are in the pane below the buttons, and show the game artwork. See Update Icons for information on how to update these. Use the Icons per row slider at the bottom of the page to change the size of the icons. Click on a game to select it. Click on the play icon in the pop-up menu to start the game, the gear icon to open the Game Options menu, or the export icon to load a saved game.

_images/launcher_popup.png

Game pop-up menu in grid view

The grouping menu

To the right of the search box is the grouping menu. Use this menu to group games in alphabetical order, or by engine, series, publisher, language or platform. Hide or show groups of games by clicking on the black arrow to the left of each group heading.

_images/launcher_list_group.png

The grouping menu, with the Launcher in list view

The buttons

To the right of the games list in list view, or above the games list in grid view, there are a number of buttons. Their functions are as follows:

Start (list view only)

Launches the highlighted game.

Load (list view only)

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.

Game Options (list view only)

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.

Global 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.

The Global Main Menu

You can access the ScummVM Global Main Menu, also known as the GMM, while you are playing a game. To open the GMM, press Ctrl+F5 (Ctrl+fn+F5 on a Mac).

_images/gmm.png

The Global Main Menu, or GMM.

The buttons

In the Global Main Menu there are a number of buttons. Their functions are as follows:

Resume

Closes the GMM and resumes the game.

Load

Opens the load game window. From here, you can load a saved game.

Save

Opens the save game window. From here, you can save a game.

Options

Opens a dialog which provides some gameplay options, such as sound volume, subtitle and keymap settings.

About

Displays the ScummVM About dialog. This is also available from the Launcher.

Help

Displays a list of keyboard shortcuts for the game. Note that this is not available for all games; refer to the Keymaps tab for keyboard shortcuts.

Return to Launcher

Quits the game and returns to the Launcher.

Note

This is not available for all games.

Quit

Quits the game and ScummVM, and returns to the operating system. Any unsaved game progress is lost.

Handling game files

ScummVM needs access to the data files for each game. A list of required data files for each game is found on the wiki entry for that game. 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 list of required files, see the wiki entry for the game you’re playing.

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:

  1. Extract the CD audio tracks in WAV or AIFF format.

  2. Convert the tracks to either MP3, FLAC, M4A or OGG file formats.

  3. Place the converted audio files in the same folder that contains the other game datafiles.

  4. You can name them in several ways:

    1. track01.ogg - track12.ogg

    2. track1.ogg - track12.ogg

    3. track_01.ogg - track_12.ogg

    4. track_1.ogg - track_12.ogg

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

Many of the supported games also exist in versions for the Macintosh, however it can be tricky to extract the correct files from a Macintosh floppy or CD, especially if you are using Windows or Linux. See Handling Macintosh game files for an in-depth how-to guide.

Handling Macintosh game files

This section explains how to access game data files from Macintosh media. For general information on how ScummVM handles game data files, including which files are required to play a game, see Handling game files.

Background

There are three main aspects of Macintosh floppy or CD media that can make it difficult to extract the game data: the file system, forks, and file name encoding.

HFS and HFS+ file system

The Macintosh uses a different file system to other operating systems; HFS for older media, and HFS+ for more recent ones.

HFS (Hierarchical File System), also known as Mac OS Standard, was used on Macintosh hard disk, floppy disks, and CDs until the late 90s. It was superseded by HFS+, or Mac OS Extended, with the release of Mac OS 8.1 in 1998. Most game CDs released before the mid-2000 still use HFS. Modern macOS computers can still access HFS+ media, but support for reading HFS media was dropped in macOS 10.15 (Catalina).

To view and copy the files from HFS and HFS+ floppy disks and CDs on a Windows or Linux system, you need to install additional software.

Most, if not all, Macintosh games supported by ScummVM were released on an HFS medium, but if you do have a HFS+ CD then check out the Other methods section for ways to access these files. ScummVM’s Python-based dumper also supports the HFS+ format if you are using it on macOS.

Forks

Macintosh HFS and HFS+ media have a concept called forks. For those familiar with NTFS, it’s the same principle as NTFS streams. A file can consist of two forks, a data fork and a resource fork. Both are important for games to work correctly. Systems other than macOS do not support resource forks, and a regular file copy from a HFS or HFS+ media on such a system will only copy the data fork. To properly preserve the resource fork during the copy, those files need to be converted to a MacBinary file.

File name encoding

Filenames in Japanese games are encoded in a way that is unique to Apple. The result is that a Mac copy of a game will not always show the correct filenames.

Macintosh also allowed special characters to be used that are disallowed in filenames on other platforms.

ScummVM runs on a wide variety of platforms and not all those platforms can store Japanese filenames or other special characters, such as non-ascii characters. ScummVM uses punycode to handle file names that would otherwise not be supported. Punycode converts all non-ascii characters to a special format. If the original file name had special characters, the new file name will start with xn--,for example, xn--Icon-ja6e.

Files that contain prohibited characters are always puny-encoded.

Note

Windows, MacOS and Linux can store these files and do not need punycode enabled.

For more information, see the Windows naming conventions for a list of prohibited characters.

How to extract Macintosh game files

The simplest way to extract the correct game files is to use the dumper companion created and supplied by ScummVM. The dumper can extract files from an HFS medium, encode files to the MacBinary format, and rename files with Punycode if needed.

There are two versions of the dumper: a disk/ISO image version that runs in a browser, and a full-fledged version which uses Python. The browser-based version is the preferred method since this will work in the majority of cases, and it is less hassle because there is nothing to install.

The first step is to create an ISO image of your floppy or CD medium.

Creating the ISO image

Note

If you are accessing HFS+ media in macOS, or HFS media on a macOS 10.14 Mojave system or older, this step is not required when using the Python dumper in MAC mode.

Use an application such as IsoBuster to create an ISO image of the CD.

Use the following commands in the Terminal to find the identifier of the media, and then create an ISO image of that media.

List disks to get the identifier for the CD or floppy disk partition: .. code-block:

diskutil list

Alternatively, find this information using the Disk Utility application. Select the CD partition and look at the name under the device section.

Unmount the disk if needed: - By default disks are mounted when they are inserted, and they need to be unmounted so that you can create the ISO file. - HFS is no longer supported on macOS 10.15 and above, therefore those disk cannot be mounted and do not need to be unmounted.

sudo umount /dev/diskID

Create the iso image: .. code-block:

sudo dd if=/dev/diskID of=/path/name.iso

Eject the CD: .. code-block:

drutil tray eject

Use the following commands to create an ISO image from an inserted HFS or HFS+ medium.

sudo dd if=/dev/cdrom of=/path/name.iso

Usually the device will be /dev/cdrom, /dev/dvd, or /dev/floppy. Alternatively, use sudo blkid to list the mounted and unmounted devices with their ID.

Using the browser dumper companion - preferred method

The browser based dumper companion supports reading HFS media as ISO and disk images. It generates a ZIP file that can be extracted and then imported in ScummVM.

  1. Upload the disk/ISO image file

  2. Select the options:

  • Choose Japanese when dumping Japanese disks

  • Deselect unicode if the platform does not support it

  1. Click the dump button

  2. Download the ZIP file

  3. Extract the ZIP file

  4. Add the extracted directory to scummvm

_images/browser_dumper.png

The browser based dumper companion.

Note

This web dumper-companion works entirely in your web browser and does not transfer the data to any servers.

Using the Python dumper companion

The Python dumper companion supports HFS disks, unless you are running it on a Mac, in which case MAC mode also supports HFS+.

Prerequisites

  • Python3 with pip installed. Information on how to install Python can be found here.

  • The dumper file downloaded from the repository.

Installation

Install machfs, and xattr if using macOS:

pip3 install machfs xattr
pip3 install machfs

Use

The dumper companion supports three modes: ISO, DIR and MAC. The MAC mode is specific to macOS. There’s also a STR mode that is used test drive the punyencode parts. For more info see its help section.

Note

The dumper companion also has help text:

./dumper-companion.py --help

ISO mode

This mode will dump an HFS ISO file to the OUTPUT directory. This directory can then be added to scummvm.

dumper-companion.py iso [-h] [--punycode] [--japanese] INPUT OUTPUT

Options:

  • --punycode: encodes all filename characters as punycode. Select this when your platform doesn’t support UTF-8 filenames

  • --japanese: Use this when dumping Japanese disks.

DIR mode

This mode will puny-encode all files and directories in the current directory.

dumper-companion.py dir [-h] directory

MAC mode

This mode is specific to macOS. It will traverse a directory, find all the resource forks and combine them in a MacBinary file. It is useful for when you already have all game files on your harddrive and want to import them into ScummVM.

dumper-companion.py mac [-h] [--punycode] directory

Options:

  • --punyencode: encodes all filename characters as punycode, select this when your platform doesn’t support UTF-8 filenames

Note

On macOS ScummVM directly accesses data and resource forks, however converting to MacBinary can be useful if you plan to transfer those files to a different system.

Other methods

There are other ways to access HFS and HFS+ media on Windows, macOS, and Linux. These methods require you to copy the files manually.

For Windows, HFS Explorer is a basic and free option, which gives you read-only access to both HFS and HFS+ drives. Use the installer rather than the zip file, to ensure it is installed correctly. For files with a resource fork you will need to use the option to extract as MacBinary. Extract files that only have a data fork as a “raw copy, data fork”.

Alternatively, HFVExplorer can also be used for HFS drives. There is no option to extract as MacBinary, but you can extract files with a resource fork as AppleDouble using the “extract data and resource fork(s)” option.

On macOS you can read HFS+ volumes, and in some cases HFS volumes, and copy the files in the usual way in the Finder. Some discs shipped with hidden files that need to be copied. To view hidden files in macOS, press Cmd+Shift+. in a Finder window.

There is also no need to convert files with a resource fork into MacBinary files, but if you want to do it, for example to later transfer the files onto a different system, you can use the macbinary command line tool.

macbinary encode -o <outfile> <infile>

However the dumper companion is recommended in some cases:

  • If you have a newer operating system. HFS media can only be read on macOS 10.14 (Mojave) and older. Support for reading HFS volumes was removed in macOS 10.15 (Catalina).

  • If files contain invalid characters.

  • If you plan to transfer those files to a different system.

Access HFS+ drives using hfsplus. To use hfsplus, use the command line:

  1. Install hfsplus using the software manager. On Debian-based distributions, use sudo apt install hfsplus.

  2. Find the game disc by running sudo fdisk -l and finding the one with type Apple HFS/HFS+. In this example, this is /dev/fd0.

  3. Create a mount point, for example: sudo mkdir /media/macgamedrive

  4. Mount the device to that moint point: sudo mount -t hfsplus /dev/fd0 /media/macgamedrive

  5. Access the device at /media/macgamedrive. To copy files you can use hpcopy. It takes options to indicate if the files should be converted to macbinary (-m) or copied as a raw file (-r).

Access HFS drives using hfsutils. To use hfsutils, use the command line:

  1. Install hfsutils using the software manager. On Debian-based distributions, use sudo apt install hfsutils.

  2. Find the game disc by running sudo fdisk -l and finding the one with type Apple HFS/HFS+. In this example, this is /dev/fd0.

  3. Mount the HFS volume by running hmount /dev/fd0

  4. List the files and directories on the HFS media using hls, change the working directory on the HFS media using hcd and copy files using hcopy. The hcopy commands take options to indicate if the files should be converted to macbinary (-m) or copied as a raw file (-r). For example hcopy -m "PP Disk 1:PP Data:JMP PP Resources" "pegasus/JMP PP Resources".

  5. Unmount the HFS media with humount /dev/fd0

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.

  1. Run ScummVM to open the Launcher.

  2. In the Launcher window, click Add Game. This opens a file browser; either the system file browser or the ScummVM file browser.

_images/add_game.png

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

_images/mass_add.png
  1. 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

_images/choose_game_directory.png

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.

_images/mass_add_confirm.png _images/mass_add_success.png

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

_images/choose_version.png

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.

  1. The Game Options window 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.

_images/game_settings.png

Note

The Game Options window does not open when Mass Add is used.

  1. Games are now ready to play! To play, either double-click on the game in the games list, or highlight the game by clicking on it, and then click Start. In grid view, either double-click on a game to start it, or select the game and click the play icon in the pop-up window.

_images/start_game.png

Games can also be launched directly from the command line. For more information, see the Command line options page.

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.

_images/gmm_save.png

The Global Main Menu (GMM).

There are two views: list view and grid view. Click the list and grid 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.

_images/save_game_grid.png

Saving a game, grid view.

_images/save_game_grid_desc.png

Save game decription, grid view.

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

_images/save_game_list.png

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.

%APPDATA%\ScummVM\Saved games

~/Documents/ScummVM Savegames/

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.

_images/load_game_list.png

Loading a game, list view.

In grid 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.

_images/load_game_grid.png

Loading a game, grid 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 and 9 or 0

Cycles forwards/backwards 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.

Ctrl+Alt+d

Opens the ScummVM debugger

Changing settings

From the Launcher

The settings are arranged by subject, on different tabs:

Game tab | Graphics tab | Control tab | Keymaps tab | Audio tab | Volume tab | Midi tab | MT-32 tab | Paths tab | GUI tab | Misc tab | Cloud tab | LAN tab | Accessibility tab

To change a setting globally, so that it affects all games, select the Global Options button to open the menu, 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 the Game Options button and select the tab containing the setting you would like to change. If the Launcher is in grid view, select the game and then select the gear icon in the pop-up window. To make the game use the settings in the Game Options tab instead of the Global Options 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.

From the command line

Some settings can be specified in the command line (the complete list can be found at command line). These are valid for the duration of the program and don’t get saved to the configuration file unless modified. They are also marked by a special color in the launcher tabs mentioned above.

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.

_images/cloud_storage.png

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.

_images/cloud_code.png

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.

_images/cloud_connect.png

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

_images/cloud_enable.png

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.

_images/LAN_server_running.png

The LAN tab, with the server running.

To access the server, type the URL shown into the address bar of any web browser:

_images/LAN_server.png

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.

_images/LAN_server_new.png

Create a new directory

To upload files, click Upload Files and select files from the system file browser.

_images/LAN_server_upload.png

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.

Taskbar integration

The taskbar integration has several features:

  • Adds an overlay icon in the taskbar/dock when running a game (Windows and macOS)

  • Updates a list of recently played games that can be started from the taskbar/dock (Windows and macOS).

  • Shows a progress bar when doing a mass add of games, and shows the number of games found at the end (Windows, macOS and Linux).

  • Shows an error state in the taskbar if an error occurs when running a game (Windows only).

Setting up the icon overlay

Currently the taskbar cannot yet use the icons .dat files that can be dowloaded from the Global Options. This means the icons need to be downloaded manually from our Github repository. Either place these in the default Icon Path or change the Icon Path to point to the folder containing the icons.

The icon files must be ICO files for Windows, or PNG files for macOS. They must follow one of these naming conventions, where xxx is the file extension:

  • ID.xxx

  • gameid.xxx

  • engineid.xxx

  • engineid-gameid.xxx

To find the gameid and the engineid, open the configuration file. The game entry will be similar to this:

[lure]
description=Lure of the Temptress (VGA/DOS/English)
iconspath=/Users/user/games/icons
path=/Users/user/games/lure
gameid=lure
engineid=lure
_images/game_icon.png

macOS dock with a custom icon overlay for Beneath a Steel Sky.

Launching recently played games

To start a recently played game, right click on the ScummVM icon in the taskbar or dock, and select the game you want to play.

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.

Optional: Run the extracted ScummVM_Install script. This installer guides you through the installation process.

_images/installer.png

The ScummVM installer.

Note: AmiUpdate is already aware of ScummVM and will automatically keep ScummVM up to date through it’s 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 Catweasel Mk4(+) 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.

Paths

See below for the default location of saved games and scummvm.ini. They can be changed in the Settings.

Saved games

Path-to:ScummVM/saves

Configuration file

Path-to:ScummVM/scummvm.ini

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.

Known issues

Due to the big-endian nature of Amiga OS, there can sometimes be graphics and sounds issues with games. Check out the Platform Overview wiki page for a list of compatible engines.

If a game crashes and it’s listed as compatible, please report it as a bug.

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 12.

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.

Adding SAF paths to ScummVM directory list

Starting with version 2.7.0 of ScummVM for Android, significant changes were made to the file access system to allow support for modern versions of the Android Operating System. If you find that your existing added games or custom paths no longer work, please edit those paths and this time use the SAF system to browse to the desired locations. To do that:

  1. For each game whose data is not found, go to the “Paths” tab in the “Game Options” and change the “Game path”

  2. Inside the ScummVM file browser, use “Go Up” until you reach the “root” folder where you will see the “<Add a new folder>” option.

_images/browser-root.png

File Browser root with <Add a new folder> item

  1. Choose that, then browse and select the “parent” folder for your games subfolders, e.g. “SD Card > ScummVMgames”. Click on “Use this folder”.

_images/fs-root.png

OS file browser root

_images/fs-folder.png

OS file browser selectable folder with “Use this folder” button

_images/fs-permission.png

OS file browser ask to grant ScummVM directory access permission

  1. Then, a new folder “ScummVMgames” will appear on the “root” folder of the ScummVM browser.

_images/browser-folder-in-list.png

File browser with added SAF folder in root

  1. Browse through this folder to your game data.

Steps 2 and 3 need to be done only once for all of your games.

Removing SAF path authorizations

In case you would like to revoke any of the granted SAF authorizations, there is an option for this in the “Global Options > Backend” tab as shown on the screenshot below:

_images/gui-remove-permissions.png

GUI tab with “Remove folder authorizations…” button

_images/gui-remove-list.png

GUI dialog with list of authorizations to revoke

In case you revoke authorization to a path, still used for specific games/titles, please follow the procedure of fixing them outlined in the previous subheading.

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 button click

One finger tap + movement

Mouse movement

One finger tap and hold for >0.5s

Right mouse button click

One finger tap and hold for >1s

Middle mouse button click

Double tap + movement

Left mouse button hold and drag, such as for selection from action wheel in Curse of Monkey Island

Two finger tap

Right mouse button click

Two finger tap + movement of second finger

Right mouse button hold and drag, such as for selection from action wheel in Tony Tough

Three finger tap

Middle mouse button click

Three finger tap + movement of third finger

Middle mouse button hold and drag

Long press system Back button

Opens Global Main Menu

Short press system Back button

Skip, or Cancel/Quit in the Launcher

Long press system Menu button

Opens/closes Virtual keyboard

Short press system Menu button

Opens Global Main Menu

D-pad up/down/left/right

Mouse movement

D-pad center

Left mouse button click

Trackball movement

Mouse movement

Trackball click

Left mouse button click

Touch controls

The touch control scheme can be configured in the global settings. From the Launcher, go to Options > Backend > Choose the preferred touch mode. It’s possible to configure the touch mode for three situations (ScummVM menus, 2D games and 3D games) and choose one of the three possible modes:

  • Direct mouse, the touch controls are direct. The pointer jumps to where the finger touches the screen (default for menus).

  • Touchpad emulation, the touch controls are indirect. The finger can be far away from the pointer and still move it, like on a laptop touchpad.

  • Gamepad emulation, the touch controls don’t move any mouse. The fingers must be placed on lower left and right of the screen and respectively emulate a directional pad and action buttons.

  • The pointer speed setting in the Controls tab affects how far the pointer moves in response to a finger movement.

The touch mode can be switched at anytime by tapping on the controller icon, next to the menu icon at the top right of the screen.

To display or hide the small controller icon, from the Launcher select Options and then the Backend tab. Tick the Show on-screen control box to enable the controller icon.

Two finger tap

To do a two finger tap, hold one finger down and then tap with a second finger.

Three finger tap

To do a three finger tap, start with holding down one finger and progressively touch down the other two fingers, one at a time, while still holding down the previous fingers. Imagine you are impatiently tapping your fingers on a surface, but then slow down that movement so it is rhythmic, but not too slow.

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.

Global Main Menu

To open the Global Main Menu, tap on the small menu icon at the top right of the screen.

To display or hide the small menu icon, from the Launcher select Options and then the Backend tab. Tick the Show on-screen control box to enable the menu icon.

Virtual keyboard

To open the virtual keyboard, long press on the small controller icon at the top right of the screen, or tap on any editable text field. To hide the virtual keyboard, tap the small controller icon (which became a keyboard one) again, or tap outside the text field.

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:

  1. From the Launcher, select Options and then the LAN tab.

  2. Select /root/Path.

  3. Use the file browser to Go up to the root of the ScummVM internal app folder.

  4. Select the ScummVM data (int) shortcut, and tap Choose.

  5. Run the server to access the scummvm.ini configuration file.

For more information, see the Using the local web server page.

Known issues

  • 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.

Audio

Supported audio file formats:

  • MP3

  • OGG

  • FLAC

  • Uncompressed audio

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-7 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

Move the contents of the scummvm-ios7-libs-v3 folder you extracted earlier into the build directory, using either the Finder, or the command line as follows:

mv ~/Downloads/frameworks ~/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 --use-xcframework --enable-faad --enable-fluidsynth --enable-gif --enable-mpeg2 --disable-nasm --disable-opengl --disable-taskbar --disable-tts

The resulting directory structure looks like this:

Home
 |--scummvm
 '--build
     |-- frameworks
     |-- 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.

_images/choose_device.gif

You may need to disable bitcode generation in the build settings. This should already be disabled by default when you make a build specifically for your device, but it is enabled by default when you build for a ‘’Generic iOS Device’’.

Unless you want to debug issues with ScummVM on iOS, you probably want to compile ScummVM in release mode to get better performances when playing games.

_images/ios_xcode_release.gif

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.

_images/identifier.gif

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.

_images/signing.gif

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.

Note

Starting with iOS 16, you may get an error message here if you haven’t enabled Developer Mode on your iOS device. This can be done with the Settings > Privacy & Security > Developer Mode switch, which will restart your device and reduce its security level.

If you can’t see this option, unplug and plug your device again, and make sure that it’s visible to Xcode.

When the build is finished, ScummVM launches on your connected device.

Note

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

  • or Settings > General > VPN & Device Management (iOS 15+)

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.

_images/ios_transfer_files.gif

See Handling game files for more information about game file requirements.

Controls

Touch screen control

Action

One finger tap

Left mouse click

Two finger tap

Right mouse click

Two finger double tap

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.

Game controllers

If running iOS 14 and later there is support for connected mouses and gamepad controllers using the Apple Game Controller framework. Only “Extended Gamepad Controllers” are supported at the moment. For more information visit https://developer.apple.com/documentation/gamecontroller/gcextendedgamepad

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.

MorphOS

This page contains all the information you need to get ScummVM up and running on MorphOS.

What you’ll need

Installing ScummVM

ScummVM is available for download from the ScummVM Downloads page or the MorphOS Storage.

Download and extract the .lha file.

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 MorphOS 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.

Paths

Saved games

PROGDIR:saves

Configuration file

PROGDIR:scummvm.ini

Settings

For more information about Settings, 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 - CAMD: The CAMD driver allows the use of MIDI hardware. Select CAMD as the Preferred device.

Supported audio file formats: - MP3 - OGG - FLAC - Uncompressed audio

Known issues

Due to the big-endian nature of Amiga OS, there can sometimes be graphics and sounds issues with games. Check out the Platform Overview wiki page for a list of compatible engines.

If a game crashes and it’s listed as compatible, report it as a bug.

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.

Paths

Saved games

sdmc:/3ds/scummvm/saves/

Configuration file

sdmc:/3ds/scummvm/scummvm.ini

Settings

For more information about Settings, see the Settings section of the documentation. Only platform-specific differences are listed here.

The 3DS config menu

_images/config.png

The 3DS config menu.

Show mouse cursor

Toggles a visible mouse cursor on/off.

Stretch to fit

Stretches the image to fit the screen

Snap to edges

The 3DS touch screen has difficulty reaching the very end of the screen. With this option enabled, if you’re within a few pixels of the edge the cursor snaps to the edge.

Use Screen:

Sets whether ScummVM uses the Top, Bottom or Both screens.

C-Pad Sensitivity

Sets the sensitivity of the Circle Pad.

Audio

Supported audio file formats:

  • MP3

  • OGG

  • OGG

  • Uncompressed audio

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 DS

This page contains all the information you need to get ScummVM up and running on a Nintendo DS.

What you’ll need

  • A homebrew-enabled Nintendo DSi or DSi XL. Note that the original DS and DS Lite are not currently supported. How to enable homebrew is outside the scope of this documentation.

Installing ScummVM

Download the Nintendo DS package from the ScummVM Downloads page. Extract the archive and copy the extracted scummvm.nds file onto the SD card. The exact location is not important.

Transferring game files

Transfer game folders onto the SD card. The exact location is not important.

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.

Paths

Saved games and the configuration file are found in the ScummVM installation directory.

Settings

For more information about Settings, see the Settings section of the documentation. Only platform-specific differences are listed here.

Audio

Supported audio file formats:

  • MP3

  • Uncompressed audio

Tip

Games run faster if audio files are uncompressed.

Known issues

  • Games requiring a resolution of 512x512 or higher are not supported on the DS due to hardware limitations.

  • Some games are not playable due to the slow CPU speed and limited RAM on the DS. 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

Two finger drag

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.

Three finger drag

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

Two finger drag

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.

Three finger drag

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.

Paths

Saved games

/switch/scummvm/saves

Configuration file

/switch/scummvm/scummvm.ini

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, or use LAN functionality Using the local web server.

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

Paths

Saved games

/hdd0/game/SCUM12000/USRDIR/saves/

Configuration file

/hdd0/game/SCUM12000/USRDIR/scummvm.ini

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

  • FLAC

  • Uncompressed audio

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.

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.

Paths

Saved games

ms0:/scummvm_savegames/

Configuration file

ms0:/scummvm.ini

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 the scummvm 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

Two finger drag

Moves pointer while left mouse button is held down (drag-and-drop).

Three finger drag

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

Two finger drag

Moves pointer while left mouse button is held down (drag-and-drop).

Three finger drag

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.

Paths

Saved games

ux0:/data/scummvm/saves

Configuration file

ux0:/data/scummvm/scummvm.ini

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

  • FLAC

  • Uncompressed audio

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 OS operating system.

What you’ll need

  • A system running RISC OS 3.6 or later.

  • A minimum of 64 MB RAM. 32 MB may work in some circumstances, but is not generally recommended.

  • The SharedUnixLibrary and DRenderer modules installed. These can be installed using PackMan.

  • Support for long file names. On older versions of RISC OS, this can be provided using raFS.

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

The save path needs to be in a path that supports long file names, so it may be necessary to change the default location to one that does.

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.

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:

  1. Download the ready-to-go Nero Image and Demos package and burn the extracted .nrg image to a CD-R using Nero Burning ROM.

  2. 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.

_images/bootdreams.png
  1. Choose the preferred disc image type by clicking on the corresponding icon at the top of the window.

  2. Choose the ScummVMDC folder as the Selfboot folder

  3. Enter a title for the disc image in the CD label field.

  4. Leave the Disc format as Audio/Data

  5. 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

Joystick

Moves pointer

Directional pad

Moves pointer slowly. Also controls the on-screen keyboard

Left Click

Right Click

Pause

START

Load and save

Trigger L

Toggles the virtual keyboard on/off

5 - used for boxing in Indiana Jones and the Last Crusade

Ⓧ + Directional pad

1, 2, 3, 4, 6, 7, 8, 9 - used 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 currently does not support SCUMM v7/v8 games (The Dig, Full Throttle and The Curse of Monkey Island), and any other “big” game may not run at all.

  • 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.

Apple TV OS

Note

This page is under development. Only basic information is given to enable ScummVM on Apple TV.

This page contains all the information you need to get ScummVM up and running on an Apple TV.

Installing ScummVM

There are two ways to install ScummVM on an Apple TV depending on if building the project or downloading a bundle.

Building the project

Since the port for Apple TV shares the same code base as the iOS port the instructions for building the project is the same as for iOS. Follow the iOS with the difference that the ScummVM-tvOS target should be chosen in Xcode.

Downloading and installing ScummVM

Instructions will be added when packages are available for download.

Transferring game files

Note

Note that Apple TV applications doesn’t have a Documents folder in which games can be stored. All games are stored in the cache folder which can be deleted when the system requires the needed space. This could happen if having limited available space and streaming high definition content or installing other applications. Please see https://developer.apple.com/library/archive/documentation/General/Conceptual/AppleTV_PG/OnDemandResources.html for more information.

Make sure to make backups of savegames.

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.

See Handling game files for more information about game file requirements.

Controls

The Apple TV supports several controllers however no mouse support. External keyboards can be used to help entering text input. Usually the Apple TV remote controller will be used.

Game controllers

If running tvOS 14 and later there is support for connected gamepad controllers using the Apple Game Controller framework. “Micro Gamepad Controllers “”Extended Gamepad Controllers” are supported at the moment. For more information visit https://developer.apple.com/documentation/gamecontroller/gcmicrogamepad https://developer.apple.com/documentation/gamecontroller/gcextendedgamepad

Key mappings on Apple TV remote (also remote app on iOS)

Button

Action

Swipe on Touch area

Controls pointer

Press Touch area

Left mouse click

Play/Pause

Right mouse click

Back/Menu in game

Global Main menu

Back/Menu in launcher

Apple TV Home

Hold Play/Pause

Show keyboard with extra keys

Touch (not press) on top of Touch area

Up arrow key

Touch (not press) on left of Touch area

Left arrow key

Touch (not press) on right of Touch area

Right arrow key

Touch (not press) on bottom of Touch area

Down arrow key

Key mappings on Extended gamepad controller

Button

Action

Left analog joystick

Controls pointer

D-Pad

Up/Left/Right/Down arrow buttons

A

Left mouse click

B

Right mouse click

Hold X

Show keyboard with extra keys

Menu in game

Global Main menu

Menu in launcher

Apple TV Home

L1

show game original menu

Paths

Saved games

Savegames/ in the cache root folder. Access this folder through Using the local web server.

Configuration file

Preferences in the cache folder. Access this folder through Using the local web server.

Accessibility

Use the Accessibility tab to change accessibility settings.

From the Launcher, select Global Options, if necessary click the > scroll arrow until the Accessibility tab is visible, and then select the Accessibility tab.

_images/accessibility.png

The Accessibility tab in the Global Options menu.

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

Audio

Audio settings are found on four tabs:

Audio | Volume | MIDI | MT-32

To change settings globally:

From the Launcher, select Global Options, then select the applicable tab.

To change settings for a specific game:

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. 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 of games.

_images/audio.png

The Audio tab in the Global Options menu.

_images/audio_game.png

The Audio tab in the Game Options menu.


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 meaning of this value depends on the games. Some games treat it as a delay (a higher value means the subtitles are displayed for longer) while others treat it as a speed. Games that treat it as a delay include all LucasArts games, with the exception of Grim Fandango and Escape from Monkey Island, all Sierra games, and the Discworld games. Most other games treat it as a speed.

talkspeed


The Volume tab

Use the Volume tab to set the relative volumes for various in-game sounds.

_images/volume_game.png

The Volume tab in the Game Options menu.


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.

_images/MIDI.png

The MIDI tab in the Global Options menu


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

_images/fluidsynth.png

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.

_images/MT32.png

The MT-32 tab in the Global Options menu


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

Backend

Use the Backend tab to change settings that are unique to the platform being used. This tab is not available for all platforms.

To change settings globally:

From the Launcher, select Global Options, then select the Backend tab.

To change settings for a specific game:

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. Select the Backend tab.

_images/backend.jpg

The Android Backend tab in the Global Options menu

For a comprehensive look at how to use these settings, check out the individual platform guides.

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 Global Options, if necessary click the > scroll arrow until the Cloud tab is visible, and then select the Cloud tab.

_images/cloud.png

The Cloud tab in the Global Options menu


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.

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 Global Options, and then select the Control tab.

_images/control.png

The Control tab in the Global Options menu

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

Touchpad mouse mode

Toggles between direct mode and touchpad mode.

Game

Use the Game tab to display and change information about how the game is identified by ScummVM.

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. The menu opens on the Game tab.

_images/game.png

The Game tab in the Game Options menu

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. Edit this name as required, but use only numbers, letters and hyphens. The ID can also be used for launching the game from the command line.

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


The Game tab also shows settings unique to the game engine for the selected game.

To find out which engine powers your game, have a look at the ScummVM Supported Games wiki page or group games by Engine in the Launcher.

Engines: ADL | AGI | AGOS | Bladerunner | Buried | CGE | CGE2 | Chewy | Cine | Drascula | Dreamweb | Freescape | Griffon | GrimE | HDB | Hopkins | Hypno | Kyra | Lure | MADE | MADS | mTropolis | Myst3 | Neverhood | SCI | SCUMM | Sherlock | Sky | Stark | Supernova | Sword2 | Sword25 | Toltecs | Trecision | Ultima | Wintermute | Xeen | ZVision


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


AGOS

AdLib OPL3 Mode

OPL3 features are used when AdLib is selected. Depending on the game, this prevents cut-off notes, adds extra notes or instruments, and/or adds stereo.

opl3_mode

Use DOS version music tempos

Plays music using the tempo of the DOS version of the game (slower than the Windows version)

dos_music_tempos

Use Windows version music tempos

Plays music using the tempo of the Windows version of the game (faster than the DOS version)

dos_music_tempos

Prefer digital sound effects

Uses digital sound effects instead of synthesized ones.

prefer_digitalsfx

Disable fade-out effects

Don’t fade every screen to black when leaving a room.

disable_fade_effects


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

Show subtitles during text crawl

During the intro cutscene, show subtitles during the text crawl.

use_crawl_subs

Fix credits for voice actors

Updates the end credits with corrected credits for the Spanish voice actors.

correct_spanish_credits


Buried

Skip support

Allows the user to skip cutscenes.

skip_support


CGE

Color Blind Mode

Enables Color Blind Mode by default.

enable_color_blind

Enable Text to Speech

Uses TTS to read text in the game, if it is available.

tts_enabled


CGE2

Color Blind Mode

Enables Color Blind Mode by default.

enable_color_blind

Enable Test to Speech for Objects and Options

Uses TTS to read descriptions, if TTS is available.

tts_enabled_objects

Enable Test to Speech for Subtitles

Uses TTS to read subtitles, if TTS is available.

tts_enabled_speech


Chewy

Use original save/load screen

Uses the original save/load screens instead of the ScummVM screens.

original_menus


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

Enable Text to Speech for Objects, Options, and the Bible Quote

Uses TTS to read descriptions (if TTS is available).

tts_enabled_objects

Enable Text to Speech for Subtitles

Use TTS to read subtitles (if TTS is available)

tts_enabled_speech


Freescape

Prerecorded sounds

Uses high-quality pre-recorded sounds instead of PC speaker emulation.

prerecorded_sounds

Extended timer

Starts the game timer at 99:59:59.

extended_timer

Automatic drilling

Allows successful drilling in any area in Driller.

automatic_drilling

Disable demo mode

Ensures demo mode is never activated.

disable_demo_mode

Disable sensors

Ensures sensors do not shoot the player.

disable_sensors

Disable falling

Stops player from falling over edges.

disable_falling


Griffon

Enable Text to Speech

Uses TTS to read descriptions (if TTS is available)

tts_enabled


GrimE

Load user patch (unsupported)

Loads a user patch. Please note that the ScummVM team doesn’t provide support for using such patches.

datausr_load

Show FPS

Shows the current FPS-rate while playing.

show_fps


Groovie

Fast movie speed

Plays movies at an increased speed.

fast_movie_speed

Use original save/load screens

Uses the original save/load screens instead of the ScummVM ones.

originalsaveload

Easier AI

Decreases the difficulty of AI puzzles.

easier_ai

Updated Credits Music

Play the song The Final Hour during the credits instead of reusing MIDI songs

credits_music

Slim Left/Right Hotspots

Shrinks the hotspots on the left and right sides for exiting puzzles.

slim_hotspots

Speedrun Mode

Affects the controls for fast forwarding the game.

speedrun_mode


HDB

Enable cheat mode

Enables debug info and level selection.

hypercheat


Hopkins

Gore Mode

Enables Gore Mode when available.

enable_gore


Hypno

Enable original cheats

Allows cheats by using the C key.

cheats

Enable infinite health cheat

Player health will never decrease (except for game over scenes).

infiniteHealth

Enable infinite ammo cheat

Player ammo will never decrease.

infiniteAmmo

Unlock all levels

All levels are available to play.

unlockAllLevels

Enable restored content

Adds additional content that is not enabled the original implementation.

restored


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

Smooth scrolling

Makes scrolling smoother when walking.

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


MADE

Play a digital soundtrack during the opening movie

Uses a digital soundtrack during the introduction, instead of MIDI music.

intro_music_digital


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

TTS Narrator

Use TTS to read the descriptions (if TTS is available).

tts_narrator


Mohawk

Zip Mode activated

When activated, clicking on an item or area with the lightning bolt cursor takes you directly there, skipping intermediate screens. You can only ‘Zip’ to a precise area you’ve already been.

zip_mode

Transitions enabled

Toggle screen transitions on or off. Turning off screen transitions will enable you to navigate more quickly through the game.

transition_mode

Play the Myst fly by movie

The Myst fly by movie was not played by the original engine.

playmystflyby

Improve Selenitic Age puzzle accessibility

Allows solving Selenitic Age audio puzzles with more error margin.

fuzzy_logic

Simulate loading times of old CD drives

Simulate loading times of old CD-ROM drives by adding a random delay during scene transitions.

cdromdelay

Water Effect Enabled

Toggles the use of QuickTime videos for visual effects related to water surfaces (ripples, waves, etc.).

water_effects

Transitions (Riven only)

Adjusts the speed of screen transitions. Disabling screen transitions will enable you to navigate more quickly through the game.

Options:
  • Disabled

  • Fastest

  • Normal

  • Best

transition_mode


mTropolis

16:9 widescreen mod

Removes letterboxing and moves some display elements, improving coverage on widescreen displays.

mtropolis_mod_obsidian_widescreen

Improved music mixing

Enables dynamic MIDI mixer, improving music quality.

mtropolis_mod_dynamic_midi

Autosave at progress points

Automatically saves the game at major progress points.

mtropolis_mod_auto_save_at_checkpoints

Enable short transitions

Plays short transitions that would normally be skipped on fast CPUs.

mtropolis_mod_minimum_transition_duration

Enable subtitles for important sound effects

Enables subtitles for important sound effects. This may reduce the difficulty of sound recognition puzzles and minigames.

mtropolis_mod_sound_gameplay_subtitles

Start with debugger

Starts the game with the debug overlay active.

mtropolis_debug_at_start


Myst3

Widescreen mod

Enables widescreen rendering in fullscreen mode.

widescreen_mod


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

Repeat useful Willie’s hint

Repeats actual useful hint by Willie.

repeatwilliehint


Queen

Alternate intro

Plays the alternate intro for Flight of the Amazon Queen.

alt_intro


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

Uses 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 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

Use RGB rendering

Use RGB rendering to improve screen transitions.

rgb_rendering

Use per-resource modified palettes

Use custom per-resource palettes to improve visuals

palette_mods

Enable bearded musicians

Enable graphics that were disabled for legal reasons

enable_bearded_musicians

MIDI Mode

When using external MIDI devices, such as through USB-MIDI, select your device here.

midi_mode

Options:
  • Standard - GM/MT-32
    • Standard

  • Roland D-110/D-10/D-20
    • D110

  • YamahaFB01
    • FB01


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

Trim FM-TOWNS games to 200 pixels height

Cuts the extra 40 pixels at the bottom of the screen, to make it standard 200 pixels height, allowing the use of aspect ratio correction. trim_fmtowns_to_200_pixels

Play simplified music

This music was presumably intended for low-end Macs, and uses only one channel.

mac_v3_low_quality_music

Enable smooth scrolling

Uses smooth scrolling instead of the normal 8-pixels steps scrolling.

smooth_scroll

Allow semi-smooth scrolling

Allow scrolling to be less smooth during the fast camera movement in the intro

semi_smooth_scroll

Enable game-specific enhancements

Allow ScummVM to make small enhancements to the game, usually based on other versions of the same game.

enable_enhancements

Load modded audio

Replaces music, sound effects, and speech clips with modded audio files, if available.

audio_override

Enable the original GUI and Menu

Allows the game to use the in-engine graphical interface and the original save/load menu.

original_gui


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


Sky

Floppy intro

Uses the floppy version’s intro (CD version only)

alt_intro


Stark

Load modded assets

Enables loading of external replacement assets.

enable_assets_mod

Enable linear filtering of the backgrounds images

When linear filtering is enabled the background graphics are smoother in full screen mode, at the cost of some details.

use_linear_filtering

Enable font anti-aliasing

Creates smoother text.

enable_font_antialiasing


Supernova

Improved mode

Removes some repetitive actions, and adds the possibility to change verbs by keyboard.

improved

Enable Text to Speech

Use TTS to read descriptions (if TTS is available).

tts_enabled


Sword2

Show object labels

Shows labels for objects on mouse hover

object_labels


Sword25

Use English speech

Use English speech instead of German for every language other than German.

english_speech


Toltecs

Use original save/load screens

Uses the original save/load screens instead of the ScummVM screens.

originalsaveload


Trecision

Use original save/load screens

Use the original save/load screens instead of the ScummVM ones.

originalsaveload


TwineE

Enable wall collisions

Enables the original wall collision damage.

wallcollision

Enable debug mode

Enables the debug mode.

debug

Enable audio CD

Enables the original audio cd track.

usecd

Enable sound

Enable the sound for the game

sound

Enable voices

Enable the voices for the game

voice

Enable text

Enable the text for the game

displaytext

Enable movies

Enable the cutscenes for the game.

movie

Enable mouse

Enables the mouse for the UI.

mouse

Use the USA version

Enables the USA specific version flags.

version

Enable high resolution

Enables a higher resolution for the game

usehighres

TTS Narrator

Use TTS to read the descriptions (if TTS is available)

tts_narrator


Ultima

Use original save/load screens

Use the original save/load screens instead of the ScummVM ones.

originalsaveload

Enable frame skipping

Allow the game to skip animation frames when running too slow.

frameSkip

Enable frame limiting

Limits the speed of the game to prevent running too fast.

frameLimit

Enable cheats

Allows cheats by commands and a menu when player is clicked.

cheat

Enable high resolution

Enable a higher resolution for the game

usehighres

Play foot step sounds

Plays a sound when the player moves.

footsteps

Enable jump to mouse position

Jumping while not moving targets the mouse cursor instead of direction.

targetedjump

Enable font replacement

Replaces game fonts with rendered fonts

font_override

Enable font anti-aliasing

Results in smoother text.

font_antialiasing

Camera moves with Silencer

Camera tracks the player movement rather than snapping to defined positions.

camera_on_player

Always enable Christmas easter-egg

Enables the Christmas music at any time of year.

always_christmas


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

Force to use 2D renderer (2D games only)

Forces ScummVM to use 2D renderer while running 2D games.

force_2d_renderer


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


ZVision

Use original save/load screens

Use the original save/load screens instead of the ScummVM ones

originalsaveload

Double FPS

Increases framerate from 30 to 60 FPS.

doublefps

Enable Venus

Enables the Venus help system.

venusenabled

Disable animation while turning

Disables animation while turning in panorama mode.

noanimwhileturning

Use high resolution MPEG video

Use MPEG video from the DVD version instead of lower resolution AVI.

mpegmovies

Graphics

Use the Graphics tab to change how games look when they are played.

To change settings globally:

From the Launcher, select Global Options. The Global Options menu opens on the Graphics tab.

To change settings for a specific game:

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. Select the Graphics tab.

For a comprehensive look at how to use these settings, check out our Understanding the graphics settings guide.

_images/graphics.png

The Graphics tab in the Global Options menu

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 graphics backend used to render the ScummVM window on the screen. Different graphics modes have different options available (such as scalers and stretch modes).

gfx_mode

Render mode

Changes how the game is rendered. This is only applicable to certain games which were released on multiple systems, and will reproduce what the game looked like on that system.

render_mode

Stretch mode

Changes the way the game is displayed in relation to the window or screen size.

stretch_mode

Scaler

Changes the resolution of the game, while also selecting which filter is used to scale up the resolution. For example, a 2x scaler will take a 320x200 resolution game and scale it up to 640x400.

scaler and scale_factor

Shaders

Similar to render mode, but applicable to all games, shaders are graphics filters that change the way a game looks. Select the Shader button, select a shader from the list and then select Choose. Alternatively, select Pick file instead… to browse your computer for shaders to use. ScummVM only accepts GLSL files in the .glslp format.

_images/shader_picker.png

The shader picker

Once back in the Graphics tab, select Apply to apply the chosen shader. A test pattern pops up to preview the chosen shader, along with a confirmation dialog. Choose Yes to keep the new shader, or No to revert to previous settings. ScummVM reverts to the previous setting in 10 seconds if no action is taken; this is a safety feature.

_images/test_pattern.png

The shader test pattern

Update Shaders

Click on the Update Shaders button to download new or updated shaders. ScummVM will scan to find applicable shader packs; once these have been found, click on the Download button in the pop up window to start the download. Click the Hide button to close the window and continue the download in the background. Use the Cancel download button to cancel the download. Select Clear Cache to delete downloaded shaders.

The shader packs can also be downloaded manually from https://downloads.scummvm.org/frs/icons/ and must be placed in the Icon Path.

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

If ticked, games are played using the entire screen, instead of a window. The actual apperance is defined by the other graphics settings.

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

V-Sync in 3D games

If ticked, synchronizes the frame rate of a game with the monitor’s refresh rate to prevent screen tearing.

vsync

Game 3D renderer

Changes how a 3D game is rendered. This setting has no effect on 2D games.

  • OpenGL: renders on hardware (uses the GPU)

  • OpenGL with shaders: renders on hardware with shader support

  • Software: renders on software (uses the CPU).

renderer

3D Anti-aliasing

Changes the anti-aliasing method. The number refers to how many samples are taken per pixel; 8x takes 8 samples per pixel and is the most accurate, but is also the most processor-intensive option.

antialiasing

GUI

Use this tab to the GUI tab to change the look and feel of the ScummVM graphical user interface.

From the Launcher, select Global Options, if necessary click the > scroll arrow until the GUI tab is visible, and then select the GUI tab.

_images/gui.png

The GUI 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 scale

Scale the ScummVM GUI to be bigger or smaller. Using a larger scale can help to make the text easier to read when using ScummVM on a big screen.

gui_scale

GUI renderer

Defines how the ScummVM GUI is rendered; normal or antialiased.

gui_renderer

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

Always return to the launcher when leaving a game

If ticked, removes the Quit option from the Global Main Menu. Only the Return to Launcher option remains.

gui_return_to_launcher_at_exit

Ask for confirmation on exit

If ticked, a confirmation dialog appears when you choose Quit or Return to Launcher from the Global Main Menu.

confirm_exit

Update Icons

Click on the Update Icons button to download new or updated artwork for game icons. ScummVM will scan to find applicable icons; once these have been found, click on the Download button in the pop up window to start the download. Click the Hide button to close the window and continue the download in the background. Use the Cancel download button to cancel the download.

_images/update_icons.png

The Update Icons window

The icon packs can also be downloaded manually from https://downloads.scummvm.org/frs/icons/ and must be placed in the Icon Path. The packs are incremental and you need all of them to have all the available icons and not just the most recent pack.

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 Global Options, then select the Keymaps tab.

To change settings for a specific game:

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. Select the Keymaps tab.

_images/keymaps.png

The Keymaps tab in the Global Options menu

_images/keymaps_dropdown.png

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 next graphical scale filter

keymap_sdl-graphics_FLTN

Switch to previous graphical scale filter

keymap_sdl-graphics_FLTP

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

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 Global Options, if necessary click the > scroll arrow until the LAN tab is visible, and then select the LAN tab.

_images/LAN.png

The LAN tab in the Global Options menu

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

Miscellaneous

Use the Misc tab to change miscellaneous settings that don’t belong on any of the other tabs.

From the Launcher, select Global Options, if necessary click the > scroll arrow until the Misc tab is visible, and then select the Misc tab.

_images/misc.png

The Misc tab in the Global Options menu

All settings can also be changed in the Configuration file. The configuration key is listed in italics after each setting description.


Autosave

Adjusts the time period between autosaves. The default setting is 5 minutes.

autosave_period

Random seed

Every time you start ScummVM, a random seed is generated. Use this option to set a fixed seed, which ensures that random events in games play out the same way every time.

random_seed

Enable Discord Integration

Use this option to automatically check for updates to ScummVM. Click the Check now button to manually check for updates.

Paths

Use the Paths tab to tell ScummVM where to look for files.

To change settings globally:

From the Launcher, select Global Options, then select the Paths tab.

To change settings for a specific game:

From the Launcher, highlight the game in the games list, and select the Game Options button. If the Launcher is in grid view, select the game and then select the gear icon in the popup window. Select the Paths tab.

_images/paths.png

The Paths tab in the Global Options menu

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

Icon Path

Sets the path to the folder in which ScummVM will look for additional icons for the launcher grid view.

iconspath

ScummVM config path:

Shows where the Configuration file is saved.

Last browser path:

Shows the last folder accessed by the file browser. See more about the file browser here.

Autostart

Use the autostart feature to automatically start or add games. The available features and the way they work depend on the system on which ScummVM is running.

On most systems, such as Windows and Linux, ScummVM can detect and start a game located in the same folder as the ScummVM executable, as long as it is a game supported by ScummVM. It is the equivalent of using the --path and --auto-detect command line options. This also works on macOS when ScummVM is built as a command line application and not as a .app bundle.

There are two ways to use the autostart feature:

  • Rename the executable file to scummvm-auto.xxx, where .xxx is the file type extension (if applicable).

  • Create an empty file named scummvm-autorun in the same folder as both the executable and the chosen game. Either leave the file empty, or use it to specify any further command line options. Specify one option per line.

The following information are only correct when ScummVM is built as a .app bundle. When ScummVM is built as a command line application it behaves as on Windows and Linux.

ScummVM can automatically detect and run a supported game included in the ScummVM.app bundle. The game files simply need to be in the ScummVM.app/Contents/Resources/game/ folder.

ScummVM can also automatically detect and add to the launcher supported games included in the ScummVM.app bundle. The games simply need to be in the ScummVM.app/Contents/Resources/games/ folder, or subfolders in that folder (you can for example use one subfolder per game).

A scummvm-autorun file can also be used to specify command line options to use, with one option per line. The file should be in the ScummVM.app/Contents/Resources/ folder.

In addition if a scummvm.ini file is present in the ScummVM.app/Contents/Resources/ folder, it will be used as initial config file if no ScummVM Preferences file exists yet. It is the equivalent of using the --initial-cfg command line option.

Finally it can be noted that the bundle name specified in the ScummVM.app/Contents/Info.plist file is used for the default config file name. For example by default, when the bundle name is ScummVM, the default config file where settings are saved is ~/Library/Preferences/ScummVM Preferences. But if you change the bundle name to MyGame, the default config file used is ~/Library/Preferences/MyGame Preferences

Thus to create a game bundle for a specific game you can:

  1. Copy the ScummVM.app bundle for example to MyGame.app

  2. Create a MyGame.app/Contents/Resources/game/ folder and copy your game data files to that folder.

  3. Edit the bundle name and bundle display name in the MyGame.app/Contents/Info.plist file.

  4. Create a new icons file in MyGame.app/Contents/Resources/ and edit the icon file in the MyGame.app/Contents/Info.plist file.

  5. Create a MyGame.app/Contents/Resources/scummvm.ini file with the default settings for your game bundle (for example to set fullscreen to true).

Note that modifying a signed bundle will invalidate the signature. So the bundle needs to be signed again after for example adding a game folder inside the ScummVM.app bundle.

ScummVM can automatically detect and run a supported game included in the ScummVM.app bundle. The game files simply need to be in the ScummVM.app/game/ folder.

ScummVM can also automatically detect and add to the launcher supported games included in the ScummVM.app bundle. The games simply need to be in the ScummVM.app/games/ folder, or subfolders in that folder (you can for example use one subfolder per game).

A scummvm-autorun file can also be used to specify command line options to use, with one option per line. The file should be in the ScummVM.app/ folder.

In addition if a scummvm.ini file is present in the ScummVM.app/ folder, it will be used as initial config file if no config file exists yet. It is the equivalent of using the --initial-cfg command line option.

Note that modifying a signed bundle will invalidate the signature. So the bundle needs to be signed again after for example adding a game folder inside the ScummVM.app bundle.

Example of a scummvm-autorun file

--fullscreen
--shader=crt/crt-lottes.glslp
--path=./game/
--auto-detect

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.

Usage

scummvm [option] [game]
  • By default, executing scummvm on the command line starts the Launcher.

  • Specify a game or use --auto-detect to start a game directly.

  • 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.

Starting a game

To start a game on the command line, three options are possible.

For games that have previously been added to ScummVM:

scummvm <target>

For any supported games, even if they have not been added to ScummVM:

scummvm -p <path to game files> <game id>

or

scummvm -p <path to game files> --auto-detect

In all cases additional options can be specified on the command line, for example to specify the graphics mode or which saved game to load.

The target is a name assigned to a game added to ScummVM. It is also known as the ID in the GUI, and can be changed in the Game Options. In the configuration file, this is the game name in square brackets. If the same game is added to ScummVM twice, it will have two different target names, and they can be configured differently. To see the list of configured targets:

scummvm --list-targets

The game id is a unique identifier for any game supported by ScummVM. To see a list of all supported games for your ScummVM release:

scummvm --list-games

Specify a target on the command line to use settings already configured for that target, unless different options are specified on the command line. There is no need to specify the path for the game files since this is already part of the target configuration.

Use the game id or --auto-detect to start games with default settings for any settings not specified on the command line. The path to the game file needs to be specified.

The full game id contains both an engine name and a game name. For example, the game id for Full Throttle is scumm:ft, where scumm is the engine name. In many cases where there is no ambiguity, you can omit the engine name when specifying a game id on the command line. For example, both scumm:ft and ft can be used. However, if there is an ambiguity with the game name, the full game id must be used. For example, for Indiana Jones and the Fate of Atlantis only scumm:atlantis can be used as there would otherwise be an ambiguity with cryomni3d:atlantis.

The following examples assume that the path to ScummVM is C:\Program Files\ScummVM\scummvm.exe.

To run Monkey Island, fullscreen (-f), if the game has already been added to ScummVM under the target name monkey1:

C:\Program Files\ScummVM\scummvm.exe -f monkey1

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 -p "D:\resource" scumm:ft

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), if the game has already been added to ScummVM under the target name monkey1:

/Applications/ScummVM.app/Contents/MacOS/scummvm -f monkey1

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 "/Volumes/Full Throttle/resource" scumm:ft

The following examples assume the path to ScummVM is /usr/games/scummvm.

To run Monkey Island, fullscreen (-f), if the game has already been added to ScummVM under the target name monkey1:

/usr/games/scummvm -f monkey1

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 scumm: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

Default

--add

-a

Adds all games from current or specified directory. If --game=ID is passed, only the game with specified ID is added. See also --detect. Use --path=PATH before -a or --add to specify a directory.

--alt-intro

Uses alternative intro for CD versions, Sky and Queen engines only

false

--aspect-ratio

Enables aspect ratio correction

false

--auto-detect

Displays a list of games from the current or specified directory and starts the first game. Use --path=PATH before --auto-detect to specify a directory

--boot-param=NUM

-b

Pass number to the boot script (boot param).

0

--cdrom=DRIVE

Sets the CD drive to play CD audio from. This can be a drive, path, or numeric index

0

--config=FILE

-c

Uses alternate configuration file

--console

Enables the console window. Win32 and Symbian32 only.

true

--copy-protection

Enables copy protection

false

--debug-channels-only

Shows only the specified debug channels

--debugflags=FLAGS

Enables engine specific debug flags

--debuglevel=NUM

-d

Sets debug verbosity level

0

--demo-mode

Starts demo mode of Maniac Mansion or The 7th Guest

false

--detect

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 --path=PATH before --detect to specify a directory.

--dirtyrects

Enables dirty rectangles optimisation in software renderer

true

--disable-display

Disables any graphics output. Use for headless events playback by Event Recorder

false

--dump-midi

Dumps MIDI events to ‘dump.mid’ while game is running. Overwrites file if it already exists.

false

--dump-scripts

-u

Enables script dumping if a directory called ‘dumps’ exists in the current directory

false

--enable-gs

Enables Roland GS mode for MIDI playback

false

--engine=ID

In combination with --list-games or --list-all-games only lists games for this engine

--engine-speed=NUM

Sets frame-per-second limit for Grim Fandango or Escape from Monkey Island. 0 is no limit. Allowed values 0 - 100

60

--extrapath=PATH

Extra path to additional game data

--filtering

Forces filtered graphics mode

false

--fullscreen

-f

Forces full-screen mode

false

--game=ID

In combination with --add or --detect only adds or attempts to detect the game with specified ID.

--gfx-mode

-g

Selects graphics mode

normal

--gui-theme=THEME

Selects GUI theme

--help

-h

Displays a brief help text and exit

--iconspath=PATH

Path to additional icons for the launcher grid view

--initial-cfg=FILE

-i

Loads an initial configuration file if no configuration file has been saved yet.

--joystick=NUM

Enables joystick input.

0

--language

-q

Selects language. Allowed values: en, de, fr, it, pt, es, jp, zh, kr, se, gb, hb, ru, cz

en

--list-all-debugflags

Lists all debug flags

--list-all-engines

Lists all detection engines, then exits

--list-audio-devices

Lists all available audio devices

--list-debugflags=engine

Lists engine-specific debug flags. If engine=global or engine is not specified, then it lists global debug flags.

--list-engines

Lists supported engines, then exits

--list-games

-z

Lists supported games, then exits.

--list-records=TARGET

Lists recordings for the specified target (Event Recorder)

--list-saves --game=TARGET

Displays a list of saved games for the game specified, or for all targets if no game specified.

--list-targets

-t

Lists configured targets, then exits

--list-themes

Lists all usable GUI themes

--logfile=PATH

-l

Uses alternate path for log file (SDL backend only).

--md5

Shows MD5 hash of the file given by --md5-path=PATH. If --md5-length=NUM is passed then it shows the MD5 hash of the first or last NUM bytes of the file given by PATH. If --md5-engine=ENGINE_ID option is passed then it auto-calculates the required bytes and its hash, overriding --md5-length

--md5mac

Shows MD5 hash for both the resource fork and data fork of the file given by --md5-path=PATH. If --md5-length=NUM is passed then it shows the MD5 hash of the first or last``NUM`` bytes of each fork.

--md5-engine=ENGINE_ID

Used with --md5 to specify the engine for which number of bytes to be hashed must be calculated. This option overrides --md5-length if used along with it. Use --list-engines to find all engine IDs.

--md5-length=NUM

Used with --md5 or --md5mac to specify the number of bytes to be hashed.If NUM is 0, MD5 hash of the whole file is calculated. If NUM is negative, the MD5 hash is calculated from the tail. Is overriden if passed with --md5-engine option

0

--md5-path=PATH

Used with --md5 or --md5mac to specify path of file to calculate MD5 hash of

./scummvm

--midi-gain=NUM

Sets the gain for MIDI playback Only supported by some MIDI drivers. 0-1000

100

--multi-midi

Enables combination AdLib and native MIDI

false

--music-driver=MODE

-e

Selects preferred music device

auto

--music-volume=NUM

-m

Sets the music volume, 0-255

192

--native-mt32

True Roland MT-32 (disables GM emulation)

false

--no-fullscreen

-F

Forces windowed mode

--opl-driver=DRIVER

Selects AdLib (OPL) emulator

--output-channels=CHANNELS

Select output channel count, for example, 2 for stereo.

--output-rate=RATE

Selects output sample rate in Hz, for example 22050Hz.

--path=PATH

-p

Sets path to where the game is installed

--platform=STRING

ref

Specifies platform of game <platform> Allowed values:

  • 2gs

  • 3do

  • acorn

  • amiga

  • atari

  • c64

  • fmtowns

  • nes

  • mac

  • pc

  • pc98

  • pce

  • segacd

  • wii

  • windows

--random-seed=SEED

Sets the random seed used to initialize entropy

--record-file-name=FILE

Specifies recorded file name (Event Recorder)

record.bin

--record-mode=MODE

Specifies record mode for Event Recorder. Allowed values: record, playback, info, update, passthrough.

none

--recursive

In combination with --add or ``--detect recurses down all subdirectories

--renderer=RENDERER

Selects 3D renderer. Allowed values: software, opengl, opengl_shaders

--render-mode=MODE

Enables additional render modes.

Allowed values:

  • hercGreen

  • hercAmber

  • cga

  • ega

  • vga

  • amiga

  • fmtowns

  • pc9821

  • pc9801

  • 2gs

  • atari

  • macintosh

  • macintoshbwdefault

default

--save-slot=NUM

-x

Specifies the saved game slot to load

0 (autosave)

--savepath=PATH

Specifies path to where saved games are stored

--scale-factor=FACTOR

Specifies the factor to scale the graphics by

--scaler=MODE

Selects graphics scaler.

Allowed values:

  • normal

  • hq

  • edge

  • advmame

  • sai

  • supersai

  • supereagle

  • pm

  • dotmatrix

  • tv2x

default

--screenshotpath=PATH

Specify path where screenshot files are created. SDL backend only.

--screenshot-period=NUM

When recording, triggers a screenshot every NUM milliseconds.(Event Recorder)

60000

--sfx-volume=NUM

-s

Sets the sfx volume, 0-255

192

--show-fps

Turns on frames-per-second information in 3D games

false

--soundfont=FILE

Selects the SoundFont for MIDI playback.. Only supported bysome MIDI drivers.

--speech-volume=NUM

-r

Sets the speech volume, 0-255

192

--start-movie=NAME@NUM

Starts Director movie at specified frame. Either can be specified without the other.

--stretch-mode=MODE

Selects stretch mode.

Allowed values:

  • center

  • pixel-perfect

  • even-pixels

  • fit

  • stretch

  • fit_force_aspect

--subtitles

-n

Enables subtitles

--talkspeed=NUM

Sets talk speed for games

60

--tempo=NUM

Sets music tempo (in percent, 50-200) for SCUMM games.

100

--themepath=PATH

Specifies path to where GUI themes are stored

--version

-v

Displays ScummVM version information, then exits.

--window-size=W,H

Sets the ScummVM window size to the specified dimensions. OpenGL only.

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. The configuration file path is also displayed on the Paths tab.

%APPDATA%\ScummVM\scummvm.ini

For Windows 95/98/ME, the file is at C:\WINDOWS\scummvm.ini

~/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.

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

Default configuration file option

An initial (default) configuration file can be specified via the command line using the --i or --initial-cfg option. ScummVM uses this default file if the configuration file is missing from its usual location, such as after initial install, or if the user deletes their configuration file.

Setting an initial configuration file in this way allows default settings to easily be bundled with a game. The alternatives are to use the command line for all settings, which has fewer options and in some cases means the user can’t change settings, or to install a default configuration file to a writable location and using the --config option, which is harder to deploy, and leaves the user with no way to restore default settings except re-installing the game.

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).

alt_intro

boolean

false

altamigapalette

boolean

false

always_christmas

boolean

true

antialiasing

integer

0

0, 2, 4, 8

apple2gs_speedmenu

boolean

false

aspect_ratio

boolean

false

audio_buffer_size

integer

Calculated based on output sampling frequency to keep audio latency below 45ms.

Overrides the size of the audio buffer. Allowed values

  • 256

  • 512

  • 1024

  • 2048

  • 4096

  • 8192

  • 16384

  • 32768

audio_override

boolean

true

automatic_drilling

boolean

false

auto_savenames

boolean

false

autosave_period

integer

300

auto_savenames

boolean

false

Automatically generates names for saved games

bilinear_filtering

boolean

false

boot_param

integer

none

bright_palette

boolean

true

camera_on_player

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.

cdromdelay

boolean

cheat

boolean

false

cheats

boolean

true

color

boolean

commandpromptwindow

boolean

false

confirm_exit

boolean

false

console

boolean

true

Enables the console window for Win32/Symbian32.

controller_map_db

string

gamecontrollerdb.txt is loaded from the specified extrapath

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

correct_spanish_credits

boolean

false

credits_music

boolean

false

datausr_load

boolean

false

debug

boolean

false

description

string

desired_screen_aspect_ratio

string

auto

dimuse_tempo

integer

10

Sets internal Digital iMuse tempo per second; 0 - 100

disable_demo_mode

boolean

false

disable_dithering

boolean

false

disable_falling

boolean

false

disable_sensors

boolean

false

disable_stamina_drain

boolean

false

displaytext

boolean

true

dos_music_tempo

boolean

true

If set to false, plays the Windows version music tempo.

DurableArmor

boolean

false

easier_ai

boolean

false

EasyMouse

boolean

true

enable_assets_mod

boolean

true

enable_bearded_musicians

boolean

false

enable_black_lined_video

false

enable_censoring

boolean

false

enable_color_blind

boolean

false

enable_enhancements

boolean

true

enable_font_antialiasing

boolean

true

enable_gore

boolean

enable_gs

boolean

enable_high_resolution_graphics

boolean

true

enable_hq_video

boolean

true

enable_larryscale

boolean

true

enable_reporter

boolean

false

RISC OS only.

enable_video_upscale

boolean

true

enable_tts

boolean

false

enable_unsupported_game_warning

boolean

true

Shows a warning when adding a game that is unsupported.

extended_timer

boolean

false

extra

string

Shows additional information about a game, such as version

english_speech

boolean

false

extrapath

string

None

iconspath

string

None

infiniteAmmo

boolean

false

infiniteHealth

boolean

false

disable_fade_effects

boolean

false

doublefps

boolean

false

fade_style

boolean

true

fast_movie_speed

boolean

false

filtering

boolean

false

floating_cursors

boolean

false

fluidsynth_chorus_activate

boolean

true

fluidsynth_chorus_depth

integer

80

  • 0 - 210

fluidsynth_chorus_level

integer

100

  • 0 - 100

fluidsynth_chorus_nr

integer

3

  • 0 - 99

fluidsynth_chorus_speed

integer

30

  • 10 - 500

fluidsynth_chorus_waveform

string

Sine

  • sine

  • triangle

fluidsynth_misc_interpolation

string

4th

  • none

  • 4th

  • 7th

  • linear.

fluidsynth_reverb_activate

boolean

true

fluidsynth_reverb_damping

integer

0

  • 0 - 1

fluidsynth_reverb_level

integer

90

  • 0 - 100

fluidsynth_reverb_roomsize

integer

20

  • 0 - 100

fluidsynth_reverb_width

integer

1

  • 0 - 100

font_antialiasing

boolean

false

font_override

boolean

false

footsteps

boolean

true

force_2d_renderer

boolean

false

frameLimit

boolean

true

frameSkip

boolean

false

frames_per_secondfl

boolean

false

frontpanel_touchpad_mode

boolean

false

fullscreen

boolean

false

gameid

string

Short name of the game. For internal use only, do not edit.

gamepath

string

Specifies the path to the game

gfx_mode

string

normal (1x)

  • 1x

  • 2x

  • 3x

  • 2xsai

  • super2xsai

  • supereagle

  • advmame2x

  • advmame3x

  • hq2x

  • hq3x

  • tv2x

  • dot-matrix

  • opengl

gm_device

string

null

  • auto

  • alsa

  • seq

  • sndio

  • fluidsynth

  • timidity

gui_browser_native

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_return_to_launcher_at_exit

boolean

false

gui_saveload_chooser

string

grid

  • list

  • grid

gui_saveload_last_pos

string

0

gui_use_game_language

boolean

helium_mode

boolean

false

help_style

boolean

false

herculesfont

boolean

false

hpbargraphs

boolean

true

hypercheat

boolean

false

iconspath

string

improved

boolean

true

intro_music_digital

boolean

true

InvObjectsAnimated

boolean

true

joystick_deadzone

integer

3

joystick_num

integer

0

Enables joystick input and selects which joystick to use. The default is the first joystick.

kbdmouse_speed

integer

10

keymap_engine-default_DOWN

string

JOY_DOWN

keymap_engine-default_LCLK

string

MOUSE_LEFT JOY_A

keymap_engine-default_LEFT

string

JOY_LEFT

keymap_engine-default_MCLK

string

MOUSE_MIDDLE

keymap_engine-default_MENU

string

F5 JOY_LEFT_SHOULDER

keymap_engine-default_PAUSE

string

SPACE

keymap_engine-default_PIND

string

keymap_engine-default_RCLK

string

MOUSE_RIGHT JOY_B

keymap_engine-default_RETURN

string

RETURN

keymap_engine-default_RIGHT

string

JOY_RIGHT

keymap_engine-default_SKIP

string

ESCAPE JOY

keymap_engine-default_SKLI

string

PERIOD JOY_X

keymap_engine-default_UP

string

JOY_UP

keymap_global_DEBUGGER

string

C+A+d

keymap_global_MENU

string

C+F5 JOY_START

keymap_global_MUTE

string

C+u

keymap_global_QUIT

string

C+q

keymap_global_VMOUSEDOWN

string

JOY_LEFT_STICK_Y+

keymap_global_VMOUSELEFT

string

JOY_LEFT_STICK_X-

keymap_global_VMOUSERIGHT

string

JOY_LEFT_STICK_X+

keymap_global_VMOUSESLOW

string

JOY_RIGHT_SHOULDER

keymap_global_VMOUSEUP

string

JOY_LEFT_STICK_Y-

keymap_gui_CLOS

string

ESCAPE JOY_Y

keymap_gui_DOWN

string

JOY_DOWN

keymap_gui_INTRCT

string

JOY_A

keymap_gui_LEFT

string

keymap_gui_RIGHT

string

JOY_RIGHT

keymap_gui_UP

string

JOY_UP

keymap_sdl-graphics_ASPT

string

C+A+a

keymap_sdl-graphics_CAPT

string

C+m

keymap_sdl-graphics_FILT

string

C+A+f

keymap_sdl-graphics_FLTN

string

C+A+0

keymap_sdl-graphics_FLTP

string

C+A+9

keymap_sdl-graphics_FULS

string

A+RETURN

keymap_sdl-graphics_SCL-

string

C+A+MINUS

keymap_sdl-graphics_SCL+

string

C+A+PLUS

keymap_sdl-graphics_SCRS

string

A+s

keymap_sdl-graphics_STCH

string

C+A+s

language

string

local_server_port

integer

12345

mac_v3_low_quality_music

boolean

false

midi_gain

integer

  • 0 - 1000

midi_mode

string

  • Standard

  • D110

  • FB01

mm_nes_classic_palette

boolean

false

monotext

boolean

true

mouse

boolean

true

mousebtswap

boolean

false

mousesupport

boolean

true

movie

boolean

true

mpegmovies

boolean

true

mt32_device

string

auto

  • auto

  • alsa

  • seq

  • fluidsynth

  • mt32

  • timidity

mtropolis_debug_at_start

boolean

false

mtropolis_mod_auto_save_at_checkpoints

boolean

true

mtropolis_mod_dynamic_midi

boolean

true

mtropolis_mod_minimum_transition_duration

boolean

true

mtropolis_mod_obsidian_widescreen

boolean

false

mtropolis_mod_sound_gameplay_subtitles

boolean

false

multi_midi

boolean

music_driver [scummvm]

string

auto

  • null

  • auto

  • seq (Unix)

  • sndio (Unix)

  • alsa (Unix)

  • CAMD (Amiga)

  • core (Mac)

  • coremidi (Mac - hardware)

  • windows (Windows)

  • fluidsynth

  • mt32

  • adlib

  • pcspk

  • pcjr

  • cms

  • timidity

music_driver [game]

string

auto

The same options as music_driver in [scummvm] plus:

  • towns

  • C64

  • pc98

  • segacd

music_mute

boolean

false

Mutes the game music.

music_volume

integer

192

  • 0-256

mute

boolean

false

native_mt32

boolean

false

NaughtyMode

boolean

true

noanimwhileturning

boolean

false

nodelaymillisfl

boolean

false

ntsc

boolean

object_labels

boolean

true

opl2lpt_parport

null

opl3_mode

boolean

false

opl_driver

string

  • auto

  • mame

  • db

  • nuked

  • alsa

  • op2lpt

  • op3lpt

  • rwopl3

original_gui

boolean

true

original_menus

boolean

false

originalsaveload

boolean

false

outputchannels

integer

Allows the user to specify the number of audio output channels; 1 for mono or 2 for stereo

output_rate

integer

Sensible values are:

  • 11025

  • 22050

  • 44100

palette_mods

boolean

false

platform

string

portaits_on

boolean

true

prefer_digitalsfx

boolean

true

prerecorded_sounds

boolean

true

renderer

string

default

  • opengl

  • opengl_shaders

  • software

render_mode

string

default

  • hercGreen

  • hercAmber

  • cga

  • ega

  • vga

  • amiga

  • fmtowns

  • pc9821

  • pc9801

  • 2gs

  • atari

  • macintosh

repeatwillihint

boolean

restored

boolean

true

retrowaveopl3_bus

string

Specifies how the RetroWave OPL3 is connected:

  • serial (connected to a USB port using a PotatoPi)

  • spi (connected as a HAT using SPI)

retrowaveopl3_disable_buffer

boolean

false

retrowaveopl3_port

string

Specifies the serial port that the RetroWave OPL3 is connected to. For example:

  • COM3

  • ttyACM2

retrowaveopl3_spi_cs

string

Specifies the GPIO chip and line that the RetroWave OPL3 is connected to. Use the format <chip>,<line>.

rgb_rendering

boolean

false

rootpath

string

savepath

string

save_slot

integer

autosave

Specifies the saved game slot to load

scalemakingofvideos

boolean

false

scanlines

boolean

false

screenshotpath

string

See screenshotpath

Specifies where screenshots are saved

semi_smooth_scroll

boolean

false

sfx_mute

boolean

false

Mutes the game sound effects.

sfx_volume

integer

192

shorty

boolean

false

show_fps

boolean

false

ShowItemCosts

boolean

false

silver_cursors

boolean

false

sitcom

boolean

false

skip_support

boolean

true

skiphallofrecordsscenes

boolean

false

slim_hotspots

boolean

true

smooth_scrolling

boolean

true

sound

boolean

true

speech_mute

boolean

false

speech_volume

integer

192

speedrun_mode

boolean

false

stretch_mode

string

  • center

  • pixel-perfect

  • fit

  • stretch

  • fit_force_aspect

studio_audience

boolean

true

subtitles

boolean

false

talkspeed

integer

60

  • 0 - 255

tempo

integer

100

Sets the music tempo, in percent, for SCUMM games.

  • 50-200

targetedjump

boolean

true

TextWindowAnimated

boolean

true

themepath

string

none

transition_mode

boolean

false

For Riven, this is a string with 4 options
  • Disabled

  • Fastest

  • Normal

  • Best

transparent_windows

boolean

true

transparentdialogboxes

boolean

false

trim_fmtowns_to_200_pixels

boolean

false

tts_enabled

boolean

false

tts_enabled_objects

boolean

false

tts_enabled_speech

boolean

false

tts_narrator

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.

unlockAlllevels

boolean

false

usecd

boolean

false

use_crawl_subs

boolean

true

usehighres

boolean

false

use_linear_filtering

boolean

true

version

boolean

false

voice

boolean

true

venusenabled

boolean

true

vsync

boolean

true

wallcollision

boolean

false

water_effects

boolean

widescreen_mod

boolean

false

window_style

boolean

true

windows_cursors

boolean

false

zip_mode

boolean

Screenshot path

The default location for the screenshotpath depends on your system.

In Users\username\My Pictures\ScummVM Screenshots

On the Desktop.

In the XDG Pictures user directory, for example ~/Pictures/ScummVM Screenshots

In the current directory.

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 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: Software Synthesizers

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, OPL3LPT and RetroWave OPL3 devices, which are external hardware devices with a real OPL chip, connected through the parallel port (OPLxLPT) or a USB port (RetroWave OPL3) of a computer. To use these devices you must specify some configuration settings in the configuration file. The keys start with opl2lpt_ and retrowaveopl3_.

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 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 scaler, aspect ratio, and stretch mode settings work together to change the resolution and display of each game.

For the SDL Surface graphics mode, the scaler is applied first, then the aspect ratio correction, and finally the stretch mode. For the OpenGL graphics mode there is no scaler and the aspect ratio correction and stretch modes are applied together in one pass to arrive to the final image. This means that when you want to preserve pixels, you may prefer to use the OpenGL mode, especially if you use aspect ratio correction. The aspect ratio correction in the SDL Surface mode introduces some irregularities that can be avoided with the OpenGL mode.

Render modes are only applicable to some older games that were designed to be played on multiple systems, and let us choose which system’s graphics to replicate.

Graphics modes

Most platforms have either one or two available graphics modes. The most common ones are OpenGL and SDL Surface.

OpenGL graphics mode

With the OpenGL graphics mode the original game image is provided to the graphics card, and the graphics card stretches this image to the requested size. This means that the aspect ratio correction and stretch mode are applied together in one step to go directly from the original game resolution (for example 320x200) to the final display resolution (for example 1280x960). This scaling uses either bilinear interpolation or nearest neighbor interpolation depending on the Filter graphics option.

SDL Surface graphics mode

With the SDL Surface graphics mode, a software scaler is applied to the game image, before applying the aspect ratio correction with a software vertical stretch. The image is then passed to SDL to apply the stretch mode and get the final result. With this graphics mode the software scaler is not affected by the Filter graphics option. This option only affects the aspect ratio correction and the final scaling related to the stretch mode.

A comparison of SDL Surface software scalers

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 a scaler other than Normal 1x.

To cycle forwards or backwards between graphical filters, press Ctrl + Alt and 0 or 9 (respectively).

_images/1x.png

Normal 1x: No filtering, no scaling (original resolution). Fastest.

_images/2x.png

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

_images/3x.png

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

_images/4x.png

Normal 4x: No filtering, scales the image by a factor of 4.

_images/hq2x.png

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

_images/hq3x.png

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

_images/edge2x.png

Edge 2x: Uses edge-directed interpolation. Sharp, clean, anti-aliased image with very few artifacts.

_images/edge3x.png

Edge 3x: Uses edge-directed interpolation. Sharp, clean, anti-aliased image with very few artifacts.

_images/advmame2x.png

AdvMAME 2x: Expands each pixel into 4 new pixels based on the surrounding pixels. Doesn’t rely on blurring like 2xSAI, fast.

_images/advmame3x.png

AdvMAME 3x: Expands each pixel into 4 new pixels based on the surrounding pixels. Doesn’t rely on blurring like 2xSAI, fast.

_images/advmame4x.png

AdvMAME 3x: Expands each pixel into 4 new pixels based on the surrounding pixels. Doesn’t rely on blurring like 2xSAI, fast.

_images/sai2x.png

SaI 2x: Uses bilinear filtering to interpolate pixels.

_images/supersai2x.png

SuperSaI 2x: An enhanced version of the SAI2x filter.

_images/supereagle2x.png

SuperEagle 2x: A variation of the SAI2x filter. Less blurry than SAI2x, but slower.

_images/pm2x.png

PM 2x: Analyzes the eight neighboring pixels to create smoother diagonal lines and rounded edges.

_images/dotmatrix2x.png

DotMatrix 2x: Dot matrix effect.

_images/tv2x.png

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

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.

_images/no_aspect_ratio.png

No aspect ratio correction applied.

_images/aspect_ratio.png

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

Stretch modes control how the game screen is stretched to fill the ScummVM window (or the screen in full screen mode).

_images/center.png

Center: The game screen is not scaled and is centered in the ScummVM window.

_images/pixel-perfect.png

Pixel-perfect scaling: The game screen is scaled to the highest multiple of the game resolution that fits in the ScummVM window. Any empty space is filled with black bars.

The base resolution for this stretch mode includes the selected scaler and, if enabled, the aspect ratio correction. This means that if the original game resolution is 320x200 and a 2x scaler is selected, the display is a multiple of 640x400 (for example 1280x800 or 1920x1200). And if aspect ratio correction is also selected, the display is a multiple of 640x480. With this stretch mode you may thus prefer to use either the OpenGL graphics mode or the SDL Surface graphics mode with a 1x scaler.

This means that, while the width of result will always be a multiple of the original game width, if aspect ratio correction is enabled, the height of the result may not be a multiple of the original game height. This can thus cause some blurring. If you want to use aspect ratio correction but avoid any blurring, you may prefer to use the Even-pixels scaling.

_images/even-pixels.png

Even pixels scaling: The game screen is scaled to the highest multiples of the original game width and height. Any empty space is filled with black bars. This mode is only available for the OpenGL graphics mode.

The factors used on the width and height may be different if the aspect ratio correction is enabled as it will try to get the result as close as possible to the expected aspect ratio. For example, with a screen resolution of 1920x1080, a game with an original resolution of 320x200 and the aspect ratio correction enabled will be stretched to 1280x1000 (original width of 320 x 4 and original height of 200 x 5). Unlike the Pixel-perfect scaling, this does not provide exactly the expected aspect ratio (4:3) but uses instead a good approximation (4:3.125) while ensuring all the original pixels are scaled by the same amount.

_images/fit-to-window.png

Fit to window: Fits the game to the window, but maintains the aspect ratio.

With this mode you may get either horizontal black bars or vertical black bars on the side, but not both.

_images/stretch-to-window.png

Stretch to window: Stretches the game to fill the window.

The game may be stretched horizontally or vertically to fill the window. This mode does not enforce the aspect ratio of the game to be preserved.

_images/fit-3-4.png

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.

_images/default.png

Maniac Mansion with <default> render mode

_images/herc_green.png

Maniac Mansion with Hercules Green render mode

_images/herc_amber.png

Maniac Mansion with Hercules Amber render mode

_images/cga.png

Maniac Mansion with CGA (4 color) render mode

_images/ega.png

Maniac Mansion with EGA (16 color) render mode

_images/amiga.png

Maniac Mansion with Amiga (32 color) render mode

Shaders

Shaders change the way a game is rendered, and can be used to make a game look exactly how you remember it from years past - right down to the border of your Gameboy console and its old LCD screen, or your CRT monitor. Alternatively, use shaders simply to improve the overall look and feel of a game.

The shaders included in the ScummVM pack are curated from the Libretro repository, and are grouped according to effect. For an overview of specific shaders, see the Libretro documentation

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 scaler.

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.

3D Graphics settings

Vsync

V-sync, or vertical sync, synchronizes the frame rate of the game with the monitor’s refresh rate, or the video capture refresh rate. This helps to prevent screen “tearing”, where the screen displays parts of multiple frames at once, which looks like a horizontal line where the image appears to split.

This setting is enabled by default.

Renderers

There are three options for rendering 3D games: OpenGL, OpenGL with shaders, or software.

  • OpenGL uses the graphics card (GPU) to render the game.

  • OpenGL with shaders also uses the GPU, but also uses shaders, if available, to render the game. Shaders are small programs running on the GPU which transform certain graphics inputs to outputs. They control things such as how the pixels are drawn on the 3D shapes.

  • The software option uses the computer’s CPU, instead of a graphics card, to render the game.

Not all render options are available for all games. If in doubt, leave the setting at <default>.

Anti-aliasing

Without anti-aliasing, the computer takes the color it finds at the center of the pixel, and applies that color to the entire pixel. This results in jagged, pixelated lines at the edges of objects. Anti-aliasing, in a nutshell, is how we get nice, smooth lines on a 3D game.

Historically, anti-aliasing was done using a method called Supersampling. With this method, each frame is rendered behind-the-scenes to a higher resolution, and then downscaled to produce a much smoother, better looking image. Unfortunately, this method is very GPU-intensive, and too slow.

Multisampling Anti-Aliasing, or MSAA for short, was developed as a much faster alternative; the computer renders as much of the image as possible without anti-aliasing, and then only applies anti-aliasing to the edges. It samples each pixel to find out where the edge is, and how to blend the colors to create a smooth edge. The numbered options in the ScummVM Graphics tab (2x, 4x and 8x), refer to how many samples are taken. 8x MSAA produces a better image than 2x MSAA, but is also more GPU-intensive.

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.

%APPDATA%\ScummVM\Logs\scummvm.log

~/Library/Logs/scummvm.log

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.

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

1. General

1.1 About

1.1.1. 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.

1.1.2. 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.

1.1.3. Can I create my own games using ScummVM?

A few engines supported by ScummVM have publicly available authoring tools. See this wiki page for more information.

1.1.4. I want to compile ScummVM myself from the source code. How do I do this?

See the Compiling ScummVM wiki page.

1.1.5 Can I run my pirated/abandonware/warez/unauthorized copies of a game?

Our project has a strict no-piracy policy. Hence, we do not provide any support when it becomes evident that you did not obtain your game copy legally.

We outlined a more detailed response on our Wiki.

And no, “abandonware” is not a proper legal concept in any country. Just like how it’s not legal to copy a book under copyright because it is out-of-print, it is not legal to copy a game under copyright because the company is no longer selling it.

In addition, some versions of games downloaded from random websites may have been modified to include malware that could compromise your computer.

1.2 Using ScummVM

1.2.1. How do I install ScummVM onto my device?

See Start here!.

1.2.2. 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.

1.2.3. 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.

1.2.4. Where do I find the configuration file?

See Configuration file.

1.3 Playing games

1.3.1. 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.

1.3.2. Where do I get the games?

See the ScummVM Where to get the games wiki page.

1.3.3. 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.

1.3.4. 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.

1.3.5. How do I get the Macintosh versions of games to work?

See Handling Macintosh game files

1.3.6. 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.

1.3.7. 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.

1.3.8. Where are my games saved?

See Saving and loading a game.

1.3.9. 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.

1.3.10. What are the in-game keyboard shortcuts?

A list of default shortcuts can be found on the Keyboard shortcuts page. From version 2.2.0 you can also create custom shortcuts on the Keymaps tab.

1.3.11. What is the ScummVM policy on fanmade mods (unofficial subtitles & translations, upscaled graphics & audio, etc.)?

Some engines support fan mods, but ScummVM does not endorse any mods that infringe the copyright of the original rights holders. This includes graphic and audio “upscales” that redistribute modified game assets without permission.

Several mods that exist with the permission of the original rights holders can be found on our website.

2. Troubleshooting

2.1. General

2.1.1. 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.

2.1.2. I get “Failed to save game state to file: “. What’s going on?

Check that your save path is a writeable directory.

2.1.3. I think I found a bug. What do I do?

See Report a bug.

2.2 Games

2.2.1. Help! My game won’t run!

  1. Make sure your game is supported. Check the Compatibility page on the ScummVM website, and the Platform Overview page on the wiki.

  2. Check that you have all the required datafiles. See the Handling game files page.

  3. Ask for advice on the ScummVM forums or on Discord. See the Contact us page.

  4. If you think the game should run, and it doesn’t, report it as a bug. See Report a bug.

2.2.2. 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.

2.2.3. Why are the subtitles in my non-English game messed up?

You need to specify the correct language in the game-specific settings.

2.2.4. My game crashes at a specific point. What do I do?

First, check the Compatibility page on the ScummVM website to see if the game has any known issues. If not, and the crash can be reproduced, report the crash as a bug. See Report a bug.

2.2.5. I downloaded the Broken Sword packs from your website but the game won’t run.

These are not full games, they are re-encoded cutscene (video) packs. To run the games you still need the original disks. See the Broken Sword wiki page.

2.3 Audio

2.3.1 Help! There’s no sound!

Sometimes it’s worth checking the obvious.

  1. Are your speakers on? Are your headphones properly connected?

  2. Try playing an audio clip from another source to see if you have sound in general.

  3. 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.

2.3.2 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 2.3.1 Help! There’s no sound!.

2.3.3 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.

2.3.4 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.

2.3.5. I have a CD version of a game, how do I get the sound to work without running the game from the CD?

See CD audio.

2.4 Graphics

2.4.1. 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.

2.4.2. Can I just make the image larger (for example, 1 pixel becomes 4 pixels) without any smoothing or antialiasing?

Yes. Using the OpenGL graphics mode or the SDL Surface graphics mode with Normal scaler in conjunction with pixel-perfect stretch will result in a larger image without any smoothing. The Normal scaler also has options to scale by 2x, 3x, or 4x. Also check that Filter graphics is not enabled. If you want to use aspect ratio correction, it is recommended to use the OpenGL graphics mode with the Even pixels scaling stretch mode.

2.4.3. 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.

3. Features

3.1 Requests

3.1.1. When will you add support for ZIP archives?

We won’t. There are two main reasons: firstly, we believe that it would ease illegal distribution of games, and secondly, we already support compression of sound and speech to reduce file sizes.

3.1.2. Will ScummVM support other games in the future?

That depends on a few factors. Firstly, it has to fit within the scope of ScummVM. Secondly, there has to be a developer who is interested and willing to carry out the work.

ScummVM developers are all volunteers who work on ScummVM in their spare time, solely for fun, and not for profit. Reverse engineering a completely new game without the source code is a long and difficult process. Even with source it can be tedious and time consuming.

Unless you work for a company interested in providing us with source code for one of their classic titles, or want to do the work yourself, please do not ask us to add support for a new game.

Credits

ScummVM Team

Project Leaders

Paweł Kołodziejski

Eugene Sandulenko

Einar Johan T. Sømåen

Lothar Serra Mari

PR Office

Arnaud Boutonné

Public Relations Officer, Project Administrator

Eugene Sandulenko

Project Leader

Retired Project Leaders

James Brown

Vincent Hamm

ScummVM co-founder, Original Cruise/CinE author

Max Horn

Ludvig Strigeus

Original ScummVM and SimonVM author

Engine Teams

Access

Arnaud Boutonné

Paul Gilbert

ADL

Walter van Niftrik

AGI

Stuart George

Matthew Hoops

(retired)

Filippos Karapetis

Martin Kiewitz

Paweł Kołodziejski

Walter van Niftrik

Kari Salminen

Eugene Sandulenko

David Symonds

(retired)

AGOS

Torbjörn Andersson

Paul Gilbert

Travis Howell

Oliver Kiehl

(retired)

Ludvig Strigeus

(retired)

AGS

Paul Gilbert

Thierry Crozat

Chris Jones

Creator

Alan Van Drake

AGS

Benjamin Penney

AGS

Benoit Pierre

AGS

Bernhard Rosenkraenzer

AGS

Cristian Morales Vega

AGS

Edward Rudd

AGS

Erico Vieira Porto

AGS

Ferdinand Thiessen

AGS

Francesco Ariis

AGS

Gilad Shaham

AGS

Ivan Mogilko

AGS

Janet Gilbert

AGS

Jochen Schleu

AGS

Joe Lee

AGS

John Steele Scott

AGS

Martin Sedlak

AGS

Matthew Gambrell

AGS

Michael Rittenhouse

AGS

Morgan Willcock

AGS

Nick Sonneveld

AGS

Ori Avtalion

AGS

Paul Wilkinson

AGS

Per Olav Flaten

AGS

Piotr Wieczorek

AGS

Ryan O’Connor

AGS

Scott Baker

AGS

Shane Stevens

AGS

Shawn R. Walker

AGS

Stefano Collavini

AGS

Steve McCrea

AGS

Steven Poulton

AGS

Sunit Das

AGS

Tobias Hansen

AGS

Tom Vandepoele

AGS

Tzach Shabtay

AGS

rofl0r

AGS

Berian Williams

AgsCreditz

Asylum

Alex Bevilacqua

Alex Fontoura

Alexander Panov

Benjamin Haisch

Filippos Karapetis

Joseph Davies

Julien Templier

Avalanche

Peter Bozsó

Arnaud Boutonné

BBVS

Benjamin Haisch

Blade Runner

Thanasis Antoniou

Thomas Fach-Pedersen

Peter Kohaut

Eugene Sandulenko

Buried

Matthew Hoops

CGE

Arnaud Boutonné

Paul Gilbert

CGE2

Peter Bozsó

Arnaud Boutonné

Paul Gilbert

Chewy

Paul Gilbert

Eugene Sandulenko

Arnaud Boutonné

Filippos Karapetis

Cine

Vincent Hamm

(retired)

Paweł Kołodziejski

Gregory Montoir

(retired)

Kari Salminen

Eugene Sandulenko

Composer

Alyssa Milburn

CruisE

Paul Gilbert

Vincent Hamm

(retired)

Cryo

Arnaud Boutonné

Filippos Karapetis

Retro-Junk;

Eugene Sandulenko

Cryomni3D

Philippe Valembois

Director

Eugene Sandulenko

Crane Yang

GSoC Student

Dmitry Iskrich

Deborah Servilla

GSoC Student

Nathanael Gentry

GSoC Student

Roland van Laar

Scott Percival

Steven Hoefel

Tobia Tesan

Misty De Méo

DM

Arnaud Boutonné

Bendegúz Nagy

Draci

Denis Kasak

Robert Špalek

Dragons

Eric Fry

Benjamin Haisch

Actor pathfinding

Ángel Eduardo García Hernández

Help with reverse engineering

Drascula

Filippos Karapetis

Paweł Kołodziejski

Thierry Crozat

DreamWeb

Torbjörn Andersson

Bertrand Augereau

Filippos Karapetis

Vladimir Menshakov

Willem Jan Palenstijn

Freescape

Chris Allen

Sound engine programming

Gustavo Grieco

Glk

Paul Gilbert

Tor Andersson

GarGlk library

Stefan Jokisch

Frotz interpreter

Andrew Plotkin

Glulxe interpreter

Alan Cox

ScottFree interpreter

Michael J. Roberts

TADS interpreter

Avijeet Maurya

Scott Sub-engine

Gnap

Arnaud Boutonné

Benjamin Haisch

Gob

Torbjörn Andersson

Arnaud Boutonné

Simon Delamarre

Sven Hesse

Eugene Sandulenko

Griffon

Eugene Sandulenko

Grim

James Brown

Grim (retired)

Giulio Camuffo

Grim (retired)

Daniel Schepler

Initial engine contributor

Dries Harnie

EMI

Paweł Kołodziejski

Grim

Christian Krause

EMI (retired)

Einar Johan T. Sømåen

Grim, EMI

Joel Teichroeb

EMI

Joni Vähämäki

EMI (retired)

Groovie

Henry Bush

Ray Carro

Scott Thomas

Jordi Vilalta Prat

Hades Challenge

Vladimir Serbinenko/Google

HDB

Eugene Sandulenko

Nipun Garg

GSoC student

Hopkins

Arnaud Boutonné

Paul Gilbert

Hpl1

Emanuele Grisenti

Hugo

Arnaud Boutonné

Oystein Eftevaag

Eugene Sandulenko

Hypno

Gustavo Grieco

ICB

Paweł Kołodziejski

Joost Peters

Einar Johan T. Sømåen

Illusions

Benjamin Haisch

Eric Fry

Kingdom

Arnaud Boutonné

Thomas Fach-Pedersen

Hein-Pieter van Braam-Stewart

Kyra

Torbjörn Andersson

VQA Player

Oystein Eftevaag

Florian Kagerer

Gregory Montoir

(retired)

Johannes Schickel

(retired)

Lab

Arnaud Boutonné

Filippos Karapetis

Willem Jan Palenstijn

Eugene Sandulenko

Lastexpress

Matthew Hoops

(retired)

Jordi Vilalta Prat

Julien Templier

Lilliput

Arnaud Boutonné

Lure

Paul Gilbert

MacVenture

Borja Lorente

GSoC student

MADE

Benjamin Haisch

Filippos Karapetis

MADS

Arnaud Boutonné

Paul Gilbert

Filippos Karapetis

Mohawk

Bastien Bouclet

Matthew Hoops

(retired)

Filippos Karapetis

Alyssa Milburn

Eugene Sandulenko

David Turner

David Fioramonti

Mortevielle

Arnaud Boutonné

Paul Gilbert

mTropolis

Eric Lasota

MutationOfJB

Ľubomír Remák

Miroslav Remák

Myst 3

Bastien Bouclet

Nancy

Kaloyan Chehlarski

Walter van Niftrik

Neverhood

Benjamin Haisch

Filippos Karapetis

NGI

Eugene Sandulenko

Parallaction

peres

Pegasus

Matthew Hoops

(retired)

Petka

Andrei Prykhodko

Eugene Sandulenko

Pink

Andrei Prykhodko

Eugene Sandulenko

Plumbers

Retro-Junk;

Prince

Eugene Sandulenko

Łukasz Wątka

Kamil Zbróg

Private

Gustavo Grieco

Queen

David Eriksson

(retired)

Gregory Montoir

(retired)

Joost Peters

SAGA

Torbjörn Andersson

Daniel Balsom

Original engine reimplementation author (retired)

Filippos Karapetis

Andrew Kurushin

Eugene Sandulenko

SAGA2

Yuri Guimaraes

GSoC Student

Eugene Sandulenko

SCI

Chris Benshoof

Greg Frieger

Paul Gilbert

Max Horn

(retired)

Filippos Karapetis

Martin Kiewitz

Walter van Niftrik

Willem Jan Palenstijn

Jordi Vilalta Prat

Lars Skovlund

Colin Snover

SCUMM

Torbjörn Andersson

Andrea Boscarino

Digital iMUSE, SMUSH audio, GUI

James Brown

(retired)

Jonathan Gray

(retired)

Vincent Hamm

(retired)

Max Horn

(retired)

Travis Howell

Paweł Kołodziejski

Codecs, iMUSE, Smush, etc.

Gregory Montoir

(retired)

Eugene Sandulenko

FT INSANE, MM NES, MM C64, game detection, Herc/CGA

Ludvig Strigeus

(retired)

SCUMM HE

Jonathan Gray

(retired)

Travis Howell

Gregory Montoir

(retired)

Eugene Sandulenko

Sherlock

Paul Gilbert

Martin Kiewitz

Sky

Robert Göffringmann

(retired)

Oliver Kiehl

(retired)

Joost Peters

SLUDGE

Eugene Sandulenko

Simei Yin

GSoC Student

Stark

Bastien Bouclet

Einar Johan T. Sømåen

Liu Zhaosong

Star Trek

Matthew Hoops

(retired)

Filippos Karapetis

Matthew Stewart

GSoC Student

Supernova

Joseph-Eugene Winzer

Jaromír Wysoglad

Thierry Crozat

Sword1

Fabio Battaglia

PSX version support

Thierry Crozat

Mac version support

Robert Göffringmann

(retired)

Sword2

Torbjörn Andersson

Fabio Battaglia

PSX version support

Jonathan Gray

(retired)

Sword2.5

Torbjörn Andersson

Paul Gilbert

Max Horn

(retired)

Filippos Karapetis

Eugene Sandulenko

TeenAgent

Robert Megone

Help with callback rewriting

Vladimir Menshakov

Tetraedge

Matthew Duggan

Tinsel

Torbjörn Andersson

Fabio Battaglia

PSX version support

Paul Gilbert

Sven Hesse

Max Horn

(retired)

Filippos Karapetis

Joost Peters

Titanic

David Fioramonti

Paul Gilbert

Colin Snover

Toltecs

Benjamin Haisch

Filippos Karapetis

Tony

Arnaud Boutonné

Paul Gilbert

Alyssa Milburn

Toon

Sylvain Dupont

Touché

Gregory Montoir

(retired)

Trecision

Daniel Albano

Arnaud Boutonné

Thomas Fach-Pedersen

Smacker video support

Filippos Karapetis

TsAGE

Arnaud Boutonné

Paul Gilbert

Tucker

Gregory Montoir

(retired)

TwinE

Alexandre Fontoura

(retired)

Vincent Hamm

(retired)

Felipe Sanches

(retired)

Nikita Tereshin

(retired)

Patrik Dahlström

(retired)

Arthur Blot

(retired)

Kyuubu

(retired)

Toël Hartmann

(retired)

Sebástien Viannay

(retired)

Martin Gerhardy

Ultima

Paul Gilbert

Matthew Duggan

Matthew Jimenez

Daniel c. Würl

(Nuvie)

Eric Fry

(Nuvie)

Jeremy Newman

(Nuvie)

Jonathan E. Wright

(Nuvie)

Joseph Applegate

(Nuvie)

Malignant Manor

(Nuvie)

Markus Niemistö

(Nuvie)

Michael Fink

(Nuvie)

Pieter Luteijn

(Nuvie)

Sam Matthews

(Nuvie)

Travis Howell

(Nuvie)

Willem Jan Palenstijn

(Nuvie)

Brian Tietz

(Pentagram)

Dominik Reichardt

(Pentagram)

Max Horn

(Pentagram)

Patrick Burke

(Pentagram)

Ryan Nunn

(Pentagram)

Willem Jan Palenstijn

(Pentagram)

Voyeur

Arnaud Boutonné

Paul Gilbert

WAGE

Eugene Sandulenko

Wintermute

Gunnar Birke

Wintermute 3D

Einar Johan T. Sømåen

Tobia Tesan

Xeen

Paul Gilbert

Benoit Pierre

David Goldsmith

(analysis)

Matt Taylor

(analysis)

Z-Vision

Adrian Astley

Filippos Karapetis

Anton Yarcev

Backend Teams

Android

Andre Heider

Angus Lees

Lubomyr Lisen

Dreamcast

Marcus Comstedt

GCW0

Eugene Sandulenko

GPH Devices (GP2X, GP2XWiz & Caanoo)

John Willis

iPhone / iPad

Oystein Eftevaag

Vincent Bénony

Thierry Crozat

LinuxMoto

Lubomyr Lisen

Maemo

Frantisek Dufka

(retired)

Tarek Soliman

Nintendo 3DS

Thomas Edvalson

Nintendo 64

Fabio Battaglia

Nintendo DS

Bertrand Augereau

HQ software scaler

Cameron Cawley

Neil Millstone

Nintendo Switch

Cpasjuste

rsn8887

OpenPandora

John Willis

PocketPC / WinCE

Nicolas Bacca

(retired)

Ismail Khatib

(retired)

Kostas Nakos

(retired)

PlayStation 2

Robert Göffringmann

(retired)

Max Lingua

PSP (PlayStation Portable)

Yotam Barnoy

Joost Peters

PlayStation Vita

Cpasjuste

rsn8887

SDL (Win/Linux/macOS/etc.)

Max Horn

(retired)

Eugene Sandulenko

Asm routines, GFX layers

SymbianOS

Jurgen Braam

Lars Persson

Fedor Strizhniou

Tizen / BADA

Chris Warren-Smith

Webassembly / Emscripten

Christian Kündig

WebOS

Klaus Reimer

Wii

Andre Heider

Alexander Reim

Raspberry Pi

Manuel Alfayate

Other subsystems

Infrastructure

Max Horn

Backend & Engine APIs, file API, sound mixer, audiostreams, data structures, etc. (retired)

Eugene Sandulenko

Johannes Schickel

(retired)

GUI

Max Horn

(retired)

Vicent Marti

Eugene Sandulenko

Johannes Schickel

(retired)

Miscellaneous

David Corrales-Lopez

Filesystem access improvements (GSoC 2007 task) (retired)

Jerome Fisher

MT-32 emulator

Benjamin Haisch

Heavily improved de-/encoder for DXA videos

Jochen Hoenicke

Speaker & PCjr sound support, AdLib work (retired)

Daniël ter Laan

Restoring original Drascula tracks, and writing convert_dxa.bat

Chris Page

Return to launcher, savestate improvements, leak fixes, … (GSoC 2008 task) (retired)

Coen Rampen

Sound improvements

Robin Watts

ARM assembly routines for nice speedups on several ports; improvements to the sound mixer

Trembyle

Archivist

Lothar Serra Mari

Tackling Tremendously Tedious Tasks(tm); ScummVM’s Seal of Approval (Awp?!)

Website (code)

Fredrik Wendel

(retired)

Website (maintenance)

James Brown

IRC Logs maintainer

Thierry Crozat

Wiki maintainer

Andre Heider

Buildbot maintainer

Joost Peters

Doxygen Project Documentation maintainer

Jordi Vilalta Prat

Wiki maintainer

Eugene Sandulenko

Forum, IRC channel, Screen Shots and Mailing list maintainer

John Willis

Website (content)

All active team members

Documentation

Thierry Crozat

Numerous contributions to documentation

Joachim Eberhard

Numerous contributions to documentation (retired)

Matthew Hoops

Numerous contributions to documentation (retired)

Cadi Howley

User documentation (GSOD 2020)

Retired Team Members

Chris Apers

Former PalmOS porter

Ralph Brorsen

Help with GUI implementation

Jamieson Christian

iMUSE, MIDI, all things musical

Felix Jakschitsch

Zak256 reverse engineering

Mutwin Kraus

Original MacOS porter

Peter Moraliyski

Port: GP32

Jeremy Newman

Former webmaster

Lionel Ulmer

Port: X11

Won Star

Former GP32 porter

Matan Bareket

Website, Infrastructure, UI/UX

Other contributions

Packages

AmigaOS 4

Hans-Jörg Frieden

(retired)

Hubert Maier

Juha Niemimäki

(retired)

Atari/FreeMiNT

Keith Scroggins

BeOS

Stefan Parviainen

(retired)

Luc Schrijvers

Debian GNU/Linux

Tore Anderson

(retired)

David Weinehall

Fedora / RedHat

Willem Jan Palenstijn

Haiku

Luc Schrijvers

macOS

Max Horn

(retired)

Oystein Eftevaag

Thierry Crozat

Mandriva

Dominik Scherer

(retired)

MorphOS

BeWorld

Fabien Coeurjoly

Rüdiger Hanke

(retired)

OS/2

Paul Smedley

RISC OS

Cameron Cawley

SlackWare

Robert Kelsen

Solaris x86

Laurent Blume

Solaris SPARC

Markus Strangl

Win32

Travis Howell

Lothar Serra Mari

Win64

Chris Gray

(retired)

Johannes Schickel

(retired)

Lothar Serra Mari

GUI Translations

Thierry Crozat

Translation Lead

Basque

Mikel Iturbe Urretxa

Belarusian

Ivan Lukyanov

Catalan

Jordi Vilalta Prat

Czech

Zbynìk Schwarz

Danish

Steffen Nyeland

scootergrisen

Dutch

Ben Castricum

Finnish

Toni Saarela

Timo Mikkolainen

French

Thierry Crozat

Purple T

Galician

Santiago G. Sanz

German

Simon Sawatzki

Lothar Serra Mari

Greek

Thanasis Antoniou

Filippos Karapetis

Hungarian

Alex Bevilacqua

George Kormendi

Italian

Matteo Angelino

Paolo Bossi

Walter Agazzi

Norwegian (Bokmål)

Einar Johan Sømåen

Norwegian (Nynorsk)

Einar Johan Sømåen

Polish

GrajPoPolsku.pl Team

Brazilian Portuguese

ScummBR Team

Marcel Souza Lemes

Portuguese

Daniel Albano

Russian

Eugene Sandulenko

Spanish

Tomás Maidagan

Jordi Vilalta Prat

IlDucci

Rodrigo Vegas Sánchez-Ferrero

Swedish

Hampus Flink

Adrian Frühwirth

Ukrainian

Lubomyr Lisen

Game Translations

CGE

Dan Serban

Soltys English translation

Víctor González

Soltys Spanish translation

Alejandro Gómez de la Muñoza

Soltys Spanish translation

CGE2

Arnaud Boutonné

Sfinx English translation

Thierry Crozat

Sfinx English translation

Peter Bozsó

Sfinx English translation editor

Ryan Clark

Sfinx English translation editor

Drascula

Thierry Crozat

Improve French translation

Mortevielle

Hugo Labrande

Improve English translation

Thierry Crozat

Improve English translation

Prince

ShinjiGR

English translation

Eugene Sandulenko

English translation

Anna Baldur

English translation

Supernova

Joseph-Eugene Winzer

English translation

Thierry Crozat

English translation

Walter Agazzi

Italian translation

Websites (design)

Dobó Balázs

Website design

William Claydon

Skins for doxygen, buildbot and wiki

Yaroslav Fedevych

HTML/CSS for the website

Jean Marc Gimenez

ScummVM logo

David Jensen

SVG logo conversion

Raina

ScummVM forum buttons

Icons pack

David Calvert

Eugene Sandulenko

J Moretti

Jennifer McMurray

Lothar Serra Mari

Oleg Ermakov

Olly Dean

Stefan Philippsen

Canuma

SupSuper

Thunderforge

neuromancer

nightm4re94

trembyle

Code contributions

Ori Avtalion

Subtitle control options in the GUI; BASS GUI fixes

Stuart Caie

Decoders for Amiga and AtariST data files (AGOS engine)

Paolo Costabel

PSP port contributions

Martin Doucha

CinE engine objectification

Thomas Fach-Pedersen

ProTracker module player, Smacker video decoder

Tobias Gunkel

Sound support for C64 version of MM/Zak, Loom PCE support

Dries Harnie

Android port for ResidualVM

Janne Huttunen

V3 actor mask support, Dig/FT SMUSH audio

Kovács Endre János

Several fixes for Simon1

Jeroen Janssen

Numerous readability and bugfix patches

Keith Kaisershot

Several Pegasus Prime patches and DVD additions

Andreas Karlsson

Initial port for SymbianOS

Stefan Kristiansson

Initial work on SDL2 support

Claudio Matsuoka

Daily Linux builds

Thomas Mayer

PSP port contributions

Sean Murray

ScummVM tools GUI application (GSoC 2007 task)

n0p

Windows CE port aspect ratio correction scaler and right click input method

Mikesch Nepomuk

MI1 VGA floppy patches

Nicolas Noble

Config file and ALSA support

Tim Phillips

Initial MI1 CD music support

Quietust

Sound support for Amiga SCUMM V2/V3 games, MM NES support

Robert Crossfield

Improved support for Apple II/C64 versions of MM

Andreas Röver

Broken Sword I & II MPEG2 cutscene support

Edward Rudd

Fixes for playing MP3 versions of MI1/Loom audio

Daniel Schepler

Final MI1 CD music support, initial Ogg Vorbis support

André Souza

SDL-based OpenGL renderer

Joel Teichroeb

Android port for ResidualVM

Tom Frost

WebOS port contributions

FreeSCI Contributors

Francois-R Boyer

MT-32 information and mapping code

Rainer Canavan

IRIX MIDI driver and bug fixes

Xiaojun Chen

Paul David Doherty

Game version information

Vyacheslav Dikonov

Config script improvements

Ruediger Hanke

Port to the MorphOS platform

Matt Hargett

Clean-ups, bugfixes, Hardcore QA, Win32

Max Horn

SetJump implementation

Ravi I.

SCI0 sound resource specification

Emmanuel Jeandel

Bugfixes and bug reports

Dmitry Jemerov

Port to the Win32 platform, numerous bugfixes

Chris Kehler

Makefile enhancements

Christopher T. Lansdown

Original CVS maintainer, Alpha compatibility fixes

Sergey Lapin

Port of Carl’s type 2 decompression code

Rickard Lind

MT-32->GM MIDI mapping magic, sound research

Hubert Maier

AmigaOS 4 port

Johannes Manhave

Document format translation

Claudio Matsuoka

CVS snapshots, daily builds, BeOS and cygwin ports

Dark Minister

SCI research (bytecode and parser)

Carl Muckenhoupt

Sources to the SCI resource viewer tools that started it all

Anders Baden Nielsen

PPC testing

Walter van Niftrik

Ports to the Dreamcast and GP32 platforms

Rune Orsval

Configuration file editor

Solomon Peachy

SDL ports and much of the sound subsystem

Robey Pointer

Bug tracking system hosting

Magnus Reftel

Heap implementation, Python class viewer, bugfixes

Christoph Reichenbach

UN*X code, VM/Graphics/Sound/other infrastructure

George Reid

FreeBSD package management

Lars Skovlund

Project maintenance, most documentation, bugfixes, SCI1 support

Rink Springer

Port to the DOS platform, several bug fixes

Rainer De Temple

SCI research

Sean Terrell

Hugues Valois

Game selection menu

Jordi Vilalta

Numerous code and website clean-up patches

Petr Vyhnak

The DCL-INFLATE algorithm, many Win32 improvements

Bas Zoetekouw

Man pages, debian package management, CVS maintenance

Special thanks to Prof. Dr. Gary Nutt for allowing the FreeSCI VM extension as a course project in his Advanced OS course.

Special thanks to Bob Heitman and Corey Cole for their support of FreeSCI.

ResidualVM Contributors

Grim

Thomas Allen

Various engine code fixes and improvements

Torbjörn Andersson

Various code fixes

Ori Avtalion

Lipsync, LAF support, various code fixes

Robert Biro

Antialiasing support

Bastien Bouclet

Various fixes to engine

David Cardwell

Few fixes to EMI

Marcus Comstedt

Initial Dreamcast port

Andrea Corna

Patcher module, various engine improvements

Jonathan Gray

Various code fixes

Tobias Gunkel

Initial Android port, few engines fixes

Azamat H. Hackimov

Configure fix

Vincent Hamm

Various engine code fixes and improvements

Sven Hesse

Various compilation fixes

Matthew Hoops

Smush codec48, Grim and EMI engine improvements

Erich Hoover

x86-64 fixes, various code fixes and improvements

Max Horn

Few code fixes

Travis Howell

Various code fixes, Windows port

Joseph Jezak

A lot of engine improvements and fixes

Guillem Jover

Few code improvements

Filippos Karapetis

Compilation fixes

Ingo van Lil

Various fixes and improvements for EMI

Vincent Pelletier

Various engine and TinyGL improvements

Joost Peters

Various code fixes

George Macon

Few fixes

Josh Matthews

Few fixes to engine

Matthieu Milan

Various engine improvements

Gregory Montoir

Few fixes to engine

Stefano Musumeci

TinyGL backend and engine driver improvements

Christian Neumair

Various optimisation patches

Daniel Schepler

Initial grim engine contributor, LUA support

Dmitry Smirnov

Minor spelling corrections

Yaron Tausky

Fixes to subtitles

Julien Templier

create_project tool

Pino Toscano

Debian GNU/Linux package files

Lionel Ulmer

OpenGL optimisations

cmayer0087

Various engine code fixes

JenniBee

Compilation fixes

karjonas

Various engine code fixes

mparnaudeau

Various grim engine code fixes

PoulpiFr

Few fixes to Android port

sietschie

Few fixes to engine

Myst 3

David Fioramonti

Autosave support and few fixes

Matthew Hoops

Various engine improvements and code fixes

Stefano Musumeci

TinyGL engine support

Stark

Bartosz Dudziak

Various engine improvements and code fixes

Matthew Hoops

ADPCM decoder

Paweł Kołodziejski

Various engine code fixes

Awad Mackie

Few fixes to engine

Marius Ioan Orban

Code fix

Vincent Pelletier

Raw sound support

Jordi Vilalta Prat

Initial engine contributor

Scott Thomas

Initial engine author

Will Thomson

Few fixes to engine

Faalagorn

Few code improvements

orangeforest11

Few engine improvements

And to all the contributors, users, and beta testers we’ve missed. Thanks!

Special thanks to

Daniel Balsom

For the original Reinherit (SAGA) code

Sander Buskens

For his work on the initial reversing of Monkey2

Dean Beeler

For the original MT-32 emulator

Kevin Carnes

For Scumm16, the basis of ScummVM’s older gfx codecs

Curt Coder

For the original TrollVM (preAGI) code

Patrick Combet

For the original Gobliiins ADL player

Ivan Dubrov

For contributing the initial version of the Gobliiins engine

Henrik Engqvist

For generously providing hosting for our buildbot, SVN repository, planet and doxygen sites as well as tons of HD space

DOSBox Team

For their awesome OPL2 and OPL3 emulator

Yusuke Kamiyamane

For contributing some GUI icons

Till Kresslein

For design of modern ScummVM GUI

Jezar Wakefield

For his freeverb filter implementation

Jim Leiterman

Various info on his FM-TOWNS/Marty SCUMM ports

Lloyd Rosen

For deep tech details about C64 Zak & MM

Sarien Team

Original AGI engine code

Jimmi Thøgersen

For ScummRev, and much obscure code/documentation

Tristan Matthews

For additional work on the original MT-32 emulator

James Woodcock

Soundtrack enhancements

Anton Yartsev

For the original re-implementation of the Z-Vision engine

Tony Warriner and everyone at Revolution Software Ltd. for sharing with us the source of some of their brilliant games, allowing us to release Beneath a Steel Sky as freeware… and generally being supportive above and beyond the call of duty.

John Passfield and Steve Stamatiadis for sharing the source of their classic title, Flight of the Amazon Queen and also being incredibly supportive.

Joe Pearce from The Wyrmkeep Entertainment Co. for sharing the source of their famous title Inherit the Earth, for sharing the source of The Labyrinth of Time and for always replying promptly to our questions.

Aric Wilmunder, Ron Gilbert, David Fox, Vince Lee, and all those at LucasFilm/LucasArts who made SCUMM the insane mess to reimplement that it is today. Feel free to drop us a line and tell us what you think, guys!

Alan Bridgman, Simon Woodroffe and everyone at Adventure Soft for sharing the source code of some of their games with us.

John Young, Colin Smythe and especially Terry Pratchett himself for sharing the source code of Discworld I & II with us.

Emilio de Paz Aragón from Alcachofa Soft for sharing the source code of Drascula: The Vampire Strikes Back with us and his generosity with freewaring the game.

David P. Gray from Gray Design Associates for sharing the source code of the Hugo trilogy.

The mindFactory team for writing Broken Sword 2.5, a splendid fan-made sequel, and for sharing the source code with us.

Neil Dodwell and David Dew from Creative Reality for providing the source of Dreamweb and for their tremendous support.

Janusz Wiśniewski and Miroslaw Liminowicz from Laboratorium Komputerowe Avalon for providing full source code for Sołtys and Sfinx and letting us redistribute the games.

Jan Nedoma for providing the sources to the Wintermute-engine, and for his support while porting the engine to ScummVM.

Bob Bell, David Black, Michel Kripalani, and Tommy Yune from Presto Studios for providing the source code of The Journeyman Project: Pegasus Prime and The Journeyman Project 2: Buried in Time.

Electronic Arts IP Preservation Team, particularly Stefan Serbicki, and Vasyl Tsvirkunov of Electronic Arts for providing the source code of the two Lost Files of Sherlock Holmes games. James M. Ferguson and Barry Duncan for their tenacious efforts to recover the sources.

John Romero for sharing the source code of Hyperspace Delivery Boy! with us.

Steffen Dingel for sharing the source code of the Mission Supernova game with us.

The LUA developers, for creating a nice compact script interpreter.

Tim Schafer, for obvious reasons, and everybody else who helped make Grim Fandango a brilliant game; and the EMI team for giving it their best try.

Bret Mogilefsky, for managing to create a SPUTM-style 3D LUA engine, and avoiding the horrible hack it could have been.

Benjamin Haisch, for emimeshviewer, which our EMI code borrows heavily from.

Fabrizio Lagorio from Trecision S.p.A., for finding and providing the source code of many of their games.

Release notes

For a more comprehensive changelog of the latest experimental code, see:

https://github.com/scummvm/scummvm/commits/

2.7.1 (2023-07-31)

General:

  • Fixed playback speed for Theora videos.

  • Added scummvm.log file viewer.

  • Exposed ScummVM debug level in the GUI (Misc tab).

  • Fixed shader scaler loading failing in certain conditions.

  • Fixed some screen shaking effects (as in DOTT) causing a crash on SDL1 ports.

AGI:

  • Restored possibility to pick arbitrary render mode in Game Options.

AGS:

  • Multiple additions to game detection tables.

  • Fixed crashes in various games (commercial and freeware).

  • Fixed graphical priority errors when using computers in Resonance, Kathy Rain and Blackwell Convergence.

  • Fix for some sounds not playing in “The Cat Lady” and other games.

  • Reintroduced thumbnail creation for all savegames.

  • Fixed regression for translation setting not being saved.

  • Fixed translation bug in Zniw Adventure (linux version).

  • Fixed wrong walkspeed in old games (e.g. Apprentice).

  • Added small workaround for purple texts appearing transparent.

  • Minor changes to debug/error messages and code style.

  • Improved display of text.

CRYOMNI3D:

  • Fixed files access preventing to finish Versailles.

FREESCAPE:

  • Added OpenGL shaders renderer.

  • Games are loading original images from the data files.

  • Refactored and expanded detection tables for Driller and other unsupported games.

  • Reimplemented object/player collisions to be more robust.

HDB:

  • Fixed bug with inability to pick up red envelope with keyboard.

HYPNO:

  • Support rendering Korean font for Wetlands.

Private:

  • Dropped 16bit engine requirement.

SAGA:

  • Fixed loading resources from the Amiga release of ITE.

  • Fixed crash or misbehaviors when handling certain actor actions.

SAGA2:

  • Fixed crash when hovering over certain spells.

SCUMM:

  • Fixed music volume regression in Loom.

  • Fixed a crash in Full Throttle when pressing ‘A’ in debug mode.

  • Silence the warning for missing music files in Monkey Island 1 Ultimate Talkie.

  • Fixed glitched or invisible cursor in Sam & Max when saving and reloading from the classic menu.

  • Fixed several savegame loading issues and crashes for early FM-Towns games.

  • Fixed original GUI banners not disappearing properly in some edge cases.

Sword1:

  • Added detection for Czech and Polish versions with DXA cutscenes.

  • Added detection for alternative French and Italian versions.

  • Added detection for Brazilian version published by TecToy.

Sword2:

  • Added support for GOG.com version.

  • Added detection for alternate Polish version.

Tinsel:

  • Fixed reading older Discworld II savegames.

  • Fixed unaligned accesses.

Tony:

  • Fixed unaligned accesses.

Touche:

  • Added support for Russian translation by old-games.ru.

iOS port:

  • Fix default theme selection on modern devices.

  • Better support for autostart configurations.

macOS port:

  • Better support for autostart configurations.

RISC OS port:

  • Fixed crash on RISC OS 5 with games that require lots of RAM.

2.7.0 “The Real Slim Shader” (2023-02-26)

New games:

  • Added support for Soldier Boyz.

  • Added support for C64 and ZX Spectrum versions of GLK Scott Adams Interactive Fiction games.

  • Added support for GLK Scott Adams adventures 1-12 in the TI99/4A format.

  • Added support for Obsidian.

  • Added support for Pink Panther: Passport to Peril.

  • Added support for Pink Panther: Hokus Pokus Pink.

  • Added support for Adibou 2 “Environment”, “Read/Count 4 & 5” and “Read/Count 6 & 7”.

  • Added support for Driller/Space Station Oblivion (DOS/EGA/CGA, Amiga, AtariST, ZX Spectrum and Amstrad CPC versions).

  • Added support for Halls of the Dead: Faery Tale Adventure II.

  • Added support for Chop Suey, Eastern Mind, and 16 other Director 3 and Director 4 titles.

New platforms:

  • Added support for the RetroMini RS90 under OpenDingux beta.

  • Added support for the 1st generation Miyoo (New BittBoy, Pocket Go and PowKiddy Q90-V90-Q20) under TriForceX MiyooCFW.

  • Added support for the Miyoo Mini.

  • Added support for KolibriOS.

General:

  • Reduced amount of false positives in Mass Add.

  • Updated the Roland MT-32 emulation code to Munt mt32emu 2.7.0.

  • Added support for shader-based scalers.

  • Added option for mono sound output (via –output-channels=CHANNELS command line option).

  • Improved cursor scaling in OpenGL mode.

  • Fix crash when browsing folders containing files with 1 in the names.

  • Added possibility to specify RNG seed via GUI or command line option.

  • Added possibility to run ScummVM in autodetection mode by renaming the executable starting with ‘scummvm-auto’ or by providing an empty file named ‘scummvm-autorun’ next to the ScummVM executable.

  • Added possibility to supply command line parameters which will be picked up automatically. Put them one per line in a file named ‘scummvm-autorun’.

  • Added possibility to customize the default settings by specifying an initial configuration file to load if no configuration file exists in the usual location (via –initial-cfg=FILE or -i command line option).

  • Added support for loading game resources which are bigger than 2GB on more platforms.

AGI:

  • Improved support for French translations.

AGOS:

  • Added option to disable the fade-out effects on room transition for Simon1 and 2.

AGS:

  • Added support for the original installer files for Maniac Mansion Deluxe and The New Adventures of Zak McKracken.

Director:

  • Support for Pippin version of L-Zone.

  • Fix a bug caused by use of slash in filename.

Dreamweb:

  • Support playing from the original installer floppies.

Hadesch:

  • Added support for a 1997 release.

Kyra:

  • Added support for the Korean version of Legend of Kyrandia 1.

  • Support multi-floppy mac kyra1 both as installer floppies and as installed directory.

  • Added support for the Hebrew version of Legend of Kyrandia 3.

MADS:

  • Added support for original floppy installer file layout for Rex Nebular.

Neverhood:

  • Added support for Japanese version of Neverhood.

  • Support localizations by -=CHE@TER=- & Rigel.

Plumbers:

  • Fixed crash with windows version.

Private:

  • Allow playing mac version directly from installer CD.

  • Added support for Japanese/Mac version

Queen:

  • Added option for using a better font in Hebrew version.

SAGA:

  • Added support for Chinese Inherit the Earth.

  • Added support for Chinese I Have no Mouth and I Must Scream.

  • Added support for Korean I Have no Mouth and I Must Scream.

  • Added support for playing directly from floppy installer for ITE.

  • Support for Amiga (AGA/ECS, Retail/Demo, English/German) Inherit the Earth.

SCI:

  • Improved text rendering for Macintosh titles.

  • Added support for Casio MT-540, CT-460 and CSM-1 MIDI devices for the SCI0 games that originally supported it.

SCUMM:

  • Added support for CGA, CGA Composite, CGA black & white and Hercules modes for SCUMM 1 versions of Zak McKracken and Maniac Mansion.

  • Improved accuracy of CGA and Hercules modes for SCUMM 2 (enhanced) versions of Zak McKracken and Maniac Mansion.

  • Improved accuracy of CGA and Hercules modes for Monkey Island 1 (EGA version only - the VGA version does not have CGA and Hercules modes).

  • Fixed some minor glitches for the CGA mode of Loom.

  • Added EGA dithering mode for VGA versions of Loom, Monkey Island 1 and 2 and Indiana Jones 4.

  • Fixed a possible dead-end in the Ultimate Talkie Edition of Monkey Island 2, if one doesn’t pick up a required item before Captain Dread brings Guybrush back to Scabb Island, at the end of Part II.

  • Fixed various original game bugs, oversights and continuity errors (only when using the “Enable game-specific enhancements” setting).

  • Improved the decoding of some Western European game strings when they’re displayed through ScummVM’s interface, such as when pausing a game.

  • Fixed the navigator head not pointing to some directions in Monkey Island 1, in the original releases without the enhanced verb interface.

  • Fixed slightly inaccurate text position in v4 games and in Loom v3.

  • For Sam & Max, it is now possible to shoot down the text lines of the final credits with the crosshair mouse cursor, just like in the original.

  • Fixed lipsync issues in the final scene of Freddi Fish 4.

  • Fixed The Dig and COMI loading cursors not being shown when they should.

  • Improved the accuracy of some audio drivers, which was notably impacting the pitch bending effect in the DOTT intro music.

  • In COMI, only let Guybrush read the clock of Puerto Pollo in the English, Italian and (fan-made) Russian versions of the game, matching the behavior of the original interpreters (probably because of the poor results in the other languages).

  • Improved support for Hebrew HE game localizations.

  • Fixed Roland MT-32 support in Sam & Max.

  • Implemented original GUI and save menus for LucasArts games (DOS, Windows, Amiga, Macintosh, FM-Towns, SegaCD, Atari ST, NES and Commodore 64 versions). Also activate the general “Ask for confirmation on exit” option for a more authentic ’90s experience!

  • Fixed minor timing issues for the SMUSH video engine, mostly affecting Full Throttle.

  • Added a low latency audio mode to Full Throttle, The Dig and The Curse of Monkey Island; this can improve audio performance expecially in non-desktop devices, but it is also a little less accurate than the original.

  • Implemented reloading CD audio for Monkey Island 1 and Loom (CD versions), when reloading a save state.

Sherlock:

  • Added support for Chinese Rose Tattoo.

Sky:

  • Added support for Chinese Beneath a Steel Sky.

Sword1:

  • Support Novy Disk Russian translation.

  • Fixed launching various demos.

  • Switched detection to md5-based. Submit your unrecognized versions!

Sword2:

  • Switched detection to md5-based. Submit your unrecognized versions!

Tinsel:

  • Fixed Discworld II subtitle colors on big-endian ports.

Toon:

  • Made game menus behave like in the original.

TwinE:

  • Fixed rendering issue with doors.

  • Fixed invalid music pause in behaviour and inventory menu.

  • Fixed giving kashes instead of hearts as fallback.

  • Fixed item flashing when they drop.

  • Fixed meca penguin angle at spawn.

  • Fixed background redraw when watching cutscenes at the television.

  • Fixed recenter the screen on activating an inventory item.

  • Fixed pressing W to talk to people also makes you jump.

Ultima8:

  • Added support for saving and resizing of minimap.

  • Adjust cursor to behave closer to the original.

  • Adjust item quantity slider to behave closer to the original.

Xeen:

  • Several crash fixes for Clouds of Xeen.

  • Wait until farewell finishes before leaving shops.

  • Don’t reload map after leaving character creation.

  • Implement correct clouds falling logic for Swords of Xeen.

  • Fix GateMaster monster in Underworld map.

3DS port:

  • Update relocation parser to support PREL31 that are emitted by new compiler.

  • Do more autoconfiguration in ./configure.

Android port:

  • Added Storage Access Framework support.

  • Improved support for game controllers.

iOS port:

  • Added pointer device support.

  • Improved support for touchpad mode.

  • Added support for games that use 32 bit pixel formats.

Nintendo DS port:

  • Added a splash screen to the top screen when the launcher is active.

OpenDingux port:

  • Added support for dynamic plugins.

PS Vita port:

  • Added support for dynamic plugins.

PSP port:

  • Improved support for games that use 32 bit pixel formats.

RISC OS port:

  • Added support for 26-bit versions of RISC OS.

2.6.1 “Incremental Escapism” (2022-10-31)

General:

  • Various improvements to the icon-based grid view in the ScummVM launcher.

  • Fixed possible graphics corruptions when using the OpenGL renderer.

AGS:

  • Fixed a crash in AGDI’s KQ1 remake (and some other games), on big-endian systems.

AGOS:

  • Fixed various bugs that lead to crashes in the demo versions of The Feeble Files and Personal Nightmare and in the full version of Waxworks.

  • Fixed pirate dialogue freeze in Simon the Sorcerer 2.

Asylum:

  • Fixed the Keyboard Config screen.

  • Added support for the keymapper feature to the dialog screen.

  • The in-game menu is now accessible via a keyboard shortcut.

  • Fixed a bug that caused the controls to be reset when leaving the Hive puzzle.

  • Fixed animation of floating bodies in Chapter 4.

Ultima:

  • Fixed rendering issue when moving the minimap off the screen.

  • Fixed possible crash when using the autosave function.

SCI:

  • Fixed various bugs and script issues in KQ4, KQ5, LB2, LONGBOW, PQ1, PQ3, QFG2, QFG3, QFG4 and SQ5.

  • Numerous improvements to various parts of the engine code.

SCUMM:

  • Fixed potential lockups in games using iMuse.

  • Prevented crashes caused by missing .SOU/.BUN files.

  • Fixed crashes in v7-v8 games on strict-alignment platforms.

  • Fixed speech lipsync for COMI on big-endian ports (such as PS3 or Wii).

Tinsel:

  • Fixed an issue in Discworld that prevented some items from being placed in the inventory.

Toltecs:

  • Fixed crashes on some strict-alignment platforms.

Toon:

  • Fixed music and SFX being muted by default when adding the Toonstruck game.

Android port:

  • Properly convert mouse coordinates between screen coordinates and virtual ones.

Windows port:

  • Clearing the icons cache created a duplicate ScummVM folder in the APPDATA directory. Fixed.

2.6.0 “Insane Escapism” (2022-08-01)

New games:

  • Added support for Sanitarium.

  • Added support for Hades Challenge.

  • Added support for Marvel Comics Spider-Man: The Sinister Six.

  • Added support for The 11th Hour.

  • Added support for Clandestiny.

  • Added support for Tender Loving Care (CD-ROM Editions).

  • Added support for Uncle Henry’s Playhouse.

  • Added support for Wetlands.

  • Added support for Chewy: Esc from F5.

General:

  • The project license has been upgraded to GPLv3+.

  • Now ScummVM requires C++11 for building.

  • Removed support for VS2008, as it doesn’t support C++11.

  • Implemented enhanced filtering in the Search box. See “Understanding the search box” in the documentation for details.

  • Implemented Icon view in GUI (GSoC task).

  • Added support for the RetroWave OPL3 sound card.

  • Added OpenDingux beta port.

  • Removed Symbian port.

  • Added the create_engine tool to aid when creating new engines.

  • Fixed mouse capture in HiDPI mode.

  • The GUI Options dialog now marks settings overridden via command lines in red.

  • In GUI launcher it is now possible to group games by different categories.

  • GUI launcher has new game icons grid look.

AGI:

  • Added support for Macintosh versions of Manhunter 1-2.

AGS:

  • Synced changes from upstream AGS.

AGOS:

  • Elvira 1: Added support for Casio MT-540/CT-460/CSM-1 and CMS/GameBlaster.

  • Elvira 1 & 2, Waxworks, Simon the Sorcerer: Added AdLib OPL3 mode. Depending on the game, this will prevent cut-off notes, add extra notes or instruments and/or add stereo.

  • Elvira 2, Waxworks: Added support for AdLib and MT-32 sound effects.

  • Elvira 2, Waxworks, Simon the Sorcerer floppy: Added Mixed MIDI support (MT-32 music with AdLib sound effects).

  • Simon the Sorcerer floppy: Improved AdLib sound effects accuracy.

  • Simon the Sorcerer: DOS version music tempos are now accurate. Both DOS and Windows versions now offer the choice of the DOS music tempos or the faster Windows tempos.

  • Simon the Sorcerer 2: Improved AdLib and GM support.

  • Simon the Sorcerer 2: Added workaround for the missing MT-32 tracks in the intro.

BBVS:

  • Fixed the size of the main menu buttons being incorrect in some cases.

  • Fixed crash at the end of the Hock-A-Loogie mini game.

Buried:

  • Added support for skipping synchronous audio and video.

  • The mouse pointer is now hidden during cutscenes.

  • Implemented game pausing via Control-P.

  • After saving, the player returns back to the game instead of the Biochip menu.

  • The game is now always paused when the Biochip menu or the save/restore dialogs are open.

  • Added metadata to saved games, including thumbnails, creation date and play time.

  • Saved games are now sorted by slot, like in other engines, instead of being sorted alphabetically.

  • The currently selected item is now stored in saved games.

  • Comments from Arthur that play in the background can now be stopped with the space key (the same key that replays Arthur’s last comment).

  • The agent evaluation (current points) can now be shown with Control-D.

  • Fixed global flag corruption in death screens.

Dreamweb:

  • Added text to speech for dialogs and object descriptions.

Glk:

  • Added support for ZX Spectrum games with graphics in the Scott sub-engine.

Kyra:

  • Added support for the Traditional Chinese versions of Legend of Kyrandia 1 - 3.

  • Added sound support for the Macintosh version of Legend of Kyrandia.

  • Added support for playing the Macintosh non-talkie version of Legend of Kyrandia 1 directly from the files on the CD. This means you no longer have to run the installer to extract the data files.

NGI:

  • Fixed the rolling bridge state in scene 13.

  • Fixed getting stuck when teleporting to the foot in scene 30.

  • Fixed inconsistent cactus state.

Private:

  • Refactored code to allow rendering using the original 256 color palette.

  • Fixed endianness issues.

  • Added support for the Korean release.

Supernova:

  • Added text to speech for dialogs and object descriptions.

SCI:

  • Added support for Text To Speech in SCI floppy games.

  • Allow saving from the ScummVM Global Game Menu in the following games: BRAIN1, BRAIN2, ECOQUEST1, ECOQUEST2, FAIRYTALES, PHARKAS, GK1, GK2, ICEMAN, KQ1, KQ4, KQ5, KQ6, KQ7, LB1, LB2, LIGHTHOUSE, LONGBOW, LSL1, LSL2, LSL3, LSL5, LSL6, LSL6HIRES, LSL7, PEPPER, PHANT2, PQ1, PQ2, PQ3, PQ4, PQSWAT, QFG1, QFG1VGA, QFG2, QFG3, QFG4, SHIVERS, SQ1, SQ3, SQ4, SQ5, SQ6, TORIN.

  • Fixed many script bugs in KQ6, KQ7, GK2, QFG3, QFG4, Hoyle4.

  • Fixed loading autosaves in Shivers and Phantasmagoria 2.

  • Added support for Korean fan translations from the scummkor project: EcoQuest 2 and Gabriel Knight 2.

SCUMM:

  • New Digital iMUSE engine. Support for re-compressed audio files dropped in Full Throttle, The Dig and The Curse of Monkey Island.

  • Rewrote music player for Amiga versions of Indy3 and Loom in accordance to the original code.

  • Fix missing cursor in the 16-color Macintosh versions of Loom and Indiana Jones and the Last Crusade after loading a savegame.

  • It is now possible to replace the music in the floppy versions of Loom with audio tracks. The ScummVM Wiki has a list of which parts of the Swan Lake ballet the game uses: https://wiki.scummvm.org/index.php/Loom.

  • Fixed some MIDI music looping when it shouldn’t in EGA/VGA floppy versions of The Secret of Monkey Island.

  • Fixed the lava flowing in the wrong direction in the VGA floppy version of The Secret of Monkey Island.

  • Fixed Full Throttle distorted graphics when Ben runs past the Corley Motors entrance.

  • Fixed the dissolve effect, and Bobbin’s palette when leaving the darkened tent in the TurboGrafx-16 version of Loom, to match the original behavior.

  • Fixed incorrect dark rooms colors in MM NES on strict-alignment ports such as Dreamcast, Apple silicon and various handheld devices.

  • Rewrote text rendering routines for Full Throttle, The Dig and The Curse of Monkey Island in accordance to the original interpreters.

  • Rewrote timer handling routines to better approximate both the original hardware behavior and the intepreters’ quirks.

  • Fix lip syncing in Backyard Baseball 2003.

  • Fixed various original game bugs and oversights in most of the LucasArts titles: https://wiki.scummvm.org/index.php?title=SCUMM/Game_Enhancements. Most of these enhancements can now be disabled in the game’s settings if one prefers playing with the original behavior.

  • Added sliders for tweaking the CD audio playback in the MI1 CD intro, as well as VGA CD Loom in general. Loom is particularly sensitive to the amount of silence at the start of the track, and the CD version of MI1 never synced the music as well to the intro as previous versions. See the Wiki for more details.

  • Detect and reject the EGA floppy version of Monkey Island 1 that Limited Run Games sold in their Monkey Island 30th Anniversary Anthology, if using the default DISK4 image, which is corrupted. It’s possible to recover a working image from the KryoFlux dumps they also provided.

  • Fixed random number generation which fixes throwing in Backyard Baseball.

  • Marked a workaround in Monkey Island 2 (FM-Towns version) as an enhancement; this workaround originally restored a portion of the map chasing puzzle in Booty Island which had been cut in the FM-Towns version of the game.

  • Made the sentence line in Maniac Mansion work like the manual says, i.e. you can click on it to execute the command.

Sherlock:

  • Fixed slowdown in Serrated Scalpel intro when playing the game from a small installation.

  • Fixed UI glitches in Serrated Scalpel.

Titanic:

  • Fixed not being able to see House in Starfield puzzle.

TwinE:

  • Fixed a bug in the collision code that made the game unfinishable due to the tank not moving any further in scene 63.

  • Fixed light angle calculation which produced rendering artifacts in a few scenes.

  • Fixed polygon rendering method for the boat windows.

  • Fixed wrong shooting direction for some actors.

  • Fixed door movement in some situations.

Android port:

  • Added hardware acceleration for 3D graphics.

  • Improved touch controls.

macOS port:

  • Added support for displaying OSD messages on the Touch Bar.

Windows port:

  • Added “Portable Mode” in which the executable’s directory is used to store application files if a scummvm.ini file is present, instead of the user’s profile directory.

  • Fixed detection of the Application Data path on Windows 95/98/ME.

RISC OS port:

  • Added support for dynamic plugins.

  • Added a native MIDI driver.

Nintendo DS port:

  • Fixed screen scrolling when using the Load and Save dialogs.

2.5.1 (2022-01-02)

General:

  • Ported ResidualVM GUI theme to remastered version.

  • Fixed edge case for Punycode.

  • Fixed checking for savegame overwrite in autosave slot.

  • Fixed moving savegame to new slot for most engines.

  • Scalers are now supported with the OpenGL graphics mode.

AGOS:

  • Fixed old Waxworks AdLib music regression.

AGS:

  • Detection list updates.

Grim:

  • Fixed default “Talk Speed” option value.

  • Fixed black screen while entering save game name.

  • OpenGL without shaders is preferred as default for Grim Fandango.

Kyra:

  • Fixed graphical glitch in Legend of Kyrandia 3.

SAGA:

  • Fixed digitized music not looping in Inherit the Earth.

SCUMM:

  • Improved support for the high-resolution text in the 16-color Macintosh versions of Loom and Indiana Jones and the Last Crusade.

  • Improved OPL3 sound emulation for Sam&Max.

  • Fixed music not looping in The Dig.

  • Fixed crash when loading savegames from Humongous Entertainment games.

Sherlock:

  • Fixed crash using matches on lab table.

  • Fixed character animation in Rose Tattoo.

  • Fixed glitch opening map in Rose Tattoo.

  • Fixed bell pull and fog horn sounds in Serrated Scalpel.

  • Fixed inventory not updating in Serrated Scalpel after examining watch.

  • Fixed fog overlay at Cleopatra’s Needle in Rose Tattoo.

  • Fixed graphic issues in Serrated Scalpel looking at items whilst inventory is open.

  • Made Serrated Scalpel darts closer in speed to the original.

  • Fixed crash when moving cursor past end of string in Rose Tattoo save dialog.

  • Process pending key presses in the order they were made, not the most recent first.

  • Fixed crash when using Delete key in Rose Tattoo save dialog.

  • Fixed rare conversation bug in Serrated Scalpel that would happen when Lord Brumwell started talking to you while the inventory window was open.

  • Resume animations in Serrated Scalpel after conversations. This fixes the bug where Jock Mahoney or Nobby Charleton would get stuck indefinitely, refusing to talk to you.

  • Fixed various user interface glitches in both games.

Stark:

  • Added OpenGL renderer (without shaders).

  • Added TinyGL renderer.

  • Fixed autosave handling.

TwinE:

  • Numerous bugfixes and stability improvements.

Xeen:

  • Fixed crash on startup loading constants from xeen.ccs.

  • Fixed spell selection aborting when characters were switched.

  • Fixed some bad memory accesses.

  • Various sound fixes.

  • Fixed the monster item drop probabilities.

2.5.0 “Twenty years ago today…” (2021-10-09)

New games:

  • Added support for Grim Fandango.

  • Added support for The Longest Journey.

  • Added support for Myst 3: Exile.

  • Added support for Little Big Adventure.

  • Added support for Red Comrades 1: Save the Galaxy.

  • Added support for Red Comrades 2: For the Great Justice.

  • Added support for Transylvania.

  • Added support for Crimson Crown.

  • Added support for OO-Topos.

  • Added support for Glulx interactive fiction games.

  • Added support for Lure of the Temptress Konami release.

  • Added support for Private Eye.

  • Added support for Spanish Blue Force.

  • Added support for Spanish Ringworld.

  • Added support for Spanish Amazon: Guardians of Eden.

  • Added support for AGS Games versions 2.5+.

  • Added support for Nightlong: Union City Conspiracy.

  • Added support for The Journeyman Project 2: Buried in Time.

  • Added support for Crusader: No Remorse.

  • Added support for L-ZONE.

  • Added support for Spaceship Warlock.

New ports:

  • The Nintendo DS port got a major rewrite.

General:

  • Switched ScummVM GUI output to UTF-32.

  • Updated the Roland MT-32 emulation code to the Munt project’s mt32emu 2.5.1.

  • Updated Dropbox Cloud Storage to use the new Dropbox OAuth workflow.

  • Major extension to the number of supported graphics scalers.

  • Display path to scummvm configuration file in GUI -> Options -> Paths.

  • Added new optional dependency, giflib >= 5.0.0. Used by some version of LBA.

  • Added HiDPI support to the ScummVM GUI.

  • Added command line option –window-size for specifying ScummVM window size, applicable only to the OpenGL renderer.

  • Fixed switching to the default graphics mode. This was sometimes not applied until restarting ScummVM or starting a game.

  • ScummVM GUI has been fully translated into Korean and Japanese.

  • Added GUI option for enabling and disabling the Discord RPC integration.

ADL:

  • Added support for Mystery House French translation.

  • Added support for several game variants.

AGI:

  • Added support for Russian versions. Input now works.

AGOS:

  • Added support for the Japanese PC-98 version of Elvira 1.

CGE:

  • Added option to use Text To Speech for Soltys.

CGE2:

  • Added option to use Text To Speech for Sfinx.

Cine:

  • Added detection for Future Wars CD version with French translation patch.

  • Added detection for Italian Amiga Operation Stealth.

  • Fixed crash before entering secret base.

  • Fixed space missing in verb line.

  • Fixed vertically overflowing message boxes.

Dreamweb:

  • Rendering fixes for Russian fan translation.

Glk:

  • Fixed savegame issues with several subengines.

  • Fixed memory overrun in Level9 game detector.

  • Added detections for 2020 IF Comp games.

  • Enabled Glulx sub-engine.

Gob:

  • Added support for Bargon Attack Russian translation.

  • Added support for Woodruff Russian translation.

Griffon:

  • Fixed Return to Launcher from The Griffon Legend.

  • Added option to use Text To Speech in The Griffon Legend

Grim:

  • Added support for Brazillian Portuguese Grim Fandango.

Kyra:

  • Added support for the Japanese Sega-CD version of Eye of the Beholder.

  • Added support for the Hebrew fan translation of Legend of Kyrandia.

  • Added support for the Hebrew fan translation of Legend of Kyrandia 2.

  • Added support for the Simplified Chinese version of Legend of Kyrandia 3.

  • Added support for the playable demo of Lands of Lore.

Lure:

  • Fixed fire animation in first room when loading saves.

  • Fixed AdLib support.

  • Fixed MT-32 support.

Pegasus:

  • Added support for DVD/GOG.com release.

Queen:

  • Added support for German Amiga floppy release.

SAGA:

  • Added support for ITE GOG Mac CD v1.1.

  • Added support for ITE PC-98 Japanese.

  • Fixed digitized music not looping in Inherit the Earth.

SCI:

  • Added RGB rendering mode (16/32bpp) for SCI0 - SCI1.1 games, which addresses palette issues in screen transitions and avoids mode changes when playing Mac QuickTime videos.

  • Added custom palette mods for SQ3 and LSL2 from the FreeSCI project. When enabled, the mods improve the visuals in these two games.

  • Added support for Macintosh version of Gabriel Knight 1.

  • Added support for CD-Audio version of Mixed-Up Mother Goose.

  • Added support for Korean fan translations from the scummkor project: Castle of Dr. Brain, EcoQuest 1, Gabriel Knight 1, King’s Quest 1, 5, and 6, Laura Bow 2, and Space Quest 4.

  • Added support for Space Quest 4 Update 1.3 by New Rising Sun.

  • Added support for French LSL1VGA.

  • Added support for Hebrew QFG1VGA.

  • Added support for Hebrew GK1.

  • Added support for Russian Longbow.

  • Added support for Russian LSL6.

  • Added support for alternate Russian LSL7.

  • Added support for alternate Polish LSL7 including files packaged with InstallShield.

  • Added support for alternate Russian SQ5.

  • Added support for alternate Russian Torin’s Passage.

  • Added support for fan game Soulshade Asylum.

  • SCI1.1 views are now scaled accurately.

  • Fixed sounds not stopping or restarting correctly.

  • Fixed sound issues when restoring SCI0 games.

  • Fixed corruption when “Prefer digital sound effects” was disabled in SCI1 games.

  • Space Quest 4 CD sound effects now match the selected platform.

  • Added option to enable Windows cursors in CD versions of King’s Quest 5 and Space Quest 4.

  • Fixed “Girl In The Tower” song not playing at the end of King’s Quest 6 CD.

  • Fixed King’s Quest 5 Amiga beach error that prevented completing the game.

  • Fixed over 30 script bugs in GK1, HOYLE4, KQ1DEMO, KQ5, KQ6, KQ7, LB1, LSL3, PEPPER, PQ3, QFG3, SQ1, SQ4, and SQ6.

  • Unlocked JANE easter egg in Gabriel Knight 1.

SCUMM:

  • Fixed Chinese, Japanese and Korean text display for The Dig and for The Curse of Monkey Island. These fixes also include some improvements to the common text display (mainly the formatting of wrapped texts).

  • Fixed display of Chinese, Japanese and Korean pause and restart dialogs.

  • Added support for numerous Korean translations from scummkor project.

  • Added support for Russobit-M versions of Pajama2 and SpyOzone.

  • Fixed speech playback in Akella version of COMI.

  • Added support for Discord and Humble Bundle versions of Indiana Jones and the Fate of Atlantis.

  • Added smooth scrolling for FM-TOWNS versions of games.

  • Added optional trimming to 200 pixels for some FM-TOWNS games, so aspect-ratio correction is possible.

  • Fixed audio distortion in Loom for PC-Engine.

  • Added support for the high resolution font and cursor in the 16-color Macintosh version of Loom.

  • Added support for Japanese Mac version of The Dig.

  • Added partial support for the high resolution fonts and cursor in the 16-color Macintosh version of Indiana Jones and the Last Crusade.

  • Fixed missing instruments in the m68k Mac versions of Monkey Island 2 and Indiana Jones and the Fate of Atlantis.

  • Added “Macintosh b/w” render mode for the 16-color Macintosh versions of Loom and Indiana Jones and the Last Crusade.

  • Enabled difficulty selection in the version of Monkey Island 2 that was included on the LucasArts Mac CD Game Pack II compilation. (It had been disabled along with the copy protection.)

  • Repaired clumsy crack in Maniac Mansion (enhanced)’s keypad script. This means that the GOG and Steam versions will no longer accept incorrect numbers, e.g. for Edna’s phone number. (Why are they selling a cracked version anyway?!)

  • Added support for Low quality music in Macintosh version of Loom.

  • Improved Digital iMUSE accuracy for Full Throttle and The Curse of Monkey Island. These improvements also fix several audio related bugs for both games.

  • Fixed a very old regression in the walk code for Full Throttle which softlocked the game.

  • Improved the accuracy of the walk code for The Dig and The Curse of Monkey Island.

  • Fixed a bug in The Curse of Monkey Island which prevented, during the cannon minigame in Part 1, the destruction of one of the three destroyable turrets in the fort.

  • Added animated cigar smoke to the close-up of captain Smirk in the CD version of Monkey Island 1. It was present in earlier versions.

  • Restored some missing Lemonhead lines in the English, Italian, German and Spanish CD versions as well as the English Macintosh, FM-Towns and Sega CD versions of Monkey Island 1.

  • Made the clock tower in Monkey Island 1 behave the same in the CD version as in earlier versions, i.e. after examining it you have to leave the room and come back again for its description to change.

Tinsel:

  • Enabled the Return to Launcher feature.

Titanic:

  • Fixed crashes when asking bots what I should do.

TsAGE:

  • Added support for uninstalled floppy version.

Stark:

  • Added support for Hungarian translation.

Supernova:

  • Added Italian translation for part 1.

Sword25:

  • Made the extracted version working.

  • Fixed crash when selecting Croatian language.

Ultima:

  • Ultima 4: Added several debugger commands.

  • Ultima 4: Allow Enter key to exit ZStats display.

  • Ultima 8: Fixed several animation bugs for events and objects.

  • Ultima 8: Restored original text for the Spell of Resurrection book.

Xeen:

  • Fixed occasional border corruption during fights.

  • Improvements to cutscenes to better match the original games.

  • Fixes for character selection, deselection, and dismissing to better match original.

  • Added support for Russian version.

AmigaOS port:

  • Added native system file browser feature.

  • Re-activated nuked OPL Adlib driver.

Big-endian ports:

  • Fixed crashes or rendering issues with the Blazing Dragons, Duckman and Full Pipe games.

iOS port:

  • Fixed using arrow keys on physical keyboard in iOS 15.

  • Fixed rotating the device while ScummVM is inactive.

  • Added support for upside down portrait orientation.

macOS port:

  • Added support for Dark Mode.

  • Use OpenGL renderer by default, providing better support for HiDPI displays.

MorphOS port:

  • Added native system file browser feature.

  • Added Cloud feature.

  • Re-activate nuked OPL Adlib driver.

  • Added CAMD MIDI driver support.

Windows port:

  • Use OpenGL renderer by default, providing better support for HiDPI displays.

2.2.0 “Interactive Fantasy” (2020-09-27)

New games:

  • 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). Currently, more than 1600 games are detected and supported.

  • 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.

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.

  • Games are now recognised by engineid:gameid combination.

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 works correctly now 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 //gs Maniac Mansion.

  • Fixed crash when entering garage in Apple //gs Maniac Mansion.

  • Added support from Classic Full Throttle from Remastered release.

Supernova:

  • Improved English translation.

Sky:

  • Fixed syncing of music volume between native 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:

  • Add missing sprite drawer for enemies hit by Energy Blast.

  • Fixed freeze due to bad mob data at the top of Witches Tower.

  • Fix crash loading some savegames directly from the launcher.

  • Fix curing the well in Nightshadow.

  • Fix loading of wall items from savegames.

  • Fix U/D keys not working on Quests dialog.

  • Fix incorrect mirror destination for Dragon Tower.

  • Fix crash reading book in Great Pyramid safe.

  • Prevent attributes from going negative.

  • Fix 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.

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.

2.1.2 “Fixing Powerful Windows” (2020-03-31)

Windows port:

  • Fixed an issue with the Sparkle updater which lead to an infinite update loop.

MacOS X port:

  • Fixed application freeze on start on Mac OS X 10.5 and older.

  • Fixed application icon on Mac OS X 10.5 and older.

2.1.1 “:More sheep:” (2020-01-31)

General:

  • Fixed crash when switching certain languages in GUI.

  • Fixed ESC erroneously saving the changes in the options dialog.

  • Improvements in FM-TOWNS/PC-98 audio.

  • Improved Greek language support in the GUI.

Networking:

  • Improved error handling.

  • Only download saves when necessary.

Bladerunner:

  • Fixed buggy savestate in some scenes.

  • Added engine checkbox to target 120fps.

  • Fixed thumbnail portability.

  • Use virtual keyboard on save screen on relevant platforms.

Kyra:

  • Fixed EOB1-Amiga ending sequence (which would play only if you achieved all bonus quests).

  • Fixed monster random item drop chance in EOB1.

  • Added handling for the secret potion in the Legend of Kyrandia 2.

  • Fixed sound issues in the Legend of Kyrandia 2.

  • Fixed graphics glitches in Legend of Kyrandia 1 and 3, EOB1 and EOB2-FM-TOWNS.

Mohawk:

  • Persist changes in game options across sessions.

Queen:

  • Fixed regression with the display of the bellboy dialogue.

SCI:

  • Numerous game script fixes in CAMELOT, ECO2, GK1, GK2, KQ7, PHANT1, PQ1VGA, QFG3, QFG4, SQ5 and SQ6.

  • Implement horizontal and FM-TOWNS type screen shake.

  • Added support for Phantasmagoria 1 censored mode.

  • Added support for Polish LSL7.

  • Added support for Italian GK2.

  • Added support for Portuguese GK2.

  • Added support for Russian KQ7.

  • Added support for Russian SQ1VGA.

  • Added support for GK2 fan-made subtitle patches.

SCUMM:

  • Added support for Pajama2 (UK release).

Supernova:

  • Hooked F5 to the Main Menu.

Toltecs:

  • Added Czech version support.

  • Fixed exiting from game menus when returning to the launcher.

Wintermute:

  • Added several missing game variants and demos to the detection tables.

  • Fixed regression with stack handling.

  • Fixed the behavior of edit boxes.

  • Improved support for Chinese language game variants.

Xeen:

  • Fixed display of gold and gem amounts on the Switch.

  • Fixed tavern exit locations in Swords of Xeen.

  • Fixed crash loading Deep Mine Alpha in World of Xeen CD.

GUI:

  • MIDI setting tabs are no longer shown if a game has no music at all.

All ports:

  • Fixed screen filling in non-paletted screen modes.

3DS port:

  • Major improvements.

AmigaOS4 port:

  • Minor tweaks (stack cookie, build automation).

Android port:

  • Improved filesystem navigation.

  • Proper handling of HiDPI displays.

  • Improved keyboard support.

iOS port:

  • The home indicator is now automatically hidden on iPhone X and later models.

MacOS X port:

  • Follow the OS dark theme for window decorations.

RISC OS port:

  • Fixed crash when accessing an unavailable drive.

  • Reduced the required DigitalRenderer version.

Switch port:

  • Added cloud integration.

OpenPandora port:

  • Minor improvements.

Windows:

  • Added Text-to-Speech support.

  • Fix screenshots with Unicode paths.

2.1.0 “Electric Sheep” (2019-10-11)

New games:

  • Added support for Blade Runner.

  • Added support for Duckman: The Graphic Adventures of a Private Dick.

  • Added support for Hoyle Bridge.

  • Added support for Hoyle Children’s Collection.

  • Added support for Hoyle Classic Games.

  • Added support for Hoyle Solitaire.

  • Added support for Hyperspace Delivery Boy!

  • Added support for Might and Magic IV - Clouds of Xeen.

  • Added support for Might and Magic V - Darkside of Xeen.

  • Added support for Might and Magic - World of Xeen.

  • Added support for Might and Magic - World of Xeen 2 CD Talkie.

  • Added support for Might and Magic - Swords of Xeen.

  • Added support for Mission Supernova Part 1.

  • Added support for Mission Supernova Part 2.

  • Added support for Quest for Glory: Shadows of Darkness.

  • Added support for The Prince and the Coward.

  • Added support for Versailles 1685.

New ports:

  • Added Nintendo Switch port.

General:

  • Improved GUI rendering and overall GUI performance.

  • Added stretch mode option to control how the display is stretched to the window or screen area.

  • Fixed incorrect cursor movement when it’s controlled using the keyboard.

  • Updated the Roland MT-32 emulation code to Munt 2.3.0.

  • Improved unknown game variants reporting.

  • Enabled cloud support.

  • Added Text to Speech capabilities for better accessibility on some platforms.

ADL:

  • Improved color accuracy.

  • Added a TV emulation mode.

  • Added support for the WOZ disk image format.

Drascula:

  • Fixed loading game from launcher when the game had been saved in chapter 1.

Full Pipe:

  • Fixed playtime not being restored when loading a savegame.

  • Fixed a bug that leads to enormous memory consumption in scene 22.

Kyra:

  • Added support for the Amiga version of Eye of the Beholder I + II.

  • Added support for the FM-Towns version of Eye of the Beholder II.

  • Several bug fixes.

MOHAWK:

  • Added a main menu for the 25th anniversary release of Myst ME.

  • Repurposed the landing menu as a main menu for the 25th anniversary release of Riven.

  • Added autosave to slot 0 to Myst and Riven.

  • Added keyboard shortcuts for loading and saving as documented in the game manual to Myst and Riven.

  • Fixed a crash caused by the observatory viewer random position going out of bounds in Myst.

  • Fixed a crash caused by Jungle Island flies going out of bounds in Riven.

  • Fixed missing end credits for the Polish version in Riven.

  • Improved usability for some puzzles in Myst and Riven.

  • Fixed various crashes, graphics glitches, and sound imperfections in Myst and Riven.

Mortevielle:

  • Added speech synthesis on some platforms.

SCI:

  • Added LarryScale, a high quality cartoon scaler for Leisure Suit Larry 7.

  • Fixed over 100 original game script bugs in CAMELOT, ECO1, ECO2, FREDDYPHARKAS, GK1, HOYLE5, ICEMAN, KQ6, LB1, LB2, LONGBOW, LSL6, MOTHERGOOSE256, PQ3, PQ4, QFG1VGA, QFG4, and SQ4.

  • Fixed a bug in version 2.0.0 that prevented the Macintosh versions of Freddy Pharkas, King’s Quest 6, and Quest for Glory 1 (VGA) from loading.

  • Fixed a crash in the Macintosh version of Freddy Pharkas when picking up the shovel which makes the game completable.

  • Fixed loading autosave games.

SCUMM:

  • Implemented lipsync for v6 and v7+ games.

  • Improved Audio quality in Humongous Entertainment games by using the Miles AdLib driver.

  • Fixed possible stack overflows in The Dig and Full Throttle.

  • Fixed original speech glitch on submarine in Indiana Jones and the Fate of Atlantis. Users need to recompress their monster.sou using an up-to-date version of scummvm-tools for this to take effect when using compressed audio.

  • Fixed an issue in the wig maker room in the German version of SPY Fox 3: Operation Ozone which makes the game completable.

  • Added sound driver for the Amiga versions of Monkey Island 2 and Indiana Jones and the Fate of Atlantis.

Sherlock:

  • Fixed crash in Spanish version talking to lady in Tailor shop.

SKY:

  • Added workaround for original game bug to improve intro and not cut off images which exist as fullscreen (320x200px) in the game data files.

Tinsel:

  • Fix loading Discworld 1 savegames from the launcher where Rincewind had a held item.

  • Script patch for hang in Discworld 1 GRA using items on Temple big hammer.

  • In Discworld 1, Held items being released that were never in the Luggage or Rincewind’s inventory will now be automatically dropped into the Luggage rather than being lost.

Titanic:

  • Fixed bug in entering floor numbers numerically that could crash the game.

  • Fixed parser not getting properly reset across sentences in a conversation.

  • Fixed endless busy cursor on Titania closeup when brain slots are incorrectly inserted.

  • Fixed loading saves in front of Barbot could cause him to go into an infinite animation loop.

  • Fixed crash asking Parrot who sabotaged the ship.

Tucker:

  • Fixed multiple graphic issues in Bud Tucker in Double Trouble.

  • Fixed multiple issues with font and subtitle rendering.

  • Fixed dentist music in mall being played incorrectly.

  • Fixed wrong sound effects being played.

  • Fixed a bug that made the bubbles in the Plugs Shop not always visible.

  • Fixed a missing animation when Ego and Billie are on the boat.

  • Fixed a bug that caused a dead end in the second museum scene.

  • Bud is no longer able to walk outside the walkable area when visiting the club.

  • Bud is also no longer able to walk through closed doors.

  • Added mouse wheel support for inventory scrolling.

  • Allow skipping of speech.

  • Improved savegame handling and added support for autosaves.

ZVISION:

  • Fixed graphical glitch in Zork: Grand Inquisitor.

  • Packaged the required fonts with ScummVM.

  • Enabled hires movies in the DVD version of Zork: Grand Inquisitor (requires libmpeg2 and libac52).

Android port:

  • Rewrote to make use of the OpenGL Graphics Manager.

  • Added a button to show the virtual keyboard.

  • Implemented clipboard support.

  • Use the dedicated GUI option for enabling the touchpad mode.

  • Added code for searching accessible external media.

iOS port:

  • Added support for Smart Keyboard.

  • Added three-fingers swipe gestures to simulate arrow keys.

  • Added pinch in and out gestures to show and hide the keyboard.

  • Added scrollable accessory bar above the keyboard with keys not present on the keyboard.

macOS port:

  • Added option to use the ScummVM file browser instead of the system file browser.

  • Added access to documentation from the Help menu.

PS Vita port:

  • Implemented front touch and optional rear touch controls.

PSP port:

  • Implemented aspect ratio correction.

  • Improved smoothness of mouse pointer motion.

  • Added mouse pointer speed and analog nub deadzone settings.

SDL ports (including Windows, Linux, macOS):

  • Added support for game controllers.

  • Added support for adding games via Drag and Drop.

Windows port:

  • Added option to use the system file browser instead of the ScummVM file browser.

RISC OS port:

  • Added a StrongHelp manual.

  • Added error reporting using !Reporter.

2.0.0 (2017-12-17)

New Games:

  • Added support for Full Pipe.

  • Added support for Hi-Res Adventure #3: Cranston Manor.

  • Added support for Hi-Res Adventure #4: Ulysses and the Golden Fleece.

  • Added support for Hi-Res Adventure #5: Time Zone.

  • Added support for Hi-Res Adventure #6: The Dark Crystal.

  • Added support for Riven.

  • Added support for Starship Titanic English & German.

New Games (Sierra SCI2 - SCI3):

  • Added support for Gabriel Knight.

  • Added support for Gabriel Knight 2.

  • Added support for King’s Quest VII.

  • Added support for King’s Questions.

  • Added support for Leisure Suit Larry 6 (hires).

  • Added support for Leisure Suit Larry 7.

  • Added support for Lighthouse.

  • Added support for Mixed-Up Mother Goose Deluxe.

  • Added support for Phantasmagoria.

  • Added support for Phantasmagoria 2.

  • Added support for Police Quest 4.

  • Added support for RAMA.

  • Added support for Shivers.

  • Added support for Space Quest 6.

  • Added support for Torin’s Passage.

New ports:

  • Added PSP Vita port.

  • Added RISC OS port.

General:

  • Added bilinear filtering option for SDL2 fullscreen mode.

  • Fixed a bug that caused a crash in the options dialog of the GUI.

  • Added a command-line option to automatically scan for supported games in the current or a specified directory.

  • Added possibility to apply changes in the options dialog without closing the dialog.

  • Added support for on-the-fly GUI language switching.

  • Updated Munt MT-32 emulation code to version 2.0.3.

  • Improved handling of joysticks.

  • Improved audio latency.

  • Improved management of the ScummVM window in games that switch display modes.

  • Fixed list view drawing over text above it (for example in the save dialog).

  • Changed location where screenshot are saved. This fixes issues when scummvm is installed in a read-only directory. Also added setting to allow changing this location.

  • Changed screenshot format to png.

  • Fixed multithreading issue that could cause a crash in games using MP3 audio.

ADL:

  • Fixed application freeze when reading sign in rocket in Mission Asteroid.

AGI:

  • Fixed game script blocking forever after loading a savegame that was saved while music was playing (this could happen for example in Police Quest 1 poker back room.

  • Fixed cursor behaviour in Manhunter.

  • Fixed nightclub arcade sequence speed for Manhunter Apple IIgs version.

  • Reduced fastest game speed to a maximum of 40 FPS to ensure the games do not run too fast.

AGOS:

  • Fixed subtitle speed setting in the Hebrew version of Simon the Sorcerer 1.

Composer:

  • Added save/load from General Main Menu.

  • Fixed the detection for the French Gregory.

  • Added detection for German Baba Yaga.

Cruise:

  • Fixed font rendering.

Drascula:

  • Fixed bug that made it impossible to talk to the drunkard more than once in the inn.

  • Added handling of the master volume and fix volume synchronization between the game and ScummVM options.

  • Added possibility to load and save games using GMM.

Dreamweb:

  • Fixed crash when collecting last stones under church.

  • Fixed detection of Italian CD release.

Kyra:

  • Fixed a buffer overflow in Lands of Lore.

  • Fixed crash due to missing palette data for Legend of Kyrandia floppy version.

MADE:

  • Fixed badly distorted sound (bug #9753).

MADS:

  • Fixed a bug that caused a crash after starting Rex Nebular and the Cosmic Gender Bender.

  • Fix rare crash that can happen when Rex is first locked up

MOHAWK:

  • Added patch to the original data files to correct the vault access instructions in Myst ME.

  • Fixed situations where Myst could appear to be unresponsive.

  • Reworked sound handling in Myst to be more accurate.

  • Fixed crash in Myst piano puzzle.

Neverhood:

  • Fixed crash in musical hut in Russian DR version.

  • Fixed late game notes crash in Russian DR version.

Pegasus:

  • Fixed loading a game from the launcher after returning to the launcher.

  • Ignored events occuring while the GUI is visible. This for example fixed an issue where closing the GMM using Escape would also opens the game’s own menu.

  • Fixed several crashes when toggling the shared screen space.

  • Improved performances when fading screen.

SAGA:

  • Fixed crash when using the give verb on an actor in IHNM.

  • Fixed Gorrister invisible and stuck when reloading at mooring ring in IHNM.

  • Fixed the conversation panel background color in IHNM.

  • Added support French Fan Translation of Inherit the Earth.

SCI:

  • Fixed a script bug in Laura Bow 2: Dagger of Amon Ra that made it impossible to exit the party room with the large golden head inside the museum (room 350). This bug is also present, when using the original interpreter.

  • Improved startup speed when using the MT-32 emulator.

  • Improved handling of MT-32 reverb in SCI0 games.

  • Improved selection of synthesized sound effects in SCI0 games.

  • Improved selection of digital audio in SQ4.

  • Improved resource bounds checking.

  • Improved error handling of corrupt MIDI data.

  • Fixed slow leak of small amounts of data into save games over time.

  • Fixed broken day/night cycle in QFG3.

  • Fixed a script bug in Police Quest 3 to now grant 10 points when giving the locket to Marie. Now it’s possible to beat the game with a perfect score. This bug is also present when using the original interpreter.

  • Fixed various other script bugs.

  • Improved audio volume and settings synchronization.

SCUMM:

  • Fixed crash in amiga games.

  • Fixed two soundtracks playing at once in Monkey Island 2.

  • Fixed Caponians dont disguise after using blue crystal in Zak McKracken.

  • Fixed Dr. Fred facing wrong way in lab cutscene in Maniac Mansion.

  • Fixed actors being drawn one line too high in V0 and V1 games.

  • Fixed Purple Tentacle appears in Lab Entry after being chased out in maniac Mansion.

  • Fixed power not turning back on in Maniac Mansion when entering the lab while Dr. Fred has the power off.

  • Fixed actors skipping between certain walk-boxes in Maniac Mansion.

Sherlock:

  • Fixed detection for Italian fan translation of Serrated Scalpel.

Sky:

  • Fixed collision detection.

Sword1:

  • Added thumbnail when saving from in-game dialog.

  • Fixed audio and subtitles settings being changed when open the load/save in-game dialog.

Tinsel:

  • Fixed some Discworld 2 text/voice not displaying & playing all the way through.

  • Fix crash in in-game save menu when all slots are used with long names

TsAGE:

  • Fixed regression preventing animations in Return to Ringworld from playing.

  • Fixed display issues in Return to Ringworld Demo.

  • Fixed loading Return to Ringworld savegames with unreferenced dynamic objects.

  • Fixed deadlock in audio code.

  • Fixed crash on Return to Launcher.

Voyeur:

  • Fixed backgrounds not showing for static rooms.

  • Fixed playback of audio events on VCR.

  • Fixed exiting game from the VCR screen.

  • Added workaround for original game bug using invalid hotspot Ids

macOS port:

  • Added support for selecting any connected MIDI devices instead of automatically using the first one.

  • Improved behaviour of the file browser.

1.9.0 “Myst-ery U.F.O.s release” (2016-10-17)

New Games:

  • Added support for Myst.

  • Added support for Myst: Masterpiece Edition.

  • Added support for U.F.O.s.

  • Added support for Hi-Res Adventure #0: Mission Asteroid.

  • Added support for Hi-Res Adventure #1: Mystery House.

  • Added support for Hi-Res Adventure #2: The Wizard and the Princess.

General:

  • Fixed audio corruption in the MS ADPCM decoder.

  • Fixed audio pitch in the CMS/GameBlaster emulation.

  • Switched SDL backend to SDL2 by default. SDL1 is still a fallback.

AGI:

  • Added support for Hercules rendering. Both green and amber modes are supported.

  • Added support for the Hercules high resolution font. The font is also usable outside of Hercules rendering.

  • Added optional “pause, when entering commands” feature, that was only available in the original interpreter for Hercules rendering.

Beneath a Steel Sky:

  • Fixed a bug that could possibly make the game unfinishable due to a wrong animation for Officer Blunt that makes further interaction with this character impossible.

Gob:

  • Fixed graphical issues in Gobliiins (EGA version).

Kyra:

  • Updated Italian EOB1 translation.

  • Fixed a bug that caused a crash in Lands of Lore.

SCI:

  • Fixed a missing dialog line in QfG3 which awards the player with 3 additional points. This is a bug in the original game interpreter. Due to this bug, it was not possible to get all points in the original game.

  • Fixed a bug in Space Quest 1 that caused issues with the spider droid.

  • Fixed a bug in Laura Bow: The Colonel’s Bequest that could cause a lock-up when interacting with the armor in room 37 (main house, downstairs). This bug is also present in the original game.

  • Fixed auto-saving in the fan-made Cascade Quest.

  • Fixed a game bug in the Conquests of Longbow scripts that could cause crashes in Sherwood Forest.

  • Added support for the ImagiNation Network (INN) demo.

SCUMM:

  • Fixed missing translations in the in-game quit and restart dialogs in Pajama Sam 1.

  • Fixed visual glitches in DOTT that occurred after loading a savegame with the stereo in Green Tentacle’s room turned on.

  • Improved timing and pathfinding in Maniac Mansion (C64 and Apple II versions).

  • Added support for the Dutch demo of Let’s Explore the Airport with Buzzy.

Sherlock:

  • Fixed a bug that could cause a crash in The Case of the Serrated Scalpel.

  • Fixed an issue with item hotspots in The Case of the Serrated Scalpel.

  • Fixed a bug that caused game lockups in the inventory of The Case of the Rose Tattoo.

Amiga port:

  • Added support for AmiUpdate autoupdates.

Linux port:

  • Added basic support for the snap packaging system.

Windows port:

  • Fixed taskbar support on Windows 10 onwards.

  • Fixed keymapping for non-QWERTY keyboards.

  • Added support for WinSparkle updater.

1.8.1 “Where Is Your Android?” (2016-05-25)

New ports:

  • Added Nintendo 3DS port.

  • Added Android SDL port.

General:

  • Removed TESTING flag from several supported games.

  • Added Chinese Pinyin translation.

  • Fixed cursor stuttering in the launcher that occurred on some systems.

BBVS:

  • Fixed game restart.

CinE:

  • Fixed sound effect loading.

Drascula:

  • Fixed text alignment to be faithful to the original.

  • Fixed character walking off screen.

  • Fixed loading savegames in the Pendulum scene.

  • Fixed wrong background for inventory items during chapter 6 in the Spanish version.

  • Fixed animations speed (they were running two times slower than in the original engine).

  • Fixed noise at start and/or end of speech. This was most noticeable with the Spanish speech.

  • Fixed delay when interacting with the verb menu and the inventory.

  • Fixed possibility to pick up the axe in the castle multiple times.

Gob:

  • Fixed lock up for some games during sound initialization.

KYRA:

  • Fixed potential crash when using swamp snake potion on the rat in Hand of Fate. (NOTE: This fix was included in version 1.8.0, but it was not added to the NEWS file).

  • Fixed missing voice reactions when hitting enemies in CD version of Lands of Lore.

Lab:

  • Fixed lock-up during ending sequence.

  • Improved internal game controls.

  • Fixed lock-up during some in-game animations.

SAGA:

  • Fixed user interface colors in the French and German versions of I Have No Mouth and I Must Scream.

SCI:

  • Make cursor workarounds work properly on OpenPandora (and other devices, that support touch screen and analog sticks/mouse at the same time).

  • Script patch to fix broken ending battle in multilingual King’s Quest 5 (French, German + Spanish versions are all broken).

  • Fixed invalid memory access, when loading broken King’s Quest 5 credit music track.

  • Fixed lowres/hires issues in King’s Quest 6 when saving, changing the lowres/hires setting and restoring the saved game afterwards.

SCUMM:

  • Fixed detection of Maniac Mansion from Day of the Tentacle in the Windows version of ScummVM.

  • Fixed a sound effect not stopping in Loom EGA with AdLib.

Broken Sword 2.5:

  • Added option to use English speech instead of German one when no speech is available for the selected language.

  • Fixed resource releasing on game exit.

  • Fixed game restart after language change in-game.

  • Fixed flickering in main Menu.

  • Fixed long save time on Windows.

Windows port:

  • Fixed bug in MIDI device listing affecting cases where MIDI devices were not usable.

Mac OS X port:

  • Dock menu for ScummVM now lists recently played games when ScummVM is not running and allows starting those games.

  • Enabled Sparkle application updater.

GCW0 port:

  • Improved support for built-in ScummVM documentation.

1.8.0 “Lost with Sherlock” (2016-03-04)

New Games:

  • Added support for Rex Nebular and the Cosmic Gender Bender.

  • Added support for Sfinx.

  • Added support for Zork Nemesis: The Forbidden Lands.

  • Added support for Zork: Grand Inquisitor.

  • Added support for The Lost Files of Sherlock Holmes: The Case of the Serrated Scalpel.

  • Added support for The Lost Files of Sherlock Holmes: The Case of the Rose Tattoo.

  • Added support for Beavis and Butthead in Virtual Stupidity.

  • Added support for Amazon: Guardians of Eden.

  • Added support for Broken Sword 2.5: The Return of the Templars.

  • Added support for The Labyrinth of Time.

New Ports:

  • Added Raspberry Pi port.

  • Added GCW0 port.

General:

  • Updated Munt MT-32 emulation code to version 1.5.0.

SDL:

  • Alt-x no longer quits ScummVM. Use Cmd-q/Ctrl-q/Ctrl-z instead; see README.

  • On POSIX systems we now follow the XDG Base Directory Specification for placement of files for users. This effectively results in new locations for our configuration file, our log file, and our default savegame path. We still support our previous locations. As long as they are present, we continue to use them. Please refer to the README for the new locations. File locations on Mac OS X are not affected by this change.

3 Skulls of the Toltecs:

  • Improved AdLib music support.

AGI:

  • It is now possible to disable mouse support (except for Amiga versions and fanmade games, that require a mouse).

  • Fixed PCjr sound volumes.

  • Major rewrite of graphics subsystem.

  • Support for Apple IIgs, Amiga + Atari ST transitions, fonts and mouse cursors. The Atari ST 8x8 system font is not included with ScummVM.

  • Added ability to make for example a PC version look like an Apple IIgs version. This includes palette, cursor, transition and even font. Just set corresponding render mode.

  • Fixed Apple IIgs game versions running too fast.

  • Added support for automatic saving/restoring used by Mixed Up Mother Goose.

  • Removed forced two second delay on room changes; replaced with heuristic.

  • Fixed certain key bindings breaking after saving/reloading.

AGOS:

  • Fixed arpeggio effect used in music of Amiga version of Elvira 1.

  • Fixed loading and saving progress in the PC version of Waxworks.

  • Fixed verb area been removed in Amiga versions of Simon the Sorcerer 1.

  • Added Accolade AdLib & MT-32 music drivers for the games: Elvira 1, Elvira 2, Waxworks and Simon the Sorcerer 1 demo.

  • Added Simon the Sorcerer 1 AdLib output. This vastly improves the AdLib output and makes it closer to the original.

Broken Sword 1:

  • Fixed Macintosh version speech when running on big endian systems.

  • Fixed loading from Main Menu in bull’s head scene, and maybe other scenes.

CinE:

  • Added support for music in CD version of Future Wars.

MADE:

  • Improved AdLib music support in Return to Zork.

SAGA:

  • Improved AdLib music support.

SCI:

  • Handling of music priority has been greatly improved.

  • A lot of fixes for original game script bugs that also occurred when using the original interpreter. This affects the following games: KQ6 (Dual Mode), LSL5, PQ1, QfG1 (EGA), QfG1 (VGA), QfG2, QfG3, SQ1, SQ4 (CD).

  • Restoring from the ScummVM in-game menu should now work all the time.

  • Improved support for Japanese PC-9801 games.

  • Default to hi res version of KQ6, changeable using engine option.

SCUMM:

  • Major improvements to Korean versions text rendering.

  • Implemented original Maniac Mansion v0-v1 walking code.

  • It is now possible to play Maniac Mansion from within Day of the Tentacle, with a few caveats. See README for details.

  • Alt-x can now be used to quit SCUMM games on all platforms.

  • Improved lip sync animation in later HE games.

Tinsel:

  • Improved AdLib music support in Discworld 1.

1.7.0 “The Neverrelease” (2014-07-21)

New Games:

  • Added support for Chivalry is Not Dead.

  • Added support for Return to Ringworld.

  • Added support for The Neverhood.

  • Added support for Mortville Manor.

  • Added support for Voyeur.

General:

  • Updated Munt MT-32 emulation code to version 1.3.0.

  • Switched from our custom JPEG and PNG decoders to libjpeg(-turbo) and libpng, which are faster and can handle more images. (NOTE: The change to libpng was done in version 1.6.0, but it was not added to the NEWS file).

  • Added generic OpenGL (ES) output (based on GSoC Task).

  • The GUI can now be rendered in 32-bits.

  • The build system has been changed to be more modular and easier to add new engines.

SDL:

  • Added OpenGL graphics mode based on our generic OpenGL output. This allows for arbitrary output sizes. However, it does not support special filters like AdvMAME, HQ, etc.

AGOS:

  • Added mouse wheel support for inventory and save game lists.

  • Enabled verb name display in Simon the Sorcerer 2.

  • Fixed the Feeble Files loyalty rating in the English 4CD version. (This was apparently a bug in the original game. It is currently unknown if other versions still have the same problem.)

Broken Sword 1:

  • Added back support for MPEG-2 videos.

Broken Sword 2:

  • Added back support for MPEG-2 videos.

CGE:

  • Added an option to enable “Color Blind Mode” to the ScummVM GUI.

Gob:

  • Improved video quality in Urban Runner.

Hopkins:

  • Added an option to toggle “Gore Mode” from the ScummVM GUI.

  • Fixed bug that could cause the music to stop prematurely.

Pegasus:

  • Fixed several rare crashes and glitches.

  • Fixed multiple bugs carried over from the original binary.

SCI:

  • Added support for the more detailed RAVE lip syncing data in the Windows version of King’s Quest 6. Portraits should now be much more expressive when talking.

  • Added support for simultaneous speech and subtitles in the CD versions of Laura Bow 2 and King’s Quest 6 (toggled either in-game with the new “Dual” audio state, or via the ScummVM audio options).

  • Fixed music fading.

  • Fixed several script bugs in Camelot, Crazy Nick’s, Hoyle 3, QFG1VGA, KQ5, KQ6, LB2, LSL2, LSL5, Pharkas, PQ1VGA, SQ4, SQ5.

  • Improved the MIDI parser so that music event processing is done more properly.

SCUMM:

  • Changed the saved game naming scheme of HE games to always contain the target name.

  • Fixed having multiple coaches in Backyard Football.

  • Improved AdLib support for Loom and Indiana Jones and the Last Crusade. This makes sound effects like, for example, the typewriter and waterfall in Indiana Jones and the Last Crusade sound like in the original.

  • Added support for the Steam versions of Indiana Jones and the Last Crusade, Indiana Jones and the Fate of Atlantis, Loom and The Dig. Both the Windows and the Macintosh versions are supported.

Tony:

  • Savegames in Tony Tough now work on big-endian systems.

Tinsel:

  • Discworld 1 and 2 no longer crash on big-endian systems.

Android port:

  • Added experimental support for the OUYA console.

PS2 port:

  • Added configurable TV modes: NTSC and PAL.

  • Added configurable graphics modes: SDTV progressive, SDTV interlaced, EDTV progressive and VESA.

  • Added a configuration option for the HDD partition used.

  • Added a configuration option for the IP address used.

  • Added a configuration option to toggle USB mass storage.

Tizen port:

  • The BADA port has been merged/updated into Tizen.

1.6.0 “+4 to engines” (2013-05-31)

New Games:

  • Added support for 3 Skulls of the Toltecs.

  • Added support for Eye of the Beholder.

  • Added support for Eye of the Beholder II: The Legend of Darkmoon.

  • Added support for Hopkins FBI.

  • Added support for Tony Tough and the Night of Roasted Moths.

  • Added support for The Journeyman Project: Pegasus Prime.

  • Added support for the Macintosh version of Discworld 1.

General:

  • Added a new save/load chooser based on a grid of thumbnails. This is only supported for resolutions bigger than 640x400. The old chooser is still available and used for games without thumbnail support. It is possible to select the old one as default too.

  • Rewrote VideoDecoder subsystem.

  • Added Galician translation.

  • Added Finnish translation.

  • Added Belarusian translation.

  • Using the mouse wheel on a slider widget now changes the value by the smallest possible amount. This is more predictable than the old behaviour, which was to change the value by “one pixel” which would sometimes not change it at all.

  • Updated MT-32 emulation code to latest munt project snapshot.

  • Added FluidSynth settings dialog, mainly for reverb and chorus settings.

  • Fixed crash on certain Smacker movies.

Cine:

  • Improved audio support for Amiga and AtariST versions of Future Wars. Now music fades out slowly instead of stopping immediately. Sound effects are now properly panned, when requested by the game.

CGE:

  • Soltys contains a puzzle requiring the ALT key to be pressed while clicking on an object. This puzzle has been disabled on devices not using this key.

Drascula:

  • Resolved multiple UI issues with the original save/load screen.

  • Added advanced savegame functionality, including savegame timestamps and thumbnails and the ability to load and delete savegames from the launcher. It’s now possible to use the ScummvM save/load dialogs.

  • The F7 key (previously unmapped) now always shows the ScummVM load screen. The F10 key displays either the original save/load screen, or the ScummVM save screen, if the user has selected to use the ScummVM save/load dialogs.

Dreamweb:

  • Now that the game is freeware, there is a small extra help text showing the available commands in the in-game terminals when the player uses the ‘help’ command. Previously, players needed to consult the manual for the available commands. Since this reference to the manual is a form of copy protection, this extra line can be toggled by the ScummVM copy protection command line option.

Groovie:

  • Simplified the movie speed options, and added a custom option for The 7th Guest. Movie options are now “normal” and “fast”, with the latter changing the movie speed in T7G to match the faster movie speed of the iOS version. The game entry might need to be readded in the launcher for the new setting to appear.

SAGA:

  • Added music support for the Macintosh version of I Have No Mouth and, I Must Scream.

SCUMM:

  • Implemented Monkey Island 2 Macintosh’s audio driver. Now we properly support its sample based audio output. The same output is also used for the m68k Macintosh version of Indiana Jones and the Fate of Atlantis.

  • Improved music support for the Macintosh version of Monkey Island 1. It now uses the original instruments, rather than approximating them with General MIDI instruments, and should sound a lot closer to the original.

  • Added sound and music support for the Macintosh version of Loom.

  • Handle double-clicking in the Macintosh version of Loom.

  • Major bugfixes in INSANE (the Full Throttle bike fights).

TOUCHE:

1.5.0 “Picnic Basket” (2012-07-27)

New Games:

  • Added support for Backyard Baseball 2003.

  • Added support for Blue Force.

  • Added support for Darby the Dragon.

  • Added support for Dreamweb.

  • Added support for Geisha.

  • Added support for Gregory and the Hot Air Balloon.

  • Added support for Magic Tales: Liam Finds a Story.

  • Added support for Once Upon A Time: Little Red Riding Hood.

  • Added support for Sleeping Cub’s Test of Courage.

  • Added support for Soltys.

  • Added support for The Princess and the Crab.

General:

  • Updated MT-32 emulation code to latest munt project snapshot. The emulation improved dramatically.

  • Implemented support for TrueType fonts via FreeType2 in our GUI. Along with it GNU FreeFont was also added to our modern theme. Note that not all ports take advantage of this.

  • Added Basque translation.

  • Added custom game and engine options in the AGI, DREAMWEB, KYRA, QUEEN, SKY and SCI engines. It is now possible to toggle these options via the Engine tab when adding or editing a configuration for a game. In most cases, you will have to run each game once or readd them all in ScummVM’s launcher in order to get the custom options tab.

  • Improved predictive dialog look.

  • Various GUI improvements.

Broken Sword 1:

  • Fixed incorrect sound effects in the DOS/Windows demo.

  • Added support for PlayStation videos.

  • Fixed missing subtitles in the demo.

Broken Sword 2:

  • Added support for PlayStation videos.

Cine:

  • Implemented Roland MT-32 output driver.

Drascula:

  • Added Spanish subtitles in the Von Braun cutscene (#5372: no subtitles in scene with “von Braun”).

Gob:

  • Fixed a crash in Lost in Time.

  • Rewrote the AdLib player. Enabled the now working MDY player in Fascination and Geisha.

SCUMM:

  • Added support for the Macintosh version of SPY Fox in Hold the Mustard.

  • Added a difficulty selection dialog for Loom FM-TOWNS.

  • Fixed graphical glitches in HE98 version of Pajama Sam’s Lost & Found.

iPhone port:

  • Changed “F5 (menu)” gesture to open up the global main menu instead.

  • Added support for custom cursor palettes, this makes the moderm theme use the red pointer cursor for example.

  • Added aspect ratio correction feature.

  • Implemented 16 bits per pixel support for games.

Maemo port:

  • Added support for Nokia 770 running OS2008 HE.

  • Added configurable keymap.

Windows port:

  • Changed default savegames location for Windows NT4/2000/XP/Vista/7. (The migration batch file can be used to copy savegames from the old

    default location, to the new default location).

1.4.1 “Subwoofer Release” (2012-01-27)

AGOS:

  • Fixed loading videos directly from InstallShield cabinets in the Windows version of the The Feeble Files.

BASS:

Broken Sword 2:

  • Slight graphics improvement for PSX version.

KYRA:

  • Fixed bug in the original Lands of Lore GUI which made ScummVM error out in the case the user did not have a contiguous save slot usage.

  • Add support for original DOS Lands of Lore save files (also applies to save files made with the GOG release).

SCI:

  • Fixed race condition in SCI1.1 palette changes. This fixes an error in QFG1VGA, when sleeping at Erana’s place.

  • The option to toggle sound effect types between digitized and synthesized has been disabled until a more user-friendly GUI option is possible. Digital sound effects are always preferred for now.

  • Fixed a case where starting a new song didn’t fully reset its channels, thus some notes sounded wrong.

1.4.0 “10th Anniversary” (2011-11-11)

New Games:

  • Added support for Lands of Lore: The Throne of Chaos.

  • Added support for Blue’s Birthday Adventure.

  • Added support for Ringworld: Revenge Of The Patriarch.

  • Added support for the Amiga version of Conquests of the Longbow.

New Ports:

  • Added PlayStation 3 port.

General:

  • Fixed the ARM assembly routine for reverse stereo audio.

  • Added support for building with MacPorts out of the box.

AGI:

  • Implemented sound support for the DOS version of Winnie the Pooh in the Hundred Acre Wood.

AGOS:

  • Implemented support for loading data directly from InstallShield cabinets in The Feeble Files and Simon the Sorcerer’s Puzzle Pack.

  • Fixed loading and saving in the PC version of Waxworks.

  • Fixed music in the PC versions of Elvira 1/2 and Waxworks.

Groovie:

  • Added support for the iOS version of The 7th Guest.

Lure:

  • Fixed crash when trying to talk and ask something at the same time.

SCI:

  • Added better handling of digital vs. synthesized sound effects. If the “Mixed AdLib / MIDI mode” checkbox is checked, the engine will prefer digital sound effects, otherwise their synthesized counterparts will be preferred instead, if both versions of the same effect exist.

SCUMM:

  • Implemented PC Speaker support for SCUMM v5 games.

  • Fixed priority bug in iMuse. As a result the AdLib music should sound better, since important notes are not interrupted anymore.

  • Implemented CMS support for Loom, The Secret of Monkey Island and Indiana Jones and the Last Crusade.

  • Improved palette handling for the Amiga version of Indiana Jones and the Fate of Atlantis.

Broken Sword 1:

  • Fix freeze in Windows demo.

  • Fix crash when using cutscene subtitles pack with the Macintosh version.

Tinsel:

  • Fixed deleting saved games from the list of saved games (from the launcher and the in-game ScummVM menu).

  • The US version of Discworld II now shows the correct title screen and language flag.

Android port:

  • Fixed plugins on Android 3.x.

  • Moved the default saved game location to the SD card.

1.3.1 “All Your Pitches” (2011-07-12)

General:

  • Improved audio device detection and fallback. There should be no more silent errors due to invalid audio devices. Instead ScummVM should pick up a suitable alternative device.

Mohawk:

  • Added detection entries for more variants of some Living Books games.

Tinsel:

  • Fixed a regression that made Discworld uncompletable.

SAGA:

  • Fixed a regression in Inherit the Earth’s dragon walk code which was causing crashes there.

  • Fixed a regression causing various crashes in I Have No Mouth and I Must Scream.

SCI:

  • Added detection entries for some Macintosh game versions.

  • Audio settings are now stored correctly for the CD version of EcoQuest 1.

SCUMM:

  • Fixed graphics bug in FM-TOWNS versions of games on ARM devices (Android, iPhone, etc.).

1.3.0 “Runner” (2011-05-28)

New Games:

  • Added support for Backyard Baseball.

  • Added support for Backyard Baseball 2001.

  • Added support for Urban Runner.

  • Added support for Playtoons: Bambou le Sauveur de la Jungle.

  • Added support for Toonstruck.

  • Added support for Living Books v1 and v2 games.

  • Added support for Hugo’s House of Horrors, Hugo 2: Whodunit? and Hugo 3: Jungle of Doom.

  • Added support for Amiga SCI games (except Conquests of the Longbow).

  • Added support for Macintosh SCI1 games.

New Ports:

  • Added WebOS port.

General:

  • Added support for loadable modules on platforms without a dynamic loader (GSoC Task).

  • Added Danish translation.

  • Added Norwegian Bokmaal translation.

  • Added Norwegian Nynorsk translation.

  • Added Swedish translation.

  • Added Debug Console to Cine, Draci, Gob, MADE, Sword1, Touche and Tucker Engines.

  • Closed significant memory leaks. RTL should now be more usable.

AGOS:

  • Closed memory leaks in Simon 2 and Feeble Files.

Cine:

  • Corrected memory leaks and invalid memory accesses. Future Wars should be more stable.

  • Made Operation Stealth completable, though significant graphical glitches remain so not official supported.

Drascula:

  • Added German and French subtitles in the Von Braun cutscene (#5372: no subtitles in scene with “von Braun”).

  • Improved French translation of the game.

  • Added support for “Return To Launcher”.

Gob:

  • Fixed “Goblin Stuck On Reload” bugs affecting Gobliiins.

Kyra:

  • Closed memory leaks.

Parallaction:

  • Corrected issue which could cause crash at engine exit.

  • Closed memory leaks in Nippon Safes Amiga.

SCI:

  • Added a CMS music driver for SCI1 - SCI1.1 games.

  • Added an option to toggle undithering from the ScummVM GUI.

  • Added several previously missing parts of the game state in saved games, such as game played time, script created windows, the script string heap and information related to the text parser in old EGA games.

  • Added support for SCI1.1 magnifier cursors.

  • Added support for the keypad +/- keys.

  • Added support for the alternative General MIDI tracks in the Windows CD versions of Eco Quest, Jones in the Fast Lane, King’s Quest 5 and Space Quest 4.

  • Added support for the alternative Windows cursors in the Windows version of King’s Quest 6.

  • Added support for simultaneous speech and subtitles in the CD versions of Space Quest 4 and Freddy Pharkas.

  • Corrected resource loading leaks.

  • Corrected several problems and issues in the Skate-O-Rama rooms in Space Quest 4.

  • Corrected several issues in Hoyle Classic Card Games.

  • Fixed several graphical glitches (like, for example, parts of the screen that weren’t erased correctly under some rare circumstances).

  • Fixed several script bugs.

  • Fixed several pathfinding related issues and lockups (like, for example, a lockup in the shower scene of Laura bow 1 and pathfinding in some screens during the chase sequence in Laura Bow 2).

  • Fixed several music related glitches and possible lockups (like, for example, a rare music lockup that occurred when loading a saved game outside the palace in Quest for Glory 3).

  • Fixed possible problems and lockups in the character import screens of Quest for Glory 2 and 3.

  • Fixed a bug that caused a lockup in the SCI1 CD version of Mixed Up Mother Goose, after Tommy Tucker’s song.

  • Fixed a script bug in the CD version of King’s Quest 5, which caused a lockup under certain circumstances when going outside the witch’s house in the dark forest.

  • Function keys now work correctly when the num lock key is on.

  • Improved support for fanmade game scripts.

  • Improved support for non-English versions of games.

  • Made several enhancements and fixes related to MT-32 music (e.g. reverb).

  • Music is no longer out of tune when loading saved games.

SCUMM:

  • Improved support for FM-TOWNS versions of games.

Sky:

  • Fixed crashes on sequences for several ports (Android, OpenGL, …).

Teenagent:

  • Closed memory leaks.

Tinsel:

  • Closed memory leaks in Coroutines.

  • Added enhanced music support for the German CD “Neon Edition” re-release of Discworld 1.

Touche:

  • Corrected memory leaks and minor issues.

Tucker:

  • Added workarounds for several issues present in the original game.

SDL ports:

  • Closed memory leaks in Mouse Surfaces.

Android port:

  • Switched to the official NDK toolchain for building.

  • Fixed GFX output for various devices.

  • Fixed various crashes.

  • Switched to the native screen resolution to improve text readability.

  • Added support for pause/resume.

  • Added support for games using 16bit graphics.

  • Increased the performance significantly.

  • Added support for the “Fullscreen mode” option. Unchecking this keeps the game’s aspect ratio.

  • Added a new graphics mode for linear filtering.

  • Overhauled the input system (see README.Android).

  • Added a MIDI driver based on SONiVOX’s Embedded Audio Synthesis (EAS).

Nintendo DS port:

  • Added support for loadable modules.

PSP port:

  • Added support for loadable modules.

  • Added image viewer.

PS2 port:

  • Added support for loadable modules.

Wii/GameCube port:

  • Added support for loadable modules.

  • Fixed 16bit mouse cursors on HE games.

1.2.1 “Bork Bork Bork” (2010-12-19)

General:

  • Added Hungarian translation.

  • Added Brazilian Portuguese translation.

Cruise:

  • Fixed a problem with Raoul appearing when examining the Book.

Groovie:

  • Fixed a regression that made the Russian version of T7G crash.

Lure:

  • Fixed several NPC movement bugs.

1.2.0 “FaSCInating release” (2010-10-15)

New Games:

  • Added support for Fascination.

New Games (Sierra SCI0 - SCI1.1):

  • Added support for Castle of Dr. Brain (EGA and VGA).

  • Added support for Codename: ICEMAN.

  • Added support for Conquests of Camelot.

  • Added support for Conquests of the Longbow (EGA and VGA).

  • Added support for EcoQuest: The Search for Cetus.

  • Added support for EcoQuest 2: Lost Secret of the Rainforest.

  • Added support for Freddy Pharkas: Frontier Pharmacist.

  • Added support for Hoyle’s Book of Games 1.

  • Added support for Hoyle’s Book of Games 2.

  • Added support for Hoyle’s Book of Games 3 (EGA and VGA).

  • Added support for Hoyle Classic Card Games.

  • Added support for Jones in the Fast Lane.

  • Added support for King’s Quest I (SCI remake).

  • Added support for King’s Quest IV (SCI version).

  • Added support for King’s Quest V (EGA and VGA).

  • Added support for King’s Quest VI (low and hi res).

  • Added support for Laura Bow: The Colonel’s Bequest.

  • Added support for Laura Bow 2: The Dagger of Amon Ra.

  • Added support for Leisure Suit Larry 1 (SCI remake) (EGA and VGA).

  • Added support for Leisure Suit Larry 2.

  • Added support for Leisure Suit Larry 3.

  • Added support for Leisure Suit Larry 5 (EGA and VGA).

  • Added support for Leisure Suit Larry 6 (low res).

  • Added support for Mixed-up Fairy Tales.

  • Added support for Mixed-up Mother Goose.

  • Added support for Pepper’s Adventures in Time.

  • Added support for Police Quest I (SCI remake).

  • Added support for Police Quest II.

  • Added support for Police Quest III (EGA and VGA).

  • Added support for Quest for Glory I/Hero’s Quest.

  • Added support for Quest for Glory I VGA remake.

  • Added support for Quest for Glory II.

  • Added support for Quest for Glory III.

  • Added support for Slater & Charlie go camping.

  • Added support for Space Quest I (SCI remake) (EGA and VGA).

  • Added support for Space Quest III.

  • Added support for Space Quest IV (EGA and VGA).

  • Added support for Space Quest V.

  • Added support for The Island of Dr. Brain.

New Ports:

  • Added Android port.

  • Added Dingux port.

  • Added Caanoo port (based on the GP2XWiz port).

  • Added OpenPandora port.

General:

  • Removed the outdated PalmOS port.

  • Switched to the “fast” DOSBox OPL emulator.

  • Fixed a crash in the rjp1 player code affecting the FOTAQ Amiga version.

  • Added support for more original media layouts.

  • Added support for GUI localization.

  • Improved GUI by adding tooltips and radiobuttons.

  • Improved GUI usability by hiding more irrelevant options not supported by specific games.

AGI:

  • Fixed number of GFX glitches.

  • Made PIC drawing code picture perfect.

  • Added support of MIDI devices.

  • Added support for accurate Tandy sound emulation. Switched to it as default.

Broken Sword 2:

  • Fixed missing speech in some cutscenes.

  • Fixed a memory leak that would eventually cause the game to hang. (#4828 - BS2: Game lockup in British Museum)

Drascula:

  • Fixed number of GFX glitches.

  • Made many cutscenes smoother.

  • Changed behavior of items menu. Now it shows up on mouse up.

Groovie:

  • Added support for the Macintosh version of The 7th Guest.

  • Added support for custom MT-32 instruments.

KYRA:

  • Fixed some minor graphical glitches.

  • Implemented formerly missing recreation of some in game items.

  • Added support for playing Kyrandia 3 with the original CD file layout.

LURE:

  • Fixed bug where Goewin could get stuck in the Weregate.

  • Fixed issue with Ratpouch repeatedly moving between two rooms.

  • Fix for Goewin losing her schedule after Were-cave.

  • Fix for player getting stuck in sewer exit room.

Parallaction:

  • Made part one of The Big Red Adventure completable.

SAGA:

  • Fixed graphics glitches in several scenes.

SCUMM:

  • Several improvements in Maniac Mansion NES.

PSP port:

  • New backend design: fixed minor graphical issues and enabled 16-bit support.

  • Enabled playback of MP3 files using the Media Engine. This means that the port is optimized for MP3 files (as opposed to OGG).

  • Many optimizations. Everything should run faster.

Wii port:

  • Added support for USB2 mass storage devices (requires The Homebrew Channel ..

    = v1.0.8 with IOS58).

GameCube port:

  • Added support for DVDs with the ISO9660 file system.

GP2X port:

  • Added support for dynamic engine plugins (experimental).

  • Reworked control system and better touchscreen support.

GP2XWiz/Caanoo port:

  • Improved downscale code to minimise ‘tearing’ corruption.

  • Reworked control system and better touchscreen support.

  • Renamed backend from GP2XWIZ to GPH to better reflect the supported devices.

1.1.1 “Better version” (2010-05-02)

New Ports:

  • Added Nintendo 64 port. (Actually added in 1.1.0, but forgot to mention it. oops)

General:

  • Fixed several minor bugs here and there.

Drascula:

  • Fixed regression that caused some texts to always be in English, even when using another language. (#4819 - DRASCULA: missing german translation)

KYRA:

  • Fixed a bug which caused the DOS versions to crash before the credits when AdLib music is selected.

LURE:

  • Fixed several memory leaks.

  • Corrected problems in the handling of followers when blocked from performing actions by closed doors between rooms.

  • Solved issues with Goewin not always correctly following the player out of the caves.

Tinsel:

  • Fix video playback regression in Discworld 2.

Parallaction:

  • Fix several crashes and other regressions in Nippon Safes, including bugs 2969211, 2969232, 2969234, 2969257, 2970141.

Wii/GameCube port: (Also forgot to mention in 1.1.0)

  • Added support for games using 16bit graphics.

  • Complete GFX overhaul (new video modes, better performance, picture smoothing, fine grained overscan settings).

  • Added a new options dialog for Wii/Gamecube specific settings.

  • Fixed a GFX glitch on savegame thumbnails.

  • Added support for SMB mountpoints (Samba/Windows shares).

  • Added an on-screen console, which is shown when ScummVM exits abnormally.

  • Fixed a couple of crashes when using Ogg/Vorbis encoded sound files.

See the bundled READMII.txt file for more information.

PSP port: (Also forgot to mention in 1.1.0)

  • Added plugin support which allows the PSP Phat to run every game.

  • Added a new virtual keyboard optimized for rapid D-Pad input.

1.1.0 “Beta quadrant” (2010-04-04)

New Games:

  • Added support for Blue’s Art Time Activities.

  • Added support for Blue’s Reading Time Activities.

  • Added support for Freddi Fish 5: The Case of the Creature of Coral Cove.

  • Added support for Pajama Sam: Games to Play on Any Day.

  • Added support for SPY Fox 3: Operation Ozone.

  • Added support for Dragon History.

  • Added support for TeenAgent.

General:

  • Added support for a custom SJIS font for FM-TOWNS and PC98 games.

  • Added support for 16bit graphics. (GSoC Task)

  • Removed QuickTime MIDI backend on Mac OS X; it was buggy and did not compile on modern systems.

CinE:

  • Added support for Amiga style menus for Amiga versions of Future Wars.

KYRA:

  • Added support for the Amiga version of The Legend of Kyrandia. (sound support was done as a GSoC Task)

  • Adapted KYRA to support the custom SJIS font.

SCUMM:

  • Added support for the PC-Engine version of Loom.

  • Added support for music and sound effects in the the Amiga version of The Secret of Monkey Island. (GSoC Task)

  • Fixed some other bugs related to game versions for the Amiga.

  • Added support for original save/load dialog in MM NES.

  • Added support for savepoint passcodes for Sega CD MI1 via debugger command ‘passcode’.

  • Added support for Kanji rendering in Japanese version of Monkey Island Sega CD.

1.0.0 “Shiny Logo” (2009-11-15)

New Ports:

  • Added MotoEZX and MotoMAGX ports.

General:

  • Fixed several bugs in GUI.

  • Updated the project logo and icons.

  • Clarified licenses for several PS2 port files.

AGI:

  • Fixed crash on game exit.

  • Fixed crash at detection of some games.

AGOS:

  • Fixed load/save code for PC version of Waxworks.

  • Fixed undo in Puzzle Pack games.

Broken Sword 1:

  • Fixed missing background sound effects in some rooms.

CinE:

  • Fixed crashes with Future Wars and Operation Stealth demos.

Cruise:

  • Fix freeze on game pause.

Gob:

  • Fixed gfx glitch in Lost in Time.

  • Fixed hotspot-related regressions in Gob2.

  • Fixed several regressions in Gob3.

  • Fixed crash in Bargon Attack intro.

  • Fixed animations in Win3.1 version of Gob3.

Groovie:

  • Fixed video performance on PSP.

  • Fixed menu blanking in some instances.

Kyra:

  • Fix possible corruption of restart game save in Kyrandia 1.

  • Fix GFX glitch at the broken bridge.

  • Fix for brandon turning invisible in some situations in Kyrandia 1.

MADE:

  • Fixed performance on NDS.

  • Fixed crash in Return to Zork demo.

Parallaction:

  • Fixed several regressions in Nippon Safes.

  • Fixed music in sushi bar in Nippon Safes.

SCUMM:

  • Fixed crash on Macintosh versions of Putt-Putt Joins the Parade and Fatty Bear’s Birthday Surprise.

  • Fixed game save in Macintosh versions of HE games.

  • Fixed default save game path in later HE games.

  • Fixed palette in NES version of Maniac Mansion.

  • Fixed palette in Amiga version of Secret of Monkey Island.

  • Fixed cutscenes not stopping music after pressing ESC in DIG.

  • Fixed lip-sync in Fatty Bear.

  • Fixed crash in FT when entering inventory.

Tinsel:

  • Fixed crash in palace.

  • Fixed crash when talking to the old lady.

  • Fixed partially off-screen text in DW1.

NDS port:

  • Added mouse pad undeneath onscreen keyboard.

  • Added ability to scroll when cursor reaches edge of screen (in mouse pad mode).

  • Made cd audio read from track01.wav as well as track1.wav.

  • Fixed bug with switching modes with keyboard active.

PSP port:

  • Fixed video flickering and stretching in some situations.

  • Improved suspend/resume support.

WinCE port:

  • Improved compatibility with VGA devices.

1.0.0rc1 “Grog XD” (2009-08-31)

New Games:

  • Added support for Discworld.

  • Added support for Discworld 2 - Missing Presumed …!?.

  • Added support for Return to Zork.

  • Added support for Leather Goddesses of Phobos 2.

  • Added support for The Manhole.

  • Added support for Rodney’s Funscreen.

  • Added support for Cruise for a Corpse.

General:

  • Added experimental AdLib emulator from DOSBox.

  • Added quick search to Launcher.

  • Improved modern GUI theme look.

  • Added per-game GUI options.

  • Improved Mass Add dialog.

New Ports:

  • Added GP2X Wiz port.

AGI:

  • Increased compatibility for Sierra games.

  • Implemented all ‘unknown’ commands.

Beneath a Steel Sky:

  • Changed the game speed to match the original game (previously it ran too fast).

Broken Sword 1:

  • Added support for the original cutscenes.

  • Dropped support for the now obsolete MPEG2 cutscenes.

  • Added support for the PlayStation version.

Broken Sword 2:

  • Added support for the original cutscenes.

  • Dropped support for the now obsolete MPEG2 cutscenes.

  • Dropped support for playing cutscene sound without the video.

  • Added support for the PlayStation version.

Gob:

  • Introduced a new savegame format to fix a fatal flaw of the old one, breaking compatibility with old savegames made on big-endian systems.

Groovie:

  • Increased microscope puzzle difficulty to match original.

KYRA:

  • Added support for PC Speaker based music and sound effects.

  • Added support for 16 color dithering in Kyrandia PC-9801.

PSP port:

  • Added support for sleep mode (suspend/resume).

WinCE port:

  • Speed optimized versions of low-res Smartphone and 2x scalers.

  • New aspect correction scaler for VGA (or higher) devices.

  • Dropped support for MPEG-2 and FLAC.

0.13.1 “SAGA returns” (2009-04-27)

AGOS:

  • Fixed crash after OmniTV video is played in The Feeble Files.

  • Fixed crashes when exploring Jack the Ripper scene in the PC version of the Waxworks.

  • Fixed palette glitches in the AtariST version of Elvira 2.

  • Fixed noise that can occur when sound effects are played, when exploring Pyramid scene in the Waxworks.

Gob:

  • Fixed a crash in the Italian version of Woodruff.

Groovie:

  • Fixed some issues with music in The 7th Guest.

Parallaction:

  • Fixed the sarcophagus puzzle in Nippon Safes.

SAGA:

  • Fixed a crash in Inherit the Earth.

  • Fixed glitches in the save/load dialog.

Sword2:

  • Fixed random sound corruption when using the original sound files.

Game launcher:

  • Fixed a case where memory could be corrupted.

  • Fixed the small cursor in the modern theme.

  • Fixed a bug in the theme engine, which could cause crashes.

  • Made the file browser bigger in 1x mode.

iPhone port:

  • Fixed backspace handling on the iPhone soft keyboard.

DS port:

  • Added support for the Global Main Menu feature.

PS2 port:

  • Switched to the new GUI and theme code.

  • All possible devices are supported to store, play and save games (CD, HD, USB, MC and remote).

  • Optimized cache/read-ahead for every media.

  • Added support for the Return to Launcher feature.

Symbian port:

  • Added Bluetooth mouse support.

  • Added support for the Return to Launcher feature.

WinCE port:

  • Fixed an issue which could cause random crashes with VGA devices.

0.13.0 “More Guests” (2009-02-28)

General:

  • Added MIDI driver for Atari ST / FreeMint.

  • Added a ‘Load’ button to the Launcher (not supported by all engines). (GSoC Task)

  • Added a new global main menu (GMM) dialog usable from all engines. (GSoC Task)

  • Added the ability to return to the launcher from running games (via the GMM). (GSoC Task)

  • Rewrote GUI renderer to use an vector based approach. (GSoC Task)

  • Rewrote GUI configuration to use XML. (GSoC Task)

New Games:

  • Added support for Blue’s 123 Time Activities.

  • Added support for Blue’s ABC Time Activities.

  • Added support for Bud Tucker in Double Trouble.

  • Added support for The 7th Guest.

AGOS:

  • Added support for the original cutscenes of The Feeble Files.

  • Added support for text compression in the AtariST version of Elvira 1.

  • Fixed combining items in Waxworks.

  • Fixed display of spell descriptions in Elvira 2.

KYRA:

  • Added support for Auto-save feature.

  • Added support for MIDI music.

Parallaction:

  • Credits of the Nippon Safes Amiga demo are now shown correctly.

SCUMM:

  • Implemented radio-chatter effect in The DIG.

0.12.0 “&nbsp;” (2008-08-31)

New Games:

  • Added support for The Legend of Kyrandia: Book Two: Hand of Fate.

  • Added support for The Legend of Kyrandia: Book Three: Malcolm’s Revenge.

  • Added support for Lost in Time.

  • Added support for The Bizarre Adventures of Woodruff and the Schnibble.

  • Added support for the PC version of Waxworks.

  • Added support for the Macintosh version of I Have no Mouth, and I must Scream.

  • Added support for Drascula: The Vampire Strikes Back.

General:

  • Added CAMD MIDI driver for AmigaOS4.

  • Revived the PS2 port (was already in 0.11.1 but was forgotten in the release notes).

  • Plugged numerous memory leaks in all engines (part of GSoC’08 task).

  • Added audio double buffering to the SDL backend, which fixes the problems with the MT-32 emulator on Mac OS X (for now only enabled on Mac OS X).

AGOS:

  • Fixed crashes during certain music in Amiga versions of Elvira 1 and Simon the Sorcerer 1.

  • Fixed palette issues in Amiga versions of Simon the Sorcerer 1.

Queen:

  • Speech is played at the correct sample rate. (It used to be pitched a bit too low.)

SCUMM:

  • Rewrote parts of Digital iMUSE, fixing some bugs.

  • Rewrote the internal timer code, fixing some speed issues in e.g. COMI.

  • Improved support for sound effects in Amiga version of Zak McKracken.

  • Added support for mixed AdLib/MIDI mode in Monkey Island 1 (Floppy).

0.11.1 “Fixed exist()nce” (2008-02-29)

SCUMM:

  • Improvements for Digital iMUSE subsystem. This fixes several glitches in The Curse of Monkey Island.

  • Fixes for cursors in HE games.

AGI:

  • Fix for zombies in King’s Quest 4.

  • Fix for changing palettes in fanmade games using AGIPAL.

Lure:

  • Fixed some conversation crashes in the German version.

  • Fixed operation of the optional copy protection dialog in the German version.

  • Added saving of conversation flags as to whether a particular conversation option had been previously selected or not.

  • Fixed glitch that could cause transformation sparkle to happen a second time.

  • Fixed behavior of Goewin when you rejoin her after meeting the dragon.

SAGA:

  • Fix for rat maze bug in Inherit the Earth which made game not completable.

  • Fixes for Inherit the Earth and I Have no Mouth game startup on a number of platforms.

  • Reduced the number of simultaneous open files in I Have no Mouth, to allow it to run on platforms that can keep a limited amount of files open (e.g. on the PSP).

  • Fixed graphics glitch in Inherit the Earth with simultaneous speech.

  • Fixed palette glitch in Inherit the Earth when looking at the map while at the docks.

0.11.0 “Your Palindrome” (2008-01-15)

New Games:

  • Added support for Elvira: Mistress of the Dark.

  • Added support for Elvira 2: The Jaws of Cerberus.

  • Added support for I Have no Mouth, and I Must Scream (demo and full game).

  • Added support for preAGI game Mickey’s Space Adventure.

  • Added support for preAGI game Troll’s Tale.

  • Added support for preAGI game Winnie the Pooh in the Hundred Acre Wood.

  • Added support for Amiga version of Waxworks.

  • Added support for Lure of the Temptress.

New Ports:

  • Added iPhone port.

  • Added Maemo port for Nokia Internet tablets.

General:

  • Added ARM assembly routines for code in the sound mixer and SCUMM video playback, resulting in some nice speedups on several ports.

  • Improved the way keyboard input is handled internally, resolving some odd quirks in some game / port combinations.

  • Added optional ‘confirm exit’ dialog to the SDL backend.

  • Added support for TiMidity++ MIDI server.

  • Added DMedia MIDI driver for IRIX.

  • Improved detection of new game variants and localized versions.

  • Completely reworked internal access to files. (GSoC Task)

  • Added option to delete games from the list with Del key.

  • Added support for “~/” prefix being substituted by $HOME in paths on POSIX systems (Linux, Mac OS X etc.).

AGI:

  • Added support for AGI256 and AGI256-2 hacks. (GSoC Task)

  • Added support for Amiga menus and palettes. (GSoC Task)

  • Better support for early Sierra AGI titles.

AGOS:

  • Fixed crashes related to OmniTV playback in The Feeble Files.

  • Improved work on 64-bit systems.

Broken Sword 1:

  • Added support for FLAC encoded music.

Kyrandia:

  • Added support for Macintosh version.

Parallaction:

  • Added support for Amiga version of Nippon Safes, Inc.

  • Many bugfixes.

Queen:

  • Added support for AdLib music.

  • Added missing music patterns playback in Amiga version.

SCUMM:

  • Added subtitle skipping (via ‘.’ key) in older games which didn’t have this feature so far (e.g. Zak, MM, Indy3, Loom).

  • Added support for Chinese COMI.

  • Better support for eastern versions of games.

  • Various fixes for COMI and other games.

  • Added support for original save menus (browse only). Use Alt-F5 to activate.

  • Added support for Spanish version of NES Maniac Mansion.

  • Better support for German version of C64 Maniac Mansion.

  • Fixed bug with cursors in Windows versions of Humongous Entertainment games.

SAGA:

  • Added support for compressed sound effects, voices and music.

Touche:

  • Added workarounds for some glitches/issues present in the original game.

WinCE Port:

  • Switched compilers again. Now using cegcc (http://cegcc.sourceforge.net/).

  • Plugins now supported for WinCE (but not used in this release).

  • Redesigned ‘Free Look’ action, mainly for the lure engine’s requirements.

  • Smaller optimization setting to counteract the growth of the executable.

  • Various bug fixes.

GP2X Port:

  • Support F200 Touchscreen.

  • Various fixes to input code.

0.X.0 “Tic-tac-toe edition” (2007-06-20)

New Games:

  • Added Cinematique evo 1 engine. Currently only Future Wars is supported.

  • Added Touché: The Adventures of the Fifth Musketeer engine.

  • Added support for Gobliins 2.

  • Added support for Simon the Sorcerer’s Puzzle Pack.

  • Added support for Ween: The Prophecy.

  • Added support for Bargon Attack.

  • Added Sierra AGI engine.

  • Added support for Goblins 3.

  • Added Parallaction engine. Currently only Nippon Safes Inc. is supported.

General:

  • Added dialog which allows the user to select the GUI theme on runtime.

  • Added ‘Mass Add’ feature to the Launcher, which allows you to scan for all games in all subdirectories of a given directory (to use it, press shift then click on “Add Game”).

  • Improved the way the auto detector generates target names, it now takes a game’s variant, language and platform into account.

  • Improved compression for DXA movies.

  • Keyboard repeat is now handled in a centralized way, rather than on a case-by-case basis. (Simply put, all engines now have keyboard repeat.)

Broken Sword 1:

  • Added support for DXA cutscenes.

  • Added support for Macintosh version.

Broken Sword 2:

  • Added support for DXA cutscenes.

  • Added “fast mode” (use Ctrl-f to toggle).

Queen:

  • Added support for Amiga versions.

  • Fixed some sound glitches.

SCUMM:

  • Added support for non-interactive demos of HE games (CUP).

  • Improved A/V syncing in SMUSH videos (affects Dig, FT, COMI).

  • Improved speed of the NES sound code.

  • Fixed many (sometimes serious) actor walking issues, specifically in Zak McKracken and Maniac Mansion, by rewriting the walking code for these games.

  • Fixed several other issues.

  • Added support for DXA movies playback in HE games.

Simon:

  • Renamed Simon engine to AGOS.

Kyrandia:

  • Added support for FM-TOWNS version (both English and Japanese).

BASS:

  • Fixed long-standing font bug. We were using the control panel font for LINC space and terminals, and the LINC font in the control panel. This caused many character glitches (some of which we used to work around) in LINC space and terminals, particularly in non-English languages.

Nintendo DS Port:

  • New engines supported: AGI, CINE, and SAGA.

  • Option to show the mouse cursor.

  • Word completion on keyboard for AGI games.

  • Plenty of optimisations.

Symbian Port:

  • Added support for MP3 to S60v3 and UIQ3 versions.

  • Switched to SDL 1.2.11 for bug fixes and improvements.

  • Improved performance for S60v3 and UIQ3 using ARM target.

  • Limited support for pre Symbian OS9 devices due to compiler issues.

  • Updated key mapping handling.

WinCE Port:

  • Switched to using a GCC toolchain for building.

  • Major update to the SDL lib. Better, faster, more compatible. :-) The included fixes are too numerous to mention here. Most of the updates in this version have concentrated on infrastructure. This leads to faster execution, greatly increased compatibility and OS friendliness - especially for keyboard/mouse input and display handling (f.ex. no more popups during gameplay).

Windows Port:

  • The default location of the config file changed, to support multi-user systems.

PalmOS Port:

  • Now using PalmOS Porting SDK which enables use of the C standard library.

0.9.1 “PalmOS revived” (2006-10-29)

New Ports:

  • Added Nintendo DS port.

  • Added GP2X port.

  • Added GP32 port.

General:

  • Fixed potential garbage and/or crash in debug console.

  • Removed restriction on 27 games per game id when added via launcher.

SCUMM:

  • Improved support for international versions of HE games.

  • Fixed rare actor drawing glitches.

  • Fixed path finding during smart star challendge in Big Thinkers 1st Grade.

  • Fixed graphical glitches in stomach location of Pajama Sam 3.

  • Fixed graphical glitches in HE80 version of Putt-Putt Travels Through Time.

  • Fixed FM-TOWNS version of Indy3 failing on Amiga port.

  • Fixed crash in MM NES when clicking on top screen area.

  • Now it is possible to turn on or off subtitles during SMUSH movies.

Simon:

  • Improved support for international versions of the Feeble Files.

  • Fixed undefined behaviour when loading music.

  • Fixed crash when displaying some subtitles in the Feeble Files.

  • Fixed crackling sound in Mac version of Feeble Files.

BASS:

  • Fixed character spacing in LINC terminals in floppy version v0.0303.

  • Fixed a regression which caused incorrect AdLib music emulation.

Broken Sword 1:

  • Fixed speech-related crashes.

Broken Sword 2:

  • More robust handling of the optional startup.inf file.

Kyrandia:

  • Scrolling in the Kyrandia intro is less CPU intensive, at the cost of not being as smooth as before.

  • Fixed a tiny graphics glitch in the Kyrandia intro.

  • Improved screen update handling, speeds up drawing on small devices.

  • Improved resource loading, faster startup.

PSP Port:

  • Fixed crashes during scrolling scenes in certain SCUMM games.

  • Added saving of thumbnail in SCUMM savegames.

PS2 Port:

  • Overlay uses higher resolution now.

  • Can boot from USB, HDD etc. as well.

WinCE Port:

  • Several bugfixes.

  • Re-add support for 2002 based devices.

0.9.0 “The OmniBrain loves you” (2006-06-25)

New Games:

  • Added kyra engine (for the Kyrandia series). Currently only the first part of the series is supported.

  • Added support for The Feeble Files.

General:

  • Switched from CVS to Subversion.

  • Restructured our source tree partially.

  • Fixed a bug that prevented you from overriding the scaler from the command line for 640x480 games.

  • Added subtitle configuration controls to the Launcher options dialogs.

  • GUI was completely redesigned and is now themeable.

SCUMM:

  • Rewrote the detection code, for improved accuracy and better support of fan translations. It should now work much better on games with unknown MD5.

  • Added subtitle configuration controls to the options dialog.

  • Fixed graphical glitches in several HE games.

  • Fixed palette glitches in Big Thinkers 1st Grade.

  • Fixed songs in the kitchen of Pajama Sam 1.

SAGA:

  • Fixed sound distortion in the Inherit the Earth demo.

Simon:

  • Improved Hebrew support.

  • Lots of long-overdue cleanups and re-structuring were made to accommodate for The Feeble Files.

  • Fixed a rare MIDI bug that would cause a channel to change volume without adjusting it to the master volume.

  • Fixed delay after introduction of Simon the Sorcerer 1 demo (with speech).

  • Fixed music tempo in DOS versions of Simon the Sorcerer 1.

Broken Sword 1:

  • Added support for the –save-slot option.

Broken Sword 2:

  • Major rewrite of how game resources are accessed in memory. This should fix alignment issues reported on some platforms.

  • Missing data files are handled more gracefully.

WinCE Port:

  • Added: PocketPC: Vertical oversampling scaler 320x200=>320x240 when panel not shown. (n0p)

  • Added: PocketPC: Right click by double-tapping. (n0p)

  • Fixed: All: Clipping issues in some cases.

  • Added: PocketPC: Mouse emulation using keys.

  • Added: Smartphones: Virtual keyboard popup.

  • Fixed: Smartphones: Incorrect screen blit in SDL port.

  • Added: All: Mouse cursor visible on panel if using emulated mouse.

  • Added: All: Inverse landscape mode.

  • Fixed: PocketPC: Dialogs cut-off/not redrawn.

0.8.2 “Broken Broken Sword 2” (2006-02-08)

General:

  • Fixed OS X bundle building when using GCC 3.3.

SCUMM:

  • Added support for rotating and scaling of sprites in HE games.

Sword2:

  • Fixed last-minute crash when playing sound effects.

WinCE Port:

  • Should fix weird crashes with DOTT stamp and in FOA. (#2439 #2430)

  • Fixed Monkey Island blocking keyboard panel on Smartphones. (thks Knakos)

  • Fixed QVGA Smartphone detection (mean it this time :p).

  • Fixed Smartphone double right click issue.

0.8.1 “Codename: missing” (2006-01-31)

General:

  • Fixed compiling with GCC 2.95.

  • Fixed LaTeX documentation.

  • Switched to new improved logo which matches new site design.

  • More descriptive game titles in all engines.

  • Fixed crash when trying to apply aspect-ratio correction to games that cannot use it.

  • Fixed potential security vulnerability with oversized PATH environment variables.

  • Lowered the default gain for the FluidSynth music driver and made it configurable.

SCUMM:

  • Scrolling fixes in COMI, so it is less CPU-hungry.

  • Added support for Maniac Mansion NES German version.

  • Fixed mouse button states in COMI.

  • Fixed overflow when using control panel for robot in the Dig.

  • Added support for sound code, used by songs in HE games.

  • Improved shadows in later HE games.

  • Fixed subtitles glitches in HE games.

  • Improved music/sound for HE games.

  • Improved support for international versions of HE games.

  • Improved support for Macintosh versions of games.

  • Fixed several minor bugs.

BASS:

  • Fix crash when speed/volume sliders are clicked and then dragged out of the scummvm window.

Gob:

  • Fixed disappearing cursor when level password is typed in.

  • Warn user if he tries to run CD version directly from CD under Windows.

Queen:

  • Fixed charset for Spanish version.

SAGA:

  • Fixed digital music playback under BE systems.

Simon:

  • Implemented more precise MD5-based game detection.

  • Added Polish support for Simon the Sorcerer 2.

  • Fixed fades during ride to goblins camp in Simon the Sorcerer 2.

  • Fixed palette delay at the end of Simon the Sorcerer 1.

  • Fixed sound looping in Windows version of Simon the Sorcerer 2.

Sword1:

  • Fixed a bug where looping sounds would keep playing during cutscenes or when displaying any form of control panel dialog.

  • The save game dialog would erroneously claim an I/O error occurred if the savegame list had unused slots, and savegames were compressed.

  • Fixed a scrolling bug which caused the finale sequence to be displayed incorrectly.

Sword2:

  • Fixes and cleanups to the end credits. The German credits work now.

  • Fixed missing speech/music in the second half of the game, reported to happen in some versions of the game.

PS2 Port:

  • Completely reworked and now really goes official.

PSP Port:

  • Fixed a bug that caused Broken Sword 1, and games that use ripped CDDA tracks (most notably the CD version of Monkey Island 1), to stop functioning properly after a while.

WinCE Port:

  • Check backends/wince/README-WinCE for the latest news.

  • Fixed disappearing panel when opening a list widget in GUI.

  • Knakos patches (QVGA smartphones fix, easier key binding and panel switching).

0.8.0 (2005-10-30)

New Games:

  • Added SAGA engine (for the games “I Have No Mouth and I Must Scream” and “Inherit the Earth”).

  • Added Gob engine (for the Goblins series). Currently, only the first of the Goblins games is supported.

New Ports:

  • Added PlayStation 2 port.

  • Added PlayStation Portable (PSP) port.

  • Added AmigaOS 4 port.

  • Added EPOC/SymbianOS port.

  • Added fixes for OS/2 port.

General:

  • Reworked cursor handling in SDL backend. Now cursors can have their own palette and scaling. This is used by Humongous Entertainment games now.

  • Added FluidSynth MIDI driver.

  • Added GUI for the “soundfont” setting. (Currently only used by the CoreAudio and FluidSynth MIDI drivers.)

  • The MPEG player could hang if the sound ended prematurely.

  • Improved autoscaling GUI, which takes full advantage of your screen.

  • Fixes for GCC 4.

SCUMM:

  • Added support for Mac Humongous Entertainment titles.

  • Added support for multiple filenames/versions using a single target.

  • Implemented CGA and Hercules render modes in early LEC titles.

  • Added dialogs which are shown when you modify the talkspeed or music volume using hotkeys.

  • Added support for NES version of Maniac Mansion.

  • Added thumbnail support for savegames.

  • Broke compatibility with HE savegame (HE v71 and upwards only).

  • Added possibility to disable building of HE and SCUMM v7 & v8 games support.

  • Fixed the last few known music glitches in Sam & Max. (There are still some - probably - minor missing features though.)

  • Added support for Commodore64 version of Zak McKracken.

  • Eliminated all demos targets and platform-specific targets. Config file is autoupdated.

Sword2:

  • Made the resource manager expire resources more intelligently.

  • Improved performance when playing the game from CD instead of hard disk.

  • Simplified sound effects handling. Again.

  • Code cleanups and restructuring.

  • Fixed long-standing bug in decompressing sounds from the speech/music CLU files. It was generating one sample too many, which could be heard as a very slight popping noise at the end of some sounds. Files that have been compressed with older versions of compress_sword2 will, of course, still have the same error. You may want to regenerate them.

0.7.1 (2005-03-27)

General:

  • Added a MT-32 emulator. (It was actually added in 0.7.0 but we forgot to put it into the NEWS file :-).

  • Less memory-hungry MPEG movie playback for the Broken Sword games.

SCUMM:

  • Fixed wrong actor animation in Full Throttle INSANE.

Windows Mobile port (PocketPC / Smartphone):

  • Fixed FOTAQ crash on all platforms when leaving the hotel AGAIN.

  • Better low quality AdLib emulation for FOTAQ.

  • Fix randomly broken Hide Toolbar option. (thanks iKi)

  • Fix first hardware key mapping (was not displayed before).

  • Fix BASS & Simon hangs on Smartphone when using the Skip hotkey.

  • Fix Zone key action on Smartphone (now mapped on key 9).

  • Experimental third party VGA mode (SE-VGA) fix.

  • Add Key Mapping option in the launcher (Options / Misc / Keys).

  • Remove AYGSHELL.DLL dependency to work on CE .Net platforms.

  • Fix key mapping issues introduced in 0.7.0.

  • Full Throttle interactive action sequences should be more playable.

  • New key mapping option “FT Cheat” to win a Full Throttle action sequence.

  • Quit Simon game with ‘Action key’ on Smartphones.

Sword2:

  • Fixed crash caused by attempting to play music from CD1 and CD2 at the same time.

  • Fixed crash in the cutscene player if the speech file was missing.

BASS:

  • Fixed crash when talking to the gardener using spanish text with the floppy version.

0.7.0 (2004-12-24)

New Games:

  • Added 26 Humongous Entertainment titles, only a few are completable.

General:

  • Added support for FLAC (lossless) encoded audio files.

  • Added an ‘On Screen Display’ to the SDL backend.

  • Partially rewrote the backend API.

  • Comments and the order of section in config files are preserved now.

  • Updated AdvMame scalers based on scale2x 2.0 - AdvMame3x looks nicer now, and AdvMame2x is MMX accelerated.

  • Added MMX i386 assembler versions of the HQ2x and HQ3x scalers.

  • Added ‘Extra Path’ option allows for a searching an additional datafile location (for reencoded cutscenes and the like).

  • Disabled Alt-x and Ctrl-z quit keys in favor of Ctrl-q on unix like operating systems, like Linux (exception: Mac OS X still uses Cmd-q).

  • Separate smaller font for the console, allowing for more visible information, for example in the SCUMM debugger.

  • Added support for setting output sample rate at run-time, although there is currently no GUI for it.

  • The save directory now has a default rather than the current directory on some platforms:

    • Mac OS X: $HOME/Documents/ScummVM Savegames/

    • Other unices: $HOME/.scummvm/

  • Added a new about dialog with scrolling credits.

SCUMM:

  • Removed the old zak256 target, use zakTowns instead.

  • Added native support for Macintosh versions using a special container file. This removes the need for using the ‘RESCUMM’ program.

  • Added smooth horizontal scrolling for The Dig, Full Throttle and COMI (matching the original engine).

  • Partially rewrote the text engine, fixing various bugs, especially in newer games (The Dig, COMI).

  • Fixed actor drawing glitches in V1 Maniac and Zak.

  • Fixed ship-to-ship graphic glitches in COMI.

  • Fixed palette glitches in COMI.

Queen:

  • Fixed some issues with the Dreamcast backend.

Sword1:

  • Added support for compressed speech and music.

  • Added support for the demo.

  • Better support for the Czech version.

  • Added workarounds for script and subtitle bugs in some game versions.

Sword2:

  • Simplified memory/resource management.

  • Simplified sound effects handling.

  • Added support for compressed speech and music.

  • Fixed various minor bugs.

BASS:

  • Added workarounds for some rare scripting bugs that could render the game unwinnable.

0.6.1b (2004-08-03)

General:

  • Fixed copy/paste bug in launcher that may corrupt the Savegame Path.

  • Fixed crashes on 64-bit architectures.

SCUMM:

  • Fixed VOC crash when playing DOTT Floppy.

  • Fixed palette issues in Amiga version of MI2.

Simon:

  • Fixed VOC crash.

0.6.1 (2004-07-25)

General:

  • Fixed sound glitch when streaming two or more Ogg Vorbis sounds from the same file handle, e.g. in the Sam & Max intro when using monster.sog.

SCUMM:

  • As usual: many SCUMM game engine fixes.

  • Added graphics decoders for 3DO Humongous Entertainment games.

  • Numerous Humongous Entertainment games fixes.

  • Fixed bug in Full Throttle, so battle difficulty matches original.

  • Improved Digital iMUSE.

Sword1:

  • Warn the user if saving fails, instead of crashing.

  • Slightly more user-friendly save/restore dialog.

  • Fixed masking glitch outside Nico’s apartment.

BASS:

  • Warn the user if saving a game doesn’t work.

Simon:

  • Fixed crashes in some international versions.

0.6.0 (2004-03-14)

New Games:

  • Added Broken Sword 1 engine.

  • Added Broken Sword 2 engine.

  • Added Flight of the Amazon Queen engine.

  • Added support for V1 SCUMM games ‘Maniac Mansion’ and ‘Zak McKracken’.

  • SCUMM game Full Throttle is now supported.

General:

  • Subtitles now default to disabled. ‘-n’ option now enabled subtitles.

  • Added HQ2x and HQ3x scalers.

  • Rewrote sound code for more flexibility and performance.

  • Improved native MT32 support.

  • AdLib GM emulation table revamped, providing more accurate software MIDI.

  • Default Makefile now uses configure script.

  • Greatly improved the launcher and options dialogs (work-in-progress).

  • Many other “under the hood” improvements, like a new config managment and plugin capabilities.

Simon:

  • Added data files decoder for Amiga disk versions.

  • Added support for inventory graphics in Amiga versions.

  • Fixed various brief freezes.

  • Fixed minor glitches in load/save dialog in non-English versions.

  • Fixed missing inventory arrows in some versions of Simon the Sorcerer 1.

SCUMM:

  • Many, Many, Many SCUMM game engine fixes. Many of them. And that’s a lot.

  • Added INSANE support for Full Throttle ‘action sequences’.

  • Added option to choose between AdLib, PCjr and PC Speaker in earlier games.

  • Added AdLib support for indy3ega and loom (ega).

  • Added MIDI support for loom (ega), monkeyega and monkeyvga.

  • Added sound effects support for indy3/monkeyega/monkeyvga/pass.

  • Added FM Towns targets for Loom and Indy3.

  • Rewrote in-game menu (F5) to be easier to use.

  • Improved FM Towns SFX support (YM2612 emulation, looping).

  • Classic V1 versions of Maniac Mansion and Zak McKracken are now supported and completable.

  • Rewrote Digital iMUSE music system.

  • Several Analog iMUSE music system bugs fixed.

  • Improved music/sound for various Amiga versions.

  • Improved compression of Fate of Atlantis and Simon the Sorcerer 2 sound files.

  • Keyboard fighting in Fate of Atlantis now works.

  • Keyboard support for cannon battle in Curse of Monkey Island.

  • Keyboard support for derby scene in Full Throttle.

0.5.1 (2003-08-06)

  • Rewrote Beneath a Steel Sky savegame code (see note in READMEs ‘Known Bugs’).

  • Fixed dialog skipping, music volume and several crashes/freezes in Steel Sky.

  • Fixed dialog skipping in V7 games.

  • Fixed glitch when quitting ScummVM in fullscreen mode on Mac OS X.

  • Fixed various COMI bugs related to actor placement/scaling.

  • Added complete Hebrew support for Simon the Sorcerer 1 and 2.

  • Several MorphOS and DreamCast port fixes.

  • DreamCast now runs Simon the Sorcerer 1 & 2.

  • Fixed a fullscreen problem on Mac OS X were you couldn’t use the mouse in the top part of the screen by linking to a bugfixed version of SDL.

0.5.0 (2003-08-02)

  • Enhanced versions of Maniac Mansion and Zak McKracken are now supported and completable.

  • Beneath A Steel Sky is now supported and completable.

  • Added support for Amiga version of Monkey Island 1.

  • Initial unplayable support for V1 version of Maniac Mansion/Zak McKracken.

  • Curse of Monkey Island (COMI) support for playing from CD improved on Mac OS X.

  • Loading COMI savegames for disk 2 doesn’t anymore require disk 1 first.

  • Rewritten iMUSE engine, and many Music fixes (exp. Monkey Island 2).

  • Support for music in DOS versions of Humongous Entertainment games and Simon the Sorcerer 2 (XMIDI format).

  • Support for music in floppy demo of Simon the Sorcerer 1 (Proprietary format).

  • Complete music support for Simon the Sorcerer 2.

  • Improved music and sound support in Zak256.

  • Added Aspect Ratio option.

  • Many other bug fixes, improvements and optimizations.

0.4.1 (2003-05-25)

  • Added AdvMame3x filter.

  • Fixed crash in Curse of Monkey Island (and possibly other games as well).

  • Fixed airport doors in Zak256.

  • Fixed crash in SDL backend.

  • Fixed various iMUSE bugs.

0.4.0 (2003-05-11)

  • Curse of Monkey Island (comi) support (experimental).

  • Added support for the EGA versions of Loom, Monkey Island and Indy3.

  • Improved music support in Indy3 and the floppy versions of Monkey Island.

  • Many Simon the Sorcerer 1 & 2 improvements and fixes.

  • Very pre-alpha Beneath a Steel Sky code. Don’t expect it to do anything.

  • Even more pre-alpha support for V2 SCUMM games (Maniac Mansion and Zak).

  • Preliminary support for early Humongous Entertainment titles (very experimental).

  • New debug console and several GUI/Launcher enhancements.

  • New Save/Load code (easier to expand while retaining compatibility).

  • DreamCast port now works with new games added for 0.3.0b.

  • New official PalmOS port.

  • Various minor and not so minor SCUMM game fixes.

  • Large memory leak fixed for The Dig/ComI.

  • SMUSH code optimised, frame dropping added for slower machines.

  • Code cleanups.

0.3.0b (2002-12-08)

  • Massive cleanup work for iMUSE. Sam and Max music now plays correctly.

  • Many bugfixes for Zak256, + sound and music support.

  • Music support for Simon the Sorcerer on any platform with real MIDI.

  • Experimental support for Indy3 (VGA) - Indiana Jones + Last Crusade.

  • Completed support for Monkey1 VGA Floppy, The Dig.

  • Added akos16 implementation for The Dig and Full Throttle costumes.

  • Added Digital iMUSE implementation for The Dig and Full Throttle music.

  • Loom CD speech+music syncronisation improved greatly.

  • Added midi-emulation via AdLib, for platforms without sequencer support.

  • Code separation of various engine parts into several libraries.

  • Several fixes to prevent Simon the Sorcerer crashing and hanging.

  • Hundreds of bugfixes for many other games.

  • New SMUSH video engine, for Full Throttle and The Dig.

  • New in-game GUI.

  • Launcher dialog.

0.2.0 (2002-04-14)

  • Core engine rewrite.

  • Enhanced ingame GUI, including options/volume settings.

  • Auto-save feature.

  • Added more command-line options, and configuration file.

  • New ports and platforms (MorphOS, Macintosh, Dreamcast, Solaris, IRIX, etc).

  • Graphics filtering added (2xSAI, Super2xSAI, SuperEagle, AdvMame2x).

  • Support for MAD MP3 compressed audio.

  • Support for first non-SCUMM games (Simon the Sorcerer).

  • Support for V4 games (Loom CD).

  • Enhanced V6 game support (Sam and Max is now completable).

  • Experimental support for V7 games (Full Throttle/The Dig).

  • Experimental support for V3 games (Zak256/Indy3).

0.1.0 (2002-01-13)

  • Loads of changes.

0.0.2 (2001-10-12)

  • Bug fixes.

  • Save & load support.

0.0.1 (2001-10-08)

  • Initial version.

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:

We also have guides on how to get ScummVM running on a wide range of other platforms:

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.

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?

Check out the Release notes for 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.

GOG.com games

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.