Commit Graph

1381 Commits

Author SHA1 Message Date
Cameron Cawley
21b0d6ded1 BACKENDS: Replace GLEW with GLAD, part of PR #3463 2021-12-30 14:53:48 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko
ccfaf478ab
AD: Make sure that we initialize hashmaps. Unfortunately, this leads to less const'ness 2021-11-29 01:50:03 +01:00
Andrea Boscarino
f731cfd648
SCUMM: DiMUSE: New Digital iMUSE Engine (#3368)
SCUMM: DiMUSE: Add new implementation of the engine
2021-11-16 00:05:18 +01:00
Orgad Shaneh
e92e232788 BASE: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Orgad Shaneh
b11c5ace90 BACKENDS: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:31:41 +02:00
Orgad Shaneh
2e68b4ffdc JANITORIAL: Use override
Using clang-tidy modernize-use-override
2021-11-14 02:59:23 +02:00
av-dx
6b5c5ae0d6 GUI: Add default launcher type as "list" 2021-11-12 14:46:34 +01:00
av-dx
19295362a4 Revert "GUI: Register "list" as default launcher type"
This reverts commit d37c338a193e6400a598f8b457b6d0ec660293b9.
2021-11-12 14:46:34 +01:00
av-dx
0f35813ef7 GUI: Register "list" as default launcher type 2021-11-12 14:46:34 +01:00
av-dx
7d1c3af603 GUI: Split the LauncherDialog into two classes create a chooser object 2021-11-12 14:46:34 +01:00
Carlo Bramini
6c769062c6 BASE: Convert version strings to const objects.
The following variables:

gScummVMVersion
gScummVMBuildDate
gScummVMVersionDate
gScummVMFullVersion
gScummVMFeatures

are declared as pointers to strings but there is no need to do so.
They can be simply declared as const strings, since they will be never modified when SCUMMVM runs.

Exports version variables as const strings
2021-11-01 16:31:55 +01:00
Martin Gerhardy
ebdad0681c BASE: added --list-records command line option 2021-10-13 01:56:43 +03:00
Eugene Sandulenko
9a4f0b7c66
RELEASE: This is 2.6.0git now 2021-10-01 16:04:48 +03:00
Eugene Sandulenko
927b9af1c9
BASE: Set debug flags before instantiating an engine 2021-09-26 13:43:23 +02:00
Marcus Comstedt
47de1896b9 PLUGINS: In uncached mode, try plugin which matches engine name first
Trying all engine plugins in alphabetical order is a time consuming
process, so start by trying the plugin which has the same name as the
engine id first, if it exists, as it will usually be the right one.

In the rare case that it would be the wrong one there is no problem;
the code will simply fall through to the old scanning and then record
the correct plugin in the engine_plugin_files domain where it will be
found the next time the plugin is needed.
2021-09-20 23:28:57 +02:00
Marcus Comstedt
d2fba8fc2f PLUGINS: Make detection plugin filename check case insensitive
Plugin filenames are all upper case on Dreamcast due to the ISO 9660
filesystem.  It doesn't seem likely that making the check case
insensitive would cause any problems even on a file system that
is case sensitive.
2021-09-20 23:28:57 +02:00
Cameron Cawley
2f99746d8d ENGINES: Allow implementing registerDefaultSettings in the MetaEngine class 2021-09-18 11:57:29 +02:00
Lothar Serra Mari
74d4380781 BASE: Don't check for config key presence when loading gfx mode 2021-09-18 04:23:19 -05:00
Scott Percival
29d6758c0d EVENTRECORDER: Add update mode
This new mode is functionally identical to playback mode, however
a new recording file is used to track the actual output of ScummVM.
This feature can be used to update a suite of existing recordings after
a renderer or a timing change.
2021-09-09 19:32:02 +02:00
Scott Percival
40aadcf139 EVENTRECORDER: Add --screenshot-period to the CLI 2021-09-09 19:32:02 +02:00
Scott Percival
bd7b605552 EVENTRECORDER: Allow --record-file-name for record mode 2021-09-09 19:32:02 +02:00
Lothar Serra Mari
8b3319bd37 BASE: Enable Discord RPC integration by default 2021-09-02 14:21:07 +02:00
Eugene Sandulenko
580ec65220
RELEASE: This is 2.4.0git 2021-08-28 21:01:11 +02:00
sluicebox
386c5659ec BASE: Purge keyboard/mouse events before running Engine
Fixes GUI events leaking into engines at startup. This caused
Phantasmagoria 1 to skip its introduction if the game was started from
the ScummVM GUI with a keyboard (Enter) but not with a mouse because
the key-down event started the engine and the key-up event remained
in the queue.

This also purges and mouse events since we happen to already have a
purgeMouseEvents() method. We may want to also clear joystick inputs,
or possibly the entire event queue, but that can be done after the
upcoming release. For now, the known bug is fixed.
2021-08-23 15:46:33 -05:00
Thierry Crozat
9f46c9a3ac BASE: Add TTS to version information 2021-08-18 22:38:55 +01:00
Eugene Sandulenko
fef26b3c59
BASE: Capture all global debug channels as early as possible 2021-08-16 21:28:26 +02:00
Eugene Sandulenko
436e47292e
BASE: Load engine plugins by name. Fixes bug #12342
This is a degradation from the split of detection plugins. All the
caching code which was present was left with detection plugins which
now make no sense: we always load all detection plugins as a whole.

This commit moves the caching logic over to the Engine plugins.

This opens a question now whether we should move all to UNCACHED_PLUGINS
2021-08-16 20:32:53 +02:00
trembyle
63b8d47df5 CONFIGURE: Enable building with Windows text console output
Create a new flag --enable-windows-console to build with console
output on MinGW. The default behavior will be to enable the console.
The current plan is to continue to offer the users both options for
release builds - ScummVM and ScummVM (noconsole).

Whenever the text console is enabled, Windows console will be added
by default. This is to prevent a situation where ScummVM will not load
any visible debug console on hotkey or error.
2021-07-13 11:57:22 -05:00
Torbjörn Andersson
2ba156184c SCUMM: Add Macintosh b/w rendering mode
This is currently only (partially) implemented for the 16-color Mac
versions of Loom and Indiana Jones and the Last Crusade. The text is
still drawn in color, since that's rendered separately, but I'm
committing this now while it still works.
2021-07-13 09:53:36 +02:00
Cameron Cawley
c2ae54306f BASE: Update scaler settings from old config files 2021-06-23 21:29:53 +02:00
Cameron Cawley
b2d41daabc GUI: Add improved scaler selection to the Options dialog 2021-06-23 21:29:53 +02:00
Cameron Cawley
da5d773924 BACKENDS: Add getDefaultScaler and getDefaultScaleFactor to OSystem 2021-06-23 21:29:53 +02:00
sluicebox
f2f28c4549 COMMON: Rename DebugManager methods, update comments 2021-06-14 12:42:38 -05:00
sluicebox
efd4f9ff9d COMMON: Remove DebugManager::debugFlagsClear() 2021-06-14 12:42:38 -05:00
sluicebox
fa247d13de COMMON: Rename DebugManager global/member names 2021-06-14 12:42:38 -05:00
sluicebox
8e1d90f8e4 ALL: Remove clearAllDebugChannels() from Engine dtors 2021-06-14 12:42:38 -05:00
Annick Ecuyer
1fe46a61f2 BASE: Added --engine=ID for --list-all-games and --list-games
For the command line, lists games only for the specified engine.
(optional)
2021-06-10 22:42:39 +01:00
sluicebox
77cfab947a BASE: Fix debug levels parameter name 2021-06-10 10:47:42 -06:00
SupSuper
e3d082df65 MSVC: Add compiler printf validation 2021-06-02 08:35:31 +03:00
ysj1173886760
649661a6da BASE: add clarification for list-debugflags when typing help 2021-05-22 01:34:57 +02:00
ysj1173886760
d147ab855f BASE: add listing the engine specified debugflags in commandline 2021-05-22 01:34:57 +02:00
ysj1173886760
5feac6bdff BASE: add list-all-debugflags and list-debugflags to commandLine 2021-05-22 01:34:57 +02:00
ysj1173886760
d3b596d820 BASE: Register debug channels before calling the findGame() in main.cpp 2021-05-22 01:34:57 +02:00
ysj1173886760
4505054c33 BASE: Register debug channels before calling the findGame() in plugins.cpp 2021-05-22 01:34:57 +02:00
ysj1173886760
1c333f66e2 BASE: change the method name to adapt for new api 2021-05-22 01:34:57 +02:00
ysj1173886760
a6542f242e BASE: move setting debug flags to debug manager, set debug flags before call detectGames 2021-05-22 01:34:57 +02:00
ysj1173886760
f07ceca9cb BASE: add global debug flag 2021-05-22 01:34:57 +02:00
ysj1173886760
061fd12966 BASE: register debug channel before instantiate the engine in main 2021-05-22 01:34:57 +02:00
Le Philousophe
66cf874a6a BASE: When replacing a duplicate plugin unload it first
This avoids having plugins loaded twice for nothing and avoids crashes
on AmigaOS at exit.
2021-05-15 12:52:22 +02:00
Le Philousophe
610fdfade8 BASE: Unload plugins when exiting after processing arguments
When not displaying the GUI, plugins are not unloaded.
This can cause problems on AmigaOS where plugins must be unloaded before
exiting. Else, some plugins with global destructors cause crashes being
destroyed too late.
2021-05-15 12:50:52 +02:00
a/
36a5797bae DETECTOR: Clear md5 cache before detection as well 2021-05-14 22:35:23 +02:00
Le Philousophe
8a67d8913e BASE: Fix segmentation fault when detection plugin cannot be found
This could happen if some engine plugin is placed in a build where
detection was not compiled in
2021-05-08 23:45:57 +02:00
Le Philousophe
1ac759abdc BASE: Load all plugins linked inside detection plugin
This was done in UncachedPluginManager but not in PluginManager
2021-05-08 23:45:39 +02:00
Martin Gerhardy
9d82fa51df COMMON: removed USE_TTS check from engines
OSystem now just returns a nullptr if there is no text to speech manager instance
(because none is compiled into the binary, or the system doesn't provide support
for it). This removed the need for the engine authors to add scummvm osystem compile
time options checks into their engine code
2021-05-03 14:13:41 +03:00
Eugene Sandulenko
7fde53d5f7
BASE: Remove redundant warning. It will be triggered at the end of the function 2021-05-02 01:11:04 +02:00
Cameron Cawley
c38e3bdc2a AUDIO: Support building with FluidLite 2021-04-25 20:39:55 +03:00
Eugene Sandulenko
a78dfea622
BASE: Add taskbar to version information 2021-04-25 02:19:07 +02:00
Eugene Sandulenko
06794e48c6
BASE: Implemented --window-size command line option 2021-04-21 00:57:31 +02:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
Eugene Sandulenko
6608aac670
BASE: Do not warn on unhandled empty command, improve warning wording 2021-04-14 20:37:28 +02:00
Eugene Sandulenko
9b23dfef5a
BASE: Added --list-all-engines and warn developer about unhandled command line keys 2021-04-14 15:25:08 +02:00
Eugene Sandulenko
003d4cda09
BASE: Made --list-games show list of supported games and added --list-all-games 2021-04-14 15:18:19 +02:00
Eugene Sandulenko
6e8106aa49
BASE: Fix --list-targets aster HashMap rewrite 2021-04-14 15:06:00 +02:00
Eugene Sandulenko
1774094089
BASE: Make --list-engines show list of truly compiled engines
After plugins were split, we were showing list of detection plugins
which is misleading, since all of them are always included.
2021-04-14 15:04:37 +02:00
Lothar Serra Mari
28544b4b58 BASE: Indicate if GIF support was compiled into a build 2021-04-10 18:50:36 +02:00
Eugene Sandulenko
5c3413714e
BASE: Indicate if Event Recorder was compiled in into a build 2021-04-09 23:54:00 +02:00
Cameron Cawley
f88769f132 BASE: Fix a crash when attempting to run a disabled engine 2021-04-08 12:18:11 +03:00
Cameron Cawley
3e8ab22eb2 BASE: Don't attempt to unload detection code when building with static detection 2021-04-07 14:38:51 +02:00
Cameron Cawley
a1890ede9c BASE: Avoid calling PluginMan.getEngineFromMetaEngine where possible 2021-04-05 15:33:23 +01:00
Mataniko
8802184bd5 PLUGINS: Remove CoreMidi hack 2021-03-29 19:39:22 -04:00
Johannes Schickel
abbdadf869 GRAPHICS: Add possibility to search for a scaler via its name. 2021-03-15 16:48:40 +02:00
Martin T. H. Sandsmark
f4f9957f85 scalerplugin: port to new plugin api 2021-03-15 16:48:40 +02:00
Eric Culp
f172718b79 CONFIGURE: Added configure option for Edge2x-3x scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
592617e2ce GRAPHICS: Add Edge2x/3x scaler
This currently does not conform to coding standards and contains a lot
of dead code (This will be fixed). Thanks to Eric Welsh for the original
patch.
2021-03-15 16:48:40 +02:00
Eric Culp
267b385890 GRAPHICS: Add 2xPM scaler with 16 and 32 bit support 2021-03-15 16:48:40 +02:00
Eric Culp
a3a9736754 GRAPHICS: Add TV scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
20b4356ecd GRAPHICS: Add AdvMame scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
5e73533110 GRAPHICS: Add SuperEagle and SuperSAI scaler plugins 2021-03-15 16:48:40 +02:00
Eric Culp
8030b7879c GRAPHICS/SDL: add ifdefs for disabling scalers 2021-03-15 16:48:40 +02:00
Eric Culp
b70a04214b GRAPHICS/BASE: adds Dotmatrix scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
8c9cb22734 GRAPHICS/SDL/BASE: fix scaler declarations
mainly adding const and using uint instead of int
2021-03-15 16:48:40 +02:00
Eric Culp
ca1754c047 GRAPHICS/BASE: add maxExtraPixels() to ScalerMan 2021-03-15 16:48:40 +02:00
Eric Culp
ef2b057eef GRAPHICS: adds 2xsai as scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
83a8abda70 GRAPHICS: add support for hq scaler plugin 2021-03-15 16:48:40 +02:00
Eric Culp
7bcc1f0b13 GRAPHICS: Adds a nearest neighbor plugin
It's not used yet, but it compiles and is managed by the plugin manager.
2021-03-15 16:48:40 +02:00
Eric Culp
a3af191753 GRAPHICS/BASE: Adds definitions for scaler plugins
This includes a class for plugin implementations to inherit from and
code necessary for plugin managers to use scalers
2021-03-15 16:48:40 +02:00
BeWorld
134df1e746 MORPHOS: Added CAMD MIDI driver support
Merge with AmigaOS4 camd.cpp
2021-02-21 15:44:44 +00:00
Thierry Crozat
67720ef658 JANITORIAL: Remove obselete references to MetaEngineConnect
At some point when splitting the MetaEngine to a detection
plugin and a static meta engine, the former was called
MetaEngine while the latter was called MetaEngineConnect.
Thus was then later change to MetaEngineDetection and
MetaEngine. But some references were left to the former
names in comments and documentation.
2021-02-14 14:32:36 +00:00
Henrik "Henke37" Andersson
2eb52fe900 COMMON: Retire dangerous non const operator[] on ConfMan 2021-02-12 00:41:23 +01:00
Cameron Cawley
76ac4414ec BASE: Fix crash when building with uncached plugins and static detection 2021-02-08 03:09:58 +02:00
av-dx
7950a9b215 GUI: Refresh stretch mode and shader on returning to launcher 2021-01-24 04:09:09 +02:00
Thierry Crozat
a1c807704d ALL: Ignore force RTL option when the engine does not support RTL
This fixes bug #12072: Cannot quit Blazing Dragons when always
return to launcher is selected
2021-01-20 23:35:47 +00:00
Vladimir Serbinenko
0d39e96f55 COMMON: Make TranslationManager reusable.
This makes it possible to reuse TranslationManager with different
files.
2020-12-17 09:49:18 +01:00
Thierry Crozat
4518f73f92 BASE: Remove FORCE_RETURN_TO_LAUNCHER define
This was only used by the ps2 backend, and that backend no longer
exists. Also now backends that want to force RTL should use the
kFeatureNoQuit OSystem feature instead.
2020-12-09 22:13:22 +00:00
Thierry Crozat
9e5540f838 BASE: Handle RTL at exit config in scummvm_main
This config was handled in the DefaultEventManager, but this did not
work for engines that quit the game without using a QUIT_EVENT (such
as SCI). So now it is handled one level up directly in scummvm_main.

Note: It is still also handled in the DefaultEventManager so that we
get the correct confirmation dialog there when "confirm_exit" is true.
2020-12-09 22:13:22 +00:00
Cameron Cawley
3d46c5ecf9 BASE: Rearrange the dynamic detection code 2020-12-06 19:56:44 +01:00
Bartosz Gentkowski
7192ec0bb5 DOXYGEN: Fix the build output and structure
This commit introduces a couple tweaks to the
doxygen build configuration to assure the
overall structure looks correct.
2020-12-02 22:55:41 +00:00
Lothar Serra Mari
4ee02f869c GUI: Add GUI option to always return to the Launcher instead of quitting
ScummVM
2020-12-02 22:39:22 +00:00
Cameron Cawley
01b4432825 BACKENDS: Use Common::U32String for OSystem::setWindowCaption 2020-11-22 17:20:19 +00:00
Cameron Cawley
11724f9df1 GUI: Add a tab for backend-specific options 2020-11-22 16:35:03 +00:00
Cameron Cawley
1bf1fb40fc
CONFIGURE: Allow building with TinyGL disabled (#2528) 2020-10-14 20:31:22 +02:00
Eugene Sandulenko
7ff34bc9ec PLUGINS: MetaEngineStatic -> MetaEngineDetection 2020-10-11 23:14:39 +02:00
Eugene Sandulenko
7ea6781043 PLUGINS: PLUGIN_TYPE_METAENGINE -> PLUGIN_TYPE_ENGINE_DETECTION 2020-10-11 23:12:32 +02:00
Paweł Kołodziejski
35b9cccbde ALL: Merge ResidualVM 2020-10-09 19:44:13 +02:00
Pawel Kolodziejski
2ecbaef5b5 BASE: Added more information about opengl related features 2020-10-07 11:33:22 +02:00
Pawel Kolodziejski
b05551ec2d BACKEND: Drop bpp param. it was used for grim only. 2020-10-05 14:41:36 +02:00
Pawel Kolodziejski
4631c0e2ed ALL: Sync with ScummVM rev: a4002bdeee 2020-10-04 23:59:26 +02:00
Eugene Sandulenko
b73034e3a0 GUI: Added setting for disabling directory scan at the GUI launch 2020-10-04 18:05:02 +02:00
Pawel Kolodziejski
1f73d401ab BASE: Cleanup cmdline options 2020-10-04 14:43:09 +02:00
Eugene Sandulenko
9590eed4b4 BASE: Upgrade fullpipe engineid to ngi
Making it hardcoded because:
  * This is the only place where it could happen
  * It is the second time in history of ScummVM when we renamed
    and engine (the first one was Simon -> AGOS)

Thus, there is a little sense in creating a universal solution.
2020-10-04 14:17:59 +02:00
aryanrawlani28
ffa69bfb26 GUI: debug statements related to plugins matching -> level 9. 2020-10-03 14:56:36 +02:00
aryanrawlani28
41af1b63a9 BASE: PLUGINS: Improve fb detection for Sci & Wintermute 2020-10-03 14:56:36 +02:00
aryanrawlani28
71a820caff ENGINES: Begin class renaming of ME & AME
- ME -> MetaEngineStatic (static parts)
- MEC -> MetaEngine (dynamic parts)
2020-10-03 14:56:36 +02:00
aryanrawlani28
c48719404a BASE: PLUGINS: Rename plugin matching helpers
- give*From* -> get*From*
2020-10-03 14:56:36 +02:00
aryanrawlani28
a9841622e0 ENGINES: DETECTION: Use inheritance hierarchy and mimic existing plugins. 2020-10-03 14:56:36 +02:00
Eugene Sandulenko
ceabaf3b0d BASE: Added override keywords 2020-10-03 14:56:36 +02:00
aryanrawlani28
ba5368542f BASE: PLUGINS: Update header file & use DETECTION_STATIC def check to build static detection features. 2020-10-03 14:56:36 +02:00
aryanrawlani28
ac900a06b8 BASE: PLUGINS: Use engines/detection_table header for static plugins 2020-10-03 14:56:36 +02:00
aryanrawlani28
fea29b04ac BASE: PLUGINS: Add a plugin suffix only if it is available 2020-10-03 14:56:36 +02:00
aryanrawlani28
7615f37698 BASE: PLUGINS: Add detection tables header file when getting static plugins. 2020-10-03 14:56:36 +02:00
aryanrawlani28
5f5363f03b BASE: MAIN: Load/Unload detection plugin for UncachedPluginMan as/when needed.
- Used only in context of UncachedPluginMan
- Always load on startup
- When starting a game, unload all other MetaEngines except the one needed.
2020-10-03 14:56:36 +02:00
aryanrawlani28
8dfaf6cc0e BASE: PLUGINS: Add support for detection plugins to be loaded on demand.
- Mainly used for UncachedPluginManagers.
- CachedPluginManagers will not handle these, as metaengines will always be available in memory.
2020-10-03 14:56:36 +02:00
aryanrawlani28
b78534dcb0 BASE: PLUGINS: Seperate declaration/definition of StaticPlugins.
- Move declarations inside plugins.h to make it visible to detection/detection.cpp
2020-10-03 14:56:36 +02:00
aryanrawlani28
408158edc9 BASE: PLUGINS: Add a new type of plugin - DETECTION. 2020-10-03 14:56:36 +02:00
aryanrawlani28
53f08789eb BASE: PLUGINS: Restore functionalities of uncached plugin manager for the new changes. 2020-10-03 14:56:36 +02:00
aryanrawlani28
84ddd3ac88 BASE: PLUGINS: Remove comments referring to old game detection 2020-10-03 14:56:36 +02:00
aryanrawlani28
0cc8719417 BASE: ENGINES: Adapt to keymaps moving to engine plugins
- Also improvise usage of MetaEngineConnect in main.cpp a bit.
2020-10-03 14:56:36 +02:00
aryanrawlani28
9353e339c6 BASE: MAIN: Proper usage of unloadPluginsExcept before running a game. 2020-10-03 14:56:36 +02:00
aryanrawlani28
bdafdf220d BASE: PLUGINS: Deprecate improper usage of unloadPluginsExcept 2020-10-03 14:56:36 +02:00
aryanrawlani28
73cc973ad7 BASE: ENGINES: Change saveload code to adapt to the new MEC class.
- MEC: MetaEngineConnect.
- How do games handle save/load if MetaEngine (detection) is seperate from MetaEngineConnect (engine factory)?

- Most of the changes are quite similiar. ConfMan finds us the relevant MetaEngine, then simply use the new helpers from PluginMan.
- The new helpers will help convert a relevant MetaEngine into the other format or vice versa.
- Once the matching is complete, simply invoke functions by:
plugin->get<MetaEngineConnect>().engineMethod();
- Refer to previous commits to see the new class changes & notes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
39f5c93c5c BASE: PLUGINS: Bump PLUGIN_TYPE_ENGINE_VERSION to 2
- Because of the many changes happening to engine classes, it would be a good idea to update the version, something similiar was done with themes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
50e9f0d875 BASE: PLUGINS: Add helper methods which match MetaEngine to Engine & vice-versa 2020-10-03 14:56:36 +02:00
aryanrawlani28
f2dd03e7d8 BASE: PLUGINS: Implement a getEngineId for PluginObjects, return nullptr by default.
- See comments.
2020-10-03 14:56:36 +02:00
aryanrawlani28
575e77522a BASE: MAIN: Change how running games works.
- In runGame(), in main.cpp, we get a plugin of type MetaEngine.
- This MetaEngine cannot createInstances, but it just a helper class.
- Connect a MetaEngine class with it's factory class - MetaEngineConnect.
- Then, simply call the method.
2020-10-03 14:56:36 +02:00
aryanrawlani28
943df64b32 ENGINES: Change behaviour of EngineMan::getPlugins.
- Changed so we can get any type of plugins.
- This used to always return PLUGIN_TYPE_ENGINE.
- Because now we can differentiate between engines and metaengine, this must be changed.
- For now, return METAENGINE by default
2020-10-03 14:56:36 +02:00
aryanrawlani28
f07bdb100e BASE: PLUGINS: Implement unloadPluginsExcept correctly
- The new implementation matchs a plugin from type MetaEngine to an Engine, and unloads every else ENGINE.
2020-10-03 14:56:36 +02:00
aryanrawlani28
09c1e1e07d BASE: Change how game detection works.
- Do NOT use pluginMan and load plugins, etc, etc.
- Get MetaEngines from memory, since they're always built in statically.
- Use detectGames method to detect games.
2020-10-03 14:56:36 +02:00
aryanrawlani28
6689fa740a BASE: PLUGINS: Add a new type of plugin - MetaEngine
- MetaEngines will now always go to the executable.
- But, because they still live in engine projects and are connected via a macro, they will need to be differentiated from Engines.
- This macro, and it's use in future will help in that.
2020-10-03 14:56:36 +02:00
aryanrawlani28
a8d5168a35 PLUGINS: Add a ease-use macro - PLUGIN_ENABLED 2020-10-03 14:56:36 +02:00
Pawel Kolodziejski
d8f2040dba ALL: Drop setupScreen API, use new initGraphics3d from engine API.
Enabled system API for begin/end gfx transactions, initSize, setGraphicsMode.
Function setGraphicsMode will use optional params to trigger 3d rendering
and switch to proper SDL Gfx manager.
2020-10-02 19:14:19 +02:00
Pawel Kolodziejski
6f69981904 BACKENDS: Drop launcherInitSize() and use 2d backend gfx manager for launcher. 2020-09-30 16:52:44 +02:00
Pawel Kolodziejski
2b248a85bf ALL: Minimise differences with ScummVM 2020-09-29 07:57:40 +02:00
Pawel Kolodziejski
bfe58d3c77 ALL: Synced with ScummVM - rev: d4db631f9b 2020-09-23 21:52:10 +02:00
Lothar Serra Mari
51c42478d2 BASE: WIN32: Exclude scummvm's base directory from plugin path
Currently, the plugin architecture searches for plugins in ScummVM's
base directory and in the plugins directory itself.

However, for Win32, we need to bundle several DLL files in order to
make ScummVM run at all. Currently, this leads to several warning
messages since ScummVM tries to load those DLLs as plugins.

This patch excludes the ScummVM base directory when running on Win32 and
only accepts plugins from the plugins directory.
2020-09-13 18:03:16 +02:00
Pawel Kolodziejski
15a759370a ALL: Synced with ScummVM - rev: bdbbcd81ae 2020-09-12 19:38:50 +02:00
Pawel Kolodziejski
d5304e2568 ALL: Synced with ScummVM - rev: 33a47d23b8 2020-09-03 02:21:14 +02:00
Thierry Crozat
1dfbb0cc4c BASE: Add c++11 unicode string literal test 2020-09-01 01:33:39 +01:00
aryanrawlani28
01176e43f7 GUI: U32: Use unicode based generateGameReport correctly in all places
- UnknownGameDialog: Use u32 for gameReport dependant functions
2020-08-30 14:43:41 +02:00
aryanrawlani28
68d01321d6 GUI: U32: Downscale changes of U32, fix review issues
This commit addresses a range of changes, within scummvm subproject.

- Audio files, like mididrv, remove U32String based name and identifier, because ASCII only.
- mididrv.cpp had some wrong format for warning messages, fix those
- Message dialogs were modified to use default arguments more often, but reverting back to the orignal to minimize changes.
- SetTooltip has a fake constructor that takes in a string, and use it.
- U32Format had some break statements missing, add those.
- RemapWidget: Use fake constructor for setLabel and setTooltip, to make minimal changes
- SDL: setting text in clipboard no longer uses SDL_iconv_string
- TTS: Override base class "say" with strings, so tts->say can be used with normal strings too.
- About dialog: fix incorrect code for u32string variables
- Fix some extra brackets
- Some buttons were incorrectly removed from using translated labels, revert those
- Message Dialog: Pass default and alt buttons as const references
- Saveload Dialog: Use translations in missing places, use const-references. Also, use translations in a correct manner.
- Use const references for tooltip in GraphicsWidget, EditTextWidget, error.cpp
- DomainEditTextWidget: Use U32String for text
2020-08-30 14:43:41 +02:00