Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mt32emu for openSUSE:Factory checked in at 2026-03-24 18:48:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mt32emu (Old) and /work/SRC/openSUSE:Factory/.mt32emu.new.8177 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mt32emu" Tue Mar 24 18:48:51 2026 rev:13 rq:1342096 version:2.7.3 Changes: -------- --- /work/SRC/openSUSE:Factory/mt32emu/mt32emu.changes 2025-05-09 18:53:21.194058177 +0200 +++ /work/SRC/openSUSE:Factory/.mt32emu.new.8177/mt32emu.changes 2026-03-24 18:49:41.084475796 +0100 @@ -1,0 +2,10 @@ +Mon Mar 23 19:36:32 UTC 2026 - Martin Hauke <[email protected]> + +- Update to 2.7.3 + * When a SysEx message touches the timbre number of the Patch + Temp memory area for a part, all currently playing notes on + that part now start to decay instantly. This is similar to the + way a Program Change event is handled, and it's how the real + h/w does this. (#132). + +------------------------------------------------------------------- Old: ---- munt-libmt32emu_2_7_2.tar.gz New: ---- munt-libmt32emu_2_7_3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mt32emu.spec ++++++ --- /var/tmp/diff_new_pack.TkBDXi/_old 2026-03-24 18:49:41.612497583 +0100 +++ /var/tmp/diff_new_pack.TkBDXi/_new 2026-03-24 18:49:41.616497748 +0100 @@ -1,7 +1,7 @@ # # spec file for package mt32emu # -# Copyright (c) 2025 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,10 +17,10 @@ %define s_name munt-lib%{name}_%{s_ver} -%define s_ver 2_7_2 +%define s_ver 2_7_3 %define sover 2 Name: mt32emu -Version: 2.7.2 +Version: 2.7.3 Release: 0 Summary: An emulator of the Roland MT-32, CM-32L and LAPC-I synthesiser modules License: GPL-3.0-or-later AND LGPL-2.1-or-later ++++++ munt-libmt32emu_2_7_2.tar.gz -> munt-libmt32emu_2_7_3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/munt-libmt32emu_2_7_2/mt32emu/NEWS.txt new/munt-libmt32emu_2_7_3/mt32emu/NEWS.txt --- old/munt-libmt32emu_2_7_2/mt32emu/NEWS.txt 2025-04-03 21:04:02.000000000 +0200 +++ new/munt-libmt32emu_2_7_3/mt32emu/NEWS.txt 2025-12-26 15:07:56.000000000 +0100 @@ -1,3 +1,11 @@ +2025-12-26: + + 2.7.3 released. + + * When a SysEx message touches the timbre number of the Patch Temp memory area for a part, + all currently playing notes on that part now start to decay instantly. This is similar to + the way a Program Change event is handled, and it's how the real h/w does this. (#132) + 2025-04-03: 2.7.2 released. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/munt-libmt32emu_2_7_2/mt32emu/src/Part.cpp new/munt-libmt32emu_2_7_3/mt32emu/src/Part.cpp --- old/munt-libmt32emu_2_7_2/mt32emu/src/Part.cpp 2025-04-03 21:04:02.000000000 +0200 +++ new/munt-libmt32emu_2_7_3/mt32emu/src/Part.cpp 2025-12-26 15:07:56.000000000 +0100 @@ -195,12 +195,14 @@ patchTemp->patch = *patch; } -void RhythmPart::setTimbre(TimbreParam * /*timbre*/) { - synth->printDebug("%s: Attempted to call setTimbre() - doesn't make sense for rhythm", name); +void RhythmPart::resetTimbre() { + synth->printDebug("%s: Attempted to call resetTimbre() - doesn't make sense for rhythm", name); } -void Part::setTimbre(TimbreParam *timbre) { - *timbreTemp = *timbre; +void Part::resetTimbre() { + holdpedal = false; + allSoundOff(); + *timbreTemp = synth->mt32ram.timbres[getAbsTimbreNum()].timbre; } unsigned int RhythmPart::getAbsTimbreNum() const { @@ -222,9 +224,7 @@ void Part::setProgram(unsigned int patchNum) { setPatch(&synth->mt32ram.patches[patchNum]); - holdpedal = false; - allSoundOff(); - setTimbre(&synth->mt32ram.timbres[getAbsTimbreNum()].timbre); + resetTimbre(); refresh(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/munt-libmt32emu_2_7_2/mt32emu/src/Part.h new/munt-libmt32emu_2_7_3/mt32emu/src/Part.h --- old/munt-libmt32emu_2_7_2/mt32emu/src/Part.h 2025-04-03 21:04:02.000000000 +0200 +++ new/munt-libmt32emu_2_7_3/mt32emu/src/Part.h 2025-12-26 15:07:56.000000000 +0100 @@ -115,7 +115,7 @@ void updatePitchBenderRange(); virtual void refresh(); virtual void refreshTimbre(unsigned int absTimbreNum); - virtual void setTimbre(TimbreParam *timbre); + virtual void resetTimbre(); virtual unsigned int getAbsTimbreNum() const; const char *getCurrentInstr() const; const Poly *getFirstActivePoly() const; @@ -146,7 +146,7 @@ RhythmPart(Synth *synth, unsigned int usePartNum); void refresh(); void refreshTimbre(unsigned int timbreNum); - void setTimbre(TimbreParam *timbre); + void resetTimbre(); void noteOn(unsigned int key, unsigned int velocity); void noteOff(unsigned int midiKey); unsigned int getAbsTimbreNum() const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/munt-libmt32emu_2_7_2/mt32emu/src/Synth.cpp new/munt-libmt32emu_2_7_3/mt32emu/src/Synth.cpp --- old/munt-libmt32emu_2_7_2/mt32emu/src/Synth.cpp 2025-04-03 21:04:02.000000000 +0200 +++ new/munt-libmt32emu_2_7_3/mt32emu/src/Synth.cpp 2025-12-26 15:07:56.000000000 +0100 @@ -1591,7 +1591,7 @@ printDebug(" (Not updating timbre, since those values weren't touched)"); #endif } else { - parts[i]->setTimbre(&mt32ram.timbres[parts[i]->getAbsTimbreNum()].timbre); + parts[i]->resetTimbre(); } } parts[i]->refresh();
