Age | Commit message (Collapse) | Author |
|
Untangled the audio and video track from each other, and the parsing
of the stream from the decoding of its data. Also fixed a memory leak
as it turns out deleting a Surface doesn't free its data. You have to
call free() in it.
I have only checked the intro, not every cutscene, but that seems to
work fine at least.
|
|
As an alternative to using the Screen class's functions, we can let
the VQA decoder draw directly to the backend. This won't work if the
game uses "hi-res mode", but I don't think that's ever the case for
Malcolm's Revenge. I believe the KyraEngine_MR::playVQA() function
ensures that the screen is properly updated after the movie has
finished.
This almost limits the VQA rewrite to vqa.cpp and vqa.h. Whether it's
better this way than changing the Screen functions to take a 'pitch'
parameter...? I don't know. But it's an alternative.
|
|
There isn't really a lot of benefit to this, but I think it's nicer
if all our video decoders at least try to use the same infrastructure.
|
|
|
|
|
|
ALL: Fix optimization unstable code on checking for null after new.
|
|
This JPEG is separate from the modified JPEG format used in MJPEG
|
|
|
|
|
|
RFC: Make HE games use the target name in all save files
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This fixes bug #6476 - "DC: Soltys (CGE) crashes at start up".
|
|
|
|
|
|
This removes overwrites in ReportHandlerScummVM which are simply the default
implementation anyway. A side effect is that this silences/fixes a warning
about the former onProgramChanged to hide an virtual method due to parameter
differences.
|
|
|
|
|
|
|
|
MIDI code will control volume via MIDI events thus the generated audio should
not be affected by mixer sound volumes.
The initial commit 0e6cdfd67580f75e912c5e92abb26821d032f74b added it as music
sound type. Might be copied from the (also) incorrect FluidSynth code.
|
|
MIDI code will control volume via MIDI events thus the generated audio should
not be affected by mixer sound volumes.
The initial commit(s) in d4d045b1174b4a48659f39f026ade42684b679bf /
13dc149ded691e718905049990dd0220230c500e added it as music sound type.
So, this seems to be a long standing issue.
|
|
Formerly the audio stream was registered as sfx. This is incorrect behavior
since the client code will control music volume with MIDI events on its own.
It seems 67b311713d8f4cfcd460a9649e0075f24278a048 introduced this very long
ago.
This should fix unintended coupling of sfx volume and music volume in BASS.
|
|
|
|
|
|
|
|
This prevents the player from giving commands to Avalot when the
character is tied up to a tree, so it's impossible to break the game's
consistency that way.
|
|
|
|
|
|
Implementations: zonk(), zl().
Renames: zonk() -> thunder(), zl() -> drawLightning().
Moved: the 2 above from Pingo to Animation.
Addition: GraphicManager::drawLine().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These issues were identified by the STACK tool.
By default, the C++ new operator will throw an exception on allocation
failure, rather than returning a null pointer.
The result is that testing the returned pointer for null is redundant
and _may_ be removed by the compiler. This is thus optimization
unstable and may result in incorrect behaviour at runtime.
However, we do not use exceptions as they are not supported by all
compilers and may be disabled.
To make this stable without removing the null check, you could qualify
the new operator call with std::nothrow to indicate that this should
return a null, rather than throwing an exception.
However, using (std::nothrow) was not desirable due to the Symbian
toolchain lacking a <new> header.
A global solution to this was also not easy by redefining "new" as "new
(std::nothrow)" due to custom constructors in NDS toolchain and various
common classes.
Also, this would then need explicit checks for OOM adding to all new
usages as per C malloc which is untidy.
For now to remove this optimisation unstable code is best as it is
likely to not be present anyway, and OOM will cause a system library
exception instead, even without exceptions enabled in the application
code.
|
|
|
|
|
|
static (Wii)"
|