[Scummvm-cvs-logs] SF.net SVN: scummvm:[43569] scummvm/trunk/engines/sci/sfx/core.cpp
mthreepwood at users.sourceforge.net
mthreepwood at users.sourceforge.net
Thu Aug 20 22:41:13 CEST 2009
Revision: 43569
http://scummvm.svn.sourceforge.net/scummvm/?rev=43569&view=rev
Author: mthreepwood
Date: 2009-08-20 20:41:12 +0000 (Thu, 20 Aug 2009)
Log Message:
-----------
Fix 16-bit SOL audio on little endian systems. Fixes the white noise in the Gabriel Knight demo.
Modified Paths:
--------------
scummvm/trunk/engines/sci/sfx/core.cpp
Modified: scummvm/trunk/engines/sci/sfx/core.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/core.cpp 2009-08-20 20:15:47 UTC (rev 43568)
+++ scummvm/trunk/engines/sci/sfx/core.cpp 2009-08-20 20:41:12 UTC (rev 43569)
@@ -1060,7 +1060,7 @@
s += tableDPCM16[b];
s = CLIP<int32>(s, -32768, 32767);
- *out++ = TO_BE_16(s);
+ *out++ = s;
}
}
@@ -1105,8 +1105,13 @@
// Convert the SOL stream flags to our own format
flags = 0;
- if (audioFlags & kSolFlag16Bit)
+ if (audioFlags & kSolFlag16Bit) {
flags |= Audio::Mixer::FLAG_16BITS;
+#ifdef SCUMM_LITTLE_ENDIAN
+ flags |= Audio::Mixer::FLAG_LITTLE_ENDIAN;
+#endif
+ }
+
if (!(audioFlags & kSolFlagIsSigned))
flags |= Audio::Mixer::FLAG_UNSIGNED;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list