[Scummvm-cvs-logs] SF.net SVN: scummvm: [24903] scummvm/trunk/engines/gob/cdrom.cpp

drmccoy at users.sourceforge.net drmccoy at users.sourceforge.net
Wed Dec 20 16:50:14 CET 2006


Revision: 24903
          http://scummvm.svn.sourceforge.net/scummvm/?rev=24903&view=rev
Author:   drmccoy
Date:     2006-12-20 07:50:13 -0800 (Wed, 20 Dec 2006)

Log Message:
-----------
Changed CD playing a bit, now playing directly from the CD should be possible again. Playing without an audio track at all works now, too

Modified Paths:
--------------
    scummvm/trunk/engines/gob/cdrom.cpp

Modified: scummvm/trunk/engines/gob/cdrom.cpp
===================================================================
--- scummvm/trunk/engines/gob/cdrom.cpp	2006-12-20 12:21:48 UTC (rev 24902)
+++ scummvm/trunk/engines/gob/cdrom.cpp	2006-12-20 15:50:13 UTC (rev 24903)
@@ -147,7 +147,6 @@
 
 	for (int i = 0; i < ARRAYSIZE(tracks); i++)
 		if (!scumm_stricmp(_vm->_game->_curTotFile, tracks[i][0])) {
-			_cdPlaying = true;
 			startTrack(tracks[i][_vm->_global->_language + 1]);
 			break;
 		}
@@ -203,13 +202,14 @@
 	// plus frame, minus 150
 	debugC(1, DEBUG_MUSIC, "play(%d, %d)", from, to);
 
-	AudioCD.play(1, 0, from, to - from + 1);
+	AudioCD.play(1, 1, from, to - from + 1);
+	_cdPlaying = true;
 }
 
 int32 CDROM::getTrackPos(void) {
 	uint32 curPos = _vm->_util->getTimeKey() - _startTime;
 
-	if (AudioCD.isPlaying() && (_vm->_util->getTimeKey() < _trackStop))
+	if (_cdPlaying && (_vm->_util->getTimeKey() < _trackStop))
 		return curPos * 3 / 40;
 	else
 		return -1;
@@ -229,6 +229,7 @@
 	debugC(1, DEBUG_MUSIC, "stop()");
 
 	AudioCD.stop();
+	_cdPlaying = false;
 }
 
 void CDROM::testCD(int trySubst, const char *label) {


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