Author: sagamusix
Date: Sat Jun 1 15:58:00 2024
New Revision: 20894
URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=20894
Log:
Merged revision(s) 20867, 20872, 20883 from trunk/OpenMPT:
[Fix] ModCommand::GetEffectWeight did not contain a weight for CMD_CHANNELVOLSLIDE.
........
[Fix] Also disable loop wrap-around buffer logic if the sample loop start doesn't match.
........
[Fix] AMS: Default channel panning was broken, using all-center panning instead of MOD panning.
........
Modified:
branches/OpenMPT-1.31/ (props changed)
branches/OpenMPT-1.31/soundlib/Fastmix.cpp
branches/OpenMPT-1.31/soundlib/Load_ams.cpp
branches/OpenMPT-1.31/soundlib/modcommand.cpp
Modified: branches/OpenMPT-1.31/soundlib/Fastmix.cpp
==============================================================================
--- branches/OpenMPT-1.31/soundlib/Fastmix.cpp Sat Jun 1 15:56:54 2024 (r20893)
+++ branches/OpenMPT-1.31/soundlib/Fastmix.cpp Sat Jun 1 15:58:00 2024 (r20894)
@@ -76,7 +76,7 @@
const bool inSustainLoop = chn.InSustainLoop() && chn.nLoopStart == chn.pModSample->nSustainStart && chn.nLoopEnd == chn.pModSample->nSustainEnd;
// Do not enable wraparound magic if we're previewing a custom loop!
- if(inSustainLoop || chn.nLoopEnd == chn.pModSample->nLoopEnd)
+ if(inSustainLoop || (chn.nLoopStart == chn.pModSample->nLoopStart && chn.nLoopEnd == chn.pModSample->nLoopEnd))
{
SmpLength lookaheadOffset = 3 * InterpolationLookaheadBufferSize + chn.pModSample->nLength - chn.nLoopEnd;
if(inSustainLoop)
Modified: branches/OpenMPT-1.31/soundlib/Load_ams.cpp
==============================================================================
--- branches/OpenMPT-1.31/soundlib/Load_ams.cpp Sat Jun 1 15:56:54 2024 (r20893)
+++ branches/OpenMPT-1.31/soundlib/Load_ams.cpp Sat Jun 1 15:58:00 2024 (r20894)
@@ -401,6 +401,7 @@
}
InitializeGlobals(MOD_TYPE_AMS);
+ InitializeChannels();
m_SongFlags = SONG_ITCOMPATGXX | SONG_ITOLDEFFECTS;
m_nChannels = (fileHeader.channelConfig & 0x1F) + 1;
@@ -435,7 +436,6 @@
// Read channel names
for(CHANNELINDEX chn = 0; chn < GetNumChannels(); chn++)
{
- ChnSettings[chn].Reset();
file.ReadSizedString<uint8le, mpt::String::spacePadded>(ChnSettings[chn].szName);
}
Modified: branches/OpenMPT-1.31/soundlib/modcommand.cpp
==============================================================================
--- branches/OpenMPT-1.31/soundlib/modcommand.cpp Sat Jun 1 15:56:54 2024 (r20893)
+++ branches/OpenMPT-1.31/soundlib/modcommand.cpp Sat Jun 1 15:58:00 2024 (r20894)
@@ -1173,7 +1173,7 @@
CMD_TONEPORTAMENTO,
CMD_TONEPORTAVOL,
CMD_DBMECHO,
- CMD_GLOBALVOLSLIDE,
+ CMD_CHANNELVOLSLIDE,
CMD_CHANNELVOLUME,
CMD_GLOBALVOLSLIDE,
CMD_GLOBALVOLUME,
@@ -1192,6 +1192,7 @@
}
}
// Invalid / unknown command.
+ MPT_ASSERT_NOTREACHED();
return 0;
}
|