aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorSven Hesse2006-12-20 15:50:13 +0000
committerSven Hesse2006-12-20 15:50:13 +0000
commit97ad57e9bbbbbdbca4478a9a38ffebbdbfc4c467 (patch)
tree39bb5b74a73c5e5c8572b23ad32f87ac4bf4ba6f /engines
parentc51d89061f8a9703468bf42652cb0979dda3a576 (diff)
downloadscummvm-rg350-97ad57e9bbbbbdbca4478a9a38ffebbdbfc4c467.tar.gz
scummvm-rg350-97ad57e9bbbbbdbca4478a9a38ffebbdbfc4c467.tar.bz2
scummvm-rg350-97ad57e9bbbbbdbca4478a9a38ffebbdbfc4c467.zip
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
svn-id: r24903
Diffstat (limited to 'engines')
-rw-r--r--engines/gob/cdrom.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/engines/gob/cdrom.cpp b/engines/gob/cdrom.cpp
index b12aac32b7..a005ebddfc 100644
--- a/engines/gob/cdrom.cpp
+++ b/engines/gob/cdrom.cpp
@@ -147,7 +147,6 @@ void CDROM::playMultMusic() {
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 @@ void CDROM::play(uint32 from, uint32 to) {
// 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 @@ void CDROM::stop(void) {
debugC(1, DEBUG_MUSIC, "stop()");
AudioCD.stop();
+ _cdPlaying = false;
}
void CDROM::testCD(int trySubst, const char *label) {