From: <sv...@op...> - 2024-06-07 17:28:27
|
Author: sagamusix Date: Fri Jun 7 19:28:20 2024 New Revision: 20947 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=20947 Log: [Fix] STM/STX: Don't import channels with panning. ST2 only outputs mono sound. The SoundBlaster Pro was only released around the same time as the last ST2 release, so stereo support was just not possible. Modified: trunk/OpenMPT/soundlib/Load_stm.cpp Modified: trunk/OpenMPT/soundlib/Load_stm.cpp ============================================================================== --- trunk/OpenMPT/soundlib/Load_stm.cpp Fri Jun 7 19:00:02 2024 (r20946) +++ trunk/OpenMPT/soundlib/Load_stm.cpp Fri Jun 7 19:28:20 2024 (r20947) @@ -230,6 +230,7 @@ return true; InitializeGlobals(MOD_TYPE_STM); + InitializeChannels(); m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songname); @@ -258,13 +259,6 @@ if(fileHeader.verMinor > 10) m_nDefaultGlobalVolume = std::min(fileHeader.globalVolume, uint8(64)) * 4u; - // Setting up channels - for(CHANNELINDEX chn = 0; chn < 4; chn++) - { - ChnSettings[chn].Reset(); - ChnSettings[chn].nPan = (chn & 1) ? 0x40 : 0xC0; - } - // Read samples uint16 sampleOffsets[31]; for(SAMPLEINDEX smp = 1; smp <= 31; smp++) @@ -461,6 +455,7 @@ return true; InitializeGlobals(MOD_TYPE_STM); + InitializeChannels(); m_songName = mpt::String::ReadBuf(mpt::String::maybeNullTerminated, fileHeader.songName); @@ -479,13 +474,6 @@ Order().SetDefaultSpeed(initTempo >> 4); m_nDefaultGlobalVolume = std::min(fileHeader.globalVolume, uint8(64)) * 4u; - // Setting up channels - for(CHANNELINDEX chn = 0; chn < 4; chn++) - { - ChnSettings[chn].Reset(); - ChnSettings[chn].nPan = (chn & 1) ? 0x40 : 0xC0; - } - std::vector<uint16le> patternOffsets, sampleOffsets; file.Seek(fileHeader.patTableOffset << 4); file.ReadVector(patternOffsets, fileHeader.numPatterns); |