It is not safe to assume one can construct a va_list by using NULL. Instead I
created a temporary (uninitialized!) dummy, which is passed in the call to the
Action::attached implementation. I added a TODO to resolve this temporary hack.
Mac OS X PPC's standard C(++) library does not feature any sqrtf function,
since the parameter is double anyway I changed it to use sqrt for now.
We might want to consider adding some global macros for that on such
platforms. Another instance where the same issues caused problems in the past
is the MT-32 emulator. See audio/softsynth/mt32/synth.cpp lines 30 to 43 for
reference.
This makes the code use Common::List for all cases where synchronization can
not be done with tSage::List::synchronise. Furthermore I renamed the custom
List class to SynchronisedList to stress its purpose.
I also removed clear2, contains and forEach and replaced them with algorithm
usage from Common:: or in the case of "contains" replaced them with a simple
inline function which uses Common::find.
There are tons of ADPCM variants out there, and it is impractical to
stuff them all into a single adpcm.cpp file. By exposing the internals,
engines can implement their ADPCM decoder variants more easily.
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.
The problem is the original game presumed that rendering a single frame would take at least 10 ticks (at 60Hz). Since the ScummVM renders it faster than then, the cutscene wasn't working. A new 'ProbeMover' class has been created to ensure the probe shrinking keeps correct pace with the probe's movement.
* No default buttons set any more as I would want the build to fails
if you don't provide the backend with a device.
* Also commit some small cleanup to the bundle files.