Age | Commit message (Collapse) | Author |
|
Rendering bugs in ScummVM are often caused by buggy game scripts
relying on the last ditch sort, which is not the same in ScummVM
as in SSCI (since the SSCI last ditch sort relies on a different
memory architecture and is super buggy). However, these bugs do
not show up very frequently these days, so it is easy to forget
all the places that need to be checked when debugging a rendering
problem that appears to be caused by sorting failure.
This commit breaks out the last ditch comparison formerly in
Plane::calcLists to hopefully make it more visible to future
programmers.
Refs Trac#9957.
|
|
While this optimisation helped to reduce unnecessary palette
updates in KQ7, it broke Phant1, which relies on changes to index
255 in the source palette causing palette invalidation.
Refs Trac#9788.
|
|
|
|
|
|
It was using SCI16 calls to get the NowSeenRects.
This fixes #9855.
|
|
This transition style was used when exiting the asteroids minigame
in PQ4, though it appears likely that this was an error in the
original game script since it does not actually do anything in the
context that it is used (neither here nor in the original
interpreter).
Still, this code is already written, and it fixes the crash, so in
it goes.
Fixes Trac#9856.
|
|
|
|
* MGDX has only GM music;
* KQ7 1.x's AdLib data is incomplete, so is not usable even though
it is partially there
Fixes Trac#9789.
|
|
GM patch data is the same across all SCI32 games.
|
|
|
|
This is only a problem for the Windows games that need some
palette entries to be ignored.
|
|
This lets DuckPlayer support configurable black-lined video and
configurable high-quality scaling.
|
|
|
|
|
|
1. Added a new game option for linear interpolation when scaling
overlay-mode video in ScummVM builds with USE_RGB_COLOR;
2. Implemented SCI2.1-variant of the VMD player renderer (fixes
Trac#9857), which bypasses the engine's normal rendering
pipeline;
3. Improved accuracy of the SCI3-variant of the VMD player by
writing HunkPalettes into the VMD's CelObjMem instead of
submitting palettes directly to GfxPalette32.
|
|
1. Added a new game option for linear interpolation when scaling
video in ScummVM builds with USE_RGB_COLOR;
2. 8bpp videos that put black in a palette index other than 0
(KQ7) should now always render correctly without the earlier
game-specific workarounds which did not work very well;
3. Data from game scripts regarding video size and position are
now ignored, since games always just try to show videos in the
middle of the screen, but frequently get this a little bit
wrong, causing either bad aspect ratios or off-center videos;
4. Builds without USE_RGB_COLOR support will not crash when
attempting to play >8bpp AVIs, like those from KQ7 2.00b.
Fixes Trac#9843, Trac#9762.
|
|
The show list is already cleared by showBits so it does not need to
be cleared a second time.
|
|
|
|
|
|
|
|
|
|
|
|
In SSCI, SEQ animations cannot be skipped.
|
|
|
|
|
|
|
|
|
|
This script patch will fix not getting 10 points for giving
the locket to Marie.
|
|
The previous script patch for this bug was much simpler and
targeted the bad code that hangs, instead of the bad code that
caused the unexpected flag setting, but this caused glitches in
the dragon's cave that couldn't really be fixed since different
animations relied on some common code for positioning Boogle. So,
now, this more complicated patch fixes the fast-forward code in
the seraglio to set Boogle's in-the-bag flag, which is what the
dragon's cave needs in order to not hang when worming Boogle.
Also, because this patch now targets the code that caused the bad
flag state, instead of the code that hangs on the bad state, any
save game in the dragon's cave with the bag flag setting will need
to be fixed by exiting and re-entering the dragon's cave.
Refs Trac#9836.
|
|
Refs Trac#9836.
|
|
Fixes Trac#9836.
|
|
Fixes Trac#9840.
|
|
Fixes Trac#9848.
|
|
Fixes Trac#9847.
|
|
Fixes Trac#9845.
|
|
This entry was added by a batch change operation in
f7a72c897a9657320ccd6a32873b364f77412e98, but the German version
of GK1 does not support Windows.
|
|
Thanks @OmerMor for pointing out this improvement.
|
|
This fixes at least the character selection screen in QFG4CD,
where the sound for the torches is supposed to loop, but wasn't
because kDoSoundSetLoop would bail out before setting the loop
property on the soundObj.
|
|
Upon investigation of Sound code across SCI32 games, it was
determined that there are actually (at least) 3 different
revisions, not just a single SCI2.1 version. This patch only
changes the parts of Sound code that are relevant to the correct
use of Audio32.
Fixes Trac#9736, Trac#9756, Trac#9767, Trac#9791.
|
|
|
|
The previous code for attenuating audio channels was not accurate,
so samples were quieter than they were supposed to be when mixed
together. Robots were also being mixed without attenuation, which
was incorrect.
|
|
Fixes Trac#9761, Trac#9844, Trac#9850, Trac#9851.
|
|
|
|
DPCM decompression algorithms in SSCI operate directly on 8- and
16-bit registers, so any sample that ends up being out-of-range
during decompression gets wrapped by the CPU, not clipped.
This does not fix any known problem with AUD files, but there are
some VMDs (e.g. GK2 5280.VMD) which are known to contain OOR
samples. Making this code more accurate should prevent trouble
with any other similar files.
|
|
|
|
|
|
|
|
Italian still needs to be fixed, but nobody seems to have access
to this version at the moment.
Fixes Trac#9772.
|
|
See matchKernelBreakpointPattern() for samples. The main envisioned use is
DoSound*,!DoSoundUpdateCues
to match all DoSound sub-functions except DoSoundUpdateCues.
|
|
|