Commit Graph

1122 Commits

Author SHA1 Message Date
Bastien Bouclet
4b42112721 ENGINES: Add an engine ID to all the engines 2019-11-03 11:43:00 +01:00
D G Turner
008e2b85b6 ZVISION: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
2019-10-24 02:04:53 +01:00
D G Turner
69452ccbe9 ZVISION: Fix GCC Compiler Warnings
These were from memset usage on non-trivial structures, but were fixed
by directly clearing the Common::Point array.
2019-08-25 08:12:31 +01:00
Torbjörn Andersson
f104cf5903 ZVISION: Move code to determine amplification to its own function
As suggested by bluegr.
2019-02-10 16:32:02 +02:00
Torbjörn Andersson
9785d5007a ZVISION: Boost volume for MPEG cutscenes
The high-resolution videos play back at much lower volume than the
original ones. This adds hard-coded values for how much to amplify
each cutscene. It's all done by ear, and it does introduce some
clipping, but I think it should be acceptable.

Of course, it could also be a problem with the audio decoder, so
this may be the wrong approach entirely.
2019-02-10 16:32:02 +02:00
Cameron Cawley
1953aa7064 ZVISION: Attempt to load fallback fonts from fonts.dat 2018-12-25 12:47:42 +01:00
Filippos Karapetis
63f0d47b99 ZVISION: Really fix GUIO flags for the DVD version of ZGI 2018-11-05 01:28:57 +02:00
Filippos Karapetis
4f37de9ce9 ZVISION: Fix GUIO flags for the DVD version of ZGI 2018-11-05 01:27:12 +02:00
Thierry Crozat
e4ff1929aa ZVISION: Only add mpeg video engine options when mpeg and a52 are enabled 2018-11-04 22:33:22 +01:00
Thierry Crozat
e2935acfe4 ZVISION: Disable MPEG movies when liba52 is not enabled 2018-11-04 22:33:22 +01:00
Torbjörn Andersson
71910c2283 ZVISION: Set 800x600 mode for the DVD version of ZGI
This allows the backend to show the hi-res videos at full
resolution, rather than scaling them down.
2018-11-04 22:33:22 +01:00
Torbjörn Andersson
4cc71d42a2 ZVISION: Play hi-res videos, even if they have no low-res version
This is used for some logo animations at the start of the game. I
don't know if it's used for anything else, but probably not.
2018-11-04 22:33:22 +01:00
Torbjörn Andersson
e9052a0085 ZVISION: Enable hi-res videos for testing purposes 2018-11-04 22:33:22 +01:00
Torbjörn Andersson
f6a0e197b1 ZVISION: Add workaround for ZGI bug #10605
It's possible to get the "Fire! Fire!" timer stuck after setting
the the inquisitor doll on fire. This should work around that.
2018-07-29 09:48:47 +02:00
Torbjörn Andersson
2982792eb1 ZVISION: Add workaround for bug #10604
It was possible to render the game unplayable simply by looking at
Jack's cigar box while waiting for him to return to examine the
lamp. Note that this bug is only present in the DVD version. For
whatever reason, it adds a dummy location for playing the cutscene.
Applying the bugfix in the CD version actually breaks the game.
2018-07-29 09:48:19 +02:00
Eugene Sandulenko
bb2f218fa1 ZVISION: Fix atan2() arguments order. CID 1394387 2018-07-23 23:46:06 +02:00
David Fioramonti
ad15747c6d ZVISION: Use degree conversion common math funcs 2018-07-03 23:08:48 +01:00
Eugene Sandulenko
0e55160cd0 ZVISION: Reuse UTF8->UTF32 converter from Common 2018-06-18 00:08:11 +02:00
Adrian Frühwirth
be351e2432 ZVISION: Add play time metadata to savegames
Fixes Trac#10266.
2018-05-03 19:25:22 +02:00
Adrian Frühwirth
f20015f526 ZVISION: Fix crash when loading a savegame
Commit 00e59a3122 introduced a change to savegame handling which
results in savegame thumbnails only being loaded when necessary.
ZVISION's readSaveGameHeader() doesn't under all circumstances
initialize the thumbnail pointer and 00e59a3122 failed to remove an
otherwise unnecessary delete which resulted in the uninitialized
thumbnail pointer being passed to delete (UB).

Thanks to eriktorbjorn for noticing.
2018-04-18 20:18:05 +02:00
Thierry Crozat
8097de953b ZVISION: Change game option description to match all other engines 2018-04-11 21:13:24 +01: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
Torbjörn Andersson
a506a8f7eb ZVISION: Clarified comment for workaround for bug #6770
I should have done this before it was merged, but I completely
forgot that dafioram had verified that the bug *does* in fact
happen in the original game as well.
2018-01-14 18:05:32 +01:00
Torbjörn Andersson
c7b8bc8169 ZVISION: Workaround for bug #6770
Explicitly check if the time tunnel is open (and therefore shown in
close-up) before executing the scripts that draw the lever that is
shown in the normal view. This apparently doesn't happen in the
original engine, which suggests there may be a ScummVM bug. But it
still doesn't seem like the *wrong* thing to do here.
2018-01-14 15:34:16 +00: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
Bastien Bouclet
1b3cc08b75 ZVISION: Fix leaking save / thumbnail MemoryWriteStreamDynamic buffers 2017-09-22 07:06:20 +02:00
Bastien Bouclet
ec49730711 VIDEO: Allow setting the mixer sound type used to play audio tracks 2017-07-27 06:40:07 +02:00
Ben Castricum
e95c2cc3ff ALL: save file => saved game 2016-11-29 21:10:59 +01:00
Ben Castricum
b041618a42 ALL: Remove comma before the word 'instead' 2016-11-29 20:22:19 +01:00
rootfather
89168bb000 ZVISION: Enable translation for some more strings 2016-11-26 16:14:28 +01:00
Eugene Sandulenko
dead4aa014 JANITORIAL: Remove trailing spaces 2016-10-09 14:59:58 +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
Ori Avtalion
3564032330 JANITORIAL: Reduce audio header dependencies 2016-04-14 16:10:21 +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
Eugene Sandulenko
23d74fddb4 CONFIGURE: Introduced new engine dependency: highres
Some backends like GCW0 do no support graphics >320x240 due to
the hardware limitation (downscaling is possible but it will ruin
the pixel hunting which is often part of the gameplay).

Instead of manually updating the list of engines, we now introduce
a new dependency.

I marked all relevant engines, but some, like tinsel, require more
work with putting their relevant high-res games under USE_HIGHRES
define.
2016-03-05 14:25:56 +01:00
Johannes Schickel
7b9b1b2f3a ZVISION: Remove gap handling from removeSaveState.
This removes the annoying behavior that removing a save state causes your
physical files to be renamed.

As discussed with RichieSams and wjp.
2016-02-25 21:49:43 +01:00
Johannes Schickel
d38a22011e ZVISION: Let listSaves return list sorted on slot numbers. 2016-02-25 21:39:45 +01:00
Johannes Schickel
224a634d7e ZVISION: Only request actual save slots in listSaves. 2016-01-26 16:35:30 +01:00
Johannes Schickel
045717ca2c ZVISION: Use tabs for indentation in detection.cpp. 2015-12-28 00:18:30 +01:00
Johannes Schickel
bc82ff9216 ZVISION: Remove superflous default value registration for extra GUI options. 2015-12-28 00:14:11 +01:00
Bastien Bouclet
68be74e0a3 ZVISION: Use the cell size mode when loading TrueType fonts 2015-12-21 18:41:14 +01:00
Bastien Bouclet
2d86f6da9c GRAPHICS: Introduce a size mode for TrueType fonts
Allows to match Windows font size selection by converting font heights
to point sizes using the TrueType tables.
2015-12-21 18:41:14 +01:00
Filippos Karapetis
2dc27b57a6 ZVISION: Properly handle monophonic videos in the demo version of ZGI 2015-09-09 17:23:23 +03:00
Pawel Kolodziejski
b046479cab I18N: Add missing files in list of files to parse. Regenerate translation files. 2015-09-06 15:21:13 +02:00
Matthew Hoops
561d1a1d62 VIDEO: Switch to all packetized streams for AVI
ZVision does not currently, but that's OK
2015-08-30 21:01:39 -04:00
Matthew Hoops
de2f4e6982 VIDEO: Add support for MP3 in AVI 2015-08-30 19:53:53 -04:00
Matthew Hoops
ba4469da6a ZVISION: Cleanup the AVI decoder subclass 2015-08-30 19:53:53 -04:00
Max Horn
856475067a MISC: Remove some unused private member variables 2015-07-19 17:13:18 +02:00