[Scummvm-cvs-logs] SF.net SVN: scummvm:[42202] scummvm/trunk/engines/agos/res_snd.cpp
Kirben at users.sourceforge.net
Kirben at users.sourceforge.net
Tue Jul 7 09:02:04 CEST 2009
Revision: 42202
http://scummvm.svn.sourceforge.net/scummvm/?rev=42202&view=rev
Author: Kirben
Date: 2009-07-07 07:02:04 +0000 (Tue, 07 Jul 2009)
Log Message:
-----------
Set the correct sound rate for Personal Nightmare.
Modified Paths:
--------------
scummvm/trunk/engines/agos/res_snd.cpp
Modified: scummvm/trunk/engines/agos/res_snd.cpp
===================================================================
--- scummvm/trunk/engines/agos/res_snd.cpp 2009-07-07 06:53:53 UTC (rev 42201)
+++ scummvm/trunk/engines/agos/res_snd.cpp 2009-07-07 07:02:04 UTC (rev 42202)
@@ -527,6 +527,7 @@
void AGOSEngine::loadSound(uint16 sound, uint16 freq, uint16 flags) {
byte *dst;
uint32 offs, size = 0;
+ uint32 rate = 8000;
if (_curSfxFile == NULL)
return;
@@ -570,13 +571,23 @@
offs = READ_BE_UINT32(dst + 8);
}
- // TODO: Handle other sound flags and frequency
+ if (getGameType() == GType_PN) {
+ if (freq == 0) {
+ rate = 4600;
+ } else if (freq == 1) {
+ rate = 7400;
+ } else {
+ rate = 9400;
+ }
+ }
+
+ // TODO: Handle other sound flags in Amiga/AtariST versions
if (flags == 2 && _sound->isSfxActive()) {
- _sound->queueSound(dst + offs, sound, size, 8000);
+ _sound->queueSound(dst + offs, sound, size, rate);
} else {
if (flags == 0)
_sound->stopSfx();
- _sound->playRawData(dst + offs, sound, size, 8000);
+ _sound->playRawData(dst + offs, sound, size, rate);
}
}
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