summaryrefslogtreecommitdiff
path: root/src/doom/s_sound.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/doom/s_sound.c')
-rw-r--r--src/doom/s_sound.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/doom/s_sound.c b/src/doom/s_sound.c
index f829956c..7f4411dd 100644
--- a/src/doom/s_sound.c
+++ b/src/doom/s_sound.c
@@ -618,6 +618,15 @@ void S_ChangeMusic(int musicnum, int looping)
char namebuf[9];
void *handle;
+ // The Doom IWAD file has two versions of the intro music: d_intro
+ // and d_introa. The latter is used for OPL playback.
+
+ if (musicnum == mus_intro && (snd_musicdevice == SNDDEVICE_ADLIB
+ || snd_musicdevice == SNDDEVICE_SB))
+ {
+ musicnum = mus_introa;
+ }
+
if (musicnum <= mus_None || musicnum >= NUMMUSIC)
{
I_Error("Bad music number %d", musicnum);