80596 Commits

Author SHA1 Message Date
Peter Kohaut
1740c490d7 BLADERUNNER: improvements to the walking code
path finding is still missing
video player has audio preloading
small fixes
2017-04-01 08:57:57 +02:00
Paul Gilbert
25fcb52d70 TITANIC: Renaming of crosshairs related code 2017-03-31 22:51:06 -04:00
Paul Gilbert
9891373d20 TITANIC: Fix drawing bounds in CSurfaceArea fillRect 2017-03-31 20:45:41 -04:00
Paul Gilbert
f436382fe4 TITANIC: Merge fader classes into one, video surface setup fix 2017-03-31 20:13:42 -04:00
Paul Gilbert
33bcc9d058 TITANIC: Merge CSurfaceFader and base into a single file 2017-03-31 18:55:09 -04:00
Eugene Sandulenko
2454290366 DIRECTOR: Score label names are case insensitive 2017-03-31 22:06:37 +02:00
Paul Gilbert
5d11c67d00 TITANIC: Fix initialization of CStarControl _petControl reference 2017-03-30 22:32:44 -04:00
Paul Gilbert
751a96730e TITANIC: Fix rect calculation in CSurfaceArea fillRect 2017-03-30 22:24:20 -04:00
Colin Snover
ee644ec01b SCI32: Check for game aborts in all kList iteration methods
This fixes a use-after-free in GK2 when restoring a second save
game, when the List reg_t is still considered valid but the List
has moved due to a partial game restore.
2017-03-30 20:49:37 -05:00
Colin Snover
3678390f3e SCI: Add clarifying comment to op_rest 2017-03-30 20:49:37 -05:00
Colin Snover
a1153661c4 SCI: Stop getCurrentCallOrigin from mutating stack frames
This fixes incorrect backtraces after a workaround failure or
other call to getCurrentCallOrigin when one or more stack frames
are calls to local procedures.
2017-03-30 20:49:36 -05:00
Colin Snover
5723f2f5fe SCI32: Hack around MIDI parser causing stuck harp animation in KQ7
The eventual proper fix for this is to change the current MIDI
parser to work the same as in SSCI, but for now this workaround
allows the game to continue.

Fixes Trac#9696.
2017-03-30 20:49:36 -05:00
Colin Snover
4284488244 SCI32: Improve bounds checking in SciString trim 2017-03-30 19:46:27 -05:00
Colin Snover
2d0c1c8ab5 SCI: Ensure object name reg_ts are valid before dereferencing them 2017-03-30 19:46:27 -05:00
Colin Snover
5e81db8fd0 SCI32: Add workaround for uninitialised read in Torin 2017-03-30 19:46:27 -05:00
Colin Snover
159438848b SCI32: Add workaround for uninitialised read in GK1 2017-03-30 19:46:27 -05:00
Colin Snover
739047f887 SCI32: Always reinit GfxText32 statics on game startup
Fixes bad scaling of text when switching between games with
different script resolutions.
2017-03-30 19:46:27 -05:00
Colin Snover
3de6f290e7 SCI: Change default master MIDI volume to 15
GK1 handles MIDI volume by changing the volumes of individual
sound objects, rather than by using the MIDI master volume. As a
result, the master volume needs to default to the maximum output
level in order for GK1 to play music at the correct volume.

This change does not affect earlier games, since SCI16 managed
MIDI volume via the master volume, and for these games the master
volume from ScummVM is synced at startup.
2017-03-30 19:46:27 -05:00
Colin Snover
dd23085845 SCI: Give kernel calls a valid stack pointer
Some kernel calls need to be able to call back into game script
code, which requires a valid stack pointer for use with
invokeSelector.

An example of this is the guest additions code that syncs audio
volumes from ScummVM: it needs to be able to call into the game
scripts responsible for managing the in-game audio volume UI.
2017-03-30 19:46:27 -05:00
Colin Snover
4d062fc7a0 SCI32: Do not default to General MIDI for SCI2.1 games
The only SCI32 game that uses MIDI and does not support AdLib is
MGDX, and it its MIDI playback is currently broken regardless of
the synth setting.
2017-03-30 19:46:27 -05:00
Colin Snover
e74adcec52 SCI: Whitespace alignment 2017-03-30 19:46:27 -05:00
Colin Snover
6b0cd955fa SCI32: Fix crash when using brightness slider in Shivers 2017-03-30 19:46:27 -05:00
Colin Snover
fa9523933f SCI32: Fix broken sliders in Shivers settings
This problem is caused by the same invalid super call that broke
the CCTV joystick.
2017-03-30 19:46:27 -05:00
Colin Snover
bd7a62e996 SCI: Fix typo in comment 2017-03-30 19:46:27 -05:00
Colin Snover
9a637ec324 SCI32: Skip bad map 405 on CD 1 of PQ:SWAT
The resources on CD 1 are corrupt and point to invalid locations
in the CD 1 RESOURCE.AUD. This can be noticed during the briefing
on the Lucy Long callup, where descriptions of the map are missing
and eventually the game gets stuck waiting for missing audio to
finish playback.
2017-03-30 19:46:27 -05:00
Colin Snover
77a4074106 SCI: Protect and clarify the purpose of Resource _header data 2017-03-30 19:46:27 -05:00
Colin Snover
0826501ef6 SCI32: Fix audio, wave, VMD, Duck, CLUT, TGA, ZZZ, Etc patches
Specifically, audio patches are used in at least PQ:SWAT
(40103.AUD), Lighthouse (9103.AUD), and the GK2 demo (300.AUD).
2017-03-30 19:46:27 -05:00
Colin Snover
4c942758c0 SCI32: Use built-in system font as default font for GfxText32
Fixes the non-interactive Lighthouse demo.
2017-03-30 19:46:27 -05:00
Colin Snover
ceacf7df12 SCI: Handle >64KiB offsets in parse_reg_t 2017-03-30 19:46:27 -05:00
Colin Snover
f4d3664d3f SCI: Replace magic numbers in reg_t handling with symbols 2017-03-30 19:46:27 -05:00
Colin Snover
3b34f17fb3 SCI32: Add kWebConnect and kWinExec
Used by Phant2.
2017-03-30 19:46:27 -05:00
Colin Snover
766d46153a SCI32: Implement known-used portions of kPlayDuck 2017-03-30 19:46:27 -05:00
Colin Snover
65fe7bcfd8 SCI: Print more detailed information on audio header size mismatch 2017-03-30 19:46:27 -05:00
Colin Snover
d0e9724ae1 SCI32: Support reading sound effects from normal resource bundles 2017-03-30 19:46:27 -05:00
Colin Snover
0be9ace649 SCI: Fix incorrect read of LB2/MG256 audio sizes
This happened to work previously because the size was not checked
for validity, and because the audio player calculates its own size
so this value was never actually used.
2017-03-30 19:46:27 -05:00
Colin Snover
477e31cea6 SCI32: Ignore invalid audio map entries in GK2
The invalid entries, which are on CD 6, appear to correspond to
audio that's on CD 4 (though not with the correct offset for CD
4's RESOURCE.AUD).

Skipping the invalid map entries on CD 6 should cause these audio
files to be loaded from the CD 4 audio bundle if they are
requested during chapter six since ScummVM combines resources from
all CDs and matches on their IDs.
2017-03-30 19:46:27 -05:00
Nick Renieris
30435ec0ab DIRECTOR: Add detection for Arnie and its demo (#928)
DIRECTOR: Add detection for Arnie and its demo
2017-03-30 22:56:54 +02:00
Willem Jan Palenstijn
ee86a74cd3 SCI: Fix remaining format string warning 2017-03-30 22:00:27 +02:00
Colin Snover
cb4f06fb70 SCI: Avoid shadow warnings in old GCC 2017-03-30 14:23:41 -05:00
Colin Snover
a233696212 SCI: Update formatting strings to match updated Span API 2017-03-30 14:23:41 -05:00
Colin Snover
993d83fe4b COMMON: Reduce maximum Span size to 4GiB
Until C++11 (which introduces the z and t length modifiers), there
is no consistent way to print size_t and ptrdiff_t types using
printf formatting across 32-bit, LLP64, and LP64 architectures
without using a cumbersome macro to select the appropriate length
modifier for the target architecture. Since ScummVM engines
currently need to support 32-bit targets, there is no reason at
the moment to support any larger memory sizes in Span anyway.

Span error output is also updated in this commit to reflect that
index values are unsigned.
2017-03-30 14:22:56 -05:00
Paul Gilbert
09da421293 TITANIC: Further code for new skip nav button to work correctly 2017-03-29 22:25:33 -04:00
Paul Gilbert
119fd5fd34 TITANIC: Fix non-responsive Go button in bridge controls 2017-03-29 22:03:57 -04:00
Paul Gilbert
3b08987ad2 TITANIC: Add remote icon for skipping nav puzzle 2017-03-29 21:49:22 -04:00
Paul Gilbert
7492d620b7 DEVTOOLS: Add tooltip to create_titanic for skipping nav puzzle 2017-03-29 21:48:49 -04:00
Thierry Crozat
8054869161 CREDITS: Add credits for Lab 2017-03-29 23:38:08 +01:00
Thierry Crozat
11fda24477 CREDITS: Add snover as contributor for the SCI engine 2017-03-29 23:24:16 +01:00
Thierry Crozat
de1a1ee7b3 CREDITS: Move access engine credits to its proper place 2017-03-29 23:10:10 +01:00
Thierry Crozat
8d3b84ae1c CREDITS: Add credits for Fullpipe 2017-03-29 23:05:55 +01:00
Thierry Crozat
c36a945449 CREDITS: Add credits for ADL engine 2017-03-29 22:00:49 +01:00