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
Colin Snover
a5bc89102e
ALL: Remove obsolete register keyword
...
The register keyword was deprecated from the C++11 standard,
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4193.html#809 >,
and removed from the C++17 standard,
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4340 >, so
cannot exist in a well-formed C++17 program.
It has never done anything in GCC
<https://gcc.gnu.org/ml/gcc/2010-05/msg00113.html >
and because of the way it is specified in the standard, it is “as
meaningful as whitespace”
<http://www.drdobbs.com/keywords-that-arent-or-comments-by-anoth/184403859 >.
The one remaining use of the register keyword is in the DS backend,
where it is used to create a local register variable using the
non-standard GCC Extended Asm feature.
Closes gh-1079.
2017-12-03 20:27:42 -06:00
Colin Snover
432fd522d2
ENGINES: Remove default1x scaler flag
...
This flag is removed for a few reasons:
* Engines universally set this flag to true for widths > 320,
which made it redundant everywhere;
* This flag functioned primarily as a "force 1x scaler" flag,
since its behaviour was almost completely undocumented and users
would need to figure out that they'd need an explicit non-default
scaler set to get a scaler to operate at widths > 320;
* (Most importantly) engines should not be in the business of
deciding how the backend may choose to render its virtual screen.
The choice of rendering behaviour belongs to the user, and the
backend, in that order.
A nearby future commit restores the default1x scaler behaviour in
the SDL backend code for the moment, but in the future it is my
hope that there will be a better configuration UI to allow users
to specify how they want scaling to work for high resolutions.
2017-10-07 12:30:29 -05:00
Willem Jan Palenstijn
3108957812
CGE2: Clean up SearchMan after fallbackDetect
2017-09-20 20:53:14 +02:00
Torbjörn Andersson
462f1c9859
JANITORIAL: Silence more GCC 7 warnings
...
There were all flagged as intentional fall throughs. I simply changed
the comments to something GCC would recognize.
2017-08-06 12:26:05 +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
Eugene Sandulenko
33abb6118f
ALL: Change main engine header guard defines to <directory>_<engine>_H
...
Recently we started to use this as new semantics, although in the past
we used simly <engine>_H. Now these guard defines are consistent with
rest of the files which are used in the engines.
2016-05-17 18:21:30 +02:00
Eugene Sandulenko
31514f8164
CGE2: More portable way of getting max long value
2016-05-02 17:50:15 +02:00
Ori Avtalion
3564032330
JANITORIAL: Reduce audio header dependencies
2016-04-14 16:10:21 +03:00
Ori Avtalion
253e18c440
JANITORIAL: Reduce GUI header dependencies
2016-04-14 13:30:14 +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
Strangerke
83fcab050c
CGE2: Fix a couple of boolean values
2016-02-25 22:15:32 +01:00
Johannes Schickel
8fce4b5f19
CGE2: Let listSaves return list sorted on slot numbers.
2016-02-25 21:39:45 +01:00
Thierry Crozat
849f4f2d49
CGE2: Add events.cpp to POTFILE
2016-02-20 21:24:49 +00:00
Thierry Crozat
369d23dc3f
CGE2: Translate buttons in load and save dialogs.
2016-02-20 21:08:34 +00:00
Johannes Schickel
1e64b4dd53
CGE2: Only request actual save slots in listSaves.
2016-01-26 16:35:30 +01:00
Eugene Sandulenko
6e9fe0052c
CGE2: Fix rounding error
2015-11-27 22:34:26 +01:00
Strangerke
751183a269
CGE2: Silent a CppCheck warning
2015-11-27 15:06:10 +01:00
Thierry Crozat
0433eda4de
CGE2: Add detection for new English freeware version
2014-12-21 18:25:57 +00:00
uruk
0aba59b460
CGE2: Add support for Sfinx.
2014-12-01 14:45:18 +01:00
Filippos Karapetis
c76c72c799
CGE2: Remove trailing whitespace
2014-10-28 16:06:07 +02:00
Thierry Crozat
c4a829a7c6
CGE2: Add detection for English v1.0 version of the game
2014-10-14 21:44:14 +01:00
uruk
601918c917
CGE2: Fix bug #6733 .
...
The problem was that the engine used the SFX volume for later parts of speeches longer than one sound file.
2014-10-10 15:02:29 +02:00
Thierry Crozat
7a431ecb2c
CGE2: Add list of files that contain translatable strings
2014-10-04 01:01:13 +01:00
Strangerke
1fe9038918
CGE2: Initialize a variable
2014-09-29 00:35:09 +02:00
Strangerke
9a927d7fd1
CGE2: Initialize some variables
2014-09-29 00:23:42 +02:00
Willem Jan Palenstijn
2c61e80d7e
CGE2: Constify strings
2014-09-28 23:57:26 +02:00
Strangerke
9ee78d1e4c
CGE2: Fix the case of a couple of constants, remove a useless variable
2014-09-28 23:43:07 +02:00
Strangerke
cd86ccb73e
CGE2: Remove unused constants
2014-09-28 23:39:18 +02:00
Matthew Hoops
cbfa8bfccd
CGE2: Silence gcc warnings
2014-09-28 15:29:49 -04:00
Strangerke
b5ad4eedb3
CGE2: Fix a crash when detecting an empty set of VOL files
2014-09-26 23:41:31 +02:00
Strangerke
a78b2c867d
CGE2: Add some comment concerning the fallback detection in CGE2
2014-09-18 21:54:35 +02:00
Strangerke
0b81ffedd4
CGE2: Reduce the scope of a variable
2014-09-17 23:10:25 +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
unknown
5c8129a1dd
CGE2: Refactor _startupMode.
2014-09-07 11:01:23 +02:00
Peter Bozsó
da1b76be4d
Revert "CGE2: Make the intro skippable."
...
This reverts commit 5e099e90bc
.
There's no need for this addition, since the intro was skippable before that too, by hitting the ESC key.
See System::touch().
2014-09-07 10:45:29 +02:00
Peter Bozsó
5e099e90bc
CGE2: Make the intro skippable.
2014-09-06 22:52: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
606f80ef36
CGE2: Silence warning about uninitialized variable.
2014-08-22 14:55:13 +02:00
uruk
e545a0afc4
CGE2: Update version in the fallback detection.
2014-08-20 11:13:54 +02:00
uruk
e525878444
CGE2: Silence GCC warning.
2014-08-13 21:18:34 +02:00
uruk
12a894a803
CGE2: Add checkMute().
...
This keeps the "Mute All" option of ScummVM and the music on/off and speech on/off buttons of Sfinx's toolbar in sync.
2014-08-13 21:16:20 +02:00
uruk
d7a9ea9e2a
CGE2: Rework sound system.
2014-08-13 20:58:22 +02:00
uruk
c247125469
CGE2: Rename _soundHandle to _sfxHandle.
2014-08-13 20:35:31 +02:00
uruk
28a450982a
CGE2: Fix initVolumeSwitch().
2014-08-13 20:25:38 +02:00
uruk
2eddd72fbf
CGE2: Initialize _startGameSlot.
2014-08-13 20:00:48 +02:00
uruk
e52c14b8d9
CGE2: Remove unused variable from System.
2014-08-13 19:58:58 +02:00
uruk
547ad696f2
CGE2: Initialize _h and _w in every constuctor of Bitmap.
2014-08-13 19:57:09 +02:00
uruk
277f844f09
CGE2: Initialize _maxDist in Hero's constructor.
2014-08-13 19:54:59 +02:00
uruk
fecabc039e
CGE2: Initialize every member in Talk's every constructor.
2014-08-13 19:53:28 +02:00
uruk
8e22ef9b6d
CGE2: Fix possible string overflow in Hero::expand().
2014-08-13 19:49:56 +02:00
uruk
8b1ffab95b
CGE2: Fix possible string overflow in Bitmap's constructor.
2014-08-13 19:40:15 +02:00
uruk
8e7279f5ac
CGE2: Fix possible string overflow in setEye().
2014-08-13 18:18:26 +02:00
uruk
45e8078dab
CGE2: Don't allow Sprite::step() to dereference nullptr-s.
2014-08-13 17:54:35 +02:00
uruk
3e8041d54b
CGE2: Fix comparing _spr->file against null in runCommand().
2014-08-13 17:43:52 +02:00
uruk
3b342a21c6
CGE2: Eliminate inferred misuse of enums in Sprite::labVal().
2014-08-13 17:39:09 +02:00
uruk
528ed79575
CGE2: Make impossible to dereference nullptr in sndDigiStart().
2014-08-13 17:30:40 +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
Eugene Sandulenko
148793cadd
CGE2: Fix compilation
2014-08-12 10:52:38 +02:00
uruk
5b9c51d4b4
CGE2: Repair FXP's operator=().
2014-08-12 10:05:51 +02:00
uruk
ae037b2315
CGE2: Use snprintf() instead of sprintf().
2014-08-11 20:43:08 +02:00
uruk
e488da5757
CGE2: Remove unnecessary commented out code.
2014-08-11 20:34:18 +02:00
uruk
02f3418d6f
CGE2: Fix some more formatting in vga13h.h.
2014-08-11 20:32:56 +02:00
uruk
3e3430ed5d
CGE2: Fix EncryptedStream::err().
2014-08-11 16:10:14 +02:00
uruk
235e3d396e
CGE2: Fix formatting in events.cpp.
2014-08-11 16:09:04 +02:00
uruk
9c5bdc6dde
CGE2: Fix formatting in bitmap.h.
2014-08-11 16:07:29 +02:00
uruk
5e375d0796
CGE2: Fix formatting of operators' return values in vga13h.h.
2014-08-11 16:06:10 +02:00
uruk
b3fed6c369
CGE2: Return value instead of reference in FXP's operator=.
2014-08-11 16:03:38 +02:00
uruk
7dfd108f68
CGE2: Remove unused functions from V2D.
2014-08-11 15:56:20 +02:00
uruk
25ebfe461f
CGE2: Remove unnecessary comments from vga13h.h.
2014-08-11 15:54:38 +02:00
uruk
0d47893d51
CGE2: Make matrixes static constants in makeSpeechBubbleTail().
2014-08-11 15:44:55 +02:00
uruk
f8e60e467f
CGE2: Make movie() safer.
2014-08-11 15:42:55 +02:00
uruk
c3a5a9177b
CGE2: Fix comment in runGame().
2014-08-11 15:38:28 +02:00
uruk
8510152545
CGE2: Rename XCrpyt() to xCrypt().
2014-08-11 15:31:34 +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
411e8ac5c8
CGE2: Change return type of readSint16LE().
2014-08-11 15:03:24 +02:00
uruk
1224d79e53
CGE2: Fix typo in detection.cpp.
2014-08-11 14:54:47 +02:00
uruk
e709be446c
CGE2: Remove unnecessary #pragma before Sprite::touch().
2014-08-11 14:53:49 +02:00
uruk
01950e1b1c
CGE2: Remove unused function from vga13h.cpp.
2014-08-11 14:48:33 +02:00
uruk
0ea1268940
CGE2: Fix canSaveGameStateCurrently().
2014-08-09 17:22:19 +02:00
uruk
58822b47a7
CGE2: Use spaces instead of tabs.
2014-08-09 13:54:20 +02:00
uruk
895f8a5e59
CGE2: Remove commented out code from text.cpp.
2014-08-09 13:51:31 +02:00
uruk
59bc45e79f
CGE2: Get rid of _keyAlt.
2014-08-06 17:44:12 +02:00
uruk
010a806a19
CGE2: Rework canSaveGameStateCurrently().
2014-08-03 22:50:16 +02:00
uruk
69b9a3fdff
CGE2: Properly fade out if the player exits during the intro too.
2014-08-03 22:49:43 +02:00
uruk
11d2cf66b6
CGE2: Rework the handling of the sound buttons on the toolbar.
...
Also keep in sync the volume settings and the audio mode of the game and the settings in the Launcher.
2014-08-03 22:23:55 +02:00
uruk
07fc3fb3c3
CGE2: Some repair in Bitmap::code().
2014-08-03 19:16:18 +02:00
Strangerke
b8b3e5af04
CGE2: Some more minor cleanup
2014-08-03 15:44:20 +02:00
uruk
41fece6487
CGE2: Remove #if 0-s.
2014-08-03 15:18:44 +02:00
uruk
7dfb2b01f1
CGE2: Rearrange content of saveload.cpp and cge2.h a bit.
2014-08-03 15:04:00 +02:00
Strangerke
2697c71301
CGE2: Misc cleanup
2014-08-03 14:47:25 +02:00