Age | Commit message (Collapse) | Author |
|
This provides a complete implementation of kDoAudio through
SCI2.1mid, plus partial implementation of SCI3 features.
Digital audio calls shunted through kDoSound have also been
updated to go through the SCI32 audio mixer, though these shunts
are a bit hacky because the ScummVM implementation of kDoSound
does not currently match how SSCI kDoSound is designed.
It is probably possible in the future to just replace the SCI1.1
audio code (audio.cpp) with the new SCI32 code, since the major
differences seem to be that (1) SCI1.1 only supported one digital
audio playback channel (this is configurable already), (2) it
had extra commands for CD audio playback and queued sample
playback.
|
|
|
|
|
|
|
|
|
|
|
|
Removed the superfluous initForDetection() function, which was not
updated in commit 2f17ba2b0ab77ef939c21efa04f7aaafccbd0c37 and
caused the fallback detector to crash because of uninitialized
variables
|
|
A single picture in SCI32 is often larger than the 256KiB limit,
meaning that the cache is useless for these games -- which is bad,
because the renderer works directly off raw resource data so it
must be decompressed and in-cache for rendering performance to be
acceptable.
|
|
|
|
Regression from af3fec8c26d92005b507dca65d1d50f820feb0e7
Code resulted in a crash on BE platforms
|
|
don't remove const during cast
|
|
- Detection works via signatures (couldn't find a better way)
- new kString subcalls were introduced SCI2.1 LATE
- kString now has signatures and is split via subcall table
- kString fix, so that KQ7 doesn't crash, when starting a chapter
- Sci2StringFunctionType removed, because no longer needed
|
|
|
|
This should fix bug #6717 - "SCI fallback detection assert failure"
|
|
|
|
|
|
fixes transitions not working properly (and
possibly other stuff), hack was added because
of bug #5219, strangely none of it occurs anymore
|
|
This contains the sync data in the Windows version of KQ6CD.
Note that currently the sync36 resource is 2 bytes bigger
(it contains 2 bytes from the RAVE resource). Some test code
has also been added to dump the RAVE sync resources
|
|
|
|
|
|
No functionality change has been made with this commit. This avoids
setting and getting the reg_t members directly, and is the basis of any
future work on large SCI3 scripts (larger than 64KB)
|
|
These were introduced in 4f6d42d.
The odd comment dates back to FreeSCI, as far as our history goes, and
seems to be a leftover from an old refactoring during FreeSCI's history
|
|
|
|
|
|
|
|
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
|
|
|
|
Many thanks to digitall for finding this one
|
|
|
|
|
|
This removes the hack that checks for the existence of resource.cfg
|
|
resources file"
|
|
|
|
Thanks to tinekefrineke and tdhs for pinpointing the actual problem in the
resource manager
|
|
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
|
|
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
|
|
|
|
Some backends may break as I only compiled SDL
|
|
Thanks to LordHoto and the trusty -Wunused-but-set-variable option :)
|
|
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
|
|
|
|
|
|
|
|
16 color patches (*.p16 and *.v16) are used in 16 color EGA SCI1 games
32 color patches (*.p32 and *.v32) are used in 32 color Amiga SCI1 games
Removed a workaround for SCI1 EGA (bug #3044500), as that bug has been
fixed already in the view patch. Thanks to waltervn for observing this.
|
|
This fixes a lot of glitches, caused by the differences between the two
versions
|
|
This renaming allows us to better distinguish that this version is for games
that only had an EGA version, and avoid confusion with newer SCI1 game releases
with EGA graphics (e.g. KQ5 EGA). The only game with this SCI version is QFG2,
a SCI1 EGA game with a parser. Also, added some games for each SCI version.
|
|
|
|
|
|
|
|
Thanks to alexbevi for providing details on the format
|