From: <sag...@us...> - 2014-07-19 16:46:44
|
Revision: 4187 http://sourceforge.net/p/modplug/code/4187 Author: saga-games Date: 2014-07-19 16:46:30 +0000 (Sat, 19 Jul 2014) Log Message: ----------- [Imp] Pattern tab: Greatly improve syncing speed of small chip samples [Mod] OpenMPT: Version is now 1.23.04.05 Modified Paths: -------------- trunk/OpenMPT/common/versionNumber.h trunk/OpenMPT/soundlib/Snd_fx.cpp Modified: trunk/OpenMPT/common/versionNumber.h =================================================================== --- trunk/OpenMPT/common/versionNumber.h 2014-07-09 10:22:22 UTC (rev 4186) +++ trunk/OpenMPT/common/versionNumber.h 2014-07-19 16:46:30 UTC (rev 4187) @@ -19,7 +19,7 @@ #define VER_MAJORMAJOR 1 #define VER_MAJOR 23 #define VER_MINOR 04 -#define VER_MINORMINOR 04 +#define VER_MINORMINOR 05 //Version string. For example "1.17.02.28" #define MPT_VERSION_STR VER_STRINGIZE(VER_MAJORMAJOR) "." VER_STRINGIZE(VER_MAJOR) "." VER_STRINGIZE(VER_MINOR) "." VER_STRINGIZE(VER_MINORMINOR) Modified: trunk/OpenMPT/soundlib/Snd_fx.cpp =================================================================== --- trunk/OpenMPT/soundlib/Snd_fx.cpp 2014-07-09 10:22:22 UTC (rev 4186) +++ trunk/OpenMPT/soundlib/Snd_fx.cpp 2014-07-19 16:46:30 UTC (rev 4187) @@ -739,9 +739,15 @@ stopNote = true; } else { + const SmpLength loopLength = pChn->nLoopEnd - pChn->nLoopStart; + if(pChn->nPos >= pChn->nLoopEnd + loopLength) + { + const SmpLength overshoot = pChn->nPos - pChn->nLoopEnd; + pChn->nPos -= (overshoot / loopLength) * loopLength; + } while(pChn->nPos >= pChn->nLoopEnd) { - pChn->nPos -= (pChn->nLoopEnd - pChn->nLoopStart); + pChn->nPos -= loopLength; } } } else if(pChn->nPos >= pChn->nLength) @@ -4916,7 +4922,7 @@ return 6*12+36; } else { - for (UINT i=1; i<NOTE_MAX; i++) + for (UINT i=NOTE_MIN; i<NOTE_MAX; i++) { LONG n = GetPeriodFromNote(i, 0, 0); if ((n > 0) && (n <= (LONG)period)) return i; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |