Age | Commit message (Collapse) | Author |
|
In at least RAMA, when using the pocket computer to view a mail
and then pressing the "return" button, the ScreenItem containing
the VMD will be destroyed before the VMD player is told to close
the video, resulting in a use-after-free trying to access the
bitmap ID through the deleted ScreenItem.
|
|
Previously, this code was interpolating samples if the previous
block had missing samples, instead of interpolating when samples
are missing in the upcoming block of samples.
|
|
This should make things trivially faster, and matches more
accurately how the original engine worked.
|
|
|
|
The typo was `if (kCelTypeColor)` instead of
`if (type == kCelTypeColor)`. Changed to use a switch instead for
improved clarity and code intelligence.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes text scaling gone mad in Phant2.
|
|
|
|
This fixes bad variable relocation in Phant2 causing the game to
crash when reading object names.
|
|
|
|
|
|
Some games are not moved to ADGF_TESTING yet because they have
not been played through completely:
* QFG4
* PQ:SWAT
Some games are not moved to ADGF_TESTING yet because they are
broken:
* Chest (fails to read/parse its custom archive files)
* Hoyle5 (Poker DLL needs to be reverse-engineered; main menu
needs to be "fixed" for budget derivatives that only contain
some of the games and used Windows shortcuts to bypass the menu)
* MGDX (missing MIDI playback)
|
|
|
|
|
|
Save games created by earlier versions of ScummVM are prone to
having subtle graphics problems or other corruption caused by
incomplete save/load code.
|
|
Sometime during SCI2.1mid, the palette manager was changed to
save and restore the source palette, and to add in-game gamma
correction. Previously, only the vary start and target palettes
were saved, and gamma correction was only configurable in SSCI by
editing RESOURCE.CFG.
|
|
|
|
Commit 5de2668939a6735da2b3438b7c586fc185791ef8 silently changed
behaviour from running this code only when restoring a game, to
running all the time, in an apparent copy-paste error.
|
|
|
|
|
|
|
|
|
|
|
|
GuestAdditions
|
|
integration
|
|
|
|
_delayedRestoreGame is always set and cleared at the same time as
_delayedRestoreGameId, and _delayedRestoreFromLauncher is written
but never read.
|
|
|
|
This patch includes enhancements to the ScummVM integration with
SCI engine, with particular focus on SCI32 support.
1. Fixes audio volumes syncing erroneously to ScummVM in games
that modify the audio volume without user action (e.g. SCI1.1
talkies that reduce music volume during speech playback). Now,
volumes will only be synchronised when the user interacts with
the game's audio settings. This mechanism works by looking for
a known volume control object in the stack, and only syncing
when the control object is present. (Ports and planes were
researched and found unreliable.)
2. Fixes audio syncing in SCI32 games that do not set game
volumes through kDoSoundMasterVolume/kDoAudioVolume, like GK1,
GK2, Phant1, and Torin.
3. Fixes speech/subtitles syncing in SCI32 games that do not use
global 90, like LSL6hires.
4. Fixes in-game volume controls in SCI32 games reflecting
outdated audio volumes when a change is made during the game
from the ScummVM launcher.
5. Fixes SCI32 games that would restore volumes from save games
or reset volumes on startup, which caused game volumes to be
out-of-sync with ScummVM when started.
6. ScummVM integration code for audio sync has been abstracted
into a new GuestAdditions class. This keeps the ScummVM-
specific code all in one place, with only small hooks into the
engine code. ScummVM integrated save/load code should probably
also go here in the future.
Fixes Trac#9700.
|
|
|
|
|
|
The previous fix for this bug was incorrect; it only happened
to work because of another bug: the number of exports was being
read incorrectly (reading the byte size of the export block, not
the number of exports), so the validation check for the export
number always passed. Then, the "small" offsets that were seen
were actually either invalid reads into the header of the next
block in the script (KQ4), or reads into the bad first export
table which contained an unfilled offset (Camelot).
Once the incorrect number of exports was fixed, the previous "fix"
broke in KQ4 because the export number validation started to work
correctly and the first export table does not have enough entries
(needs 2, has 1).
This patch fixes the bug by using the last export table in SCI0
scripts instead of the first export table. (This does not affect
most scripts, since only the buggy scripts have more than one
export table.)
Fixes Trac#9731.
|
|
|
|
|
|
|
|
|
|
Currently translated at 100.0% (946 of 946 strings)
|
|
|
|
|
|
|
|
|
|
|
|
|