Commit graph

59 commits

Author SHA1 Message Date
Le Philousophe
90b886097f ENGINES: Create a type aware advanced detector 2024-06-30 18:39:06 +02:00
Cameron Cawley
66b2483fd5 CGE2: Move the engine options into the MetaEngine subclass 2022-11-16 23:58:54 +01:00
Cameron Cawley
f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02:00
Torbjörn Andersson
e06f3c9a5a GUI: Allow game option checkboxes to be disabled
Depending on other game option checkboxes. This is used to
enable/disable the semi-smooth scrolling checkboxes for FM Towns Loom,
since it's only used when smooth scrolling is enabled.
2022-04-21 11:07:17 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
7f476c844f CGE2: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
trembyle
d915b804ac CGE2: Add detection for Sfinx Lite (demo)
Found on CD-ACTION (Poland) #21a Feb 1998.

From SFINX.TXT:
Przedstawiamy gre SFINX Lite, która jest grywalnym demem gry SFINX.

Translation:
We present the game SFINX Lite, which is a playable demo of the game
SFINX.
2021-09-19 14:52:46 +02:00
taylorzhancher
d3dd051e91
CGE2: Adding TTS feature 2021-07-26 12:35:27 +01:00
ysj1173886760
7af3a3f84c ENGINES: introduce ADDectedGameExtraInfo to ADGameDetector, add extra info as parameter for fallback detect. 2021-06-13 14:15:45 +02:00
ysj1173886760
b2f5ee4ab9 CGE2: move debug channels to metaEngineDetection 2021-05-22 01:34:57 +02:00
Eugene Sandulenko
09249f7ef2 CGE2: Use AD_ENTRY2s in detection table 2020-11-28 13:45:22 +01: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
aryanrawlani28
d26bbe521c ENGINES: ALL: Finish renaming ME & AME classes
- ME -> MetaEngineStatic (static parts)
- MEC -> MetaEngine (dynamic parts)
2020-10-03 14:56:36 +02:00
aryanrawlani28
29ceb07959 ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28
8189a05316 ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
4ef8eab545 CGE2: Split detection code & adapt to new plugins. 2020-10-03 14:56:36 +02:00
Bastien Bouclet
0f2c6cd9ea ENGINES: Change mac resource fork file detection to use the file cache
Common::MacResMan is now able to open files from a specified
Common::Archive. This is a bit hacky as dynamic_cast is used to break
the Archive encapsulation to retreive the underlying FSNode. It should
however be more correct than the previous code that assumed files were
at the root of the currently running game's path.

AdvancedDetector constructs a Common::Archive from its FileMap based
filesystem cache and uses it to detect the mac resource fork files.

This cuts the time it takes to run the detection code with all the
engines enabled as dynamic plugins on the 3DS to 30 s from 280 s.
2020-09-20 16:33:45 +02:00
Tomasz Długosz
eaab877d66 JANITORIAL: fix the name of original author of cge and cge2
The first name is Janusz, not Janus.
The correct name was used in AUTHORS and credits.
In case of doubts, see his personal webpage: https://www.jbw.pl/ - name is in the page footer
2020-04-18 20:59:57 +02:00
Bastien Bouclet
8b2902539e CGE2: Add override keywords 2020-02-09 12:43:14 +01:00
Eugene Sandulenko
1413dfb0a7 CGE2: Added override keywords 2020-01-31 12:54:57 +01:00
Bastien Bouclet
9c8bd056d6 ENGINES: Stop using 'single id' 2019-11-03 11:43:00 +01:00
Bastien Bouclet
4b42112721 ENGINES: Add an engine ID to all the engines 2019-11-03 11:43:00 +01:00
Bastien Bouclet
cf1ebf2951 ENGINES: Add unknown game variants to the game detector results 2018-05-10 09:04:23 +02:00
Thierry Crozat
699532157a CGE2: Add detection entry for Polish v1.1 version 2018-05-05 23:18:45 +01:00
Adrian Frühwirth
03312fba61 CGE2: Add play time metadata to savegames 2018-05-05 22:19:03 +02:00
Adrian Frühwirth
00e59a3122 ALL: Load savegame thumbnail only when necessary
This commit introduces the following changes:

1. Graphics::loadThumbnail()

   Now returns a boolean and takes a new argument skipThumbnail which
   defaults to false. In case of true, loadThumbnail() reads past the
   thumbnail data in the input stream instead of actually loading the
   thumbnail. This simplifies savegame handling where, up until now,
   many engines always read the whole savegame metadata (including
   the thumbnail) and then threw away the thumbnail when not needed
   (which is in almost all cases, the most common exception being
   MetaEngine::querySaveMetaInfos() which is responsible for loading
   savegame metadata for displaying it in the GUI launcher.

2. readSavegameHeader()

   Engines which already implement such a method (name varies) now take
   a new argument skipThumbnail (default: true) which is passed
   through to loadThumbnail(). This means that the default case for
   readSavegameHeader() is now _not_ loading the thumbnail from a
   savegame and just reading past it. In those cases, e.g.
   querySaveMetaInfos(), where we actually are interested in loading
   the thumbnail readSavegameHeader() needs to explicitely be called
   with skipThumbnail == false.

   Engines whose readSavegameHeader() (name varies) already takes an
   argument loadThumbnail have been adapted to have a similar
   prototype and semantics.
   I.e. readSaveHeader(in, loadThumbnail, header) now is
   readSaveHeader(in, header, skipThumbnail).

3. Error handling

   Engines which previously did not check the return value of
   readSavegameHeader() (name varies) now do so ensuring that possibly
   broken savegames (be it a broken thumbnail or something else) don't
   make it into the GUI launcher list in the first place.
2018-04-07 09:26:20 +02:00
Willem Jan Palenstijn
3108957812 CGE2: Clean up SearchMan after fallbackDetect 2017-09-20 20:53:14 +02:00
Eugene Sandulenko
fab199d37e JANITORIAL: Make GPL headers uniform 2016-09-03 12:46:38 +02:00
Alexander Tkachev
b665fc933d ALL: Make simpleSaveNames() a MetaEngineFeature
Added it into hasFeature() of all engines which returned `true` in
simpleSaveNames() before.

As mentioned in #788, SCI is not always using simple names, so it
doesn't have such feature now.
2016-08-24 16:07:55 +06:00
Alexander Tkachev
ab1d160ec8 ALL: Add MetaEngine::simpleSaveNames()
Engines with "simple" savenames would support "Run in background" in
save/load dialog and gradual save slots unlocking. Other engines
save/load feature would be locked until save sync is over.
2016-08-24 16:07:55 +06:00
Hubert Maier
3a3cc647d7 Fix CGE2 copyright sign 2016-05-29 15:11:57 +03:00
Johannes Schickel
0b6befdcc5 ENGINES: Make variable names of AdvancedMetaEngine conform to our guidelines.
_singleid   -> _singleId
_gameids    -> _gameIds
_guioptions -> _guiOptions
2016-03-08 19:01:13 +01:00
Johannes Schickel
8fce4b5f19 CGE2: Let listSaves return list sorted on slot numbers. 2016-02-25 21:39:45 +01:00
Johannes Schickel
1e64b4dd53 CGE2: Only request actual save slots in listSaves. 2016-01-26 16:35:30 +01:00
Thierry Crozat
0433eda4de CGE2: Add detection for new English freeware version 2014-12-21 18:25:57 +00:00
Thierry Crozat
c4a829a7c6 CGE2: Add detection for English v1.0 version of the game 2014-10-14 21:44:14 +01:00
Strangerke
a78b2c867d CGE2: Add some comment concerning the fallback detection in CGE2 2014-09-18 21:54:35 +02:00
Strangerke
1769003a9b CGE2: Implement fallbackDetect 2014-09-17 23:10:03 +02:00
Peter Bozsó
a418481a3c CGE2: Remove fallback detection for English translation. 2014-09-15 15:02:01 +02:00
Strangerke
ccdb9c8d6b CGE2: Add detection for the freeware v0.3 English 2014-09-11 21:37:24 +02:00
Peter Bozsó
6201ddf63e CGE2: Update English autodetection. 2014-09-06 22:26:39 +02:00
Strangerke
4be8aa8906 CGE2: Update Polish detection v1.0 freeware 2014-09-03 20:53:37 +02:00
Strangerke
5b6d520009 CGE2: Add detection for Sfinx v1.0 Freeware Polish 2014-09-01 22:14:21 +02:00
uruk
e545a0afc4 CGE2: Update version in the fallback detection. 2014-08-20 11:13:54 +02:00
Johannes Schickel
f35889713c CGE2: Get rid of superflous game name in extra field. 2014-08-12 17:42:04 +02:00
uruk
be859276d2 CGE2: Fix fallback detection. 2014-08-12 17:33:36 +02:00
uruk
854849f57a CGE2: Get rid of detection.h, move things to detection.cpp. 2014-08-11 15:28:43 +02:00
uruk
eb13d6ece1 CGE2: Add necessary tabs in detection.cpp. 2014-08-11 15:13:24 +02:00
uruk
1224d79e53 CGE2: Fix typo in detection.cpp. 2014-08-11 14:54:47 +02:00