From 76f6449431e28b7530c94698467499139ffce860 Mon Sep 17 00:00:00 2001 From: Martin Kiewitz Date: Wed, 14 Jul 2010 11:34:44 +0000 Subject: SCI: changing signature of kDoSound(play) in SCI2.1 to "o(i)" now, because qfg4 still uses "oi" calling svn-id: r50879 --- engines/sci/engine/kernel.cpp | 4 +++- engines/sci/resource_audio.cpp | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'engines') diff --git a/engines/sci/engine/kernel.cpp b/engines/sci/engine/kernel.cpp index 2a30e783b3..d536682480 100644 --- a/engines/sci/engine/kernel.cpp +++ b/engines/sci/engine/kernel.cpp @@ -386,10 +386,12 @@ static const SciKernelMapSubEntry kDoSound_subops[] = { { SIG_SOUNDSCI21, 5, MAP_CALL(DoSoundSuspend), NULL, NULL }, { SIG_SOUNDSCI21, 6, MAP_CALL(DoSoundInit), NULL, NULL }, { SIG_SOUNDSCI21, 7, MAP_CALL(DoSoundDispose), NULL, NULL }, - { SIG_SOUNDSCI21, 8, MAP_CALL(DoSoundPlay), "o", NULL }, + { SIG_SOUNDSCI21, 8, MAP_CALL(DoSoundPlay), "o(i)", NULL }, // ^^ TODO: if this is really the only change between SCI1LATE AND SCI21, we could rename the // SIG_SOUNDSCI1LATE #define to SIG_SINCE_SOUNDSCI1LATE and make it being SCI1LATE+. Although // I guess there are many more changes somewhere + // TODO: Quest for Glory 4 (SCI2.1) uses the old scheme, we need to detect it accordingly + // signature for SCI21 should be "o" { SIG_SOUNDSCI21, 9, MAP_CALL(DoSoundStop), NULL, NULL }, { SIG_SOUNDSCI21, 10, MAP_CALL(DoSoundPause), NULL, NULL }, { SIG_SOUNDSCI21, 11, MAP_CALL(DoSoundFade), NULL, NULL }, diff --git a/engines/sci/resource_audio.cpp b/engines/sci/resource_audio.cpp index 13aa81cb24..08e05f5ccd 100644 --- a/engines/sci/resource_audio.cpp +++ b/engines/sci/resource_audio.cpp @@ -543,6 +543,7 @@ SoundResource::SoundResource(uint32 resourceNr, ResourceManager *resMan, SciVers case SCI_VERSION_1_EARLY: case SCI_VERSION_1_LATE: + case SCI_VERSION_2_1: data = resource->data; // Count # of tracks _trackCount = 0; -- cgit v1.2.3