aboutsummaryrefslogtreecommitdiff
path: root/scumm/imuse.cpp
diff options
context:
space:
mode:
authorPaweł Kołodziejski2002-10-10 19:14:28 +0000
committerPaweł Kołodziejski2002-10-10 19:14:28 +0000
commit35137791866f2c4894c2e1b4f5e8446c1f96a1ca (patch)
tree1039e47dfc6d0b23a73b6f0d8b7ef46a0b97e3a9 /scumm/imuse.cpp
parent3970de80649f5f2c1d92b02fe79110b75fa593ac (diff)
downloadscummvm-rg350-35137791866f2c4894c2e1b4f5e8446c1f96a1ca.tar.gz
scummvm-rg350-35137791866f2c4894c2e1b4f5e8446c1f96a1ca.tar.bz2
scummvm-rg350-35137791866f2c4894c2e1b4f5e8446c1f96a1ca.zip
added the dig imuse seq music
svn-id: r5125
Diffstat (limited to 'scumm/imuse.cpp')
-rw-r--r--scumm/imuse.cpp177
1 files changed, 97 insertions, 80 deletions
diff --git a/scumm/imuse.cpp b/scumm/imuse.cpp
index be0ce30f1d..f20d7ca497 100644
--- a/scumm/imuse.cpp
+++ b/scumm/imuse.cpp
@@ -5065,74 +5065,74 @@ static const imuse_music_table _digStateMusicTable[] = {
};
static const imuse_music_table _digSeqMusicTable[] = {
- {0, "SEQ_NULL", "", "" },
- {1, "seqLogo", "", "" },
- {2, "seqIntro", "", "" },
- {3, "seqExplosion1b", "", "" },
- {4, "seqAstTunnel1a", "Seq (ast tunnel 1a)", "SEQ(AS~1.IMU"},
- {5, "seqAstTunnel2b", "", "" },
- {6, "seqAstTunnel3a", "Seq (ast tunnel 3a)", "SEQ(AS~2.IMU"},
- {7, "seqToPlanet1b", "", "" },
- {8, "seqArgBegin", "Seq (arg begin)", "SEQ(AR~1.IMU"},
- {9, "seqArgEnd", "Seq (arg end)", "SEQ(AR~2.IMU"},
- {10, "seqWreckGhost", "Seq (ghost-wreck)", "SEQ(GH~1.IMU"},
- {11, "seqCanyonGhost", "Seq (ghost-canyon)", "SEQ(GH~2.IMU"},
- {12, "seqBrinkFall", "", "" },
- {13, "seqPanUpCanyon", "Seq (pan up canyon)", "SEQ(PA~1.IMU"},
- {14, "seqAirlockTunnel1b", "", "" },
- {15, "seqTramToMu", "", "" },
- {16, "seqTramFromMu", "", "" },
- {17, "seqTramToTomb", "", "" },
- {18, "seqTramFromTomb", "", "" },
- {19, "seqTramToPlan", "", "" },
- {20, "seqTramFromPlan", "", "" },
- {21, "seqTramToMap", "", "" },
- {22, "seqTramFromMap", "", "" },
- {23, "seqTramToCath", "", "" },
- {24, "seqTramFromCath", "", "" },
- {25, "seqMuseumGhost", "", "" },
- {26, "seqSerpentAppears", "", "" },
- {27, "seqSerpentEats", "", "" },
- {28, "seqBrinkRes1b", "", "" },
- {29, "seqBrinkRes2a", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
- {30, "seqLockupEntry", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
- {31, "seqSerpentExplodes", "", "" },
- {32, "seqSwimUnderwater", "Seq (descent)", "SEQ(DE~1.IMU"},
- {33, "seqWavesPlunge", "Seq (plunge)", "SEQ(PL~1.IMU"},
- {34, "seqCryptOpens", "", "" },
- {35, "seqGuardsFight", "", "" },
- {36, "seqCreatorRes1.1a", "Seq (creator res 1.1a)", "SEQ(CR~1.IMU"},
- {37, "seqCreatorRes1.2b", "", "" },
- {38, "seqMaggieCapture1b", "", "" },
- {39, "seqStealCrystals", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
- {40, "seqGetByMonster", "", "" },
- {41, "seqKillMonster1b", "", "" },
- {42, "seqCreatorRes2.1a", "Seq (creator res 2.1a)", "SEQ(CR~2.IMU"},
- {43, "seqCreatorRes2.2b", "", "" },
- {44, "seqCreatorRes2.3a", "Seq (creator res 2.3a)", "SEQ(CR~3.IMU"},
- {45, "seqMaggieInsists", "", "" },
- {46, "seqBrinkHelpCall", "", "" },
- {47, "seqBrinkCrevice1a", "Seq (brink crevice 1a)", "SEQ(BR~2.IMU"},
- {48, "seqBrinkCrevice2a", "Seq (brink crevice 2a)", "SEQ(BR~3.IMU"},
- {49, "seqCathAccess1b", "", "" },
- {50, "seqCathAccess2a", "Seq (cath access 2a)", "SEQ(CA~1.IMU"},
- {51, "seqBrinkAtGenerator", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
- {52, "seqFightBrink1b", "", "" },
- {53, "seqMaggieDies1b", "", "" },
- {54, "seqMaggieRes1b", "", "" },
- {55, "seqMaggieRes2a", "Seq (maggie res 2a)", "SEQ(MA~1.IMU"},
- {56, "seqCreatureFalls", "", "" },
- {57, "seqFinale1b", "", "" },
- {58, "seqFinale2a", "Seq (finale 2a)", "SEQ(FI~1.IMU"},
- {59, "seqFinale3b1", "", "" },
- {60, "seqFinale3b2", "", "" },
- {61, "seqFinale4a", "Seq (finale 4a)", "SEQ(FI~2.IMU"},
- {62, "seqFinale5a", "Seq (finale 5a)", "SEQ(FI~3.IMU"},
- {63, "seqFinale6a", "Seq (finale 6a)", "SEQ(FI~4.IMU"},
- {64, "seqFinale7a", "Seq (finale 7a)", "SE3D2B~5.IMU"},
- {65, "seqFinale8b", "", "" },
- {66, "seqFinale9a", "Seq (finale 9a)", "SE313B~5.IMU"},
- {-1, "", "", "" },
+ {2000, "SEQ_NULL", "", "" },
+ {2005, "seqLogo", "", "" },
+ {2010, "seqIntro", "", "" },
+ {2020, "seqExplosion1b", "", "" },
+ {2030, "seqAstTunnel1a", "Seq (ast tunnel 1a)", "SEQ(AS~1.IMU"},
+ {2031, "seqAstTunnel2b", "", "" },
+ {2032, "seqAstTunnel3a", "Seq (ast tunnel 3a)", "SEQ(AS~2.IMU"},
+ {2040, "seqToPlanet1b", "", "" },
+ {2045, "seqArgBegin", "Seq (arg begin)", "SEQ(AR~1.IMU"},
+ {2046, "seqArgEnd", "Seq (arg end)", "SEQ(AR~2.IMU"},
+ {2050, "seqWreckGhost", "Seq (ghost-wreck)", "SEQ(GH~1.IMU"},
+ {2060, "seqCanyonGhost", "Seq (ghost-canyon)", "SEQ(GH~2.IMU"},
+ {2070, "seqBrinkFall", "", "" },
+ {2080, "seqPanUpCanyon", "Seq (pan up canyon)", "SEQ(PA~1.IMU"},
+ {2091, "seqAirlockTunnel1b", "", "" },
+ {2100, "seqTramToMu", "", "" },
+ {2101, "seqTramFromMu", "", "" },
+ {2102, "seqTramToTomb", "", "" },
+ {2103, "seqTramFromTomb", "", "" },
+ {2104, "seqTramToPlan", "", "" },
+ {2105, "seqTramFromPlan", "", "" },
+ {2106, "seqTramToMap", "", "" },
+ {2107, "seqTramFromMap", "", "" },
+ {2108, "seqTramToCath", "", "" },
+ {2109, "seqTramFromCath", "", "" },
+ {2110, "seqMuseumGhost", "", "" },
+ {2120, "seqSerpentAppears", "", "" },
+ {2130, "seqSerpentEats", "", "" },
+ {2140, "seqBrinkRes1b", "", "" },
+ {2141, "seqBrinkRes2a", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
+ {2150, "seqLockupEntry", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
+ {2160, "seqSerpentExplodes", "", "" },
+ {2170, "seqSwimUnderwater", "Seq (descent)", "SEQ(DE~1.IMU"},
+ {2175, "seqWavesPlunge", "Seq (plunge)", "SEQ(PL~1.IMU"},
+ {2180, "seqCryptOpens", "", "" },
+ {2190, "seqGuardsFight", "", "" },
+ {2200, "seqCreatorRes1.1a", "Seq (creator res 1.1a)", "SEQ(CR~1.IMU"},
+ {2201, "seqCreatorRes1.2b", "", "" },
+ {2210, "seqMaggieCapture1b", "", "" },
+ {2220, "seqStealCrystals", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
+ {2230, "seqGetByMonster", "", "" },
+ {2240, "seqKillMonster1b", "", "" },
+ {2250, "seqCreatorRes2.1a", "Seq (creator res 2.1a)", "SEQ(CR~2.IMU"},
+ {2251, "seqCreatorRes2.2b", "", "" },
+ {2252, "seqCreatorRes2.3a", "Seq (creator res 2.3a)", "SEQ(CR~3.IMU"},
+ {2260, "seqMaggieInsists", "", "" },
+ {2270, "seqBrinkHelpCall", "", "" },
+ {2280, "seqBrinkCrevice1a", "Seq (brink crevice 1a)", "SEQ(BR~2.IMU"},
+ {2281, "seqBrinkCrevice2a", "Seq (brink crevice 2a)", "SEQ(BR~3.IMU"},
+ {2290, "seqCathAccess1b", "", "" },
+ {2291, "seqCathAccess2a", "Seq (cath access 2a)", "SEQ(CA~1.IMU"},
+ {2300, "seqBrinkAtGenerator", "Seq (brink's madness)", "SEQ(BR~1.IMU"},
+ {2320, "seqFightBrink1b", "", "" },
+ {2340, "seqMaggieDies1b", "", "" },
+ {2346, "seqMaggieRes1b", "", "" },
+ {2347, "seqMaggieRes2a", "Seq (maggie res 2a)", "SEQ(MA~1.IMU"},
+ {2350, "seqCreatureFalls", "", "" },
+ {2360, "seqFinale1b", "", "" },
+ {2370, "seqFinale2a", "Seq (finale 2a)", "SEQ(FI~1.IMU"},
+ {2380, "seqFinale3b1", "", "" },
+ {2390, "seqFinale3b2", "", "" },
+ {2400, "seqFinale4a", "Seq (finale 4a)", "SEQ(FI~2.IMU"},
+ {2410, "seqFinale5a", "Seq (finale 5a)", "SEQ(FI~3.IMU"},
+ {2420, "seqFinale6a", "Seq (finale 6a)", "SEQ(FI~4.IMU"},
+ {2430, "seqFinale7a", "Seq (finale 7a)", "SE3D2B~5.IMU"},
+ {2440, "seqFinale8b", "", "" },
+ {2450, "seqFinale9a", "Seq (finale 9a)", "SE313B~5.IMU"},
+ {-1, "", "", "" },
};
void IMuseDigital::handler() {
@@ -5533,24 +5533,41 @@ int32 IMuseDigital::doCommand(int a, int b, int c, int d, int e, int f, int g, i
switch (cmd) {
case 0: // play music (state)
debug(1, "IMuseDigital::doCommand 0x1000 (%d)", b);
- if (_scumm->_gameId == GID_FT)
- return 0;
- for(l = 0;; l++) {
- if (_digStateMusicMap[l].room == -1) {
- return 1;
- }
- if ((_digStateMusicMap[l].room == b)) {
- int16 music = _digStateMusicMap[l].table_index;
- debug(1, "Play imuse music: %s, %s, %s", _digStateMusicTable[music].name, _digStateMusicTable[music].title, _digStateMusicTable[music].filename);
- if (_digStateMusicTable[music].filename[0] != 0) {
- _scumm->_sound->playBundleMusic((char*)&_digStateMusicTable[music].filename);
+ return 0;
+ if (_scumm->_gameId == GID_DIG) {
+ for(l = 0;; l++) {
+ if (_digStateMusicMap[l].room == -1) {
+ return 1;
+ }
+ if ((_digStateMusicMap[l].room == b)) {
+ int16 music = _digStateMusicMap[l].table_index;
+ debug(1, "Play imuse music: %s, %s, %s", _digStateMusicTable[music].name, _digStateMusicTable[music].title, _digStateMusicTable[music].filename);
+ if (_digStateMusicTable[music].filename[0] != 0) {
+ _scumm->_sound->playBundleMusic((char*)&_digStateMusicTable[music].filename);
+ }
+ return 0;
}
- return 0;
}
+ } else if (_scumm->_gameId == GID_FT) {
}
return 0;
case 1: // play music (seq)
debug(1, "IMuseDigital::doCommand 0x1001 (%d)", b);
+ if (_scumm->_gameId == GID_DIG) {
+ for(l = 0;; l++) {
+ if (_digSeqMusicTable[l].index == -1) {
+ return 1;
+ }
+ if ((_digSeqMusicTable[l].index == b)) {
+ debug(1, "Play imuse music: %s, %s, %s", _digSeqMusicTable[l].name, _digSeqMusicTable[l].title, _digSeqMusicTable[l].filename);
+ if (_digSeqMusicTable[l].filename[0] != 0) {
+ _scumm->_sound->playBundleMusic((char*)&_digSeqMusicTable[l].filename);
+ }
+ return 0;
+ }
+ }
+ } else if (_scumm->_gameId == GID_FT) {
+ }
return 0;
case 2: // dummy in DIG and CMI
debug(2, "IMuseDigital::doCommand 0x1002 (%d)", b);