Recent Releases
1.31.13.0005 Dec 2024 09:45
major bugfix:
Tree view
Imp Add option to open modules and instrument library entries in Explorer through the context menu (http://.openmpt.org/view.php?id=677).
The folder browser could not handle paths longer than 260 characters.
Pattern tab.
Special note keys (Note Cut / Off / Fade / PC / PCs) were not available in the default key map on various keyboard layouts (http://.openmpt.org/view.php?id=1838).
When partially pasting a normal pattern event over a PC event, the effect column was not erased properly if it wasn't part of the copied region.
When evaluating MIDI macros containing letters "u" or "v" during seeking, the initial global volume was applied to them, rather than the global volume that would be reached at that pattern position.
Instrument tab.
Imp When moving the last envelope point, avoid it snapping back quickly when moving backwards (http://.openmpt.org/view.php?id=297).
Imp Show tooltips for disabled envelope toolbar buttons, and show the button name in the toolbar.
When importing a soundfont instrument, its bank number was off by one (http://.openmpt.org/view.php?id=1842).
Mod Conversion.
Imp Improve handling of the transpose = -1 / finetune = 0 case when converting samples from another format to MOD. This combination is now automatically translated to finetune = -8.
IT.
Imp Don't report files claiming to be made with Impulse Tracker 2.08+ as IT-made if they have no edit timer.
Ignore sample data in slots that don't have the "sample data present" flag set, if the file vaguely looks IT-made to avoid playing garbage caused by an Impulse Tracker that should not be audible (http://www.un4seen.com/forum/?topic=20542.0).
S3M.
Imp Detect early Schism Tracker versions.
MOD.
Imp When trying to detect MOD files with broken order lists, the file size is now rounded down to an even number. This helps identifying some malformed files (MOD files can technically not have an odd size).
Also enable ProTracker-co
1.31.10.0025 Nov 2024 00:45
major bugfix:
Tree view
Remove keyboard focus from tree when it is about to be hidden (http://.openmpt.org/view.php?id=1802).
Pattern tab.
Imp Channel settings can now be opened from channel context menu.
Instrument tab.
Imp SFZ: Reduce memory usage of regions using the offset / end opcodes (e.g. SFZ files generated Sforzando's SF2 conversion process).
Mod Conversion.
Imp Enable sustain loop on last envelope point when converting a volume envelope from XM that has no loops set (http://.openmpt.org/view.php?id=1805).
VST / DMO Plugins.
Effect column Cxx volume command (MOD / XM style) was never sent to plugins. In particular this means that MIDI export did not export such volume commands.
For plugin IDs with the highest bit set, cache information retrieval was not possible due to incorrect INI key formatting, causing such plugins to be rescanned every time.
Avoid crash in plugin bridge if plugin changes channel configuration without notifying the host (http://.openmpt.org/view.php?id=1807).
Other formats.
New MID: SF2 sound banks embedded in RMI files are now also recognized.
Imp PTM: Use square root pan law, like in XM files.
Imp OKT: Don't drop global commands when setting paired channel volume, and try to write channel volume on the next row in this situation (http://www.un4seen.com/forum/?topic=15448.msg143684#msg143684.
Imp MED: Allow tempo parameters 32 BPM.
MED: Command 09 (set speed) was limited to 20 ticks per row instead of 32 ticks per row (http://www.un4seen.com/forum/?topic=15448.msg143294#msg143294).
MED: Disallow free panning if hardware mixing is enabled (http://www.un4seen.com/forum/?topic=15448.msg143278#msg143278).
MED: For MOD-style vibrato, a speed parameter of 0 was not treated as effect memory (http://www.un4seen.com/forum/?topic=15448.msg143464#msg143464).
MED: pattern index exhaustion in modules with multiple subsongs (http://www.un4seen.com/forum/?topic=15448.msg143464#msg143464).
1.31.12.0019 Nov 2024 14:18
major bugfix:
Pattern tab Keyboard entry was broken in several pattern columns in OpenMPT 1.31.11.00 (http://.openmpt.org/view.php?id=1834).
1.31.09.0004 Aug 2024 00:25
major bugfix:
General tab
The for garbled graphics in OpenMPT 1.31.08.00 broke graphical updates when using UI scaling in Windows (http://.openmpt.org/view.php?id=1789).
Pattern tab.
New Added shortcuts to go to a specific column within a pattern cell (http://.openmpt.org/view.php?id=1797).
Mod S88 / E88 effect parameter explanation is now shown as "1 R" instead of "Center" as there is no real panning center with these commands (http://.openmpt.org/view.php?id=1796).
The next pattern is now also drawn if "always center active row" is turned off if there is enough space (http://.openmpt.org/view.php?id=22).
Possible crash when seeking with sample sync.
Sample tab.
When switching from an OPL instrument to a regular sample slot, keyboard focus remained on the now-invisible OPL editing controls (http://.openmpt.org/view.php?id=1795).
VST / DMO Plugins.
Since OpenMPT 1.26.01.00, VST plugins were only loaded if their plugin type ID matched the expected value. However, some old files specify the wrong type ID, in which case those plugins were no longer loaded. The old behaviour was restored.
IT.
Imp Identify files saved with itwriter.
XM.
Imp For files saved with registered MadTracker 2 versions, do not show binary garbage (the user ID) in the "last saved with" information, instead simply show "registered".
For some truncated files, the used tracker was not identified correctly.
oggmod does not support stereo samples but keeps the stereo flag when encoding such samples. Such samples are now imported as mono samples instead of not importing them at all (tx AliceLR).
S3M.
Imp Identify files saved with early Impulse Tracker versions, Sound Club 2, Liquid Tracker, NESMusa, UNMO3, deMODifier, Kosmic To-S3M, and better tell old ModPlug Tracker versions apart.
MOD.
Allow sample swapping to work when swapping from a non-looping, stopped sample back to a looping sample.
Other formats.
Imp MID: Allow importing up to 32 MIDI ch
1.31.08.0010 Jun 2024 12:05
major bugfix:
General tab
Updates received from other views could cause unintended data changes (e.g. truncating fractional tempo if it is technically unsupported by current format).
Since OpenMPT 1.30, it was possible that leftovers from a previously visited tab could remain visible under some circumstances.
Pattern tab.
Navigating up on the first row of a pattern with "Play whole row while navigating" enabled but "Continuous scroll" disabled played the row and advanced to the second row instead of doing nothing (http://.openmpt.org/view.php?id=1781).
After deleting an effect, it was possible that its now-invisible parameter could still affect effect memory in S3M files.
Other formats.
Imp MED: Additional command pages can now be read (http://.openmpt.org/view.php?id=1783).
Imp MED: Echo DSP is now emulated (http://www.un4seen.com/forum/?topic=15448.msg143034#msg143034).
AMS: Default channel panning was broken, using all-center panning instead of MOD-style panning.
STP: Correctly import volume slides where both nibbles are set.
DSm: Only the first 48 samples were ever read.
DSm: Don't import as Amiga module (and thus allow Amiga resampler to be enabled), as this PC format can easily exceed the Amiga frequency range.
STM / STX: Don't set channel panning. ScreamTracker 2 only outputs mono sound.
Third-Party Libraries.
Imp Update ancient (v2.2.0) and UnRAR (v7.0.9).
1.31.07.0013 May 2024 20:05
major bugfix:
Pattern tab
Find Replace: In the plugin parameter dropdown, parameter 999 was missing if the number of plugin parameters was unknown.
Comments tab.
Sample / instrument name editing was broken since OpenMPT 1.31.01.00 (tx SoDa7).
Playback.
The OPL emulation produced unwanted clicks with mix rates exceeding 65 kHz (http://.openmpt.org/view.php?id=1775).
MIDI macro command s didn't compute the correct checksum if a device ID was made up from two bytes (e.g. Roland XV-5080).
IT.
Imp Disable a few more compatibility flags for ITs made with older Schism Tracker versions (http://.openmpt.org/view.php?id=1764).
Mod Halve the output volume of files saved with ChibiTracker, as its mixer is about half as loud as ours.
XM.
Imp Detect files saved with PlayerPRO. Improved detection of files saved with ModPlug Tracker.
Mod Files with impossibly small pattern headers are now rejected, like FastTracker 2 does.
S3M.
Imp Detect files saved with PlayerPRO.
In mono mode, the ratio between sample and OPL volume was incorrect (http://.openmpt.org/view.php?id=1774).
MOD.
Mod Changed VBlank timing heuristic to always assume CIA timing when long samples are found.
Disable NoiseTracker quirks if empty sample slots have a default volume other than 0 (http://.openmpt.org/view.php?id=1765).
7-bit panning detection may have returned incorrect results for MODs with a channel count other than 4.
Other formats.
Imp STK: Loosen SoundTracker file rejection heuristics a bit to allow loading of files with overly long samples (romantic.stk) and malformed song titles (schmokk.mod, scramble_2.mod and others). Other heuristics has been tightened a bit.
Imp MED: Improve handling of default tempo, panning and channel volume in files containing more than one song.
Mod MO3: Further reduce maximum allowed music data (not samples) size from 2 GiB to 512 MiB.
Mod MDL: Slightly more accurate import of pattern command 9 (enabling enve
1.31.06.0025 Mar 2024 03:16
major bugfix:
Sample tab
Imp Audio is no longer blocked while updating the GUI after pasting a sample.
VST / DMO Plugins.
Mod The "Triangle" waveform in the Chorus / Flanger DMO plugins is now labelled "Square" instead to reflect its actual behaviour.
There was a periodic click when playing a module using the Chorus or Flanger DMO plugin at a mix rate exceeding 136.5 kHz (http://.openmpt.org/view.php?id=1752).
Since OpenMPT 1.29.13.00, the Distortion plugin sounded incorrect when using certain parameter combinations.
IT.
In OpenMPT 1.31.05.00, MIDI macros in IT files made with older MPT versions were no longer working (http://.openmpt.org/view.php?id=1753).
Other formats.
MED: Transposed samples were playing too low in some files (e.g. mix94.mmd1).
OKT: Some files with garbage at the end were rejected (e.g. katharsis - piano lesson.okta).
SymMOD: potential crash with malformed sustain loops.
Misc.
New Added two more octaves worth of note key assignments suitable for micro-tuning (http://.openmpt.org/view.php?id=1727).
File / sample sizes in the instrument browser and comments tab were displayed incorrectly if a file size less than 1024 bytes ended in 0.
Third-Party Libraries.
Imp Update ancient (2024-03-23).
1.31.05.0004 Mar 2024 07:05
major bugfix:
Tree view
The search filter was no longer applied when the instrument library was refreshed.
Pattern tab.
New Using the new hidden setting "Pattern Editor.IgnoreSongTimeSignature", it is now possible to ignore the time signature provided by the module and use the pre-configured defaults from the Display tab instead (http://.openmpt.org/view.php?id=1746).
Notes no longer hang on transpose or data entry (http://.openmpt.org/view.php?id=1724).
Data Entry could insert volume column commands even in MOD format when turning "virtual" default volume commands into real commands. This feature of Data Entry is now disabled for MOD files, as the alternative - moving the newly-added command to the effect column - would be counter-intuitive (http://.openmpt.org/view.php?id=1738).
Assigning / unassigning a plugin to / from an instrument didn't update their plugin editor button in the pattern tab.
Sample tab.
New Can now convert sustain loops to normal loops and vice versa. If both loop types are set, the commands swap the two loops.
Transpose value was sometimes off-by-one after manually entering sample rate.
Reset sample reverse flag when loading new samples or converting between formats.
Avoid accidental single-pixel sample data selections and jumpy selection start / end points with zoomed-out or auto-zoomed samples (quite likely introduced in OpenMPT 1.30.04.00).
Instruments.
Imp SFZ: global_label opcode (instrument name) is now read and written.
Imp SFZ: Sustain point is no longer set on volume envelopes if it's the last point of the envelope and its value is neutral (0).
SFZ: