312 Commits

Author SHA1 Message Date
Cameron Cawley
5b1b14ad80 COMMON: Mark more symbols as const 2023-12-26 20:23:59 +01:00
Le Philousophe
ed9ded9e83 GUI: Migrate GUI to Path class 2023-12-24 13:19:25 +01:00
Le Philousophe
b3fbce7782 BACKENDS: Migrate plugins to Path API 2023-12-24 13:19:25 +01:00
Le Philousophe
d931c58b5b BASE: Start considering game paths as Path class
As it's still stored as String, this is still safe for every legacy use
2023-12-24 13:19:25 +01:00
Le Philousophe
645a35c05b ENGINES: Migrate to Path class 2023-12-24 13:19:25 +01:00
Le Philousophe
0a636d0d40 COMMON: Make pluginspath a Path object 2023-12-24 13:19:25 +01:00
Paul Gilbert
85f341e0f3 MM: Add automatic update of old xeen engineId 2023-11-15 23:41:21 -10:00
Kaloyan Chehlarski
f77eca7c80 AD: Implement archive caching during detection
Renamed MD5CacheManager to AdvancedDetectorCacheManager,
and added facilities for storing open archives inside it. This
way an archive that was opened by an AdvancedDetector
will be kept in memory until the end of the detection, so
other entries/engines that will look inside it won't have
to reopen it and reread its data every time.
2023-11-02 18:20:44 +01:00
Le Philousophe
63f9958588 ANDROID: Fix build 2023-08-07 15:04:01 +02:00
Cameron Cawley
37764d86fc AUDIO: Support building the EAS MIDI driver on non-Android platforms 2023-08-06 14:10:50 +02:00
Donovan Watteau
b9fdf23937 BASE: Fix "an" typo 2023-03-16 14:47:28 +01:00
Einar Johan Trøan Sømåen
1f00706bfb
BASE: Filter out old graphics modes when passed to -g
Fix #12775
2023-02-12 09:44:51 +01:00
Roberto Sánchez
7f457f8e94 BASE: Refactor EngineManager::createTargetForGame 2022-12-07 22:58:48 +01:00
Roberto Sánchez
e2b0259d29 BASE: Add function EngineManager::generateUniqueDomain 2022-12-07 22:58:48 +01:00
Le Philousophe
2a84d3e988 VITA: Add plugins support 2022-08-07 18:15:09 +02:00
Cameron Cawley
f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02:00
Cameron Cawley
a020300701 ENGINES: Remove use of getEngineId() in MetaEngine subclasses 2022-07-20 11:54:19 +02:00
Cameron Cawley
dd72e0e488 RISCOS: Add a native MIDI driver 2022-06-20 23:33:42 +01:00
athrxx
54af166305 COMMON: (AD) - further reduce output of mass add detection
Follow-up to the feature that allows skipping certain ADGF flags.

This here now also allows skipping of incomplete file/md5/size matches. It is basically the same behavior as the graylist. For the mass add all files are treated as if they are on the list.
2022-06-12 10:12:39 +02:00
athrxx
e01416ef32 COMMON: (AD) - allow mass add to skip targets with certain ADGF flags
I added skipping for the ADGF_WARNING and ADGF_UNSUPPORTED flags.

For me, this is mostly about fixing bug no. 13282. We sometimes have bogus entries which only have the purpose of presenting the error message (reasons for being unsupported) contained in the extra field of the detection entry.
2022-06-12 10:12:39 +02:00
Eugene Sandulenko
5e05f93f36
ALL: Remove Symbian port 2022-05-28 12:32:29 +02:00
sluicebox
799a9eb942 BASE: Clear MD5 cache when upgrading to engine id
Fixes assigning the wrong game id when upgrading a target to have
an engine id. If a game had been run earlier ran then its checksums
could still be cached. If both games were from the same engine then
advanced detector could select the previous game.

Fixes bug: #13458
2022-05-03 15:43:35 -04: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
Orgad Shaneh
e92e232788 BASE: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Orgad Shaneh
2e68b4ffdc JANITORIAL: Use override
Using clang-tidy modernize-use-override
2021-11-14 02:59: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
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
Cameron Cawley
c2ae54306f BASE: Update scaler settings from old config files 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
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
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
a/
36a5797bae DETECTOR: Clear md5 cache before detection as well 2021-05-14 22:35:23 +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
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