[Scummvm-cvs-logs] SF.net SVN: scummvm: [25731] scummvm/trunk/engines/scumm/sound.cpp

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Mon Feb 19 22:09:24 CET 2007


Revision: 25731
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25731&view=rev
Author:   eriktorbjorn
Date:     2007-02-19 13:09:23 -0800 (Mon, 19 Feb 2007)

Log Message:
-----------
As Fingolfin pointed out, we no longer need two different CD timer intervals
for Loom and everything else. Adjusted the value, taking advantage of the
greater timer resolution, and clarified which two scenes need to be tested if
we ever want to adjust this value further.

Modified Paths:
--------------
    scummvm/trunk/engines/scumm/sound.cpp

Modified: scummvm/trunk/engines/scumm/sound.cpp
===================================================================
--- scummvm/trunk/engines/scumm/sound.cpp	2007-02-19 20:55:16 UTC (rev 25730)
+++ scummvm/trunk/engines/scumm/sound.cpp	2007-02-19 21:09:23 UTC (rev 25731)
@@ -1000,20 +1000,18 @@
 }
 
 void Sound::startCDTimer() {
-	int timer_interval;
+	// This timer interval is based on two scenes: The Monkey Island 1
+	// intro, and the scene in Loom CD where Chaos appears. In both cases
+	// the game plays the scene as two separate sounds, even though both
+	// halves are right next to each other in the CD track. Probably so
+	// that you can hit Escape to skip the first half.
+	//
+	// Make it too low, and the Monkey Island theme will be cut short. Make
+	// it too high, and there will be a nasty "hiccup" just as Chaos
+	// appears.
 
-	// The timer interval has been tuned for Loom CD and the Monkey 1
-	// intro. I have to use 100 for Loom, or there will be a nasty stutter
-	// when Chaos first appears, and I have to use 101 for Monkey 1 or the
-	// intro music will be cut short.
-
-	if (_vm->_game.id == GID_LOOM && _vm->_game.version == 4)
-		timer_interval = 100;
-	else
-		timer_interval = 101;
-
 	_vm->_timer->removeTimerProc(&cd_timer_handler);
-	_vm->_timer->installTimerProc(&cd_timer_handler, 1000 * timer_interval, _vm);
+	_vm->_timer->installTimerProc(&cd_timer_handler, 100700, _vm);
 }
 
 void Sound::stopCDTimer() {


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