979 Commits

Author SHA1 Message Date
Bastien Bouclet
9454346782 ENGINES: Copy the data referenced by QualifiedGameDescriptor
The engineId, gameId and description come from static data in the game
engines. When the game engines are compiled as dynamic plugins, the QGD
structure may outlive the engine plugin. Making a copy ensures the data
remains available.

Fixes #11292.
2020-01-01 08:19:48 +01:00
Cameron Cawley
e2d91258b7 PLUGINS: Fix crash when no plugins are available 2019-12-02 11:04:57 +02:00
Cameron Cawley
f2b9f7bb76 BACKENDS: Remove the Windows CE port 2019-11-17 22:33:56 +01:00
Bastien Bouclet
3c0abc0800 BASE: Remove the engines/games alphabetical sort 2019-11-03 11:43:00 +01:00
Bastien Bouclet
c142838122 BASE: Change the command line interface to use engine-qualified game names
Qualified game names have the following form: engineId:gameId.
Unqualified game names are still supported as long as they are not
ambiguous. However they are considered deprecated and are no longer
displayed by the --list-games command.
2019-11-03 11:43:00 +01:00
Bastien Bouclet
47a2b2a9a2 BASE: Add a command line option to list the engines 2019-11-03 11:43:00 +01:00
Bastien Bouclet
ae9f764c7a ENGINES: Automatically upgrade the targets on launch to add an engine ID 2019-11-03 11:43:00 +01:00
Bastien Bouclet
bb813719b5 ENGINES: Change targets to have an 'engine ID'
The engine ID identifies which engine should be used to launch the target.
Also remove the 'single ID' system. Different games from engines that used
that system now have different game IDs.

Also-By: Matthew Hoops <clone2727@gmail.com>
2019-11-03 11:43:00 +01:00
Jaromir Wysoglad
9a7a7743bb TTS: Fix "No voice available" warning 2019-10-14 01:34:54 +02:00
Eugene Sandulenko
41b49444b6 RELEASE: This is 2.2.0git 2019-09-23 00:12:30 +02:00
Eugene Sandulenko
7414258dff JANITORIAL: Fix indentation 2019-09-14 22:23:04 +02:00
Jaromir Wysoglad
324a90f4f6 TTS: Implement tts state switching when needed.
The state has to be pushed and poped when there is a transition
between game and gui code.
2019-09-01 22:47:55 +03:00
Jaromir Wysoglad
ce64528129 TTS: Make sure that TTS lang matches transMan lang 2019-09-01 22:47:55 +03:00
Bastien Bouclet
c5b92bcb2e GUI: Better integration for the unknown game dialog when adding games
* The list of candidates now includes unknown variants. When an unknown
variant is selected, the unknown game dialog is shown.
* On the unknown game dialog, users are given the choice to add the game
when that is possible, or to cancel.

The goal of those changes is to make the unknown game dialog less
confusing for users, especially when both known and unknown games
variants are found.
2019-05-12 11:44:51 +03:00
Eric Culp
6d11f46b15 BASE: Only reload engine plugins after return to launcher
The other plugins do not need to be reloaded. Reloading
the scaler plugins breaks the graphics.
2019-03-10 03:49:29 +02:00
sluicebox
e67b8501bf WIN32: Fix embedding disabled engine files
Fix Windows builds (msvc and mingw) including data files from disabled
engines as embedded resources in executable. Bug #10878
2019-03-02 10:01:37 +02:00
Torbjörn Andersson
3153f017a2 BASE: Add feature string for liba52 support. 2019-01-13 09:02:45 +01:00
SupSuper
fc504996d3 GUI: Allow user to opt between GUI browser and native browser 2018-12-16 10:48:13 +00:00
Paul Gilbert
ef161922d8 ENGINES: Add optional extra configuration entries when creating new targets 2018-12-08 19:05:59 -08:00
Bastien Bouclet
bbbd40477d GUI: Add an option to set the GUI language to the game language 2018-12-02 19:47:32 +01:00
Cameron Cawley
8c6f9e5116 WIN32: Retrieve the version information for the resource script from base/internal_version.h 2018-11-16 09:14:37 +00:00
Cameron Cawley
79a4e3f813 BACKENDS: Remove references to the GP32 backend 2018-11-04 21:38:45 +00:00
Thierry Crozat
adacb4fcfd BASE: Add command line stretch mode arg 2018-07-08 16:54:51 +01:00
Bastien Bouclet
9d62f13e3a BASE: Fix a segfault when mass detector encounters an empty directory
Was introduced in the recent detection rework.
2018-06-17 18:09:40 +02:00
Torbjörn Andersson
4ea8ed4ff5 JANITORIAL: Fix comment typo 2018-06-13 20:49:36 +02:00
Bastien Bouclet
643ce81cf7 BASE: Remove temporary targets when they fail to launch
Prevents invalid targets created from the command line to show up in the
launcher.

Fixes Trac#2788.
2018-06-03 13:48:31 +02:00
Bastien Bouclet
1dcb8076db ENGINES: Remove usage of C++11 extended initializer lists 2018-05-10 09:26:26 +02:00
Bastien Bouclet
90b78c5446 ENGINES: Merge GameDescriptor and DetectedGame 2018-05-10 09:04:23 +02:00
Bastien Bouclet
faa2534f46 ENGINES: Factor adding games to ConfMan 2018-05-10 09:04:23 +02:00
Bastien Bouclet
5aff87dc15 ENGINES: Turn GameDescriptor into a simple struct 2018-05-10 09:04:23 +02:00
Bastien Bouclet
643c24db75 ENGINES: Change MetaEngine::listSupportedGames to return plain game descriptors 2018-05-10 09:04:23 +02:00
Bastien Bouclet
8fb149e3c7 ENGINES: Change MetaEngine::findGame to return a plain game descriptor 2018-05-10 09:04:23 +02:00
Bastien Bouclet
cf1ebf2951 ENGINES: Add unknown game variants to the game detector results 2018-05-10 09:04:23 +02:00
Lothar Serra Mari
451cf2304f ENGINES: Show the unknown Game dialog only when the detector is launched by the Add Game feature 2018-04-29 21:47:10 +01:00
Thierry Crozat
cb02d7471d BASE: Allow listing save games for all targets 2018-04-25 19:40:20 +01:00
Thierry Crozat
5907add148 BASE: Use --game to specify target for --list-saves command
This change brings the --list-saves command syntax in line with
other commands.
2018-04-25 19:40:20 +01:00
Bastien Bouclet
818117bda2 BASE: Allow options to come after command on the command line 2018-04-22 08:23:58 +02:00
Adrian Frühwirth
3747d852ee JANITORIAL: Fix whitespace 2018-04-15 16:31:31 +02:00
Tarek Soliman
093d477a08 BASE: Minor text fix for --copy-protection help 2018-04-12 20:28:39 -05:00
Vincent Bernat
9edd8eff01 AUDIO: add support for OPL2LPT
The OPL2LPT is an OPL2 chip plugged on a parallel port. It is
write-only but otherwise acts as a classic AdLib. This commit adds
support for this device.

User is expected to have the right permissions on the parallel
port. By default, the first suitable parallel port is used. It is
possible to override that with the hidden configuration setting
"opl2lpt_parport".

It depends on the presence of the libieee1284 library which abstracts
a bit parallel port handling. An alternative would be to access
directly /dev/parportX on Linux. This would amount of code but it
would be Linux-only.

Tested with Indy 3 and SOMI.
2018-04-08 09:17:19 +02:00
Eugene Sandulenko
e0968df671 BASE: Show nuked audio driver only when compiled 2018-04-07 09:37:58 +02:00
nukeykt
b2052bc66f AUDIO: Add Nuked OPL3 core 2018-04-07 09:34:00 +02:00
Colin Snover
d087c9605f BASE: Remove bad casts between incompatible Plugin types
Previously, a C-style cast was used to convert a
Common::Array<Plugin *>, populated with pointers to StaticPlugin
and DynamicPlugin instances, to a
Common::Array<PluginSubclass<T> *>, but PluginSubclass<T> is a
*sibling* class to StaticPlugin/DynamicPlugin, so this cast was
invalid and the results undefined. The methods for retrieving
subclasses of plugins can't be easily changed to just generate an
array of temporary wrapper objects that expose an identical API
which dereferences to the preferred PluginObject subclass because
pointers to these objects are retained by other parts of ScummVM,
so the wrappers would needed to be persisted or they would need to
just re-expose the underlying Plugin object again. This indicated
that a way to solve this problem is to have the callers receive
Plugin objects and get the PluginObject from the Plugin by
explicitly stating their desired type, in a similar manner to
std::get(std::variant), so that the pattern used by this patch to
solve the problem.

Closes gh-1051.
2017-12-03 20:26:38 -06:00
Thierry Crozat
cd7e6cd31c RELEASE: This is 2.1.0git 2017-11-30 00:13:10 +00:00
Colin Snover
c13defd661 RELEASE: 1.10 will henceforth be known as 2.0
General consensus on the ML was that people wanted to do this.
http://lists.scummvm.org/pipermail/scummvm-devel/2017-November/012008.html
2017-11-21 15:26:52 -06:00
Bastien Bouclet
2f733c812a BASE: Minor command line detection cleanup 2017-11-02 19:49:43 +01:00
Thierry Crozat
d98d4bc25d UPDATES: Fix crash when compiling with updates enabled but without an UpdateManager
This can happen when Sparkle was not found during configure which results
in USE_UPDATES being defined but USE_SPARKLE not being defined.
2017-09-08 21:21:53 +01:00
Thierry Crozat
62957b38ac CMD: Handle --game=<ID> for --detect and --auto-detect
The README and command line help indicated this should work,
but this was not implemented.
2017-08-06 19:14:13 +01:00
Thierry Crozat
8e5b8510c8 CMD: Improve warnings for --detect and --add when no game is found 2017-08-06 19:14:13 +01:00
Tobia Tesan
78253e38d1 CMD: Print full path information for --detect 2017-08-06 19:14:13 +01:00