Age | Commit message (Collapse) | Author |
|
This is the third and final part of the patch supplied by Ignaz Forster
on bug #3423955 ("CRUISE: Slow / unresponsive game behaviour") for
avoiding blocking graphical updates during user wait loops.
The removal of the continue statement fixes the update of background
animations while waiting for user to respond i.e. try opening a locked
door on the upper deck of the boat and check the sea background
animation, but it also has the side effect of allowing hotspots to
respond during this period if the user clicks fast enough.
However, this bug was also present in the original interpreter, and
a workaround has been added to inhibit this.
|
|
This is the second part of the patch supplied by Ignaz Forster on
bug #3423955 ("CRUISE: Slow / unresponsive game behaviour") for
avoiding blocking graphical updates during user wait loops.
This removes the check for fastMode from the cursor update code and
other code in this "idle" loop, and moves it down to qualifying
only a few of the function calls.
|
|
This is the first part of the patch supplied by Ignaz Forster on
bug #3423955 ("CRUISE: Slow / unresponsive game behaviour") for
avoiding blocking graphical updates during user wait loops.
Hotspots passed during the idle loop do _not_ give any user feedback
without this patch.
The original patch has been split to allow for better understanding of
the changes and to allow fine grained bisection if this introduces any
regressions.
|
|
|
|
|
|
Refactor plugins
|
|
Replace large static Sin and Cos tables with dynamically generated ones.
|
|
SCUMM: Add another Dutch Balloon-O-Rama variant.
|
|
Support for Dreamweb fr/es
|
|
DrasculaMetaEngine: added list saves support
|
|
|
|
|
|
|
|
The new file engines/configure.engines is currently manually created
and maintained, but could be regenerated by a script in the future.
|
|
The new header engines/plugins_table.h is currently manually created
and maintained, but could be regenerated by a script in the future.
|
|
|
|
The repeated functions expanded from the original DECL_FFT macros are
now replaced by a recursive fft() function.
|
|
Those are the official French, Spanish and Italian translations from the
DOS versions of the game (thanks to Simsaw for providing them).
|
|
|
|
|
|
|
|
|
|
This is a situation that would occur when a user copies drscula save
files from one device to another, without copying the corresponding
index, or copies the index without all corresponding save files.
|
|
|
|
The cosine tables are now allocated once on object construction.
Also, only the tables necessary (less than or equal to _bits) are
created.
|
|
This makes it easier to look at reworking the Cosine Table usage to
prevent repeated reallocation on calc() calls.
|
|
Fixes issues where the codec hasn't been initialized
|
|
Added kSupportsListSaves to DrasculaMetaEngine::hasFeature
Added working listSaves to DrasculaMetaEngine
|
|
|
|
|
|
AGOS game engine.
|
|
|
|
SVQ1 no longer looks blocky and now looks a lot closer to what QuickTime outputs
|
|
|
|
This removes the large static tables from the binary (which saves 500K
to 1Mb of binary size) and replaced them with a class which generates
the required tables as needed in RAM. This has been tested with QDM2
and shows no obvious performance degredation and Memprof shows no
significant rise in RAM usage.
|
|
|
|
The math utility classes in Common are now used by more than just Bink
Video i.e. Huffman is used by SVQ1, RDFT by QDM2 etc. so need to remove
conditional inclusion of objects in the Common Library.
This was done as these functions are very large wrt. binary size.
This is mainly due to the sine, cosine and log tables which should be
reconsidered as to whether these are needed or can be replaced by
standard sin()/cos() calls.
|
|
This was only used by the RDFT code, now replaced by Common::RDFT.
|
|
|
|
The Bitstream format is changed to 32LELSB and an error in the getVlc2()
function bitstream reading needed to be corrected to fix operation.
|
|
This should allow the QDM2 codec to work again with Common::Bitstream
instead of the older getBits() reader, but this aborts with a reading
past end of stream error...
|
|
This is to allow modification of the code which needs to assign the
data member of the sub_packet structure to an offset in the input
byte readStream.
|
|
getBits(n) would cause a runtime error if n is greater than 32,
but using getBits() to skip is no longer necessary as the newer
BitStream class has a skip method, which is used instead.
|
|
|
|
This removes the internal getBitContext bitwise reading code and
replaces with Common::BitStream.
However, this breaks the codec as in one location, the internal buffer
of getBitContext reader is used and this can't be directly replaced.
This will need to be understood and rewritten.
|
|
|
|
The number of channels in AAC can differ from the actual number of channels needed making us require this. The channel count inside the container is always the correct one.
|
|
|
|
|
|
|